Page tree
Skip to end of metadata
Go to start of metadata

 

This guide explains how to upgrade OnApp Cloud v5.2 to the v5.3 for the cloud where all servers are static.Follow the procedure listed below in the correct order to upgrade your cloud. All packages (Control Panel and Compute resources) must belong to the same major version to ensure the best performance of your cloud.

Make sure that your cloud configuration meets all the requirements before upgrading to OnApp 5.3. See the Check Your Cloud Configuration section of this document for details.

On this page:


Search for other docs:

 

 

Important Notes



  1. You must be running the latest patch of OnApp 5.2 version to upgrade to 5.3 version. If you are using an earlier version, please upgrade to 5.2. first.
  2. Check the Activity Log in your OnApp CP dashboard if there are no transactions running in your cloud. If so, wait until all transactions are complete.
  3. Make sure no Control Panel files are open for editing under the root user account.

  4. If you plan to deploy Accelerator, refer to the RabbitMQ Configuration for Accelerator document for more details.
  5. Be aware that from now on, OnApp Licensing has a standalone client.Use only 443 port to connect from Control Panel to licensing server.
  6. We strongly recommend that you test all your custom scripts before upgrading your production environment.

  7. Be aware that OnApp does not support UEFI on static compute resources. You should disable UEFI on your compute resources before installing OnApp.

  8. If you are using the auto healing functionality for Integrated Storage, make sure to disable it before an upgrade.

  9. If you have OnApp and vCenter integration, please do not upgrade to OnApp 5.3 version. Please contact support for further assistance.

  10. If you are using Integrated Storage, refer to the OnApp IS Upgrade Paths for more information about the upgrade details.

  • Drives assigned for use by Integrated Storage are identified using a disk signature that is generated using SCSI page query mechanism to the device. Please note that disk signatures may change across different kernel versions following an upgrade and reboot. If this occurs, go to the compute resource edit page to re-identify and select the correct drives. Please contact support if you have any concerns regarding this operation.
  • If you are running an LTS OnApp version and are using WHMCS modules, it is not recommended to update your cloud. To ensure that all WHMCS modules are working correctly you need to be running an LTS OnApp version.

Check Your Cloud Configuration


Starting with OnApp version 5.3, there's a strict system requirement that all compute resources, data stores, networks, and backup servers should be attached to zones. All compute, data store, network and backup server zones after the upgrade will have an assigned zone type. This type will be inherited by the compute resources, data stores, networks and backup servers in the zones. During the update to OnApp 5.3, the installer will check the cloud configuration. If at least one conflict is found in the configuration, the cloud will not be updated. If your cloud configuration is correct, the CP installer will be run and new types will be set for your zones and resources automatically. Resources can be later moved only between zones of the same type.

  • Compute zones can have the Virtual, Baremetal, Smart and VPC (Virtual Private Cloud) types.
  • Data store zones can have the Virtual, Smart and VPC types.
  • Network zones can have the Virtual, Baremetal, Smart and VPC types.
  • Backup server zones can have the Virtual and Smart types.

For more information refer to Zone Types document.

Prior to the update procedure, it is required to check your cloud configuration. The cloud should comply with the following requirements for a successful upgrade:

  • all compute resources are assigned to compute zones
  • all data stores are assigned to data store zones
  • all networks are assigned to network zones
  • all backup servers are assigned to backup server zones
  • compute zones should not be mixed. Xen/KVM and vCloud Director compute resource cannot reside in one compute zone.
  • network zones should not be mixed. All networks in a zone should be assigned to compute resources or compute zones of the same type.  
  • data store zones should not be mixed. All data stores in a zone should be assigned to compute resources or compute zones of the same type.
  • backup server zones should not be mixed. All backup servers in a zone should be assigned to compute resources or compute zones of the same type.

If any inconsistencies are detected in your system, the update procedure will stop and no types will be assigned to your zones and resources. In such a case, you need to address the issues that have been found and run the CP installer again. If it is not possible to fix the cloud configuration, please, contact our support team.

