This is an old revision of the document!
As of XenServer 6.5, you can now install updates using XenCenter, even in the free version.
Download Updates: http://xenserver.org/overview-xenserver-open-source-virtualization/download.html
The XenServer Dom0 disk space is limited and easy to fill up. You should clean out any unnecessary files before, during and after updates to keep from filling the disk. For example, on a large update like a Service Pack, you might want to just install the Service Pack, delete any unneeded files, then proceed with any other updates.
xe patch-list |grep name-label |sort
As of XenServer 7.0, we use XenCenter to do the updates.
The first couple of updates may already be installed by default on newer ISO images.
# XenServer 6.5 - limiting bandwidth to 500KBps wget --limit-rate=500k http://downloadns.citrix.com.edgesuite.net/10340/XS65ESP1.zip # reboot needed # XenServer 6.5 SP1 - limiting bandwidth to 500KBps wget --no-check-certificate --limit-rate=500k -O XS65ESP1012.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX202481/XS65ESP1012.zip wget --no-check-certificate --limit-rate=500k -O XS65ESP1024.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX207337/XS65ESP1024.zip wget --no-check-certificate --limit-rate=500k -O XS65ESP1027.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX212401/XS65ESP1027.zip wget --no-check-certificate --limit-rate=500k -O XS65ESP1035.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX216249/XS65ESP1035.zip wget --no-check-certificate --limit-rate=500k -O XS65ESP1039.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX217643/XS65ESP1039.zip wget --no-check-certificate --limit-rate=500k -O XS65ESP1041.zip \ https://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX218545/XS65ESP1041.zip # reboot needed for x in XS*.zip; do unzip $x; done for x in *.xsupdate; do xe patch-upload file-name=$x; done
Then install the updates one at a time, in order, using the UUID's printed by the last command:
xe patch-pool-apply uuid=<uuid-of-update>
You can use
xe patch-list | more
to show more patch details such as UUIDs, names and reboot recommendations.
Migrate any running VMs off of the Pool Master:
xe vm-migrate vm=<vm-name> host=<pool-member-host>
If the pool is HA enabled, you will have to disable HA, reboot the pool master, then reboot the pool member servers one by one after the pool master comes back up. Finally, re-enable HA.
Don't put the Pool Master in Maintenance Mode unless you want to designate another member server as Pool Master.
xe pool-ha-disable xe pool-designate-new-master host-uuid=<UUID> xe pool-ha-enable
Then restart XAPI or reboot the XenServer host as necessary:
xe-toolstack-restart
or
reboot
For a single XenServer, the above commands would suffice when run from the commmand line of the XenServer.
To update multiple XenServers, you would download the updates once, then push them to multiple servers by running additional commands specifying server/user/password on the 'xe patch-upload' and 'xe patch-pool-apply' commands.
First, we delete all the downloaded stuff (everything in /root
):
cd ~ rm -rf *
Then, to clean patches pool-wide we run:
for i in `xe patch-list --minimal|tr "," " "`;do xe patch-pool-clean uuid=$i;done