Abhinav Roy created CLOUDSTACK-248:
--------------------------------------
Summary: After upgrading from CS-3.0.2 to ASF 4.0 the KVM Host
ends up in disconnected state.
Key: CLOUDSTACK-248
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-248
Project: CloudStack
Issue Type: Bug
Components: Hypervisor Controller, Install and Setup, KVM
Affects Versions: pre-4.0.0
Environment: MS : Rhel 6.2
HOST : KVM (Rhel 6.2)
Reporter: Abhinav Roy
Priority: Blocker
Fix For: pre-4.0.0
Executed the upgrade from CS 3.0.2 to ASF 4.0 using the build below
http://jenkins.cloudstack.org/job/build-4.0-rhel63/lastSuccessfulBuild/artifact/CloudStack-oss-4.0.0-356.tar.bz2,
following observations were made
===========================================
1. After the upgrade we have
-----------------------------------------
Installed:
cloud-scripts.x86_64 0:4.0.0-0.356.el6.4.0
Replaced/Removed:
cloud-agent-scripts.x86_64 0:3.0.2-1.el6
Now, due to this we don't have all the scripts in the
/usr/lib64/cloud/common/scripts folder :
[root@burnank CloudStack-oss-4.0.0-356]# ls /usr/lib64/cloud/common/scripts/vm/
hypervisor
So, to get all the scripts we try to install cloud-scripts package again, but
since it is already installed, it can't be installed again :
[root@burnank CloudStack-oss-4.0.0-356]# yum install
cloud-scripts-4.0.0-0.356.el6.4.0.x86_64.rpm
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iitm.ac.in
* extras: mirrors.sin3.sg.voxel.net
* updates: ftp.iitm.ac.in
Setting up Install Process
Examining cloud-scripts-4.0.0-0.356.el6.4.0.x86_64.rpm:
cloud-scripts-4.0.0-0.356.el6.4.0.x86_64
cloud-scripts-4.0.0-0.356.el6.4.0.x86_64.rpm: does not update installed
package.
Error: Nothing to do.
So, we go to step 2.
2. Uninstall cloud-scripts and then install again
------------------------------------------------
Now, uninstalling cloud-scripts uninstalls 4 other packages as dependencies
:
Removed:
cloud-scripts.x86_64 0:4.0.0-0.356.el6.4.0
Dependency Removed:
cloud-client.x86_64 0:4.0.0-0.356.el6.4.0 cloud-client-ui.x86_64
0:4.0.0-0.356.el6.4.0 cloud-server.x86_64 0:4.0.0-0.356.el6.4.0
cloud-setup.x86_64 0:4.0.0-0.356.el6.4.0
Install cloud-scripts and 4 other packages which got removed
Now , we can see all the scripts present
[root@burnank CloudStack-oss-4.0.0-356]# ls
/usr/lib64/cloud/common/scripts/vm/systemvm/
id_rsa.cloud injectkeys.sh
3. We do the same on our KVM host.
------------------------------------------------
Here, while uninstalling cloud-scripts , cloud-agent also gets removed so,
we install both of them again.
4. Now, the upgrade process is over, so we start the cloud-agent and
cloud-management services.
5. The upgrade goes fine, there are no errors.
Post Upgrade issues :
=================================
1. The host is in disconnected state, it is not being recognied , reconnecting
gives the following exception :
2012-10-03 15:41:27,118 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-4:job-13) Executing com.cloud.api.commands.ReconnectHostCmd for
job-13
2012-10-03 15:41:27,125 INFO [agent.manager.AgentManagerImpl]
(Job-Executor-4:job-13) Unable to disconnect host because it is not in the
correct state: host=1; Status=Disconnected
2012-10-03 15:41:27,126 WARN [api.commands.ReconnectHostCmd]
(Job-Executor-4:job-13) Exception:
com.cloud.api.ServerApiException
at
com.cloud.api.commands.ReconnectHostCmd.execute(ReconnectHostCmd.java:108) at
com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:138) at
com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:432) at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:679)
2012-10-03 15:41:27,127 WARN [cloud.api.ApiDispatcher] (Job-Executor-4:job-13)
class com.cloud.api.ServerApiException : null
2012-10-03 15:41:27,127 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-4:job-13) Complete async job-13, jobStatus: 2, resultCode: 530,
result: Error Code: 534 Error text: null
2012-10-03 15:41:32,180 DEBUG [cloud.async.AsyncJobManagerImpl]
(catalina-exec-24:null) Async job-13 completed
2. The VMs can not be instantiated as the host is not in UP state. To reconnect
the host I tried
[root@rajesh-kvm3 ~]# cloud-setup-agent
Welcome to the CloudStack Agent Setup:
Please input the Management Server
Hostname/IP-Address:[localhost]10.102.125.218
Please input the Zone Id:[default]
Please input the Pod Id:[default]
Please input the Cluster Id:[default]
Please choose which network used to create VM:[cloudbr0]
Starting to configure your system:
Configure Cgroup ... [OK]
Configure SElinux ... [OK]
Configure Network ... [OK]
Configure Libvirt ... [OK]
Configure Firewall ... [OK]
Configure Nfs ... [OK]
Configure cloudAgent ... [OK]
CloudStack Agent setup is done!
But this didn't reconnect the host, it added the same host as the new one while
the same host was also present in disconnected state.
But again the VMs were not getting deployed as the host was not recognising the
secondary storage vm etc.
---------------------------------------------------------------------------------------------------------
So because of the above mentioned issues we need to first of all get our
packaging right, the install/uninstall of the packages should happen in such a
way that the user doesn't need to install/remove any package manually. Just
using the upgrade utility in the install.sh script should be enough, both in
the case of management server and the KVM host.
--
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