If the configuration of the cloud meets the requirements listed above, the update to OnApp 5.3 will go smoothly, and all zones will acquire the corresponding zone type.

When you run the Control Panel installer the system will check your configuration. You can view the log at log/production_upgrade.log. If any inconsistencies are found, the log might contain any of the following warning messages:

  • a compute resource that is not assigned to a compute zone has been detected. The ID and the label of the compute resource will be provided.
  • a data store that is not assigned to a data store zone has been detected. The ID and the label of the data store will be provided.
  • a network that is not assigned to a network zone has been detected. The ID and the label of the network will be provided.
  • a backup server that is not assigned to a backup server zone has been detected. The ID and the label of the backup server will be provided.
  • a mixed compute zone with vCloud Director compute resource(s) and compute resources of other type has been detected. The ID and the label of the compute zone which has mixed resources will be provided.
  • a mixed network zone with networks which are assigned to compute zones or compute resources of different types has been detected. The ID and the label of the network zone will be provided.
  • a mixed data store zone with data stores which are assigned to compute zones or compute resources of different types has been detected. The ID and the label of the data store zone will be provided.
  • a mixed backup server zone with backup servers which are assigned to compute zones or compute resources of different types has been detected. The ID and the label of the backup server zone will be provided.

Upgrade Static Compute Resources


At first upgrade your static compute resources.

  1. Make sure your compute resource is visible and online in the Control Panel.
  2. Download and install the latest OnApp YUM repository file:

    # rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-5.3.noarch.rpm
  3. Upgrade OnApp compute resource installer package:

    # yum update onapp-hv-install
  4. Update your server OS components (if required):

    For XEN compute resource:

    # /onapp/onapp-hv-install/onapp-hv-xen-install.sh -y

    For KVM compute resource:

    # /onapp/onapp-hv-install/onapp-hv-kvm-install.sh -y
  5. Run compute resource installer:
    For XEN compute resource:

    # /onapp/onapp-hv-install/onapp-hv-xen-install.sh

    For KVM compute resource:

    # /onapp/onapp-hv-install/onapp-hv-kvm-install.sh

    Reboot XEN compute resource, which is running on CentOS 6.x, after upgrade to newer XEN version.

  6. Reboot static compute resources.
    For KVM compute resources only: the kernel package update is a part of "Upgrade Static Compute Resources" default procedure. So reboot is required, if kernel package was upgraded and customer is willing Compute Resource(s) running it (for security reason).

Upgrade Static Backup Servers


After you upgraded static compute resources, proceed to static backup servers upgrade.

  1. Download the OnApp repository:

    # rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-5.3.noarch.rpm
  2. Update the package:

    # yum update onapp-bk-install
  3. Run the following script:

    # /onapp/onapp-bk-install/onapp-bk-install.sh
  4. Update your server OS components (if required):

    # /onapp/onapp-bk-install/onapp-bk-install.sh -y

Upgrade Control Panel Server


 

