You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "Nicolas Lamirault (JIRA)" <ji...@apache.org> on 2013/07/09 14:31:48 UTC

[jira] [Comment Edited] (CLOUDSTACK-2860) Add new host into VMWare Cluster failed

    [ https://issues.apache.org/jira/browse/CLOUDSTACK-2860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13675970#comment-13675970 ] 

Nicolas Lamirault edited comment on CLOUDSTACK-2860 at 7/9/13 12:31 PM:
------------------------------------------------------------------------

After upgrading our PREPRODUCTION environment from 2.2.14 to 4.1.0, we try to add a new host to a cluster :

2013-06-05 16:25:29,863 DEBUG [utils.crypt.DBEncryptionUtil] (TP-Processor21:null) Error while decrypting: Kl0ud-prp
2013-06-05 16:25:29,865 ERROR [cloud.api.ApiServer] (TP-Processor21:null) unhandled exception executing api command: addHost
org.jasypt.exceptions.EncryptionOperationNotPossibleException
        at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.decrypt(StandardPBEByteEncryptor.java:918)
        at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.decrypt(StandardPBEStringEncryptor.java:725)
        at com.cloud.utils.crypt.DBEncryptionUtil.decrypt(DBEncryptionUtil.java:65)
        at com.cloud.dc.ClusterDetailsDaoImpl.findDetails(ClusterDetailsDaoImpl.java:73)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.resource.ResourceManagerImpl.discoverHostsFull(ResourceManagerImpl.java:720)
        at com.cloud.resource.ResourceManagerImpl.discoverHosts(ResourceManagerImpl.java:619)
        at org.apache.cloudstack.api.command.admin.host.AddHostCmd.execute(AddHostCmd.java:143)
        at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:162)
        at com.cloud.api.ApiServer.queueCommand(ApiServer.java:505)
        at com.cloud.api.ApiServer.handleRequest(ApiServer.java:355)
        at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:315)
        at com.cloud.api.ApiServlet.doPost(ApiServlet.java:71)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
        at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
        at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
        at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
        at java.lang.Thread.run(Thread.java:662)

Into database :

mysql> select * from cluster_details where id = 5 ;
+----+------------+----------+-----------+
| id | cluster_id | name     | value     |
+----+------------+----------+-----------+
|  5 |          1 | password | Kl0ud-prp |
+----+------------+----------+-----------+

so we encrypt the database value like in "cloud-setup-encryption -m cloudstackprp -k cloudstackprp" :

 $ java -classpath /usr/share/java/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="Kl0ud-prp" password=cloudstackprp verbose=false
 wrGoxbgFD4BO437vs+f5rP4fY53yRyn+

And update dabase :

mysql> update cluster_details set value = 'wrGoxbgFD4BO437vs+f5rP4fY53yRyn+' where id = 5 ;

We retry to add a new host and it works.
Regards
                
      was (Author: nlamirault):
    After upgrading our PREPRODUCTION environment from 2.2.14 to 4.1.0, we try to add a new host to a cluster :

2013-06-05 16:25:29,863 DEBUG [utils.crypt.DBEncryptionUtil] (TP-Processor21:null) Error while decrypting: Kl0ud-prp
2013-06-05 16:25:29,865 ERROR [cloud.api.ApiServer] (TP-Processor21:null) unhandled exception executing api command: addHost
org.jasypt.exceptions.EncryptionOperationNotPossibleException
        at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.decrypt(StandardPBEByteEncryptor.java:918)
        at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.decrypt(StandardPBEStringEncryptor.java:725)
        at com.cloud.utils.crypt.DBEncryptionUtil.decrypt(DBEncryptionUtil.java:65)
        at com.cloud.dc.ClusterDetailsDaoImpl.findDetails(ClusterDetailsDaoImpl.java:73)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.resource.ResourceManagerImpl.discoverHostsFull(ResourceManagerImpl.java:720)
        at com.cloud.resource.ResourceManagerImpl.discoverHosts(ResourceManagerImpl.java:619)
        at org.apache.cloudstack.api.command.admin.host.AddHostCmd.execute(AddHostCmd.java:143)
        at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:162)
        at com.cloud.api.ApiServer.queueCommand(ApiServer.java:505)
        at com.cloud.api.ApiServer.handleRequest(ApiServer.java:355)
        at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:315)
        at com.cloud.api.ApiServlet.doPost(ApiServlet.java:71)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
        at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
        at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
        at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
        at java.lang.Thread.run(Thread.java:662)

Into database :

mysql> select * from cluster_details where id = 5 ;
+----+------------+----------+-----------+
| id | cluster_id | name     | value     |
+----+------------+----------+-----------+
|  5 |          1 | password | Kl0ud-prp |
+----+------------+----------+-----------+

so we encrypt the database value like in "cloud-setup-encryption -m cloudstackprp -k cloudstackprp" :

 $ java -classpath /usr/share/java/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="Kl0ud-prp" password=cloudstackprp verbose=false
 wrGoxbgFD4BO437vs+f5rP4fY53yRyn+

And update dabase :

mysql> update value = 'wrGoxbgFD4BO437vs+f5rP4fY53yRyn+' where id = 5 ;

We retry to add a new host and it works.
Regards
                  
> Add new host into VMWare Cluster failed
> ---------------------------------------
>
>                 Key: CLOUDSTACK-2860
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2860
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>    Affects Versions: 4.1.0
>            Reporter: Nicolas Lamirault
>             Fix For: 4.1.1
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira