Apache CloudStack リリースノートへようこそ

_images/acslogo.png

警告

We are in the process of changing documentation format as well as hosting mechanism. Please be patient with us as we migrate our entire documentation to this new setup.

This document contains information specific to this release of CloudStack, including upgrade instructions from prior releases, new features added to CloudStack, API changes, and issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the CloudStack Administrator’s Guide.

コンテンツ:

About this new Release

What’s New in 4.3

CloudStack 4.3 includes the following new features.

Optional 64-Bit System VM Template Support

CloudStack now provides 64-bit templates for System VMs. With this support, you will be able to upgrade virtual routers in a zone. The following parameters have been introduced for the same purpose:

  • XenServer: ``router.template.xen``
  • KVM: ``router.template.kvm``
  • VMware:
  • Hyper-V:

Hyper-V Support

CloudStack 4.3 rolls out support for Hyper-V hosts. For Hyper-V, CloudStack supports SMB-based storage. If you want to run guest VMs on Hyper-V hosts, install CloudStack Agents on each Hyper-V hosts. Before you use Hyper-V, review the following list of supported and non-supported features. For detailed instruction, see Hyper-V Quick Start Guide. You can also see the chapter Installing Hyper-V for CloudStack in the CloudStack 4.3 Installation Guide.

Supported Functionalities on Hyper-V
  • VM Compute
    • All the VM operations, except VM Snapshots
    • Live Migration
    • Service Offerings (Scale up on stopped VMs)
    • Console access
    • SSH key and reseting SSH key
    • Upload and download templates, volumes, and ISO
    • Create VMs from template and ISO
    • Create template from volume
    • Attach and detach VMs from ISO and password-enabled template
    • Copy template across zone
  • Storage
    • Primary Storage (SMB and Local)
    • Root and data volumes on Local and SMB
    • Add, delete, attach, detach volumes (one or more volumes per VM)
    • Single and multiple secondary storage (SMB)
  • Network
    • VLANs (Isolated and Shared)
    • All VR services: DNS, DHCP, SourceNAT, LB, PF, Firewall, StaticNAT, Userdata, and VPN
    • External device support for both Isolated and Shared networks: Netscaler, SRX, F5
    • Multiple physical networks
    • Dedicated IP range, Public VLANs (to account)
    • Network Offering upgrades and updates
    • L4-L7 services in Shared network
    • Multiple IP ranges and portable IPs
  • Host and Storage in maintenance mode
Unsupported Functionalities on Hyper-V
  • Affinity an Anti-Affinity Groups
  • Network throttling
  • Security groups (Advanced Zone)
  • IPv6
  • Snapshot: VM and disk
  • PVLAN
  • VPC
  • HA of guest VMs
  • Redundant VR
  • Object Store
  • Mixed hypervisor zone
  • Zone-wide Primary storage
  • NIC bonding

Enhanced Upgrade for Virtual Routers

Upgrading VRs is made flexible. The CloudStack administrators will be able to control the sequence of the VR upgrades. The sequencing is based on Infrastructure hierarchy, such as by Cluster, Pod, or Zone, and Administrative hierarchy, such as by Tenant or Domain. This implies, for example, that you will have the flexibility to upgrade a VR in a specified zone. As an administrator, you can also determine when a particular VR can be upgraded within a specified upgrade interval. Additionally, upgrade operation is enhanced to increase the upgrade speed by allowing as many upgrade operations in parallel as possible. During the entire duration of the upgrade, users cannot launch new services or make changes to an existing service.

To support this feature, a new API, upgradeRouterTemplate, has been introduced.

The detailed instruction is provided in the CloudStack 4.3 Administration Guide. See section 17.5.5. Enhanced Upgrade for Virtual Routers.

Service Monitoring Tool for Virtual Router

Various services running on the CloudStack virtual routers can be monitored by using a Service Monitoring tool. The tool ensures that services are successfully running until CloudStack deliberately disables them. If a service goes down, the tool automatically performs a restart, and if that does not help bringing up the service, an alert as well as an event is generated indicating the failure.

The following services are monitored in a VR:

  • DNS
  • HA Proxy
  • SSH
  • Apache Web Server

Only the services with daemons are monitored.

The following networks are supported:

  • Isolated Networks
  • Shared Networks in both Advanced and Basic zone

This feature is supported on the following hypervisors: XenServer, VMware, and KVM.

The detailed instruction is provided in the CloudStack 4.3 Administration Guide. See section 17.5.4. Service Monitoring Tool for Virtual Router.

Custom Compute Offering

CloudStack provides you the flexibility to specify the desired values for the number of CPU, CPU speed, and memory while deploying a VM. The admin creates a Compute Offering by marking it as custom, and as an user, you will be able to customize this dynamic Compute Offering by specifying the memory, CPU and root disk at the time of VM creation or upgrade.

Custom Compute Offering is same as the normal Compute Offering except that the values of the dynamic parameters will be set to zeros in the given set of templates. Use this offering to deploy VM by specifying custom values for the dynamic parameters. Memory, CPU and number of CPUs are considered as dynamic parameters. Dynamic Compute Offerings can be used in following cases: deploying a VM, changing the compute offering of a stopped VM and running VMs, which is nothing but scaling up. To support this feature a new field, Custom, has been added to the Create Compute Offering page. If the Custom field is checked, the end-user will be able to create a custom Compute Offering by filling in the desired values for number of CPU, CPU speed, and memory.

Remote Access VPN for VPC

Support for Remote access VPN in Isolated networks is now extended to VPC networks. Remote users will now be able to initiate a VPN connection to a VPC network. To enable this feature, enable VPN in the Source NAT IP of the VPC.

Site to Site VPN Connection Between VPC Networks

CloudStack provides you with the ability to establish a site-to-site VPN connection between CloudStack virtual routers. With this functionality, users can deploy applications in multiple Availability Zones or VPCs, which can communicate with each other by using a secure Site-to-Site VPN Tunnel. Creating a typical Site to Site VPN connection between VPC networks involves the following:

  1. Create two VPCs. For example, VPC A and VPC B.

  2. Create VPN gateways on both the VPCs you created.

  3. Create VPN customer gateway for both the VPCs.

  4. Enable a VPN connection on VPC A in passive mode.

    Ensure that the customer gateway is pointed to VPC B. The VPN connection is shown in the Disconnected state.

  5. Enable a VPN connection on VPC B.

    Ensure that the customer gateway is pointed to VPC A. Because virtual router of VPC A, in this case, is in passive mode and is waiting for the virtual router of VPC B to initiate the connection. The virtual router of VPC B should not be in passive mode.

    The VPN connection is shown in the Disconnected state.

    Creating VPN connection on both the VPCs initiates a VPN connection. Wait for few seconds. The default is 30 seconds for both the VPN connections to show the Connected state.

Reporting CPU Sockets

CloudStack now provides an additional infrastructure statistics for CPU sockets managed by CloudStack, which in turn reflects the size of the cloud. The Infrastructure tab has a new tab for sockets. The Socket page will give you the number of hosts an sockets used for each hypervisor type. This feature is not supported in versions prior to XenServer 6.2.

Database High Availability

To help ensure high availability of the databases that store the internal data for CloudStack, you can set up database replication. This covers both the main CloudStack database and the Usage database. Replication is achieved using the MySQL connector parameters and two-way replication. Tested with MySQL 5.1 and 5.5. Database replication in CloudStack is provided using the MySQL replication capabilities. The steps to set up replication can be found in the MySQL documentation.

LDAP User Provisioning

LDAP user provisioning has been enhanced by allowing user import from the configured LDAP servers. You will be able to add multiple LDAP servers and selectively import LDAP users. You can o filter by group name and import all the users within a group. After they have been imported to CloudStack, in contrast to manually adding them in previous releases, users are allowed to directly log in to CloudStack by using the LDAP credentials.

Migrating NFS Secondary Storage to Object Store

In an existing zone that is using NFS for secondary storage, you can upgrade the zone to use a region-wide object storage without causing downtime. The existing NFS storage in the zone will be converted to an NFS Staging Store. After migration, the data that was on the NFS storage remains there. CloudStack does not provide a way to automatically migrate all data to the new object storage. The data remaining on the old NFS storage will remain accessible for read and delete operations only. Newly created snapshots and templates will be placed in the newly configured object storage.

VXLAN Plugin Support

The VXLAN plugin adds VXLAN as one of the guest network isolation methods in CloudStack. This plugin enables more than 4096 isolated guest networks in a Zone, with almost the same usability as VLAN isolation. This plugin provides no network services. Use virtual router for network services. This plugin is supported on KVM hypervisors.

Contrail Network Plugin Support

The Contrail virtual network controller is an open source project that provides an overlay implementation of network virtualization that is interoperable with network devices that support existing network virtualization standards. Support for the Contrail plugin has been added to CloudStack to provide NAT services to the XenServer hosts. The plugin supports isolated networks, Static NAT implemented by the VRouter dataplane, and Source NAT implemented by using a virtual appliance with full NAT functionality.

Publishing Alert Using the Web ROOT Admin API

In previous releases of CloudStack code alerts are generated for CloudStack services (Usage service) only if they run on the same host as the Management Server. A new API has been introduced in 4.3, which can be used by the following services to generate and publish. The services need not be running on the same host where the Management Server is running.

  • Any new services added to CloudStack.
  • Usage service when run on a separate storage host.
  • Console Proxy and Secondary Storage VM services.

The main advantage of this feature is that the third party systems integrating with CloudStack will be able to utilize the Alert notification system publish alerts.

Support for Palo Alto Firewall Service

CloudStack supports Palo Alto firewall services. Use the Create Network Offering dialog to create an offering which has the Palo Alto firewall services. What is not supported and not supported are given below:

Supported Functionalities
  • Advanced Network
  • Parallel deployment with hardware Load balancer
  • Virtual Palo Alto firewall.
  • Communication layer with Palo Alto APIs.
  • Mapping of CloudStack APIs to corresponding Palo Alto APIs.
  • Connectivity status of the firewall service on the CloudStack UI.
Unsupported Functionalities
  • Inline deployment with hardware Load balancer
  • Firewall between VLANs within an advanced network
  • Firewall between VM instances

For more information, see Palo Alto Firewall Integration.

Root Volume Metering

CloudStack supports recording usage events as per the dynamically assigned resources. Usage events are registered when a VM is created from dynamic service offering, and the values of parameters, such as CPU, speed, RAM are recorded. If VM is deployed by using template and dynamic root disk size is mentioned, the same value is recorded in the usage event.

Support for SSL Termination

SSL Offloading allows load balancers to handle encryption and decryption of HTTP(s) traffic giving plain text HTTP to the back end servers freeing them from the resource intensive task of handling encryption and decryption. Supported for Citrix NetScaler.

Support for Pluggable VM Snapshots

CloudStack implements a plugin to integrate a third-party storage provider. Third party storage providers can integrate with CloudStack to provide either primary storage or secondary storage. The user enables a storage plugin through the UI. A new dialog box choice is offered to select the storage provider. Depending on which provider is selected, additional input fields may appear so that the user can provide the additional details required by that provider, such as a user name and password for a third-party storage account.

Enhanced CloudStack UI

A complete UI makeover is implemented to enhance the usability and user experience in modern browsers. The visual look-and-feel has been changed for the Header, Navigation, Buttons, text fields, drop-downs, tables and so on. Consistent color themes has been introduced to match with the Apache branding.

The current UI flow remains the same.

Depreciation of realhostip.com DNS and SSL certificate

The realhostip.com dynamic DNS resolution service is being retired this summer. In advance of that, CloudStack 4.3 no longer uses realhostip.com DNS domains or SSL certificates to encrypt Console Proxy or file copy communications.

Issues Fixed in 4.3.2

Apache CloudStack uses Jira to track its issues. All new features and bugs for 4.3 have been tracked in Jira, and have a standard naming convention of “CLOUDSTACK-NNNN” where “NNNN” is the issue number.

Bug ID Description
CLOUDSTACK-3383 Fetch CPU utilization more reliable....
CLOUDSTACK-3401 Usage records are ordered by start_date which is not unique. While listing lar...
CLOUDSTACK-5785 VM display name cell not updated upon detaching volume from VM...
CLOUDSTACK-5992 default values of configuraiton parameters in configuration table are set NULL...
CLOUDSTACK-6011 When detach is called on a deleted volume, avoid the NPE and throw an appropri...
CLOUDSTACK-6075 Increase the ram size for router service offering...
CLOUDSTACK-6261 remove the forceful timeout setting when login to NetScaler....
CLOUDSTACK-6371 Set snapshot size in copycommand answer during snapshot backup...
CLOUDSTACK-6432 Blocking DHCP server to service DNS outside network...
CLOUDSTACK-6438 XAPI plugins must be copied to XS master first...
CLOUDSTACK-6463 password is not set for VMs created from password enabled template...
CLOUDSTACK-6466 cpu and ram is not getting updated correctly in usage_vm_instance table for us...
CLOUDSTACK-6647 appending instance name with custom supplied info that contains - character ca...
CLOUDSTACK-6652 CLONE - [Automation] Vmware- System’s StartCommand failed with “NumberFormatE...
CLOUDSTACK-6669 Support volume resize in usage server...
CLOUDSTACK-6738 Add configs in developer prefill to avoid restart mgmt server...
CLOUDSTACK-6743 Use edge-triggering in MessageDetector to handle bogus wakeup gracefully. Leve...
CLOUDSTACK-6761 Fixed removing proxy arp rule on deleting static nat or PF rule on ip...
CLOUDSTACK-6805 UI > create account > fix a bug that account creation failed when password con...
CLOUDSTACK-6859 Management Server PermGen run out of memory after some time due to class leak...
CLOUDSTACK-6892 use lowercase noredist, as package.sh lowercases build type...
CLOUDSTACK-6970 Protect event interpretion from causing NPE exception...
CLOUDSTACK-7250 [vCenter 5.5] SourceNAT,StaticNAT and Portfowrding is not working with Vmware ...
CLOUDSTACK-7415 Host remains in Alert after vCenter restart....
CLOUDSTACK-7517 loading ftp modules in VR...
CLOUDSTACK-7589 VM not Starting and always stuck in Stopped state after management server rest...
CLOUDSTACK-7633 fix “Provides” in most LSB headers...
CLOUDSTACK-7658 Upgrading debian packages as part of system vm template build...
CLOUDSTACK-7674 throw an exception when encountered...
CLOUDSTACK-7679 bump up the RabbitMQ AMQP java client version from 2.8.7 to 3.3.5...
CLOUDSTACK-7700 Volume Snapshot Async Job returns Success for a failed operation...
CLOUDSTACK-7752 Fixed deployment planner stuck in infinite loop. If we create VM with shared s...
CLOUDSTACK-7822 Fixed SSL Cert Tests and relaxed chain validation...
CLOUDSTACK-7837 [UI] Make the Source CIDR column wide enough to fit the CIDR value without ell...
CLOUDSTACK-7849 Sorting projects alphabetically in drop down menu...
CLOUDSTACK-7855 NIC3 should set MTU and not NIC1 for storage network nic...
CLOUDSTACK-7869 Add simulator support for findHostsForMigration API...
CLOUDSTACK-7871 allow VM and template details update using update APIs...
CLOUDSTACK-7872 network getting shutdown inspite of running VM’s in the network...
CLOUDSTACK-7877 The NET.IPRELEASE events are not added to usage_event on IP range deletion fro...
CLOUDSTACK-7884 Cloudstack MS is not responding (happening randomly) after some restart....
CLOUDSTACK-7886 cloudstackoperations like deployvm,deleteNW are failing if CS fail to contact ...
CLOUDSTACK-7917 Validating Load Balancer Rule when updating LB + unit test...
CLOUDSTACK-7937 CloudStack accepts unauthenticated LDAP binds...
CLOUDSTACK-7951 Limit amount of memory used by cloudstack-agent jsvc...
CLOUDSTACK-7952 Remove private key from SslCertResponse (listSslCerts)...
CLOUDSTACK-7954 ListTags API is ignoring the resourceID and displaying...
CLOUDSTACK-7966 remove snapshot_store_ref entry, in which role is Primary, during storage GC...

Issues Fixed in 4.3.1

Apache CloudStack uses Jira to track its issues. All new features and bugs for 4.3 have been tracked in Jira, and have a standard naming convention of “CLOUDSTACK-NNNN” where “NNNN” is the issue number.

Bug ID Description
CLOUDSTACK-7528 When AlertManager fails to sendAlert it does not log the actual issue/error...
CLOUDSTACK-7404 Failed to start an instance when originating template has been deleted...
CLOUDSTACK-7193 Rebooting a VM doesn’t update iptables rules...
CLOUDSTACK-7087 [VR] [VPN] Downgrade openswan to previous version for VPN services to fix OSX cl...
CLOUDSTACK-7006 Template ID is missing in ROOT volume usages...
CLOUDSTACK-6892 Database HA Config prevents mgmt server from starting...
CLOUDSTACK-6886 Cannot add SDX Netscaler device...
CLOUDSTACK-6816 cloudstack-setup-management make /root directory’s permission 0777 improperly...
CLOUDSTACK-6673 cloudstack-setup-management make a chmod 777 on /root...
CLOUDSTACK-6665 DHCP does not release ip addresses properly on VPC routers (edithosts.sh)...
CLOUDSTACK-6624 Unable to create new Network Offerings via UI with Specify VLAN option set...
CLOUDSTACK-6531 VR starts even if PF rules fails...
CLOUDSTACK-6509 Cannot import multiple LDAP/AD users into a cloudstack account...
CLOUDSTACK-6472 listUsageRecords generates NPEs for expunging instances...
CLOUDSTACK-6471 Add logs to better diagnose failures and errors in LDAP AD integration...
CLOUDSTACK-6464 [KVM:basic zone- upgrade to 4.3],after any vm restart,all the nics are plugg...
CLOUDSTACK-6433 Make sure redundant router would create a pair of routers when implementation...
CLOUDSTACK-6317 [VMware] Tagged VLAN support broken for Management/Control/Storage traffic...
CLOUDSTACK-6299 GetVMPassword decypher instructions are wrong...
CLOUDSTACK-6297 Cloudstack Fails to Launch on Ubuntu missing MySQL Driver...
CLOUDSTACK-6285 Some passwords in the VR would be cleared out by accident due to falsely match i...
CLOUDSTACK-6115 Investigate the use of TravisCI for CloudStack integration testing...
CLOUDSTACK-6099 live migration is failing for vm deployed using dynaic compute offerings with NP...
CLOUDSTACK-4652 ceph:UI:Noticed 2 records for same volume after migrating instance from one prim...
CLOUDSTACK-4557 ceph:Performance:first time operstions taking more time...
CLOUDSTACK-4292 ceph:destroyedvm failed with ArrayIndexexception while expunging...

Issues Fixed in 4.3.0

For the list of issues fixed, see Issues Fixed in 4.3.

Bug ID Description
CLOUDSTACK-6103 vms with isos attached don’t migrate...
CLOUDSTACK-6089 resource tags show up in multiples...
CLOUDSTACK-6046 CreateVolume from snapshot is failing with S3 as secondary storage and zone-wide...
CLOUDSTACK-6040 Failed to configure PF on vm secondary ip for shared network...
CLOUDSTACK-6007 [VMware] RestoreVM API fails with NPE...
CLOUDSTACK-5986 dnsmasq racy condition result in dnsmasq failed to handout IP address...
CLOUDSTACK-5971 Templates created from a snapshots can’t be copied to other zones...
CLOUDSTACK-5960 Domain admin or user cannot register a template using S3/Swift object store...
CLOUDSTACK-5922 Incorrect handling RHEL guests ...
CLOUDSTACK-5921 S3 security key is stored in DB unencrypted...
CLOUDSTACK-5903 CLONE - OVA files exist for templates created from volumes...
CLOUDSTACK-5895 CreateVolumeFromSnapshot can fail in a multiple pod environment with tagged stor...
CLOUDSTACK-5886 4.2.1 upgrade fails on acl migration...
CLOUDSTACK-5877 listTemplates does not sort based on sort_key...
CLOUDSTACK-5875 No templates in simulator run...
CLOUDSTACK-5864 Simulator profile broken ...
CLOUDSTACK-5813 With S3 as secondary storage, snapshot taken in one zone cannot be used to creat...
CLOUDSTACK-5723 Malfunction agent may block future SSL connection to the server...
CLOUDSTACK-5704 OVA files exist for templates created from volumes...
CLOUDSTACK-5701 size column is not getting updated in snapshot_store_ref table....
CLOUDSTACK-5666 Cant remove a nic when a vm is in the Stopped state ...
CLOUDSTACK-5661 [VMware] DetachIsoCmd succeeds even though cdrom is locked by VM as cdrom is mou...
CLOUDSTACK-5653 S3 object store as Secondary Storage, the template created from different zone i...
CLOUDSTACK-5613 CloudStack 4.2.0 - Usage server is running but tables remain empty...
CLOUDSTACK-5608 HyperV Builtin and System vm template entries missing in 4.3 upgrade setup...
CLOUDSTACK-5534 MySQL exception raised when searching for users with keyword...
CLOUDSTACK-5533 Virtual router in shared network does respond to DNS even when no DNS service is...
CLOUDSTACK-5532 Long tag values are not readable within the UI...
CLOUDSTACK-5519 [VMWARE] Cancel vCenter tasks if the task invoked by CloudStack failes with time...
CLOUDSTACK-5517 NPE observed during “release portable IPs” as part of account cleanup...
CLOUDSTACK-5514 Response of listAccounts API call includes removed users...
CLOUDSTACK-5513 VM can’t start after creating snapshot from it (CS4.2 + VMware 5.1)...
CLOUDSTACK-5481 Regular User is unable to use “Add Isolated Network” Button on the UI...
CLOUDSTACK-5466 removeIpFromNic not working properly...
CLOUDSTACK-5453 Site-to-site VPN connection status monitoring is broken in KVM...
CLOUDSTACK-5431 permit ‘http’ as service type for GSLB rule...
CLOUDSTACK-5428 support NetScaler to be configured exclusively for GSLB service and not used for...
CLOUDSTACK-5426 Cannot deploy instance having multiple volumes that use different storage tags f...
CLOUDSTACK-5422 Changing XenServer Tools Version 6.1 + doesnt work ...
CLOUDSTACK-5417 On network restart for external devices egress rules configured with old CIDR...
CLOUDSTACK-5416 [VMware] Not able to add seventh disk to VM in an upgraded setup...
CLOUDSTACK-5404 Network usages (bytes sent/received) are saved in the wrong timezone...
CLOUDSTACK-5401 VM migration during host maintenance fails if pool.storage.capacity.disablethres...
CLOUDSTACK-5391 Change service offering of a stopped vm and then starting it should check host c...
CLOUDSTACK-5355 addImageStore should not log password in clear text in the log...
CLOUDSTACK-5354 CLONE - UI - normal users are not allowed to edit their own iso...
CLOUDSTACK-5352 CPU cap calculated incorrectly for VMs on XenServer hosts...
CLOUDSTACK-5332 Network offering don’t use new system offering for router...
CLOUDSTACK-5303 “snapshot” count and “secondary_storage” count are not correct in resource_coun...
CLOUDSTACK-5302 listHosts API response - value of cpuallocated is always 0%...
CLOUDSTACK-5299 Can not get hypervisor type for volumes...
CLOUDSTACK-5293 Error while collecting vm disk stats from hosts if iso is attached to vm...
CLOUDSTACK-5285 Correct the API command description for removeIpFromNic...
CLOUDSTACK-5261 Ability to publish Alerts via CS Root API...
CLOUDSTACK-5260 Vmware 5.1 Deploy Template Error : Read Timeout...
CLOUDSTACK-5228 [API] [EIP/ELB enabled Zone] Need to display EIP address as “Public IP Address” ...
CLOUDSTACK-5227 Cannot pass Japanese characters as parameter values to API...
CLOUDSTACK-5218 CLONE - [Doc] Make VMware vCenter session timeout value configurable....
CLOUDSTACK-5199 Cannot restart VM after taking a VM snapshot of an existing VM or reverting a VM...
CLOUDSTACK-5141 [Automation] Router deployment failed due to failure in SavePasswordCommand, obs...
CLOUDSTACK-5140 A stopped vm cant start after disable threshold has been reached on the storage ...
CLOUDSTACK-5138 [Automation] NPE while create template from snapshot...
CLOUDSTACK-5122 [VMware] System VMs are getting recreated with old template after upgrading to 4...
CLOUDSTACK-5105 Template/ISO download fails cause the object to disappear from UI...
CLOUDSTACK-5098 [UI] Zone view is showing “Add VMware Datacenter” button even though zone is alr...
CLOUDSTACK-5092 [Automation] [BVT] Failed to copy template and ISO between zones in xen ...
CLOUDSTACK-5076 (Upgrade) reboot VM failed after bridge name change...
CLOUDSTACK-5069 Make VMware vCenter session timeout value configurable....
CLOUDSTACK-5066 Existed remote access VPN got dropped when adding new VPN users...
CLOUDSTACK-5062 Deleting Load Balancing Rule fails when generating usage events are enabled...
CLOUDSTACK-5054 vm migration involving storage migration on vmware fails with exception ” The ob...
CLOUDSTACK-5053 No Qemu-KVM module dependency error message is displayed (if not present)while i...
CLOUDSTACK-5042 (Upgrade) Exception when stop VM after upgrade...
CLOUDSTACK-5029 cloud-bugtool isn’t in release package like release notes say...
CLOUDSTACK-5025 display_volume field is set to false by default for VolumeVO object...
CLOUDSTACK-5024 listVolumes: add support to list by storage pool (for admin only)...
CLOUDSTACK-5017 If SSVM is unavailable DownloadCommands will be routed to mgmt server...
CLOUDSTACK-5014 vmware:deployVM with data disk failed with exception...
CLOUDSTACK-5012 Bad data inserted into physical network labels for Zone Create Wizard using VMWa...
CLOUDSTACK-5008 [VMWARE]Failed to start the VM after performing Cold Migration of Volume to Seco...
CLOUDSTACK-5002 unable to destroy vm ;VM destroy failed in Stop i-2-59-VM Command due to You gav...
CLOUDSTACK-4998 assignVirtualMachine API has wrong response string, causing Cloudmonkey to crash...
CLOUDSTACK-4997 OVS integration is broken...
CLOUDSTACK-4973 CLONE - Specified keyboard language is not showing as default in consoleView pas...
CLOUDSTACK-4943 Can’t create cluster in CS 4.2...
CLOUDSTACK-4941 CLONE - Allocation capacity of a cluster during HA...
CLOUDSTACK-4935 Adding same network to VM multiple times resulting in failure, No new NIC is gen...
CLOUDSTACK-4931 observed NPE with new system vm template...
CLOUDSTACK-4913 Disable security group for bridge mode non-security group zone...
CLOUDSTACK-4904 Unable to see a derieved template if the parent template is deleted...
CLOUDSTACK-4886 cloud-setup-databases not escaping password in shell commands...
CLOUDSTACK-4875 VMWARE: vCenter 5.5 - SYSTEM VM: Unable to create deployment for VM...
CLOUDSTACK-4861 [VMware] If Guest traffic spans across multiple physical networks, selection of ...
CLOUDSTACK-4860 [VMware] Vcenter 5.5 ESXi 5.5 hosts SSVM CPVM fail to come up to running state...
CLOUDSTACK-4856 Optimize on the # of control commands sent by MS to HV host...
CLOUDSTACK-4855 Throttle based on the # of outstanding requests to the directly managed HV host ...
CLOUDSTACK-4852 Since upgrade to 4.2 only users at the zone-attached domain level can manipulate...
CLOUDSTACK-4850 [UCS] using template instead of cloning profile...
CLOUDSTACK-4831 Ability for root admin or domain admin to create a network for another user unde...
CLOUDSTACK-4830 Allow creation of users and accounts by domain admin in UI...
CLOUDSTACK-4826 System VMs fail to start...
CLOUDSTACK-4820 TestVPCNetworkGc.test_01_wait_network_gc netacls are not cleared...
CLOUDSTACK-4810 Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VM...
CLOUDSTACK-4768 [Automation] Race condition; delete the template and create VM at same time; dep...
CLOUDSTACK-4750 bond.VLAN mapping in iptables FORWARD chain not created consistently...
CLOUDSTACK-4741 URL of ImageStore not in proper format for XenServer...
CLOUDSTACK-4740 Some vSphere VMs are shutdown when ACS is restarted...
CLOUDSTACK-4734 Creating snapshot from ROOT volume fails with error message - “Failed to create ...
CLOUDSTACK-4724 [Vmware] Deploy VM in designated cluster fail if there is only zone wide primary...
CLOUDSTACK-4697 Not able to delete Primary storage when there are no hosts in the cluster....
CLOUDSTACK-4676 [Baremetal] baremetal hostename should not be fixed in kickstart file ...
CLOUDSTACK-4670 [Baremetal] Cloudplatform BareMetal installation guide for CP 4.2...
CLOUDSTACK-4631 [Automation] Failed to create snapshot from volume due to storage pool missing e...
CLOUDSTACK-4620 Vm failed to start on the host on which it was running due to not having enough ...
CLOUDSTACK-4616 When system Vms fail to start when host is down , link local Ip addresses do no...
CLOUDSTACK-4598 [Performance Testing] High delays during deployVM - both network delay and deplo...
CLOUDSTACK-4597 Complete Exceptions are getting displayed in the UI where there is an operationa...
CLOUDSTACK-4594 [VMWARE] [Upgrade] Failed to revert VM Snapshot which were created before Live S...
CLOUDSTACK-4588 [Automation][Vmware] VM deployment failed while creating Volume with NPE...
CLOUDSTACK-4577 VMWare:Volumes: Unexpected exception while executing org.apache.cloudstack.api.c...
CLOUDSTACK-4543 [Automation] Failed to configure VPC router then reported as deployment failure...
CLOUDSTACK-4542 [Automation] Failed to apply DHCP entry in VR and deployment failed ...
CLOUDSTACK-4540 [Automation] Parallel deployment - Vmware - When deploying 30 parallel Vms , 16 ...
CLOUDSTACK-4506 In a mixed hypervisor setup, destroying a VM whose host has been removed, throws...
CLOUDSTACK-4504 VM creation Is failing using the Ubuntu ISO with Xen 6.1 and 6.2...
CLOUDSTACK-4450 Possibility of /tmp/xapilog filling up the Root disk on Xenserver ...
CLOUDSTACK-4445 [UI]Edit Icon is used for Dedicate host / Add or Remove VMWARE Datacenter with ...
CLOUDSTACK-4428 [UI] “kvm.snapshot.enabled” flag should be taken to account only when snapshot i...
CLOUDSTACK-4402 [deleteStoragePool] There is no way to delete Primary storage if the last host w...
CLOUDSTACK-4371 [Performance Testing] Basic zone with 20K Hosts, management server restart leave...
CLOUDSTACK-4263 Unable to get git number in maven-jgit-buildnumber-plugin, while build cloudstac...
CLOUDSTACK-4207 [upgrade] Exception observed after upgrade “jsonParseException: The JsonDeserial...
CLOUDSTACK-4061 UI issue with Japanese localized ui...
CLOUDSTACK-3806 OS Preference can not be set...
CLOUDSTACK-3664 scaling up vms is not considering parameter “cluster.(memory/cpu).allocated.cap...
CLOUDSTACK-3627 Public IP interface(eth2) is not getting confugured with Redundant VR (State = F...
CLOUDSTACK-3577 NPE while downloading the template to secondary storage ...
CLOUDSTACK-3561 When inputting the nfs server in secondary storage, if once it’s required, it al...
CLOUDSTACK-3364 normal users are not allowed to edit their own iso...
CLOUDSTACK-3266 [UI] Failed to delete Anti affinitygroup for the first time ...
CLOUDSTACK-3252 An instance deployed using explicit or implicit dedication doesn’t generate a us...
CLOUDSTACK-3247 Removing a Disconnected Host throws a NoTransitionException...
CLOUDSTACK-3156 needs proper message for failing Add nic command when vmware tools is not instal...
CLOUDSTACK-3067 UI for Dedicating POD/Cluster/Host is misleading Icons should be changed....
CLOUDSTACK-3027 Object_Store_Refactor - Uploaded template S3 content-type is not appropriate....
CLOUDSTACK-2895 Can’t start a VM with 3 volumes attached [VMWare]...
CLOUDSTACK-2766 [VPC] [UI] Firewall service should not be enabled for acquired public IPs in VPC...
CLOUDSTACK-2687 NPE with deploy VM when there are no resources available ...
CLOUDSTACK-2570 [UI]Resource Name is mentioned twice with view VNMC devices ...
CLOUDSTACK-2562 [VMWARE] As per the code, currently CloudStack fails to program PF/NAT/LB rules ...
CLOUDSTACK-2428 HA - When the master host is disconnected , the host status contines to remain i...
CLOUDSTACK-2414 NPE while deleting Cisco VNMC provider...
CLOUDSTACK-2396 PVLAN - Should not be allowed to create multiple networks with same Vlan associ...
CLOUDSTACK-2199 ID parameter of UpdateConfiguration API should be changed to a different name...
CLOUDSTACK-2141 During HA process , dead lock is detected - Caused by: com.mysql.jdbc.exception...
CLOUDSTACK-1970 Ubuntu - “cloudstack-setup-management” not available in “/usr/bin”...
CLOUDSTACK-1889 [UI] Consumed Resource usage details are not available for all the resources...
CLOUDSTACK-1868 GetVmStatsCommand throws NullPointerException with VMWare...
CLOUDSTACK-1762 [MultipleIpsToNic] addIpToNic should not let network id or broadcast to be assig...
CLOUDSTACK-1637 LDAP:UI related issues...

Known Issues in 4.3.2

Apache CloudStack uses Jira to track its issues. All new features and bugs for 4.3 have been tracked in Jira, and have a standard naming convention of “CLOUDSTACK-NNNN” where “NNNN” is the issue number.

Bug ID Description
CLOUDSTACK-6014 Contrail:MS:syncDomain java.net.ConnectException: Connection refused ...
CLOUDSTACK-6070 Contrail:Static NAT: Unable to create virtual-machine-interface ...
CLOUDSTACK-6071 Contrail:MS:DB: DBSync exceptions in MS log ...
CLOUDSTACK-6088 LDAP Server for User Authentication doc doesn’t specify how authenticate a user ...
CLOUDSTACK-6270 show error unable to create a deployment for vm during completely add instance ...
CLOUDSTACK-7151 vmware: Type of vSwitch was not detected correctly while preparing public/guest ...
CLOUDSTACK-7297 HA VM options is disabled for VMs created on CLVM primary storage...

Known Issues in 4.3.1

Apache CloudStack uses Jira to track its issues. All new features and bugs for 4.3 have been tracked in Jira, and have a standard naming convention of “CLOUDSTACK-NNNN” where “NNNN” is the issue number.

Bug ID Description
CLOUDSTACK-7151 vmware: Type of vSwitch was not detected correctly while preparing public/guest ...
CLOUDSTACK-7578 XenServerInvestigator should do better investigation in case of OVS or other net...
CLOUDSTACK-6485 [vpc] new private gateway network is registered wrong in network table...
CLOUDSTACK-6927 Security group python script has several issues...
CLOUDSTACK-7291 LXC: Mgmt server/agent keeps killing systemvms...
CLOUDSTACK-7297 HA VM options is disabled for VMs created on CLVM primary storage...
CLOUDSTACK-7572 Virtual Console Proxy url domain...

Known Issues in 4.3.0

For the list of known issues, see Known Issues in 4.3.

Bug ID Description
CLOUDSTACK-4787 Allow selection of scsi controller type in vSphere...
CLOUDSTACK-6024 template copy to primary storage uses a random source secstorage from any zone...
CLOUDSTACK-4912 API docs are missing some APIs...
CLOUDSTACK-5124 Simulator: Virtual Router fails to start because of improper version returned by...
CLOUDSTACK-5262 Few of the snapshot creation from ROOT volume fails when there are concurrent s...
CLOUDSTACK-5356 Xenserver - Failed to create snapshot when secondary store was made unavaibale f...
CLOUDSTACK-5357 Xenserver - Failed to create snapshot due to “unable to destroy task(com.xe nsou...
CLOUDSTACK-5358 API: synchronization on the object is broken...
CLOUDSTACK-5372 Xenserver - SR not being recreated when the Primary storage is brought down and ...
CLOUDSTACK-5429 KVM - Primary store down/Network Failure - Hosts attempt to reboot becasue of pr...
CLOUDSTACK-5452 KVM - Agent is not able to connect back if management server was restarted when ...
CLOUDSTACK-5469 Snapshot creation fails with following exception - “Failed to backup snapshot: q...
CLOUDSTACK-5485 Vmware - Whe 10 hourly snapshots are scheduled at the same time , we see only 5 ...
CLOUDSTACK-5494 the dns resolver servers on the VRs are open to the world...
CLOUDSTACK-5499 Vmware -When nfs was down for about 12 hours and then brought back up again , s...
CLOUDSTACK-5501 Unable to create more than one vpnConnection per vpn customer gateway...
CLOUDSTACK-5582 kvm - HA is not triggered when host is powered down since the host gets into “Di...
CLOUDSTACK-5746 [HyperV]Can’t access vm console from IE browser...
CLOUDSTACK-5806 Storage types other than NFS/VMFS can’t overprovision...
CLOUDSTACK-5818 [Hyper-v]Agent status of the System VMs is not updated during Host disconnect...
CLOUDSTACK-5825 Create snapshot API always returns success...
CLOUDSTACK-5882 UI has different fonts and font sizes...
CLOUDSTACK-5899 Contrail:MS: Exceptions in MS logs on a fresh install, syncDomain java.lang.Nul...
CLOUDSTACK-5928 [VM Sync] - Vmware - When a Vm is “suspended” from outside of CloudStack , this ...
CLOUDSTACK-5929 [VM Sync] - Vmware - Even when starting Vm fails, startVirtualMachine async job ...
CLOUDSTACK-5961 CLONE - API: synchronization on the object is broken...
CLOUDSTACK-6050 A limitations on min-max on CPU/RAM for a dynamic offering ...
CLOUDSTACK-6051 VR Rolling upgrade: Make the numbers of Routers parallely being upgraded as conf...
CLOUDSTACK-6063 CLONE - Non windows instances are created on XenServer with a vcpu-max above sup...
CLOUDSTACK-6065 No HA for shutdown VM...
CLOUDSTACK-6079 a broadcast type of a public network is affected by another physical network’s i...
CLOUDSTACK-77 console proxy display issues...
CLOUDSTACK-107 Network domain guest suffix is not getting programmed as part of hostnames on Gu...
CLOUDSTACK-237 StopVMCommand reported success in spite of failing to stop a VM which got stuck ...
CLOUDSTACK-238 vpn:fail to connect to vpnserver using non-sourceNAT IP...
CLOUDSTACK-252 UpdateNetwork Operation on a guest network that is currently using Virtual Route...
CLOUDSTACK-255 Null pointer exception while creating portforwarding rule after performing Updat...
CLOUDSTACK-317 get xcp 1.5 into an advanced network zone...
CLOUDSTACK-375 Unable to delete physical network - because there are other networks attached...
CLOUDSTACK-425 Check image type is qcow2 before actually installing...
CLOUDSTACK-992 Template creations dies after 2h for no reason...
CLOUDSTACK-1007 Not able to delete Shared network because of not being able to stop the router....
CLOUDSTACK-1091 Fix API server’s parsing mechanism for POST requests...
CLOUDSTACK-1092 Fix API Server’s parsing mechanism to parse GET request as multimap...
CLOUDSTACK-1309 Large guest subnets downgrade performance...
CLOUDSTACK-1389 Interactive Password Prompts during Management Server Startup...
CLOUDSTACK-1413 Need something to concretely identify the version of the code in a particular bu...
CLOUDSTACK-1527 Non-fatal POSTIN scriptlet failure in rpm package cloudstack-management-4.2.0-SN...
CLOUDSTACK-1717 AWS Regions - Local region entry that gets added by default should not include ”...
CLOUDSTACK-1885 Broken testcases in 4.1...
CLOUDSTACK-1990 Docs: Update “Choosing a Hypervisor” feature matrix with new info...
CLOUDSTACK-2004 IPV6 - UI - Router details page - NICs tab - Guest traffic type does not displa...
CLOUDSTACK-2009 IPV6 - listNetwork() command does not return ip6dns1 and ip6dns2 entries....
CLOUDSTACK-2022 IPV6 - ListRouter() should return guestip6address parameter similar to guestaddr...
CLOUDSTACK-2023 IPV6 - Dashboard View - System wide Capacity for Shared Network IPs does not inc...
CLOUDSTACK-2026 IPV6 - UI - Provide the ability to turn off all the IPV6 parameters by using a g...
CLOUDSTACK-2099 Not able to add a host after a failed attempt to add the host to a wrong cluster...
CLOUDSTACK-2112 VM went in stopped state after live migration failed while vmscaleup...
CLOUDSTACK-2191 sanity tests for “EIP : Optional public IP” changes ...
CLOUDSTACK-2291 [BasicZone-XenServer] NPE while trying DeleteNetworkCmd...
CLOUDSTACK-2293 [BasicZone-XenServer] DeletePhysicalNetworkCmd is not deleting the external devi...
CLOUDSTACK-2412 [UI]Disable CiscoVnmc provider for PF/SourceNat/StaticNAT/Firewall dropdown list...
CLOUDSTACK-2418 [GSLB] NPE while removing the GSLB enabled Netscaler device...
CLOUDSTACK-2471 test_host_high_availability.py refers to non-existent library method wait_for_vm...
CLOUDSTACK-2501 Scalevm - Need to take care of upgraded vms...
CLOUDSTACK-2790 AWSAPI: packaging includes all .class files bloating size of the RPM...
CLOUDSTACK-2795 Create template failed...
CLOUDSTACK-2845 [DB upgrade] [ExternalLoadBalancer NetworkUsage] Duplicate entries in the databa...
CLOUDSTACK-2853 Cloudstack copies xenserver scripts while adding host even the server is KVM hos...
CLOUDSTACK-2860 Add new host into VMWare Cluster failed...
CLOUDSTACK-2910 SC: Ctrl combinated with >. is not working of SC IME...
CLOUDSTACK-2911 KO: Key translation fails for KO keyboard Right Alt, Han/Eng, Hanja keys...
CLOUDSTACK-2919 Snapshot cannot be saved to full Secondary Storage, but doesn’t utilize other Se...
CLOUDSTACK-3066 No Error message is popped up on UI when a dedicated resource is dedicated to an...
CLOUDSTACK-3095 [UI][API]Able to add multiple tier networks to a deployed VM using “Add network”...
CLOUDSTACK-3111 [UI] Storage tab is not showing the Hypervisor column as ‘KVM’ if the (root/data...
CLOUDSTACK-3186 Duplicate entries in /etc/hosts file on VR after reboot...
CLOUDSTACK-3195 cannot view/delete forward rules if underlying/target VM is destroyed first...
CLOUDSTACK-3197 UI: NTier: User is required to scroll down every single time to “Create Network”...
CLOUDSTACK-3212 [Advanced_With_SG]View IP Address Range in Default Guest Network page does not s...
CLOUDSTACK-3272 EventBus: add global config parameters to specify which category of events are p...
CLOUDSTACK-3338 Please provide an icon for “assignVMs” action in internal LB rule detailView...
CLOUDSTACK-3518 G11n: JA,SC: Un translation issue occurred on the strings of different UI Specif...
CLOUDSTACK-3519 G11n: JA,SC: Un translation issue occurred on the strings of different dropdown ...
CLOUDSTACK-3520 G11n: JA,SC: Un translation issue occurred on the strings of different error/war...
CLOUDSTACK-3521 G11n: JA,SC: Un translation issue occurred on the strings of different tooltips....
CLOUDSTACK-3522 G11n: JA,SC: Un translation issue occurred on the strings of different buttons. ...
CLOUDSTACK-3523 G11n: JA,SC: Un translation issue occurred on the strings of different popup mes...
CLOUDSTACK-3528 [UI]list calls are in the processing state forever with invalid name provided wi...
CLOUDSTACK-3579 [DOC]CLONE - Physical Netwok traffic label update requires Management Server res...
CLOUDSTACK-3607 “guest_os_hypervisor” table has values that are not registered in “guest_os” tab...
CLOUDSTACK-3608 “guest_os_hypervisor” table has repeated mappings of hypervisor and guest OS...
CLOUDSTACK-3656 lots of cloud-management should be changed to cloudstack-management...
CLOUDSTACK-3788 [KVM] Weekly Snapshot got stuck in “Allocated State”...
CLOUDSTACK-3813 “Service.provider.create” event doesnt mention about the Service Provider in the...
CLOUDSTACK-3880 /sbin/poweroff et al or ACPID initiated shutdown does not stop cloudstack-[usage...
CLOUDSTACK-3952 Persist VR nic details in DB for additional public ranges...
CLOUDSTACK-3973 [GSLB] [LOGS Message] Improving logs messages for GSLB rule configuration...
CLOUDSTACK-4016 [PortableIP] [VPC] listPublicIpAddresses lists the portable IP that was already ...
CLOUDSTACK-4139 [VMWARE]Failed to resize the volumes which are created from snapshot of root vol...
CLOUDSTACK-4475 [ZWPS] attaching an uploaded volume to a VM is always going to first primary sto...
CLOUDSTACK-4517 [upgrade][Vmware]Deployment of VM using centos 6.2 template registered before up...
CLOUDSTACK-4536 [object_store_refactor] Inconsistency in volume store location on secondary stor...
CLOUDSTACK-4568 Need to add this to the release note of 4.2...
CLOUDSTACK-4587 VM is failing to deploy on a Legacy zone after adding zone wide primary storage ...
CLOUDSTACK-4644 Tool Tip information is not provided for the new fields which are added in 4.2 (...
CLOUDSTACK-4789 Fix ResourceMetaDataManagerTest...
CLOUDSTACK-4906 add netaddr to marvin dependency list...
CLOUDSTACK-4918 VR can not be LB service provider without requiring to be source nat service pro...
CLOUDSTACK-4951 [event framework] Action events do not have UUID ...
CLOUDSTACK-4987 Able to add isolated network belonging to an account to a virtual machine belong...
CLOUDSTACK-5043 [DOC] Page number missing and words truncated in PDFs since 4.1.1...
CLOUDSTACK-5044 Configuration Framework Issue...
CLOUDSTACK-5090 Anti-Affinity: VM fails to start on a cluster belonging to a different pod....
CLOUDSTACK-5157 Loadbalancer Response should include stickiness, health check and ssl certs info...
CLOUDSTACK-5243 SSVM responds with timestamp...
CLOUDSTACK-5251 No Error message is displayed when nonexistent NFS secondary storage is added t...
CLOUDSTACK-5296 Add certificate chain support for NS...
CLOUDSTACK-5307 Same router is listed twice in router view of project...
CLOUDSTACK-5324 error message not proper when start VM fails because router reuires upgrade...
CLOUDSTACK-5342 [Automation] Add NIC to virtual machine fails in KVM...
CLOUDSTACK-5359 Failed to add second VMWARE cluster on a standard vSwitch enabled zone when vCen...
CLOUDSTACK-5373 Web UI (non-English) is corrupted by text expansion...
CLOUDSTACK-5395 When backup snapshot fails becasue of backup.snapshot.wait time exceeding , the ...
CLOUDSTACK-5410 Changes for tracking logs using jobid is missing in 4.3...
CLOUDSTACK-5445 DeleteImageStoreCmd does not use storage plugins to delete storage...
CLOUDSTACK-5446 KVM-Secondary Store down-Even after secondary store is brought back up after bei...
CLOUDSTACK-5463 Hyper-V does not report stopped VMs...
CLOUDSTACK-5474 EventBus: RabbitMQ provider expects password to be stored in plain text....
CLOUDSTACK-5475 cluster.cpu/(memory).allocated.capacity.disablethreshold is getting displayed mu...
CLOUDSTACK-5479 Upgrading service offering of stopped vm should release the reserved capacity of...
CLOUDSTACK-5482 Vmware - When nfs was down for about 1 hour , when snapshots were in progress , ...
CLOUDSTACK-5488 KVM:agent is still in stopped state even after host recovered from sudddent powe...
CLOUDSTACK-5504 Vmware-Primary store unavailable for 10 mts - All snapshot tasks reported failur...
CLOUDSTACK-5512 template format name checking is crude and doesn’t work with advanced URLs...
CLOUDSTACK-5536 Restarting cloudstack service with template download in progress creates redunda...
CLOUDSTACK-5546 Extra tab for adding rules displayed for non-elb networks...
CLOUDSTACK-5550 UI - Api key and secret key not fully visible in user detail view....
CLOUDSTACK-5561 support of multiple nics for VR running in HyperV...
CLOUDSTACK-5563 path field is set to null in volumes table ...
CLOUDSTACK-5576 RemoteVPNonVPC : Label needs to be changed to “Enable Remote Access VPN”...
CLOUDSTACK-5583 vmopsSnapshot plug-in (XenServer) does not return an error when it should...
CLOUDSTACK-5600 Xenserver - After HA , CPVM’s disk is corrupted resulting in CPVM being stuck in...
CLOUDSTACK-5616 [DBHA]:There is no way to know to which DB is the CS writing in the case of DBHA...
CLOUDSTACK-5632 [Automation] XenServer - Template deletion fails with error “Please specify a te...
CLOUDSTACK-5645 Agent manager doesn’t need to be aware of vms and their relationship to resource...
CLOUDSTACK-5673 [Hyper-V] Default IP address never configured on eth0 with default CentOS templa...
CLOUDSTACK-5685 [Vmsync] - When VR is rebooted outside of cloudstack , there is no change in sta...
CLOUDSTACK-5700 [Vmsync] - kvm- “paused” state of Vm is not synced to CS....
CLOUDSTACK-5719 [UI] Not listing shared network offerings tagged on second physical network...
CLOUDSTACK-5724 Console Proxy View - when using ctl c , errors seen on the console proxy view....
CLOUDSTACK-5743 Download ROOT Volume when the VM is in stopped state is failing with “Forbidden...
CLOUDSTACK-5744 [Hyper-v] White screen on console window when more than two console sessions are...
CLOUDSTACK-5753 [Hyper-v] ConsoleProxyLoadReportCommand does not honor the default value of cons...
CLOUDSTACK-5762 [dynamic compute offerings]UI change required for select compute offerinngs in ...
CLOUDSTACK-5785 VM display name cell not updated upon detaching volume from VM...
CLOUDSTACK-5794 [Hyper-v] Specify username and domain name together in the username field while ...
CLOUDSTACK-5798 While attaching a disk to WIN2012 VM with xencenter tools installed got error as...
CLOUDSTACK-5800 While creating a VM from template (which is created based on existing newly crea...
CLOUDSTACK-5807 Problem with shared datastore in VMware cluster with only one host...
CLOUDSTACK-5809 Not able to deploy Vm becasue of crossing pool.storage.allocate d.capacity.disab...
CLOUDSTACK-5822 ssh keypairs are removed after rebooting vm...
CLOUDSTACK-5834 [upgrade]Error while collecting disk stats from : You gave an invalid object ref...
CLOUDSTACK-5836 When tried to reverting back to (disk attached)quiesced vm snapshot, got error a...
CLOUDSTACK-5843 registering templates/isos should be either async or changed to non-blocking...
CLOUDSTACK-5845 [doc] Document Heterogeneous Secondary Storage Not Supported in Region...
CLOUDSTACK-5847 [Hyper-V] [doc] Document creation of external vswitch for Hyper-V 2012 R2 (unlik...
CLOUDSTACK-5855 Contrail: Slave compute host restarts when the master compute host is changed to...
CLOUDSTACK-5862 Template life cycle needs to be changed based on references of existing VMs to t...
CLOUDSTACK-5866 Remove maven profile used to configure zone...
CLOUDSTACK-5876 Contrail: After vrouter restart agent doesnt have info about the Network...
CLOUDSTACK-5879 Document on how to use RabbitMq event bus with spring modularisation done in 4.3...
CLOUDSTACK-5897 Remove OVM in add cluster drop down list...
CLOUDSTACK-5907 KVM/CLVM volumes are shown as Ovm hypervisor...
CLOUDSTACK-5908 Fail to add VXLAN network to instance...
CLOUDSTACK-5910 mark the LDAP user as imported from LDAP...
CLOUDSTACK-5920 CloudStack IAM Plugin feature...
CLOUDSTACK-5926 [Doc] Create 4.3 Release Notes...
CLOUDSTACK-5931 Hyper-V agent does not release logon handle...
CLOUDSTACK-5932 SystemVM scripts: the iso download urls need updating as current ones are obsole...
CLOUDSTACK-5933 Problem with VMware snapshot when datastore has a space in its name...
CLOUDSTACK-5934 Problem with VMware snapshot when datastore has a space in its name...
CLOUDSTACK-5935 Problem with VMware snapshot when datastore has a space in its name...
CLOUDSTACK-5947 Exception for getRootDir.. NFSStorage when running with Simulator...
CLOUDSTACK-5951 Fix base.py for Dynamic compute offerings...
CLOUDSTACK-5954 update-ssl.png missing from docs...
CLOUDSTACK-5955 vm stuck in migrating if mgmt server is restarted...
CLOUDSTACK-5962 Value of Global parameter “custom.diskoffering.size.min” is not reflected in UI ...
CLOUDSTACK-5972 [DOC] Service monitoring enable/disable from global setting...
CLOUDSTACK-5976 [upgrade]Typo in “ssh_keypairs” table’s foreign key constraints on the Upgraded ...
CLOUDSTACK-5982 Fix response name for assign and unassign cert from lb...
CLOUDSTACK-5984 addvmwaredc API call is not documented ...
CLOUDSTACK-5990 [UI]: search by username while importing ldap users...
CLOUDSTACK-5991 [UI]Infinite scrolling should be enabled to the Ldap user add page...
CLOUDSTACK-5992 [Upgrade] default values of configuraiton parameters in configuration table are ...
CLOUDSTACK-6032 [VmScaleup]service offering id is not getting changed in usage_vm_instance table...
CLOUDSTACK-6043 VMware detaching volume fails if volume has snapshots...
CLOUDSTACK-6053 While adding smb as primary or secondary the password should be uri encoded...
CLOUDSTACK-6069 can’t create privatgateway with vlan in a mixed network env...
CLOUDSTACK-6072 vxlan networks not deallocating vnet ids...
CLOUDSTACK-6075 Increase the ram size for router service offering ...
CLOUDSTACK-124 NetworkGarbageCollector not cleaning up networks...
CLOUDSTACK-231 Tag creation using special charecters ...
CLOUDSTACK-245 VPC ACLs are not stored and programmed consistently...
CLOUDSTACK-270 Ui should not ask for a vlan range if the physical network isolation type is not...
CLOUDSTACK-300 Creation of compute offering allow combination of local storage + HA...
CLOUDSTACK-310 Failed to add host - Plugin error...
CLOUDSTACK-315 Infrastructure view does not show capacity values...
CLOUDSTACK-338 Unique Names of Disk and Service Offerings in the database are prefixed with “Cl...
CLOUDSTACK-458 xen:snapshots:Storage gc fail to clean the failed snapshot images from secondary...
CLOUDSTACK-469 CloudStack Documentation Landing Page has Alignment Issues...
CLOUDSTACK-963 [cloud.utils.AnnotationHelper] class java.lang.Stringdoes not have a Table anno...
CLOUDSTACK-969 api: zone response lists vlan in it as “vlan range of zone” but the vlan belongs...
CLOUDSTACK-1306 Better Error message when trying to deploy Vm by passing static Ipv4 addresses t...
CLOUDSTACK-1432 [UI] Inconsistent field names in “Add Cluster” dialog...
CLOUDSTACK-1471 Pop up window for host details/(host related operation) are not properly alligne...
CLOUDSTACK-1524 “White-box” effect changes when changing value in combo box...
CLOUDSTACK-1725 publican update_pot might overwrite license headers ...
CLOUDSTACK-1932 AutoScale UI documentation doesn’t mention the option appears only for NetScaler...
CLOUDSTACK-2000 CS4.1 Installation document - cloud-install-sys-tmplt command documented in wron...
CLOUDSTACK-2213 russian language select failure...
CLOUDSTACK-2345 [GSLB] deleting GSLB rules is not cleaning server info from GSLB device...
CLOUDSTACK-2436 Message “You do not have any affinity groups. Please continue to the next step.”...
CLOUDSTACK-2439 “Domain” field under login page should be mandatory for the non root accounts....
CLOUDSTACK-2449 Dropdown menu for action button scaleup System VM shows all service offering inc...
CLOUDSTACK-2453 Select view dropdown under “Network” is listing the options in the absence of ad...
CLOUDSTACK-2464 [GSLB][UI] “Add GSLB” wizard doesn’t prompt for “PersistenceType”...
CLOUDSTACK-2533 Add Network to VM dialog should only show those network in the dropdown which ar...
CLOUDSTACK-2535 Cleanup port-profiles that gets created on Nexus switch as part of network clean...
CLOUDSTACK-2559 [UI]Resource Name should not be present in UI as it is not available in listASA1...
CLOUDSTACK-2605 Add Network to VM Command button should not be displayed for VMs belonging to B...
CLOUDSTACK-2697 cluster id in alert message is null {alertType:: 1 // dataCenterId:: 1 // podId:...
CLOUDSTACK-2714 Setting tab should not be visible for user accounts ...
CLOUDSTACK-2951 [UI][Mixed-Zone-Management] during “add Instance” wizard, listTemplates API is n...
CLOUDSTACK-2993 [PortableIPRange] remove some of the unused columns if they are not required fro...
CLOUDSTACK-3025 The page and pagesize parameters are not working in ListCfgsByCmds with zoneid s...
CLOUDSTACK-3063 [UI]Dedicating a host to non-root domain which has instances of other domain(ro...
CLOUDSTACK-3101 [DR] list* APIs are not working based on the display* flags ...
CLOUDSTACK-3225 Multiple NPEs when cloudstack-management service is restarted with incomplete ta...
CLOUDSTACK-3265 [Health Check for NS LB]Failure to create a lb health check policy returns a API...
CLOUDSTACK-3325 [UI] [GSLB]: add text box to specify weight for each load balancer participating...
CLOUDSTACK-3406 UI: ZWPS: Zone wizard: Primary storage creation failed after “fix error” in “add...
CLOUDSTACK-3477 resizeDataVolume doesn’t return proper error message when trying to shrink volum...
CLOUDSTACK-3553 [UI]UI remains in the processing state forever when it failed to delete primary ...
CLOUDSTACK-3671 Set Host, Management Network and Storage Network Properly when there are multipl...
CLOUDSTACK-3815 “SNAPSHOT.CREATE” event’s states are not registered on the events table ...
CLOUDSTACK-3895 VM Migration across VMWARE clusters which are added with different switches(Stan...
CLOUDSTACK-3896 [PrimaryStorage] deleteStoragePool is not kicking GC for the downloaded system v...
CLOUDSTACK-3994 Wrong error notification is generated when Primary storage (Cluster wide) is add...
CLOUDSTACK-3995 No error notification is generated when Primary storage (Zonelevel) is added wit...
CLOUDSTACK-4071 [UI] - Word ‘Default’ is misspelled in descripiton of integration.api.port under...
CLOUDSTACK-4183 [Non-Contiguous VLAN] Typos Appear in an Error Message...
CLOUDSTACK-5033 ipaddress in management-server.log and api.log are wrong if management servers i...
CLOUDSTACK-5309 version number and requires upgrade fields are not displayed for routers when na...
CLOUDSTACK-5383 Multiselect actions are not reset when a multiselect action is performed...
CLOUDSTACK-5524 [UI]”root disk size” field should be removed from the add instance wizard since ...
CLOUDSTACK-5824 Delete snapshot UI always success...
CLOUDSTACK-5885 When process receives error, loading overlay on listView element does not disapp...
CLOUDSTACK-5912 WARN [c.c.h.v.m.HttpNfcLeaseMO] (Thread-28:null) Unexpected exception...
CLOUDSTACK-5522 Need of one more column i.e., “Name” at Home>Storage - Snapshots...
CLOUDSTACK-5904 Small UI bug...

Compatibility Matrix

Supported OS Versions for Management Server

This section describes the operating systems, browsers, and hypervisors that have been newly tested and certified compatible with CloudStack 4.3. Most earlier OS and hypervisor versions are also still supported for use with 4.3. It might work well on other platforms, but the platforms listed below are the ones that are specifically tested against and are more likely to be able to help troubleshoot if you run into any issues.

注釈

that specific versions of the operating systems are tested, so compatibility with CentOS 6.3 may not indicate compatibility with CentOS 6.2, 6.1 and so on.

  • RHEL versions 5.5, 6.2, 6.3, and 6.4
  • CentOS versions 6.3, and 6.4
  • Ubuntu 12.04 LTS

Supported Hypervisor Versions

CloudStack supports three hypervisor families, XenServer with XAPI, KVM, and VMware with vSphere.

  • Windows Server 2012 R2 (with Hyper-V Role enabled)

  • Hyper-V 2012 R2

  • CentOS 6.2 with KVM

  • Red Hat Enterprise Linux 6.2 with KVM

  • XenServer 6.0.2 (with Hotfix)

  • XenServer versions 6.1 and 6.2 SPI with latest hotfixes

  • VMware versions 5.0, 5.1, and 5.5

  • Bare metal hosts are supported, which have no hypervisor. These hosts can run the following operating systems:

    • RHEL or CentOS, v6.2 or 6.3

      注釈

      Use libvirt version 0.9.10 for CentOS 6.3

    • Fedora 17

    • Ubuntu 12.04

For more information, see the Hypervisor Compatibility Matrix in the CloudStack Installation Guide.

Supported External Devices

  • Netscaler VPX and MPX versions 9.3 and 10.e
  • Netscaler SDX version 9.3
  • SRX (Model srx100b) versions 10.3 or higher
  • F5 10.1.0 (Build 3341.1084)

Supported Browsers

The CloudStack Web-based UI should be compatible with any modern browser, but it’s possible that some browsers will not render portions of the UI reliably, depending on their support of Web standards. For best results, one of the following browsers recommended:

  • Internet Explorer versions 10 and 11
  • Firefox version 26 or lower
  • Google Chrome version 31
  • Safari 5

General Upgrade Notes

Depreciation of realhostip.com

The realhostip.com dynamic DNS resolution service is being retired on September 30th, 2014. In advance of that, CloudStack 4.4 and later no longer uses realhostip.com DNS domains or SSL certificates to encrypt Console Proxy or file copy communications.

For latest update about realhostip.com follow Apache CloudStack Blog.

Settings Changes

Console Proxy URL

Please use *.realhostip.com (note the asterisk) as consoleproxy.url.domain value in global configs if you are using HTTPS for console proxy. Please note that you need to restart the management server when you change the global config value.

If you started with 4.3, you are likely running the console in HTTP mode and the value of the above global config should be blank.

If switching between HTTP / HTTPS, the console proxy VM has to be destroyed and recreated (available via UI)

Cluster Settings

After upgrading to 4.2 and later, Settings mem.overporvisioning.factor and cpu.overporvisioning.factor are now at the cluster level and be set to 1 which is the default.

If Global Settings mem.overporvisioning.factor and cpu.overporvisioning.factor have been changed prior the upgrade to 4.2 and later, the upgrade process will be reset them to 1. Values can be changed by editing clusters settings.

All clusters created after the upgrade will get created with the Global Settings values for mem.overporvisioning.factor and cpu.overporvisioning.factor.

Active-Directory Authentication (LDAP)

If using Active-Directory (LDAP/LDAPs) as user authentication; Upgrading to 4.3 and later require changes in Global Settings. After upgrading CloudStack to 4.3 or latest, following Global Settings must be change:

Global Settings Default New
ldap.user.object inetOrgPerson user
ldap.username.attribute uid sAMAccountName

SystemVM 32bit deprecated

32bit version of systemvm templates are in the process of behing deprecated. Upgrade instructions from this Release Notes use 64bit templates. 32bit systemvm-templates are available for this version on http://cloudstack.apt-get.eu/systemvm/4.4/. Follow the dev mailing list for further updates.

Upgrade Instructions for 4.3

This section contains upgrade instructions from prior versions of CloudStack to Apache CloudStack 4.3. We include instructions on upgrading to Apache CloudStack from pre-Apache versions of Citrix CloudStack (last version prior to Apache is 3.0.2) and from the releases made while CloudStack was in the Apache Incubator.

If you run into any issues during upgrades, please feel free to ask questions on users@cloudstack.apache.org or dev@cloudstack.apache.org.

Validate 4.3 source code tarball

  1. Perform the following to verify the artifacts:

    1. (optional) Install GPG keys if needed:

      $ sudo apt-get install gpg
      
    2. Import the GPG keys stored in the source distribution’s KEYS file

      $ gpg --import KEYS
      

      Alternatively, download the signing keys, the IDs found in the KEYS file, individually by using a keyserver.

      For example:

      $ gpg --recv-keys CC56CEA8
      
    3. Get files, refer to CloudStack Download Archive Page for source package download.

      $ wget http://archive.apache.org/dist/cloudstack/releases/4.3.1/apache-cloudstack-4.3.1-src.tar.bz2
      $ wget http://archive.apache.org/dist/cloudstack/releases/4.3.1/apache-cloudstack-4.3.1-src.tar.bz2.asc
      $ wget http://archive.apache.org/dist/cloudstack/releases/4.3.1/apache-cloudstack-4.3.1-src.tar.bz2.md5
      
    4. Verify signatures and hash files:

      $ gpg --verify apache-cloudstack-4.3.1-src.tar.bz2.asc
      $ gpg --print-md MD5 apache-cloudstack-4.3.1-src.tar.bz2 | diff - apache-cloudstack-4.3.1-src.tar.bz2.md5
      $ gpg --print-md SHA512 apache-cloudstack-4.3.1-src.tar.bz2 | diff - apache-cloudstack-4.3.1-src.tar.bz2.sha
      

      Each of these commands should return no output. Any output from them implies that there is a difference between the hash you generated locally and the hash that has been pulled from the server.

    5. Get the commit hash from the VOTE email.

      For example: 4cd60f3d1683a3445c3248f48ae064fb573db2a1. The value changes between releases.

    6. Create two new temporary directories:

      $ mkdir /tmp/cloudstack/git
      $ mkdir /tmp/cloudstack/tree
      
    7. Check out the 4.3 branch:

      $ git clone https://git-wip-us.apache.org/repos/asf/cloudstack.git /tmp/cloudstack/git
      $ cd /tmp/cloudstack/git
      $ git archive --format=tar --prefix=/tmp/cloudstack/tree/ <commit-hash> | tar Pxf -
      
    8. Unpack the release artifact:

      $ cd /tmp/cloudstack
      $ tar xvfj apache-cloudstack-4.3-src.tar.bz2
      
    9. Compare the contents of the release artifact with the contents pulled from the repo:

      $ diff -r /tmp/cloudstack/apache-cloudstack-4.3-src /tmp/cloudstack/tree
      

      Ensure that content is the same.

    10. Verify the Code License Headers:

      $ cd /tmp/cloudstack/apache-cloudstack-4.3-src
      $ mvn --projects='org.apache.cloudstack:cloudstack' org.apache.rat:apache-rat-plugin:0.8:check
      

      The build fails if any non-compliant files are present that are not specifically excluded from the ASF license header requirement. You can optionally review the target/rat.txt file after the run completes. Passing the build implies that RAT certifies that the files are compliant and this test is passed.

Upgrade from 4.3.1 to 4.3.2

This section will guide you from CloudStack 4.3.1 to CloudStack 4.3.2.

Any steps that are hypervisor-specific will be called out with a note.

We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system.

注釈

The following upgrade instructions should be performed regardless of hypervisor type.

  1. Most users of CloudStack manage the installation and upgrades of CloudStack with one of Linux’s predominant package systems, RPM or APT. This guide assumes you’ll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu).

  2. Create RPM or Debian packages (as appropriate) and a repository from the 4.3 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members.

    Instructions for creating packages from the CloudStack source are in the CloudStack Installation Guide.

  3. Stop your management server or servers. Run this on all management server hosts:

    $ sudo service cloudstack-management stop
    
  4. If you are running a usage server or usage servers, stop those as well:

    $ sudo service cloudstack-usage stop
    
  5. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You’ll be prompted for your password.

    $ mysqldump -u root -p cloud > cloudstack-backup.sql
    $ mysqldump -u root -p cloud_usage > cloud_usage-backup.sql
    
  6. (KVM Only) If primary storage of type local storage is in use, the path for this storage needs to be verified to ensure it passes new validation. Check local storage by querying the cloud.storage_pool table:

    $ mysql -u cloud -p -e "select id,name,path from cloud.storage_pool where pool_type='Filesystem'"
    

    If local storage paths are found to have a trailing forward slash, remove it:

    $ mysql -u cloud -p -e 'update cloud.storage_pool set path="/var/lib/libvirt/images" where path="/var/lib/libvirt/images/"';
    
  7. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step upgrade-rpm-packages-4.3.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. Now update your apt package list:

      $ sudo apt-get update
      
    2. Now that you have the repository configured, it’s time to upgrade the cloudstack-management package.

      $ sudo apt-get upgrade cloudstack-management
      $ sudo apt-get upgrade cloudstack-usage
      
    3. Now it’s time to start the management server

      $ sudo service cloudstack-management start
      
    4. If you use it, start the usage server

      $ sudo service cloudstack-usage start
      
  8. (VMware only) Additional steps are required for each VMware cluster. These steps will not affect running guests in the cloud. These steps are required only for clouds using VMware clusters:

    1. Stop the Management Server:

      $ sudo service cloudstack-management stop
      
    2. Generate the encrypted equivalent of your vCenter password:

      $ java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="_your_vCenter_password_" password="`cat /etc/cloudstack/management/key`" verbose=false
      

      Store the output from this step, we need to add this in cluster_details table and vmware_data_center tables in place of the plain text password

    3. Find the ID of the row of cluster_details table that you have to update:

      $ mysql -u <username> -p<password>
      
      select * from cloud.cluster_details;
      
    4. Update the plain text password with the encrypted one

      update cloud.cluster_details set value = '_ciphertext_from_step_1_' where id = _id_from_step_2_;
      
    5. Confirm that the table is updated:

      select * from cloud.cluster_details;
      
    6. Find the ID of the correct row of vmware_data_center that you want to update

      select * from cloud.vmware_data_center;
      
    7. update the plain text password with the encrypted one:

      update cloud.vmware_data_center set password = '_ciphertext_from_step_1_' where id = _id_from_step_5_;
      
    8. Confirm that the table is updated:

      select * from cloud.vmware_data_center;
      
    9. Start the CloudStack Management server

      $ sudo service cloudstack-management start
      
  9. (KVM only) Additional steps are required for each KVM host. These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure the CloudStack apt repository as detailed above.

    2. Stop the running agent.

      $ sudo service cloudstack-agent stop
      
    3. Update the agent software.

      $ sudo apt-get update cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Start the agent.

      $ sudo service cloudstack-agent start
      
  10. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step restart-system-vms-4.3.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloudstack-management package.

      $ sudo yum upgrade cloudstack-management
      $ sudo yum upgrade cloudstack-usage
      
    2. Now it’s time to restart the management server

      $ sudo service cloudstack-management start
      
    3. For KVM hosts, upgrade the cloudstack-agent package

      $ sudo yum upgrade cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      $ sudo service cloudstack-agent stop
      $ sudo killall jsvc
      $ sudo service cloudstack-agent start
      
  11. Now it’s time to restart the management server

    $ sudo service cloudstack-management start
    
  12. 注釈

    For Xen Hosts: Copy vhd-utils: This step is only for CloudStack installs that are using Xen hosts.

    Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver.

Upgrade from 4.3.0 to 4.3.1

This section will guide you from CloudStack 4.3.0 to CloudStack 4.3.1.

Any steps that are hypervisor-specific will be called out with a note.

We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system.

注釈

The following upgrade instructions should be performed regardless of hypervisor type.

  1. Most users of CloudStack manage the installation and upgrades of CloudStack with one of Linux’s predominant package systems, RPM or APT. This guide assumes you’ll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu).

  2. Create RPM or Debian packages (as appropriate) and a repository from the 4.3 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members.

    Instructions for creating packages from the CloudStack source are in the CloudStack Installation Guide.

  3. Stop your management server or servers. Run this on all management server hosts:

    $ sudo service cloudstack-management stop
    
  4. If you are running a usage server or usage servers, stop those as well:

    $ sudo service cloudstack-usage stop
    
  5. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You’ll be prompted for your password.

    $ mysqldump -u root -p cloud > cloudstack-backup.sql
    $ mysqldump -u root -p cloud_usage > cloud_usage-backup.sql
    
  6. (KVM Only) If primary storage of type local storage is in use, the path for this storage needs to be verified to ensure it passes new validation. Check local storage by querying the cloud.storage_pool table:

    $ mysql -u cloud -p -e "select id,name,path from cloud.storage_pool where pool_type='Filesystem'"
    

    If local storage paths are found to have a trailing forward slash, remove it:

    $ mysql -u cloud -p -e 'update cloud.storage_pool set path="/var/lib/libvirt/images" where path="/var/lib/libvirt/images/"';
    
  7. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step upgrade-rpm-packages-4.3.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. Now update your apt package list:

      $ sudo apt-get update
      
    2. Now that you have the repository configured, it’s time to upgrade the cloudstack-management package.

      $ sudo apt-get upgrade cloudstack-management
      $ sudo apt-get upgrade cloudstack-usage
      
    3. Now it’s time to start the management server

      $ sudo service cloudstack-management start
      
    4. If you use it, start the usage server

      $ sudo service cloudstack-usage start
      
  8. (VMware only) Additional steps are required for each VMware cluster. These steps will not affect running guests in the cloud. These steps are required only for clouds using VMware clusters:

    1. Stop the Management Server:

      $ sudo service cloudstack-management stop
      
    2. Generate the encrypted equivalent of your vCenter password:

      $ java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="_your_vCenter_password_" password="`cat /etc/cloudstack/management/key`" verbose=false
      

      Store the output from this step, we need to add this in cluster_details table and vmware_data_center tables in place of the plain text password

    3. Find the ID of the row of cluster_details table that you have to update:

      $ mysql -u <username> -p<password>
      
      select * from cloud.cluster_details;
      
    4. Update the plain text password with the encrypted one

      update cloud.cluster_details set value = '_ciphertext_from_step_1_' where id = _id_from_step_2_;
      
    5. Confirm that the table is updated:

      select * from cloud.cluster_details;
      
    6. Find the ID of the correct row of vmware_data_center that you want to update

      select * from cloud.vmware_data_center;
      
    7. update the plain text password with the encrypted one:

      update cloud.vmware_data_center set password = '_ciphertext_from_step_1_' where id = _id_from_step_5_;
      
    8. Confirm that the table is updated:

      select * from cloud.vmware_data_center;
      
    9. Start the CloudStack Management server

      $ sudo service cloudstack-management start
      
  9. (KVM only) Additional steps are required for each KVM host. These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure the CloudStack apt repository as detailed above.

    2. Stop the running agent.

      $ sudo service cloudstack-agent stop
      
    3. Update the agent software.

      $ sudo apt-get update cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Start the agent.

      $ sudo service cloudstack-agent start
      
  10. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step restart-system-vms-4.3.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloudstack-management package.

      $ sudo yum upgrade cloudstack-management
      $ sudo yum upgrade cloudstack-usage
      
    2. Now it’s time to restart the management server

      $ sudo service cloudstack-management start
      
    3. For KVM hosts, upgrade the cloudstack-agent package

      $ sudo yum upgrade cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      $ sudo service cloudstack-agent stop
      $ sudo killall jsvc
      $ sudo service cloudstack-agent start
      
  11. Now it’s time to restart the management server

    $ sudo service cloudstack-management start
    
  12. 注釈

    For Xen Hosts: Copy vhd-utils: This step is only for CloudStack installs that are using Xen hosts.

    Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver.

Upgrade from 4.2.x to 4.3

This section will guide you from CloudStack 4.2.x to CloudStack 4.3.

Any steps that are hypervisor-specific will be called out with a note.

We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system.

注釈

The following upgrade instructions should be performed regardless of hypervisor type.

    1. While running the existing 4.2.x system, log in to the UI as root administrator.

    2. In the left navigation bar, click Templates.

    3. In Select view, click Templates.

    4. Click Register template.

      The Register template dialog box is displayed.

    5. In the Register template dialog box, specify the following values (do not change these):

      Hypervisor Description
      XenServer

      Name: systemvm-xenserver-4.3

      Description: systemvm-xenserver-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-xen.vhd.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: XenServer

      Format: VHD

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      KVM

      Name: systemvm-kvm-4.3

      Description: systemvm-kvm-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-kvm.qcow2.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: KVM

      Format: QCOW2

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      VMware

      Name: systemvm-vmware-4.3

      Description: systemvm-vmware-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-vmware.ova

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: VMware

      Format: OVA

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

    6. Watch the screen to be sure that the template downloads successfully and enters the READY state. Do not proceed until this is successful.

  1. Most users of CloudStack manage the installation and upgrades of CloudStack with one of Linux’s predominant package systems, RPM or APT. This guide assumes you’ll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu).

  2. Create RPM or Debian packages (as appropriate) and a repository from the 4.3 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step 8 or step 11.

    Instructions for creating packages from the CloudStack source are in the Installation Guide.

  3. Stop your management server or servers. Run this on all management server hosts:

    $ sudo service cloudstack-management stop
    
  4. If you are running a usage server or usage servers, stop those as well:

    $ sudo service cloudstack-usage stop
    
  5. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You’ll be prompted for your password.

    $ mysqldump -u root -p cloud > cloudstack-backup.sql
    
  6. (KVM Only) If primary storage of type local storage is in use, the path for this storage needs to be verified to ensure it passes new validation. Check local storage by querying the cloud.storage_pool table:

    $ mysql -u cloud -p -e "select id,name,path from cloud.storage_pool where pool_type='Filesystem'"
    

    If local storage paths are found to have a trailing forward slash, remove it:

    $ mysql -u cloud -p -e 'update cloud.storage_pool set path="/var/lib/libvirt/images" where path="/var/lib/libvirt/images/"';
    
  7. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step 11.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the sources list for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have CloudStack packages installed.

      This file should have one line, which contains:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.2
      

      We’ll change it to point to the new package repository:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.3
      

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now update your apt package list:

      $ sudo apt-get update
      
    3. Now that you have the repository configured, it’s time to upgrade the cloudstack-management package.

      $ sudo apt-get upgrade cloudstack-management
      
    4. Now it’s time to start the management server

      $ sudo service cloudstack-management start
      
    5. If you use it, start the usage server

      $ sudo service cloudstack-usage start
      
  8. (VMware only) Additional steps are required for each VMware cluster. These steps will not affect running guests in the cloud. These steps are required only for clouds using VMware clusters:

    1. Stop the Management Server:

      $ sudo service cloudstack-management stop
      
    2. Generate the encrypted equivalent of your vCenter password:

      $ java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="_your_vCenter_password_" password="`cat /etc/cloudstack/management/key`" verbose=false
      

      Store the output from this step, we need to add this in cluster_details table and vmware_data_center tables in place of the plain text password

    3. Find the ID of the row of cluster_details table that you have to update:

      $ mysql -u <username> -p<password>
      
      select * from cloud.cluster_details;
      
    4. Update the plain text password with the encrypted one

      update cloud.cluster_details set value = '_ciphertext_from_step_1_' where id = _id_from_step_2_;
      
    5. Confirm that the table is updated:

      select * from cloud.cluster_details;
      
    6. Find the ID of the correct row of vmware_data_center that you want to update

      select * from cloud.vmware_data_center;
      
    7. update the plain text password with the encrypted one:

      update cloud.vmware_data_center set password = '_ciphertext_from_step_1_' where id = _id_from_step_5_;
      
    8. Confirm that the table is updated:

      select * from cloud.vmware_data_center;
      
    9. Start the CloudStack Management server

      $ sudo service cloudstack-management start
      
  9. (KVM only) Additional steps are required for each KVM host. These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure the CloudStack apt repository as detailed above.

    2. Stop the running agent.

      $ sudo service cloudstack-agent stop
      
    3. Update the agent software.

      $ sudo apt-get update cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Start the agent.

      $ sudo service cloudstack-agent start
      
  10. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step 14.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the yum repository for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent.

      (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

      This file should have content similar to the following:

      [apache-cloudstack]
      name=Apache CloudStack
      baseurl=http://cloudstack.apt-get.eu/rhel/4.2/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the base url to http://cloudstack.apt-get.eu/rhel/4.3/

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloudstack-management package.

      $ sudo yum upgrade cloudstack-management
      
    3. Now it’s time to restart the management server

      $ sudo service cloudstack-management start
      
    4. For KVM hosts, upgrade the cloudstack-agent package

      $ sudo yum upgrade cloudstack-agent
      
    5. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    6. Restart the agent:

      $ sudo service cloudstack-agent stop
      $ sudo killall jsvc
      $ sudo service cloudstack-agent start
      
  11. Now it’s time to restart the management server

    $ sudo service cloudstack-management start
    
  12. Once you’ve upgraded the packages on your management servers, you’ll need to restart the system VMs. Ensure that the admin port is set to 8096 by using the “integration.api.port” global parameter. This port is used by the cloud-sysvmadm script at the end of the upgrade procedure. For information about how to set this parameter, see “Setting Global Configuration Parameters” in the Installation Guide. Changing this parameter will require management server restart. Also make sure port 8096 is open in your local host firewall to do this.

    There is a script that will do this for you, all you need to do is run the script and supply the IP address for your MySQL instance and your MySQL credentials:

    # nohup cloudstack-sysvmadm -d IP address -u cloud -p -a > sysvm.log 2>&1 &
    

    You can monitor the log for progress. The process of restarting the system VMs can take an hour or more.

    # tail -f sysvm.log
    

    The output to sysvm.log will look something like this:

    Stopping and starting 1 secondary storage vm(s)...
    Done stopping and starting secondary storage vm(s)
    Stopping and starting 1 console proxy vm(s)...
    Done stopping and starting console proxy vm(s).
    Stopping and starting 4 running routing vm(s)...
    Done restarting router(s).
    
  13. 注釈

    For Xen Hosts: Copy vhd-utils: This step is only for CloudStack installs that are using Xen hosts.

    Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver.

Upgrade from 4.1.x to 4.3

This section will guide you from CloudStack 4.1.x versions to CloudStack 4.3.

Any steps that are hypervisor-specific will be called out with a note.

We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system.

  1. Most users of CloudStack manage the installation and upgrades of CloudStack with one of Linux’s predominant package systems, RPM or APT. This guide assumes you’ll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu).

  2. 注釈

    The following upgrade instructions should be performed regardless of hypervisor type.

    1. While running the existing 4.1.x system, log in to the UI as root administrator.

    2. In the left navigation bar, click Templates.

    3. In Select view, click Templates.

    4. Click Register template.

      The Register template dialog box is displayed.

    5. In the Register template dialog box, specify the following values (do not change these):

      Hypervisor Description
      XenServer

      Name: systemvm-xenserver-4.3

      Description: systemvm-xenserver-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-xen.vhd.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: XenServer

      Format: VHD

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      KVM

      Name: systemvm-kvm-4.3

      Description: systemvm-kvm-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-kvm.qcow2.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: KVM

      Format: QCOW2

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      VMware

      Name: systemvm-vmware-4.3

      Description: systemvm-vmware-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-vmware.ova

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: VMware

      Format: OVA

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

  3. Create RPM or Debian packages (as appropriate) and a repository from the 4.3 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step 8 or step 11.

    Instructions for creating packages from the CloudStack source are in the Installation Guide.

  4. Stop your management server or servers. Run this on all management server hosts:

    # service cloudstack-management stop
    
  5. If you are running a usage server or usage servers, stop those as well:

    # service cloudstack-usage stop
    
  6. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You’ll be prompted for your password.

    # mysqldump -u root -p cloud > cloudstack-backup.sql
    
  7. (KVM Only) If primary storage of type local storage is in use, the path for this storage needs to be verified to ensure it passes new validation. Check local storage by querying the cloud.storage_pool table:

    #mysql -u cloud -p -e "select id,name,path from cloud.storage_pool where pool_type='Filesystem'"
    

    If local storage paths are found to have a trailing forward slash, remove it:

    #mysql -u cloud -p -e 'update cloud.storage_pool set path="/var/lib/libvirt/images" where path="/var/lib/libvirt/images/"';
    
  8. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step 11.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the sources list for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have CloudStack packages installed.

      This file should have one line, which contains:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.1
      

      We’ll change it to point to the new package repository:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.3
      

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now update your apt package list:

      $ sudo apt-get update
      
    3. Now that you have the repository configured, it’s time to install the cloudstack-management package. This will pull in any other dependencies you need.

      $ sudo apt-get install cloudstack-management
      
    4. You will need to manually install the cloudstack-agent package:

      $ sudo apt-get install cloudstack-agent
      

      During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

      When prompted whether you wish to keep your configuration, say Yes.

    5. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    6. Restart the agent:

      service cloudstack-agent stop
      killall jsvc
      service cloudstack-agent start
      
  9. (VMware only) Additional steps are required for each VMware cluster. These steps will not affect running guests in the cloud. These steps are required only for clouds using VMware clusters:

    1. Stop the Management Server:

      service cloudstack-management stop
      
    2. Generate the encrypted equivalent of your vCenter password:

      java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt.sh input="_your_vCenter_password_" password="`cat /etc/cloudstack/management/key`" verbose=false
      

      Store the output from this step, we need to add this in cluster_details table and vmware_data_center tables in place of the plain text password

    3. Find the ID of the row of cluster_details table that you have to update:

      mysql -u <username> -p<password>
      
      select * from cloud.cluster_details;
      
    4. Update the plain text password with the encrypted one

      update cloud.cluster_details set value = '_ciphertext_from_step_1_' where id = _id_from_step_2_;
      
    5. Confirm that the table is updated:

      select * from cloud.cluster_details;
      
    6. Find the ID of the correct row of vmware_data_center that you want to update

      select * from cloud.vmware_data_center;
      
    7. update the plain text password with the encrypted one:

      update cloud.vmware_data_center set password = '_ciphertext_from_step_1_' where id = _id_from_step_5_;
      
    8. Confirm that the table is updated:

      select * from cloud.vmware_data_center;
      
    9. Start the CloudStack Management server

      service cloudstack-management start
      
  10. (KVM only) Additional steps are required for each KVM host. These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure the CloudStack yum repository as detailed above.

    2. Stop the running agent.

      # service cloud-agent stop
      
    3. Update the agent software.

      # yum update cloudstack-agent
      
    4. Start the agent.

      # service cloudstack-agent start
      
  11. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step 13.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the yum repository for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent.

      (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

      This file should have content similar to the following:

      [apache-cloudstack]
      name=Apache CloudStack
      baseurl=http://cloudstack.apt-get.eu/rhel/4.1/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the base url to http://cloudstack.apt-get.eu/rhel/4.3/

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloudstack-management package.

      $ sudo yum upgrade cloudstack-management
      
    3. For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent.

      $ sudo yum upgrade cloudstack-agent
      
    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      service cloudstack-agent stop
      killall jsvc
      service cloudstack-agent start
      
  12. Now it’s time to restart the management server

    # service cloudstack-management start
    
  13. Once you’ve upgraded the packages on your management servers, you’ll need to restart the system VMs. Ensure that the admin port is set to 8096 by using the “integration.api.port” global parameter. This port is used by the cloud-sysvmadm script at the end of the upgrade procedure. For information about how to set this parameter, see “Setting Global Configuration Parameters” in the Installation Guide. Changing this parameter will require management server restart. Also make sure port 8096 is open in your local host firewall to do this.

    There is a script that will do this for you, all you need to do is run the script and supply the IP address for your MySQL instance and your MySQL credentials:

    # nohup cloudstack-sysvmadm -d IP address -u cloud -p -a > sysvm.log 2>&1 &
    

    You can monitor the log for progress. The process of restarting the system VMs can take an hour or more.

    # tail -f sysvm.log
    

    The output to sysvm.log will look something like this:

    Stopping and starting 1 secondary storage vm(s)...
    Done stopping and starting secondary storage vm(s)
    Stopping and starting 1 console proxy vm(s)...
    Done stopping and starting console proxy vm(s).
    Stopping and starting 4 running routing vm(s)...
    Done restarting router(s).
    
  14. 注釈

    For Xen Hosts: Copy vhd-utils: This step is only for CloudStack installs that are using Xen hosts.

    Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver.

Upgrade from 4.0.x to 4.3

This section will guide you from CloudStack 4.0.x versions to CloudStack 4.3.

Any steps that are hypervisor-specific will be called out with a note.

警告

Package Structure Changes: The package structure for CloudStack has changed significantly since the 4.0.x releases. If you’ve compiled your own packages, you’ll notice that the package names and the number of packages has changed. This is not a bug. However, this does mean that the procedure is not as simple as an apt-get upgrade or yum update, so please follow this section carefully.

We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system.

  1. Most users of CloudStack manage the installation and upgrades of CloudStack with one of Linux’s predominant package systems, RPM or APT. This guide assumes you’ll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu).

    Create RPM or Debian packages (as appropriate) and a repository from the 4.3 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step 9 or step 10.

    Instructions for creating packages from the CloudStack source are in the Installation Guide.

    注釈

    The following upgrade instructions should be performed regardless of hypervisor type.

    1. While running the existing 4.0.0 system, log in to the UI as root administrator.

    2. In the left navigation bar, click Templates.

    3. In Select view, click Templates.

    4. Click Register template.

      The Register template dialog box is displayed.

    5. In the Register template dialog box, specify the following values (do not change these):

      Hypervisor Description
      XenServer

      Name: systemvm-xenserver-4.3

      Description: systemvm-xenserver-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-xen.vhd.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: XenServer

      Format: VHD

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      KVM

      Name: systemvm-kvm-4.3

      Description: systemvm-kvm-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-kvm.qcow2.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: KVM

      Format: QCOW2

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      VMware

      Name: systemvm-vmware-4.3

      Description: systemvm-vmware-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-vmware.ova

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: VMware

      Format: OVA

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

  2. Stop your management server or servers. Run this on all management server hosts:

    # service cloud-management stop
    
  3. If you are running a usage server or usage servers, stop those as well:

    # service cloud-usage stop
    
  4. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You’ll be prompted for your password.

    # mysqldump -u root -p cloud > cloudstack-backup.sql
    
  5. Whether you’re upgrading a Red Hat/CentOS based system or Ubuntu based system, you’re going to need to stop the CloudStack management server before proceeding.

    # service cloud-management stop
    
  6. If you have made changes to /etc/cloud/management/components.xml, you’ll need to carry these over manually to the new file, /etc/cloudstack/management/componentContext.xml. This is not done automatically. (If you’re unsure, we recommend making a backup of the original components.xml to be on the safe side.

  7. After upgrading to 4.3, API clients are expected to send plain text passwords for login and user creation, instead of MD5 hash. Incase, api client changes are not acceptable, following changes are to be made for backward compatibility:

    Modify componentContext.xml, and make PlainTextUserAuthenticator as the default authenticator (1st entry in the userAuthenticators adapter list is default)

    <!-- Security adapters -->
    <bean id="userAuthenticators" class="com.cloud.utils.component.AdapterList">
      <property name="Adapters">
        <list>
          <ref bean="PlainTextUserAuthenticator"/>
          <ref bean="MD5UserAuthenticator"/>
          <ref bean="LDAPUserAuthenticator"/>
        </list>
      </property>
    </bean>
    

    PlainTextUserAuthenticator works the same way MD5UserAuthenticator worked prior to 4.3.

  8. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step 10.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the sources list for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have CloudStack packages installed.

      This file should have one line, which contains:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.0
      

      We’ll change it to point to the new package repository:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.3
      

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now update your apt package list:

      $ sudo apt-get update
      
    3. Now that you have the repository configured, it’s time to install the cloudstack-management package. This will pull in any other dependencies you need.

      $ sudo apt-get install cloudstack-management
      
    4. You will need to manually install the cloudstack-agent package:

      $ sudo apt-get install cloudstack-agent
      

      During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

      When prompted whether you wish to keep your configuration, say Yes.

    5. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    6. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
    7. During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There’s nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file:

      cd /etc/cloudstack/agent
      mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml
      service cloudstack-agent restart
      
    8. Once the agent is running, you can uninstall the old cloud-* packages from your system:

      sudo dpkg --purge cloud-agent
      
  9. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step 11.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the yum repository for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

      This file should have content similar to the following:

      [apache-cloudstack]
      name=Apache CloudStack
      baseurl=http://cloudstack.apt-get.eu/rhel/4.0/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.3/

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloud-client package.

      $ sudo yum upgrade cloud-client
      
    3. For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent.

      $ sudo yum upgrade cloud-agent
      

      During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
  10. Once you’ve upgraded the packages on your management servers, you’ll need to restart the system VMs. Make sure port 8096 is open in your local host firewall to do this.

    There is a script that will do this for you, all you need to do is run the script and supply the IP address for your MySQL instance and your MySQL credentials:

    # nohup cloudstack-sysvmadm -d IP address -u cloud -p -a > sysvm.log 2>&1 &
    

    You can monitor the log for progress. The process of restarting the system VMs can take an hour or more.

    # tail -f sysvm.log
    

    The output to sysvm.log will look something like this:

    Stopping and starting 1 secondary storage vm(s)...
    Done stopping and starting secondary storage vm(s)
    Stopping and starting 1 console proxy vm(s)...
    Done stopping and starting console proxy vm(s).
    Stopping and starting 4 running routing vm(s)...
    Done restarting router(s).
    
  11. 注釈

    For Xen Hosts: Copy vhd-utils:* This step is only for CloudStack installs that are using Xen hosts.

    Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver.

Upgrade from 3.0.x to 4.3

This section will guide you from Citrix CloudStack 3.0.x to Apache CloudStack 4.3. Sections that are hypervisor-specific will be called out with a note.

注釈

The following upgrade instructions should be performed regardless of hypervisor type.

  1. While running the existing 3.0.x system, log in to the UI as root administrator.

  2. In the left navigation bar, click Templates.

  3. In Select view, click Templates.

  4. Click Register template.

    The Register template dialog box is displayed.

  5. In the Register template dialog box, specify the following values (do not change these):

    Hypervisor Description
    XenServer

    Name: systemvm-xenserver-4.3

    Description: systemvm-xenserver-4.3

    URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-xen.vhd.bz2

    Zone: Choose the zone where this hypervisor is used

    Hypervisor: XenServer

    Format: VHD

    OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

    Extractable: no

    Password Enabled: no

    Public: no

    Featured: no

    Routing: yes

    KVM

    Name: systemvm-kvm-4.3

    Description: systemvm-kvm-4.3

    URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-kvm.qcow2.bz2

    Zone: Choose the zone where this hypervisor is used

    Hypervisor: KVM

    Format: QCOW2

    OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

    Extractable: no

    Password Enabled: no

    Public: no

    Featured: no

    Routing: yes

    VMware

    Name: systemvm-vmware-4.3

    Description: systemvm-vmware-4.3

    URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-vmware.ova

    Zone: Choose the zone where this hypervisor is used

    Hypervisor: VMware

    Format: OVA

    OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

    Extractable: no

    Password Enabled: no

    Public: no

    Featured: no

    Routing: yes

  6. Watch the screen to be sure that the template downloads successfully and enters the READY state. Do not proceed until this is successful.

  1. (KVM on RHEL 6.0/6.1 only) If your existing CloudStack deployment includes one or more clusters of KVM hosts running RHEL 6.0 or RHEL 6.1, perform the following:

    1. Ensure that you upgrade the operating system version on those hosts before upgrading CloudStack

      To do that, change the yum repository for each system with CloudStack packages, that implies that all the Management Servers and any hosts that have the KVM agent.

    2. Open /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

    3. Edit as follows:

      [upgrade]
      name=rhel63
      baseurl=url-of-your-rhel6.3-repo
      enabled=1
      gpgcheck=0
      [apache CloudStack]
      name= Apache CloudStack
      baseurl= http://cloudstack.apt-get.eu/rhel/4.3/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the baseurl to http:// cloudstack.apt-get.eu/rhel/4.3/

      If you are using your own package repository, change this line to read as appropriate for your 4.3 repository.

    4. Now that you have the repository configured, upgrade the host operating system from RHEL 6.0 to 6.3:

      # yum upgrade
      
  2. Stop all Usage Servers if running. Run this on all Usage Server hosts.

    # service cloud-usage stop
    
  3. Stop the Management Servers. Run this on all Management Server hosts.

    # service cloud-management stop
    
  4. On the MySQL master, take a backup of the MySQL databases. We recommend performing this step even in test upgrades. If there is an issue, this will assist with debugging.

    In the following commands, it is assumed that you have set the root password on the database, which is a CloudStack recommended best practice. Substitute your own MySQL root password.

    # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp
                            # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp
    
  5. Either build RPM/DEB packages as detailed in the Installation Guide, or use one of the community provided yum/apt repositories to gain access to the CloudStack binaries.

  6. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step 8.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the sources list for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have CloudStack packages installed.

      This file should have one line, which contains:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.0
      

      We’ll change it to point to the new package repository:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.3
      

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now update your apt package list:

      $ sudo apt-get update
      
    3. Now that you have the repository configured, it’s time to install the cloudstack-management package. This will pull in any other dependencies you need.

      $ sudo apt-get install cloudstack-management
      
    4. You will need to manually install the cloudstack-agent package:

      $ sudo apt-get install cloudstack-agent
      

      During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

      When prompted whether you wish to keep your configuration, say Yes.

    5. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    6. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
    7. During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There’s nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file:

      cd /etc/cloudstack/agent
      mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml
      service cloudstack-agent restart
      
    8. Once the agent is running, you can uninstall the old cloud-* packages from your system:

      sudo dpkg --purge cloud-agent
      
  7. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step 9.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the yum repository for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

      This file should have content similar to the following:

      [apache-cloudstack]
      name=Apache CloudStack
      baseurl=http://cloudstack.apt-get.eu/rhel/4.3/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.3/

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloud-client package.

      $ sudo yum upgrade cloud-client
      
    3. For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent.

      $ sudo yum upgrade cloud-agent
      

      During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
  8. If you have made changes to your copy of /etc/cloud/management/components.xml the changes will be preserved in the upgrade. However, you need to do the following steps to place these changes in a new version of the file which is compatible with version 4.2.x.

    1. Make a backup copy of /etc/cloud/management/components.xml. For example:

      # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup
      
    2. Copy /etc/cloud/management/components.xml.rpmnew to create a new /etc/cloud/management/components.xml:

      # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml
      
    3. Merge your changes from the backup file into the new components.xml.

      # vi /etc/cloudstack/management/components.xml
      

    注釈

    If you have more than one management server node, repeat the upgrade steps on each node.

  9. After upgrading to 4.3, API clients are expected to send plain text passwords for login and user creation, instead of MD5 hash. Incase, api client changes are not acceptable, following changes are to be made for backward compatibility:

    Modify componentContext.xml, and make PlainTextUserAuthenticator as the default authenticator (1st entry in the userAuthenticators adapter list is default)

    <!-- Security adapters -->
    <bean id="userAuthenticators" class="com.cloud.utils.component.AdapterList">
      <property name="Adapters">
        <list>
          <ref bean="PlainTextUserAuthenticator"/>
          <ref bean="MD5UserAuthenticator"/>
          <ref bean="LDAPUserAuthenticator"/>
        </list>
      </property>
    </bean>
    

    PlainTextUserAuthenticator works the same way MD5UserAuthenticator worked prior to 4.3

  10. Start the first Management Server. Do not start any other Management Server nodes yet.

    # service cloudstack-management start
    

    Wait until the databases are upgraded. Ensure that the database upgrade is complete. After confirmation, start the other Management Servers one at a time by running the same command on each node.

    注釈

    Failing to restart the Management Server indicates a problem in the upgrade. Having the Management Server restarted without any issues indicates that the upgrade is successfully completed.

  11. Start all Usage Servers (if they were running on your previous version). Perform this on each Usage Server host.

    # service cloudstack-usage start

  12. Additional steps are required for each KVM host. These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure a yum or apt repository containing the CloudStack packages as outlined in the Installation Guide.

    2. Stop the running agent.

      # service cloud-agent stop

    3. Update the agent software with one of the following command sets as appropriate for your environment.

      # yum update cloud-*

      # apt-get update

      # apt-get upgrade cloud-*

    4. Edit /etc/cloudstack/agent/agent.properties to change the resource parameter from “com.cloud.agent.resource.computing.LibvirtComputingResource” to “com.cloud.hypervisor.kvm.resource.LibvirtComputingResource”.

    5. Upgrade all the existing bridge names to new bridge names by running this script:

      # cloudstack-agent-upgrade
      
    6. Install a libvirt hook with the following commands:

      # mkdir /etc/libvirt/hooks
      # cp /usr/share/cloudstack-agent/lib/libvirtqemuhook /etc/libvirt/hooks/qemu
      # chmod +x /etc/libvirt/hooks/qemu
      
    7. Restart libvirtd.

      # service libvirtd restart
      
    8. Start the agent.

      # service cloudstack-agent start
      
    9. When the Management Server is up and running, log in to the CloudStack UI and restart the virtual router for proper functioning of all the features.

  13. Log in to the CloudStack UI as administrator, and check the status of the hosts. All hosts should come to Up state (except those that you know to be offline). You may need to wait 20 or 30 minutes, depending on the number of hosts.

    注釈

    Troubleshooting: If login fails, clear your browser cache and reload the page.

    Do not proceed to the next step until the hosts show in Up state.

  14. If you are upgrading from 3.0.x, perform the following:

    1. Ensure that the admin port is set to 8096 by using the “integration.api.port” global parameter.

      This port is used by the cloud-sysvmadm script at the end of the upgrade procedure. For information about how to set this parameter, see “Setting Global Configuration Parameters” in the Installation Guide.

    2. Restart the Management Server.

      注釈

      If you don’t want the admin port to remain open, you can set it to null after the upgrade is done and restart the management server.

  15. Run the cloudstack-sysvmadm script to stop, then start, all Secondary Storage VMs, Console Proxy VMs, and virtual routers. Run the script once on each management server. Substitute your own IP address of the MySQL instance, the MySQL user to connect as, and the password to use for that user. In addition to those parameters, provide the -c and -r arguments. For example:

    # nohup cloudstack-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 &

    # tail -f sysvm.log

    This might take up to an hour or more to run, depending on the number of accounts in the system.

  16. If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version supported by CloudStack 4.3. The supported versions are XenServer 5.6 SP2 and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.3 Installation Guide under “Upgrading XenServer Versions.”

  17. Now apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer v6.0.2 hypervisor hosts.

    1. Disconnect the XenServer cluster from CloudStack.

      In the left navigation bar of the CloudStack UI, select Infrastructure. Under Clusters, click View All. Select the XenServer cluster and click Actions - Unmanage.

      This may fail if there are hosts not in one of the states Up, Down, Disconnected, or Alert. You may need to fix that before unmanaging this cluster.

      Wait until the status of the cluster has reached Unmanaged. Use the CloudStack UI to check on the status. When the cluster is in the unmanaged state, there is no connection to the hosts in the cluster.

    2. To clean up the VLAN, log in to one XenServer host and run:

      /opt/xensource/bin/cloud-clean-vlan.sh

    3. Now prepare the upgrade by running the following on one XenServer host:

      /opt/xensource/bin/cloud-prepare-upgrade.sh

      If you see a message like “can’t eject CD”, log in to the VM and unmount the CD, then run this script again.

    4. Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the hotfixes to the host. Place them in a temporary folder such as /tmp.

      On the Xen pool master, upload the hotfix with this command:

      xe patch-upload file-name=XS602E003.xsupdate

      Make a note of the output from this command, which is a UUID for the hotfix file. You’ll need it in another step later.

      注釈

      (Optional) If you are applying other hotfixes as well, you can repeat the commands in this section with the appropriate hotfix number. For example, XS602E004.xsupdate.

    5. Manually live migrate all VMs on this host to another host. First, get a list of the VMs on this host:

      # xe vm-list

      Then use this command to migrate each VM. Replace the example host name and VM name with your own:

      # xe vm-migrate live=true host=host-name vm=``VM-name``

      注釈

      Troubleshooting: If you see a message like “You attempted an operation on a VM which requires PV drivers to be installed but the drivers were not detected,” run: /opt/xensource/bin/make_migratable.sh b6cf79c8-02ee-050b-922f-49583d9f1a14.

    6. Apply the hotfix. First, get the UUID of this host:

      # xe host-list
      

      Then use the following command to apply the hotfix. Replace the example host UUID with the current host ID, and replace the hotfix UUID with the output from the patch-upload command you ran on this machine earlier. You can also get the hotfix UUID by running xe patch-list.

      xe patch-apply host-uuid=host-uuid uuid=hotfix-uuid
      
    7. Copy the following files from the CloudStack Management Server to the host.

      Copy from here... ...to here
      /usr/lib64/cloud/common /scripts/vm/hypervisor/ xenserver/xenserver60/N FSSR.py /opt/xensource/sm/NFSSR.py
      /usr/lib64/cloud/common /scripts/vm/hypervisor/ xenserver/setupxenserve r.sh /opt/xensource/bin/setupxenserver.sh
      /usr/lib64/cloud/common /scripts/vm/hypervisor/ xenserver/make_migrata ble.sh /opt/xensource/bin/make_migratable.sh
    8. (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud Support Pack.

    9. Reboot this XenServer host.

    10. Run the following:

      /opt/xensource/bin/setupxenserver.sh
      

      注釈

      If the message “mv: cannot stat `/etc/cron.daily/logrotate’: No such file or directory” appears, you can safely ignore it.

    11. Run the following:

      for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ;
      
    12. On each slave host in the Xen pool, repeat these steps, starting from “manually live migrate VMs.”

注釈

Troubleshooting Tip: If passwords which you know to be valid appear not to work after upgrade, or other UI issues are seen, try clearing your browser cache and reloading the UI page.

Upgrade from 2.2.14 to 4.3

  1. Ensure that you query your IPaddress usage records and process them; for example, issue invoices for any usage that you have not yet billed users for.

    Starting in 3.0.2, the usage record format for IP addresses is the same as the rest of the usage types. Instead of a single record with the assignment and release dates, separate records are generated per aggregation period with start and end dates. After upgrading to 4.3, any existing IP address usage records in the old format will no longer be available.

  2. If you are using version 2.2.0 - 2.2.13, first upgrade to 2.2.14 by using the instructions in the 2.2.14 Release Notes.

    警告

    KVM Hosts: If KVM hypervisor is used in your cloud, be sure you completed the step to insert a valid username and password into the host_details table on each KVM node as described in the 2.2.14 Release Notes. This step is critical, as the database will be encrypted after the upgrade to 4.3.

  3. While running the 2.2.14 system, log in to the UI as root administrator.

  4. Using the UI, add a new System VM template for each hypervisor type that is used in your cloud. In each zone, add a system VM template for each hypervisor used in that zone

    1. In the left navigation bar, click Templates.

    2. In Select view, click Templates.

    3. Click Register template.

      The Register template dialog box is displayed.

    4. In the Register template dialog box, specify the following values depending on the hypervisor type (do not change these):

      Hypervisor Description
      XenServer

      Name: systemvm-xenserver-4.3

      Description: systemvm-xenserver-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-xen.vhd.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: XenServer

      Format: VHD

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      KVM

      Name: systemvm-kvm-4.3

      Description: systemvm-kvm-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-kvm.qcow2.bz2

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: KVM

      Format: QCOW2

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

      VMware

      Name: systemvm-vmware-4.3

      Description: systemvm-vmware-4.3

      URL: http://download.cloud.com/templates/4.3/systemvm64template-2014-06-23-master-vmware.ova

      Zone: Choose the zone where this hypervisor is used

      Hypervisor: VMware

      Format: OVA

      OS Type: Debian GNU/Linux 7.0 (64-bit) (or the highest Debian release number available in the dropdown)

      Extractable: no

      Password Enabled: no

      Public: no

      Featured: no

      Routing: yes

  5. Watch the screen to be sure that the template downloads successfully and enters the READY state. Do not proceed until this is successful

  6. WARNING: If you use more than one type of hypervisor in your cloud, be sure you have repeated these steps to download the system VM template for each hypervisor type. Otherwise, the upgrade will fail.

  7. (KVM on RHEL 6.0/6.1 only) If your existing CloudStack deployment includes one or more clusters of KVM hosts running RHEL 6.0 or RHEL 6.1, perform the following:

    1. Ensure that you upgrade the operating system version on those hosts before upgrading CloudStack

      To do that, change the yum repository for each system with CloudStack packages, that implies that all the Management Servers and any hosts that have the KVM agent.

    2. Open /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

    3. Edit as follows:

      [upgrade]
      name=rhel63
      baseurl=url-of-your-rhel6.3-repo
      enabled=1
      gpgcheck=0
      [apache CloudStack]
      name= Apache CloudStack
      baseurl= http://cloudstack.apt-get.eu/rhel/4.2/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the baseurl to http:// cloudstack.apt-get.eu/rhel/4.2/

      If you are using your own package repository, change this line to read as appropriate for your 4.2 repository.

    4. Now that you have the repository configured, upgrade the host operating system from RHEL 6.0 to 6.3:

      # yum upgrade
      
  8. Stop all Usage Servers if running. Run this on all Usage Server hosts.

    # service cloud-usage stop
    
  9. Stop the Management Servers. Run this on all Management Server hosts.

    # service cloud-management stop
    
  10. On the MySQL master, take a backup of the MySQL databases. We recommend performing this step even in test upgrades. If there is an issue, this will assist with debugging.

    In the following commands, it is assumed that you have set the root password on the database, which is a CloudStack recommended best practice. Substitute your own MySQL root password.

    # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp
                            # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp
    
  11. Either build RPM/DEB packages as detailed in the Installation Guide, or use one of the community provided yum/apt repositories to gain access to the CloudStack binaries.

  12. If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step 13.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and APT repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the sources list for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have CloudStack packages installed.

      This file should have one line, which contains:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.0
      

      We’ll change it to point to the new package repository:

      deb http://cloudstack.apt-get.eu/ubuntu precise 4.3
      

      If you’re using your own package repository, change this line to read as appropriate for your 4.2 repository.

    2. Now update your apt package list:

      $ sudo apt-get update
      
    3. Now that you have the repository configured, it’s time to install the cloudstack-management package. This will pull in any other dependencies you need.

      $ sudo apt-get install cloudstack-management
      
    4. On KVM hosts, you will need to manually install the cloudstack-agent package:

      $ sudo apt-get install cloudstack-agent
      

      During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

      When prompted whether you wish to keep your configuration, say Yes.

    5. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    6. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
    7. During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There’s nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file:

      cd /etc/cloudstack/agent
      mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml
      service cloudstack-agent restart
      
    8. Once the agent is running, you can uninstall the old cloud-* packages from your system:

      sudo dpkg --purge cloud-agent
      
  13. If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step 14.

    注釈

    Community Packages: This section assumes you’re using the community supplied packages for CloudStack. If you’ve created your own packages and yum repository, substitute your own URL for the ones used in these examples.

    1. The first order of business will be to change the yum repository for each system with CloudStack packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.)

      Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have CloudStack packages installed.

      This file should have content similar to the following:

      [apache-cloudstack]
      name=Apache CloudStack
      baseurl=http://cloudstack.apt-get.eu/rhel/4.0/
      enabled=1
      gpgcheck=0
      

      If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.2/

      If you’re using your own package repository, change this line to read as appropriate for your 4.3 repository.

    2. Now that you have the repository configured, it’s time to install the cloudstack-management package by upgrading the older cloud-client package.

      $ sudo yum upgrade cloud-client
      
    3. For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent.

      $ sudo yum upgrade cloud-agent
      

      During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent.

    4. Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads:

      paths.script=/usr/share/cloudstack-common
      

      If not, add the line.

    5. Restart the agent:

      service cloud-agent stop
      killall jsvc
      service cloudstack-agent start
      
  14. If you have made changes to your existing copy of the file components.xml in your previous-version CloudStack installation, the changes will be preserved in the upgrade. However, you need to do the following steps to place these changes in a new version of the file which is compatible with version 4.0.0-incubating.

    注釈

    How will you know whether you need to do this? If the upgrade output in the previous step included a message like the following, then some custom content was found in your old components.xml, and you need to merge the two files:

    warning: /etc/cloud/management/components.xml created as
    /etc/cloud/management/components.xml.rpmnew
    
    1. Make a backup copy of your /etc/cloud/management/components.xml file. For example:

      # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup
      
    2. Copy /etc/cloud/management/components.xml.rpmnew to create a new /etc/cloud/management/components.xml:

      # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml
      
    3. Merge your changes from the backup file into the new components.xml file.

      # vi /etc/cloudstack/management/components.xml
      
  15. After upgrading to 4.3, API clients are expected to send plain text passwords for login and user creation, instead of MD5 hash. If API client changes are not acceptable, following changes are to be made for backward compatibility:

    Modify componentContext.xml, and make PlainTextUserAuthenticator as the default authenticator (1st entry in the userAuthenticators adapter list is default)

    <!-- Security adapters -->
    <bean id="userAuthenticators"
                    class="com.cloud.utils.component.AdapterList">
      <property name="Adapters">
        <list>
          <ref bean="PlainTextUserAuthenticator"/>
          <ref bean="MD5UserAuthenticator"/>
          <ref bean="LDAPUserAuthenticator"/>
        </list>
      </property>
    </bean>
    

    PlainTextUserAuthenticator works the same way MD5UserAuthenticator worked prior to 4.2.

  16. If you have made changes to your existing copy of the /etc/cloud/management/db.properties file in your previous-version CloudStack installation, the changes will be preserved in the upgrade. However, you need to do the following steps to place these changes in a new version of the file which is compatible with this version.

    1. Make a backup copy of your file /etc/cloud/management/db.properties. For example:

      # mv /etc/cloud/management/db.properties /etc/cloud/management/db.properties-backup
      
    2. Copy /etc/cloud/management/db.properties.rpmnew to create a new /etc/cloud/management/db.properties:

      # cp -ap /etc/cloud/management/db.properties.rpmnew etc/cloud/management/db.properties
      
    3. Merge your changes from the backup file into the new db.properties file.

      # vi /etc/cloudstack/management/db.properties
      
  17. On the management server node, run the following command. It is recommended that you use the command-line flags to provide your own encryption keys. See Password and Key Encryption in the Installation Guide.

    # cloudstack-setup-encryption -e encryption_type -m management_server_key -k database_key
    

    When used without arguments, as in the following example, the default encryption type and keys will be used:

    • (Optional) For encryption_type, use file or web to indicate the technique used to pass in the database encryption password. Default: file.
    • (Optional) For management_server_key, substitute the default key that is used to encrypt confidential parameters in the properties file. Default: password. It is highly recommended that you replace this with a more secure value
    • (Optional) For database_key, substitute the default key that is used to encrypt confidential parameters in the CloudStack database. Default: password. It is highly recommended that you replace this with a more secure value.
  18. Repeat steps 10 - 14 on every management server node. If you provided your own encryption key in step 14, use the same key on all other management servers.

  19. Start the first Management Server. Do not start any other Management Server nodes yet.

    # service cloudstack-management start
    

    Wait until the databases are upgraded. Ensure that the database upgrade is complete. You should see a message like “Complete! Done.” After confirmation, start the other Management Servers one at a time by running the same command on each node.

  20. Start all Usage Servers (if they were running on your previous version). Perform this on each Usage Server host.

    # service cloudstack-usage start
    
  21. (KVM only) Perform the following additional steps on each KVM host.

    These steps will not affect running guests in the cloud. These steps are required only for clouds using KVM as hosts and only on the KVM hosts.

    1. Configure your CloudStack package repositories as outlined in the Installation Guide

    2. Stop the running agent.

      # service cloud-agent stop
      
    3. Update the agent software with one of the following command sets as appropriate.

      # yum update cloud-*
      
      # apt-get update
      # apt-get upgrade cloud-*
      
    4. Copy the contents of the agent.properties file to the new agent.properties file by using the following command

      sed -i 's/com.cloud.agent.resource.computing.LibvirtComputingResource/com.cloud.hypervisor.kvm.resource.LibvirtComputingResource/g' /etc/cloudstack/agent/agent.properties
      
    5. Upgrade all the existing bridge names to new bridge names by running this script:

      # cloudstack-agent-upgrade
      
    6. Install a libvirt hook with the following commands:

      # mkdir /etc/libvirt/hooks
      # cp /usr/share/cloudstack-agent/lib/libvirtqemuhook /etc/libvirt/hooks/qemu
      # chmod +x /etc/libvirt/hooks/qemu
      
    7. Restart libvirtd.

      # service libvirtd restart
      
    8. Start the agent.

      # service cloudstack-agent start
      
    9. When the Management Server is up and running, log in to the CloudStack UI and restart the virtual router for proper functioning of all the features.

  22. Log in to the CloudStack UI as admin, and check the status of the hosts. All hosts should come to Up state (except those that you know to be offline). You may need to wait 20 or 30 minutes, depending on the number of hosts.

    Do not proceed to the next step until the hosts show in the Up state. If the hosts do not come to the Up state, contact support.

  23. Run the following script to stop, then start, all Secondary Storage VMs, Console Proxy VMs, and virtual routers.

    1. Run the command once on one management server. Substitute your own IP address of the MySQL instance, the MySQL user to connect as, and the password to use for that user. In addition to those parameters, provide the “-c” and “-r” arguments. For example:

      # nohup cloudstack-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 &
      # tail -f sysvm.log
      

      This might take up to an hour or more to run, depending on the number of accounts in the system.

    2. After the script terminates, check the log to verify correct execution:

      # tail -f sysvm.log
      

      The content should be like the following:

      Stopping and starting 1 secondary storage vm(s)...
      Done stopping and starting secondary storage vm(s)
      Stopping and starting 1 console proxy vm(s)...
      Done stopping and starting console proxy vm(s).
      Stopping and starting 4 running routing vm(s)...
      Done restarting router(s).
      
  24. If you would like additional confirmation that the new system VM templates were correctly applied when these system VMs were rebooted, SSH into the System VM and check the version.

    Use one of the following techniques, depending on the hypervisor.

    XenServer or KVM:

    SSH in by using the link local IP address of the system VM. For example, in the command below, substitute your own path to the private key used to log in to the system VM and your own link local IP.

    Run the following commands on the XenServer or KVM host on which the system VM is present:

    # ssh -i private-key-path link-local-ip -p 3922
                            # cat /etc/cloudstack-release
    

    The output should be like the following:

    Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012
    

    ESXi:

    SSH in using the private IP address of the system VM. For example, in the command below, substitute your own path to the private key used to log in to the system VM and your own private IP.

    Run the following commands on the Management Server:

    # ssh -i private-key-path private-ip -p 3922
                            # cat /etc/cloudstack-release
    

    The output should be like the following:

    Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012
    
  25. If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating Installation Guide.

  26. Apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer v6.0.2 hypervisor hosts.

    1. Disconnect the XenServer cluster from CloudStack.

      In the left navigation bar of the CloudStack UI, select Infrastructure. Under Clusters, click View All. Select the XenServer cluster and click Actions - Unmanage.

      This may fail if there are hosts not in one of the states Up, Down, Disconnected, or Alert. You may need to fix that before unmanaging this cluster.

      Wait until the status of the cluster has reached Unmanaged. Use the CloudStack UI to check on the status. When the cluster is in the unmanaged state, there is no connection to the hosts in the cluster.

    2. To clean up the VLAN, log in to one XenServer host and run:

      /opt/xensource/bin/cloud-clean-vlan.sh
      
    3. Prepare the upgrade by running the following on one XenServer host:

      /opt/xensource/bin/cloud-prepare-upgrade.sh
      

      If you see a message like “can’t eject CD”, log in to the VM and umount the CD, then run this script again.

    4. Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the hotfixes to the host. Place them in a temporary folder such as /root or /tmp.

      On the Xen pool master, upload the hotfix with this command:

      xe patch-upload file-name=XS602E003.xsupdate
      

      Make a note of the output from this command, which is a UUID for the hotfix file. You’ll need it in another step later.

      注釈

      (Optional) If you are applying other hotfixes as well, you can repeat the commands in this section with the appropriate hotfix number. For example, XS602E004.xsupdate.

    5. Manually live migrate all VMs on this host to another host. First, get a list of the VMs on this host:

      # xe vm-list
      

      Then use this command to migrate each VM. Replace the example host name and VM name with your own:

      # xe vm-migrate live=true host=host-name vm=VM-name
      

      注釈

      Troubleshooting: If you see a message like “You attempted an operation on a VM which requires PV drivers to be installed but the drivers were not detected,” run: /opt/xensource/bin/make_migratable.sh b6cf79c8-02ee-050b-922f-49583d9f1a14.

    6. Apply the hotfix. First, get the UUID of this host:

      # xe host-list

      Then use the following command to apply the hotfix. Replace the example host UUID with the current host ID, and replace the hotfix UUID with the output from the patch-upload command you ran on this machine earlier. You can also get the hotfix UUID by running xe patch-list.

      xe patch-apply host-uuid=host-uuid uuid=``hotfix-uuid``

    7. Copy the following files from the CloudStack Management Server to the host.

      Copy from here... ...to here
      /usr/share/cloudstack -common/scripts/vm/hype rvisor/xenserver/xenser ver60/NFSSR.py /opt/xensource/sm/NFSSR.py
      /usr/share/cloudstack -common/scripts/vm/hype rvisor/xenserver/setupx enserver.sh /opt/xensource/bin/setupxenserver.sh
      /usr/lib64/cloudstack -common/scripts/vm/hype rvisor/xenserver/make_m igratable.sh /opt/xensource/bin/make_migratable.sh
    8. (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud Support Pack.

    9. Reboot this XenServer host.

    10. Run the following:

      /opt/xensource/bin/setupxenserver.sh

      注釈

      If the message “mv: cannot stat `/etc/cron.daily/logrotate’: No such file or directory” appears, you can safely ignore it.

    11. Run the following:

      ``for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ; ``
      
    12. On each slave host in the Xen pool, repeat these steps, starting from “manually live migrate VMs.”

API Changes

Introduced in 4.3.1

API Description
importLdapUsers New parameters: account (optional)

Introduced in 4.3

Hyper-V

API Description
addPrimaryStorage To this existing API, the following field has been added: smb
addImageStore To this existing API, the following field has been added: smb

Reporting CPU Sockets

API Description
listhost

To this existing API, the following request parameter has been added: hypervisor.

The new response parameter added is: cpusockets

Publishing Alerts Using the Web ROOT Admin API

API Description
generateAlert A new API has been added to generate and publish alerts for usage services. The usage services can be installed on a different host or the same host where the Management Server is running. This API is available only to the Root Admin.
listAlerts To this existing API, a new response parameter has been added: name. An alert can be searched on the basis of alert name.

Dynamic Compute Offering

API Description
DeployVM To this existing API, the following request parameter has been added: details.
ScaleVM To this existing API, the following request parameter has been added: details.
ScaleSystemVM To this existing API, the following request parameter has been added: details.
UpgradeVM To this existing API, the following request parameter has been added: details.
UpgradeSystemVM To this existing API, the following request parameter has been added: details.

Enhanced Upgrade for Virtual Routers

API Description
upgradeRouterTemplate

This is a new API which has been added in this release.

The following are the request parameters:

  • id: Upgrade the specified VR
  • zone_id : Upgrade the VRs in the specified zone.
  • pod_id : Upgrade the VRs in the specified pod.
  • cluster_id : Upgrade the VRs in the specified cluster.
  • domain_id : Upgrade the VRs belonging to the specified domain.
  • account_id : Upgrade the VRs belonging to the specified account.
listRouters

For this existing API, the following request parameters has been added:

  • version: Lists routers by specified version.
  • zone_id : lists routers in specified zone.
  • pod_id : Lists routers in the specified pod.
  • cluster_id : Lists routers in the specified cluster.
  • domain_id : Lists routers owned by specified domain.
  • account: Lists routers owned by specified account.

The following response parameters has been added:

  • version : (String) The router version. For example, 4.3.0.
  • requiresupgrade: (Boolean) The flag to indicate if the router template requires an upgrade.