To upgrade your Control Panel server:

 

  1. Download and install the latest OnApp YUM repository file:

    # rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-5.3.noarch.rpm
  2. Upgrade OnApp Control Panel installer package:

    # yum update onapp-cp-install


  3. Update your server OS components (if required):

    # /onapp/onapp-cp-install/onapp-cp-install.sh -y
  4. (Optional) If you need some custom Control Panel configuration, set the values before the installer script runs.

     Edit the /onapp/onapp-cp.conf file to set Control Panel custom values

    Template server URL

    TEMPLATE_SERVER_URL='http://templates-manager.onapp.com';

    # IPs (separated with coma) list for the snmp to trap

    SNMP_TRAP_IPS=

    # OnApp Control Panel custom version

    ONAPP_VERSION=""

    # OnApp MySQL/MariaDB connection data (database.yml)

    ONAPP_CONN_WAIT_TIMEOUT=15
    ONAPP_CONN_POOL=30
    ONAPP_CONN_RECONNECT='true'
    ONAPP_CONN_ENCODING='utf8'
    ONAPP_CONN_SOCKET='/var/lib/mysql/mysql.sock'

    # MySQL/MariaDB server configuration data (in case of local server)

    MYSQL_WAIT_TIMEOUT=604800
    MYSQL_MAX_CONNECTIONS=500
    MYSQL_PORT=3306

    # Use MariaDB instead of MySQL as OnApp database server (Deprecated parameter. If you set any values for this parameter, they will not take effect)

    WITH_MARIADB=0

    # Configure the database server relative amount of available RAM

    TUNE_DB_SERVER=1

    # The number of C data structures that can be allocated before triggering the garbage collector. It defaults to 8 million

    RUBY_GC_MALLOC_LIMIT=16000000

    # sysctl.conf net.core.somaxconn value

    NET_CORE_SOMAXCONN=2048

    # The root of OnApp database dump directory (on the Control Panel box)

    ONAPP_DB_DUMP_ROOT=""

    # Remote server's (to store database dumps) IP, user, path, openssh connection options ans number of dumps to keep

    DB_DUMP_SERVER=""
    DB_DUMP_USER="root"
    DB_DUMP_SERVER_ROOT="/onapp/backups"
    DB_DUMP_SERVER_SSH_OPT="-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o PasswordAuthentication=no"
    KEEP_DUMPS=168
    DB_DUMP_CRON='40 * * * *'

    # Enable monit - tool for managing and monitoring Unix systems

    ENABLE_MONIT=1

    # If enabled (the 1 value is set) - install (if local box) and configures RabbitMQ Server (messaging system) for the vCloud support. (Deprecated parameter. If you set any values for this parameter, they will not take effect)

    ENABLE_RABBITMQ=1
    # Rotate transactions' log files created more than TRANS_LOGS_ROTATE_TIME day(s) ago
    TRANS_LOGS_ROTATE_TIME=30
    # Maximum allowed for uploading file size in bytes, from 0 (meaning unlimited) to 2147483647 (2GB). Default is 1GB
    MAX_UPLOAD_SIZE=1073741824

    # Timeout before ping Redis Server to check if it is started. Default is 5 sec.

    REDIS_PING_TIMEOUT=5

    # OnApp Control Panel SSL certificates (please do not change if you aren't familar with SSL certificates)
    # * The data below to generate self-signed PEM-encoded X.509 certificate

    SSL_CERT_COUNTRY_NAME=UK
    SSL_CERT_ORGANIZATION_NAME='OnApp Limited'
    SSL_CERT_ORGANIZATION_ALUNITNAME='OnApp Cloud'
    SSL_CERT_COMMON_NAME=`hostname --fqdn 2>/dev/null`

    #   SSLCertificateFile, SSLCertificateKeyFile Apache directives' values
    #   ssl_certificate, ssl_certificate_key Nginx directives' values

    SSLCERTIFICATEFILE=/etc/pki/tls/certs/ca.crt
    SSLCERTIFICATECSRFILE=/etc/pki/tls/private/ca.csr
    SSLCERTIFICATEKEYFILE=/etc/pki/tls/private/ca.key

    # * PEM-encoded CA Certificate (if custom one exists)
    #   SSLCACertificateFile, SSLCertificateChainFile Apache directives' values
    #   ssl_client_certificate Nginx directives' values

    SSLCACERTIFICATEFILE=
    SSLCERTIFICATECHAINFILE=


     

    #   SSLCipherSuite, SSLProtocol Apache directives' values
    #   ssl_ciphers, ssl_protocols Nginx directives' values

    SSLCIPHERSUITE=
    SSLPROTOCOL=


     

    # vi /onapp/onapp-cp.conf

    If the onapp-cp.conf file is not configured correctly, it will replace the SSL files with a self-signed even if a legitimate certificate is already installed.

  5. Run Control Panel installer:

    # /onapp/onapp-cp-install/onapp-cp-install.sh
     The full list of Control Panel installer options:

    Usage:

    /onapp/onapp-cp-install/onapp-cp-install.sh -hUsage: /onapp/onapp-cp-install/onapp-cp-install.sh [-c CONFIG_FILE] [--mariadb | --percona | --percona-cluster] [-m MYSQL_HOST] [--mysql-port=MYSQL_PORT] [--mysql-sock[=MYSQL_SOCK] [-p MYSQL_PASSWD] [-d MYSQL_DB] [-u MYSQL_USER] [-U ADMIN_LOGIN] [-P ADMIN_PASSWD] [-F ADMIN_FIRSTNAME] [-L ADMIN_LASTNAME] [-E ADMIN_EMAIL] [-v ONAPP_VERSION] [-i SNMP_TRAP_IPS] [--redis-host=REDIS_HOST] [--redis-bind[=REDIS_BIND] [--redis-passwd[=REDIS_PASSWD] [--redis-port=REDIS_PORT] [--redis-sock[=REDIS_SOCK] [--rbthost RBT_HOST] [--vcdlogin VCD_LOGIN] [--vcdpasswd VCD_PASSWD] [--vcdvhost VCD_VHOST] [--rbtlogin RBT_LOGIN] [--rbtpasswd RBT_PASSWD] [-a] [-y] [-D] [-t] [--noservices] [--ha-install] [--rake=RAKE_TASKS] [-h]

    Where:

     Database server options:Default database SQL server is MySQL Server. Please use one of the following option to install LOCALLY.
    --mariadbMariaDB Server
    --perconaPercona Server
    --percona-clusterPercona Cluster
    MYSQL_*Options are useful if MySQL is already installed and configured.
    -m MYSQL_HOSTMySQL host. Default is 'localhost'
    --mysql-port=MYSQL_PORTTCP port where MySQL Server serves connections. Default values is 3306 for the local installation
    --mysql-sock[=MYSQL_SOCK]Unix socket on which MySQL Server serves connections. Default values is /var/lib/mysql/mysql.sock. Used if local server only. The socket is unset if the option's argument isn't specified.
    -p MYSQL_PASSWDMySQL password. Random is generated if is not set or specified.
    -d MYSQL_DBOnApp MySQL database name. Default is 'onapp'
    -u MYSQL_USERMySQL user. Default is 'root'
    REDIS_*Options are useful if Redis Server is already installed and configured.
    --redis-host=REDIS_HOST


    IP address/FQDN where Redis Server runs.
    The Redis Server will be installed and configured on the current box if localhost/127.0.0.1 or box's public IP address (listed in SNMP_TRAP_IPS) is specified.
    If local Redis, it will serve as well on the unix socket '/tmp/redis.sock'.
    Default value is 127.0.0.1.
     --redis-bind[=REDIS_BIND]The IP address for Redis Server to serve connections (to listen). The option is not mandatory.
    --redis-port=REDIS_PORTRedis Server listen port.
    Defaults are:
    0 - if local server
    6379 - if remote server
    --redis-passwd[=REDIS_PASSWD]Redis Server password to authentificate.
    Random password is generated if the option's argument isn't specified.
    By default no password is used for local Redis.
    --redis-sock[=REDIS_SOCK]Path to the Redis Server's socket. Used if local server only.
    Default is /tmp/redis.sock. The socket is unset if the option's argument is not specified.
    ADMIN_*Options are used to configure OnApp Control Panel administrator data.
    Please note, that these options are for NEW INSTALL only and not for upgrade
     -P ADMIN_PASSWDCP administrator password
    -F ADMIN_FIRSTNAMECP administrator first name
    -L ADMIN_LASTNAMECP administrator last name
    -E ADMIN_EMAILCP administrator e-mail
      --rbthost   RBT_HOST  IP address/FQDN where RabbitMQ Server runs. The RabbitMQ will be installed and configured on the current box if localhost/127.0.0.1 or box's public IP address (enlisted in SNMP_TRAP_IPS) Default values are 127.0.0.1.
    VCD_*Options are usefull if vCloud/RabbitMQ are already installed and configured.
    --vcdlogin  VCD_LOGINRabbitMQ/vCloud user. Default value is 'rbtvcd'.
    --vcdpasswd VCD_PASSWDRabbitMQ/vCloud user password. The random password is generated if isn't specified.
    --vcdvhost  VCD_VHOSTRabbitMQ/vCloud vhost. Default value is '/'
    RBT_*  Options are used to configure RabbitMQ manager account. If local RabbitMQ server.
    --rbtlogin  RBT_LOGIN RabbitMQ manager login. The default value is 'rbtmgr'.
    --rbtpasswd RBT_PASSWDRabbitMQ manager password. The random password is generated if isn't specified.
    --ha-installProceed with Control Panel and High Availability components installation
    --rake RAKE_TASKSList of OnApp Control Panel rake tasks (separated with space) to run at the very end of install or upgrade.
    -v ONAPP_VERSIONInstall custom OnApp CP version
    -i SNMP_TRAP_IPS

    IP addresses separated with coma for snmp to trap

    The '-i' option has higher priority than 'on_app.yml'/'onapp-cp.conf' files.
    In case of the Control Panel upgrade with the '-i' option the snmp address will be overwritten in the 'on_app.yml'/'onapp-cp.conf' files.

    During the Control Panel upgrade without the '-i' option the 'on_app.yml' file has higher priority than the 'onapp-cp.conf' file.
    In this case the snmp address will be taken from the 'on_app.yml' file and the 'onapp-cp.conf' file will be overwritten.

    -c CONFIG_FILECustom installer configuration file. Otherwise, preinstalled one is used.
    -yupdate OS packages (except of OnApp provided) on the box with 'yum update'.
    -aDo not be interactive. Process with automatic installation. Please note, this will continue OnApp Control Panel install/upgrade even if there is transaction currently running.
    -tAdd to the database and download Base Templates. For new installs only. If this option is not used, then only the following mandatory System Templates will be added by default during fresh install: OnApp CDN Appliance; Load Balancer Virtual Appliance; Application Server Appliance.
    --noservices

    Do not start OnApp services: monit, onapp and httpd
    Please note, crond and all OnApp's cron tasks remain running. They could be disabled by stopping crond service manually for your own risk.

    -Ddo not make database dump, and make sure it is disabled in the cron and not running at the moment
    -hprint this info

    You may wish to reboot your Control Panel server to take advantage of a new kernel if it is installed. It is not required immediately as a part of the upgrade process though.

  6. If you are using the OnApp with vCD integration, we recommend running the following script to ensure that OnApp and vCloud Director are in sync:

    # cd /onapp/interface ; RAILS_ENV=production rake vcloud:resync_clean
    
    # cd /onapp/interface ; RAILS_ENV=production rake vcloud:resync

    The first script should take less than a minute or two to run, while the second script can take up to 25 minutes (dependent on the size of your environment).

    You can can check the status of these scripts while they are running, by having a separate console open and monitoring the following file:

    # tail -f /onapp/interface/log/production_vcloud.log

If you face the problem with viewing the maps on VS/Smart/Application server creation wizard (Locations step), refer to the Add Google Map API Key document.

 

 


Getting support for your upgrade

You can use the information in this document to perform your own upgrade to the 5.3 version of the OnApp Cloud. However, if you have a full OnApp Cloud license, you are entitled to free upgrade support from the OnApp Support team.

If you would prefer to have the Support team perform the upgrade for you, just raise a ticket in the normal way. Please be aware, however, that there may be a queue! For help with your upgrade, visit the OnApp community forum: http://forum.onapp.com.

  • No labels