Upgrade CloudBoot Packages
To upgrade the OnApp Storage packages: Upgrade the repo: Code Block |
---|
CP_host#> rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-4.2.noarch.rpm
|
Upgrade the packages: Code Block |
---|
CP_host#> yum update onapp-store-install |
Run the script: Code Block |
---|
CP_host#> /onapp/onapp-store-install/onapp-store-install.sh |
Note |
---|
Be aware that the disk-less nodes password is the root password for the CloudBoot compute resources. By default it is blank. |
When run in the interactive mode, enter the required information.
Upgrade CloudBoot Backup Servers
Info |
---|
Make sure to update CloudBoot packages before proceeding to the upgrade of CloudBoot backup servers. |
CloudBoot backup servers are CloudBooted KVM compute resources that can be be used as backup servers. The CloudBoot backup server upgrade procedure is almost the same as the CloudBoot compute resource upgrade. Follow the instructions provided in this section to upgrade CloudBoot backup servers in your cloud. Once you have upgraded the CloudBoot dependencies, you have to reboot your Cloud Boot compute resource to update the Cloud Boot RPM. You do not need to perform any backup server upgrade operations using console. To do so: Go to your Control Panel Settings menu. Click the Compute resources icon. Click the label of the CloudBoot compute resource the backup server is based on. On the compute resource details screen, click the Actions button, then click Reboot Compute resource.
- A new screen will open asking for confirmation before reboot:
- Are you sure you want to reboot this compute resource? Confirm that you want the compute resource to reboot.
When you're certain you want to proceed with the reboot, click the Reboot button. Repeat these steps for all CloudBoot backup servers in your cloud. Once all are rebooted, proceed to CloudBoot compute resources upgrade.
Upgrade CloudBoot Compute Resources
Depending on the infrastructure, scale and needs of your cloud we suggest the following methods of upgrading CloudBoot Compute resources: Simple Reboot | This method is the simplest method technically. It also ensures all tools are updated. However, it will result in some limited downtime (its duration depends on how many virtual servers are running on each compute resource). |
---|
Migrate and reboot | This method involves migrating all virtual servers off each CloudBoot compute resource in turn. The compute resource can then be safely rebooted, picking up the upgraded Integrated Storage and CloudBoot packages. Virtual servers that do not support hot migrate will have to be stopped. |
---|
Live Upgrade | This method will upgrade Integrated Storage components but will not upgrade CloudBoot image. |
---|
In case you have applied any custom configuration to your CloudBoot servers, it is recommended to recheck that this customization does not break new cloud boot image version. For this, reboot a compute resource and run Storage Health Check and Network Health Check. Make sure that Vdisks hosted on a compute resource are redundant and healthy before rebooting a CloudBoot compute resource. Simple RebootFollow the below procedure to upgrade the CloudBoot compute resources with reboot: 1. Upgrade CloudBoot Packages. 2. When the CloudBoot packages upgrade is complete, stop all virtual servers which reside on the CloudBoot compute resources. 3. Reboot all CloudBoot compute resources. Once the compute resources are booted, the upgrade is complete. Before starting all Virtual Servers please ensure that the diagnostics page does not report any issue. In case of any issue, please press repair button to resolve it, then continue with starting Virtual Servers. Info |
---|
Note that virtual servers cannot be stopped simultaneously, but must be stopped in sequence. This can result in considerable downtime if there are a large number of virtual servers. |
Migrate and reboot Use this procedure if you prefer migrating all virtual servers to another compute resource and conducting overall upgrade of your CloudBoot and Integrated Storage. Virtual servers that do not support hot migrate will have to be stopped. Once you have upgraded the CloudBoot packages, you have to reboot your CloudBoot compute resources to update them. To do so: Run the following command from the Control Panel server terminal to display the list of compute resources with their IP addresses. Make a note of the list of IPs: Code Block |
---|
CP_host#> liveUpdate listHVs |
This command will also show whether compute resources are eligible for live upgrade. Info |
---|
If the command liveUpdate is not available then it may be located in the sbin directory instead (cd /usr/local/sbin). |
Run the following command for every compute resource: Code Block |
---|
CP_host#> liveUpdate updateToolstack <HV IP Addr> |
Once all the toolstacks are updated run the following command for every compute resource: Code Block |
---|
CP_host#> liveUpdate refreshControllers <HV IP Addr> |
Info |
---|
Wait several minutes for all degraded disks to come to synchronized state. The synchronization will take approximately three minutes for each compute resource. After each controller restart, check for any issues on the backup server (or on one Compute resource from each zone): 1. Log on via SSH to the backup server (or Compute resource). 2. Run getdegradednodes from the SSH console. 3. Run getdegradedvdisks from the SSH console. |
Migrate all the virtual servers from the CloudBoot compute resource to another compute resource. Follow the instructions described in the Migrate Virtual Server section of the Admin guide to migrate virtual servers. After that, go to your Control Panel Settings menu. Click the AppliancesCompute Resources icon. Click the label of the CloudBoot compute resource you have migrated all VSs from. On the compute resource details screen, click the Actions button, then click Reboot Compute resource. Warning |
---|
Rebooting a compute resource assigned to a data store with a single replica (single-replica compute resource) or degraded virtual disks may result in data loss. |
- A new screen will open asking for confirmation (via two check boxes) before reboot:
When you're certain you want to proceed with the reboot, click the Reboot button. Once the compute resource is booted, repair the disk that were degraded during the reboot. Make sure no disks are out of sync. To do so, check the Diagnostics page in CP at Dashbord > Integrated Storage > Compute zonelabel > Diagnostics. Alternatively, log into a compute resource and run the command below:
Code Block |
---|
HV_host#> getdegradedvdisks |
Repair all the degraded disks before proceeding to the upgrade process. To do so, log in to your CP and go to Integrated Storage > Compute zonelabel > Diagnostics page. Alternatively, run one of the following commands: Code Block |
---|
HV_host#> onappstore repair uuid= |
Code Block |
---|
HV_host#> parallelrepairvdisks |
Repeat these steps for all CloudBoot compute resources in your cloud.
Live Upgrade Warning |
---|
Live Upgrade is only applicable if your cloud is running latest 4.2 CloudBoot RPM. |
Info |
---|
| - Live Upgrade with passthrough is currently unsupported. Passthrough to storage means that network interface will be added to the Storage Controller Server without the bond and the Storage Controller Server will have the complete control over this interface.
Power off all Windows virtual machines and virtual backup servers before starting the live upgrade. If your current Storage package is 4.0, Windows virtual servers can remain running. - During the CloudBoot compute resource live upgrade, only the control stack for managing integrated storage is upgraded. Other changes come into effect after the compute resource is next rebooted. Due to this, hot migration may fail between compute resource which is already rebooted and the one that hasn't.
- Do not make any changes to the cloud during the upgrade process!
- Any offline Cloudboot compute resources should be removed from the CP server before running live upgrade as the scripts expect to be able to speak to all compute resources during these steps.
- Please, consult OnApp IS Upgrade Paths to learn the minimum Integrated Storage version required for the current update to be performed in LiveUpgrade mode.
|
Use this procedure to upgrade without rebooting your servers: Make sure no disks are out of sync. To do so, check the Diagnostics page in CP at Dashbord > Integrated Storage > Compute zonelabel > Diagnostics. Alternatively, log into a compute resource and run the command below:
Code Block |
---|
HV_host#> getdegradedvdisks |
Repair all the degraded disks before proceeding to the upgrade process. To do so, log in to your CP and go to Integrated Storage > Compute zonelabel > Diagnostics page. Alternatively, run one of the following commands: Code Block |
---|
HV_host#> onappstore repair uuid= |
Code Block |
---|
HV_host#> parallelrepairvdisks |
Run the following command from the CP server to stop the OnApp service: Code Block |
---|
CP_host#> service onapp stop |
Stop the Apache server: Code Block |
---|
CP_host#> service httpd stop |
Make sure to update CloudBoot packages before proceeding to the following steps. Run the following command from the Control Panel server terminal to display the list of compute resources with their IP addresses. Make a note of the list of IPs: Code Block |
---|
CP_host#> liveUpdate listHVs |
This command will also show whether compute resources are eligible for live upgrade. Info |
---|
If the command liveUpdate is not available then it may be located in the sbin directory instead (cd /usr/local/sbin). |
Run the following command for every compute resource: Code Block |
---|
CP_host#> liveUpdate updateToolstack <HV IP Addr> |
Once all the toolstacks are updated run the following command for every compute resource: Code Block |
---|
CP_host#> liveUpdate refreshControllers <HV IP Addr> |
Info |
---|
Wait several minutes for all degraded disks to come to synchronized state. The synchronization will take approximately three minutes for each compute resource. After each controller restart, check for any issues on the backup server (or on one Compute resource from each zone): 1. Log on via SSH to the backup server (or Compute resource). 2. Run getdegradednodes from the SSH console. 3. Run getdegradedvdisks from the SSH console. |
Restarts the storage controllers. This command can be performed later at a more suitable time. Run the following command for each compute resource in turn: Code Block |
---|
CP_host#> liveUpdate restartControllers <HV IP Addr> |
Note |
---|
Please make sure you restart all controllers and don’t leave your cloud in a partially updated state for too long. Note that when operating in LiveUpdated mode (e.g. with the tool stacks updated but before you have performed the controller restart) you cannot use disk hot plug. |
Info |
---|
After each controller restart check for any issues on the backup server or one Hypervisor from each zone: 1. Log on via SSH to the backup server (or Hypervisor). 2. Run getdegradednodes from the SSH console. 3. Run getdegradedvdisks from the SSH console. If there are any issues seen please rectify them before continuing with the next controller restart. |
Make sure that the package versions are upgraded by running the following command on each compute resource: Code Block |
---|
HV_host#> cat /onappstore/package-version.txt | grep Source |
Start the Apache server: Code Block |
---|
CP_host#> service httpd start |
Start the OnApp service: Code Block |
---|
CP_host#> service onapp start |
Configuration for AcceleratorPerform the following steps for your Cloudboot compute resources if you plan to deploy Accelerator. These steps are to be performed on each of the compute resources. Copy file: Code Block |
---|
cp /home/mq/onapp/messaging/credentials{_example,}.yml |
Open vi /home/mq/onapp/messaging/credentials.yml and check the following details: Code Block |
---|
---
host: 10.0.50.4 # RABBITMQ SERVER IP/FQDN
port: 5672 # RABBITMQ CONNECTION PORT(default: 5672)
vhost: '/'
user: accelerator-example # RABBITMQ USER NAME
password: 'e{y31?s8l' # RABBITMQ ACCESS PASSWORD
queue: 'hv-10.0.50.102' # hv-[IP Address of Compute Resource]
exchange:
name: 'acceleration'
type: 'direct'
durable: True |
Change owner: Code Block |
---|
chown -R mq:mq /home/mq |
Run the following: Code Block |
---|
service onapp-messaging start |
Note |
---|
Note that steps 1-4 of the above instruction should be done after every reboot of CloudBoot compute resource. You can run the following commands (using your parameters) to the custom config instead: Code Block |
---|
cp /home/mq/onapp/messaging/credentials{_example,}.yml
echo "---
host: 10.0.50.4 # RABBITMQ SERVER IP/FQDN
port: 5672 # RABBITMQ CONNECTION PORT(default: 5672)
vhost: '/'
user: accelerator-example # RABBITMQ USER NAME
password: 'e{y31?s8l' #RABBITMQ ACCESS PASSWORD
queue: 'hv-10.0.50.102' # hv-[IP Address of Compute Resource]
exchange:
name: 'acceleration'
type: 'direct'
durable: True" > /home/mq/onapp/messaging/credentials.yml
chown -R mq:mq /home/mq
service onapp-messaging restart |
Also you can monitor RabbitMQ server using a command-line tool for it. |
|