Install Compute Resources
Please note that CentOS 6 reached End of Life and is not longer supported. That is why we recommend you upgrade to CentOS 7.
After you successfully installed the Control Panel server, you can follow the next procedures to set up Xen or KVM compute resources:
- Install CloudBoot Compute Resources
- Install Static Compute Resources
- Install Static KVM Compute Resources with Integrated Storage - proceed to this section if you plan to use OnApp Integrated Storage on static resources
Install CloudBoot Compute Resources
Before you proceed
- The CloudBoot compute resource installation enables dynamic boot of compute resource servers without any persistent installation requirements.
- The servers must support and have PXE boot enabled on the Network Interface Card (set up in BIOS if not already enabled by default). See Configure CloudBoot Settings in BIOS for details.
- Disable CPU power-saving features in BIOS before you proceed to the compute resource installation.
- We strongly recommend you to deploy one or more backup servers for backups and virtual servers provisioning when using CloudBoot.
Enable CloudBoot on the Control Panel:
Go to Admin > Settings > Configuration > System > CloudBoot.
Scroll down to the CloudBoot section and check the Enable box.
- Enable Storage on the Control Panel:
- Go to Admin > Settings > Configuration > System > OnApp Storage.
Scroll down to the OnApp Storage section and check the Enable OnApp Storage box.
Tick the Use Local Read Path checkbox to minimize the network throughput dependency for read heavy workloads.
- Enter IP addresses for static content target and Control Panel server CloudBoot interface. Enter the relevant IPs in Settings > Configuration > System > CloudBoot. Static content, such as CloudBoot images, kernels, virtual server templates, can be hosted on a standalone NFS server if you want. The default configuration is to install everything on the Control Panel server.
- Add CloudBoot IP addresses for compute resources:
- Create a CloudBoot IP Net:
Admin > Settings > Compute Resources > CloudBoot IPs tab > New IP Net. - Add an IP range to the new IP Net:
Admin > Settings > Compute Resources > CloudBoot IPs > Actions icon next to the IP net > Add New IP Range. - Add CloudBoot IP Addresses:
Admin > Settings > Compute Resources > CloudBoot IPs > Create IP Address.
- Create a CloudBoot IP Net:
- Power on servers and allow them to boot the default image. Add servers to the Control Panel by selecting MAC addresses and assigning IP address via Admin > Settings > Compute Resources > Add New CloudBoot Compute Resource.
If you want to expose drives in compute resources to OnApp Storage, our integrated storage platform, then you must select them at this point. For more information on setting up and configuring CloudBoot, see the CloudBoot Compute resources page of the Admin guide.
CloudBoot compute resources mount the following locations automatically at boot:
- /data to /onapp/tools/recovery
- /onapp/templates to /.templates
If you are using CentOS 6, you need to manually create symbolic link /data to /onapp/tools/recovery folder adding this command to Custom Config on a compute resource:
- ln -s /onapp/tools/recovery /data
The NFS server from which these are mounted is defined by the Static Config Target parameter (see the Edit System Configuration page for details). You can set the default Control Panel server IP to any other server. This change will affect all CloudBoot compute resources.
The following paths must be available in the static config target to make it possible to use CloudBoot:
- /tftpboot/export
- /data
- /tftpboot/images
Compute resources will use local templates (mounted from Static Config target) during the server provisioning if the Use SSH File Transfer configuration setting is disabled or the template has null backup_server_id.
- ln -s /onapp/tools/recovery /data
- If you do not have a Dedicated Backup Server in place, please use Custom Config to mount
/onapp/templates
and/onapp/backup
from your Control Panel server or another NFS export. After you have installed CloudBoot compute resource, proceed to the Configure CloudBoot Settings in BIOS section.
Accelerator Deployment
If you want to deploy Accelerator, run the following steps:
Run the following command:
# su onapp # cd /onapp/interface
Run the following command on the Control Panel server:
For all compute resources:
# rake hypervisor:messaging:configure
For certain compute resources only:
# rake hypervisor:messaging:configure['11.0.50.111 11.0.50.112']
To perform the configuration for a number of compute resources, separate their IP addresses with a space. The command above should be run after every reboot. However, you can avoid the necessity to run the command repeatedly after every reboot by coping the following information (using your parameters) from
/home/mq/onapp/messaging/credentials.yml
to the custom config:echo "--- host: 10.0.50.4 # RABBITMQ SERVER IP/FQDN port: 5672 # RABBITMQ CONNECTION PORT(default: 5672) vhost: '/' user: accelerator-example # RABBITMQ USER NAME password: 'e{y31?s8l' #RABBITMQ ACCESS PASSWORD queue: 'hv-10.0.50.102' # hv-[IP Address of Compute Resource] exchange: name: 'acceleration' type: 'direct' durable: True" > /home/mq/onapp/messaging/credentials.yml chown -R mq:mq /home/mq service onapp-messaging restart
For information on manual configuration for Accelerator, refer to RabbitMQ Configuration for Accelerator.
Configure CloudBoot Settings in BIOS
Your BIOS settings may vary from the example provided in this section.
To use PXE boot, you have to make sure it is enabled in BIOS.
- Select the required Ethernet card supporting PXE as a boot device:
- Go to the Advanced settings > PCI/PnP Configuration.
- In the Advanced settings, select the first/primary Onboard LAN/NIC Option ROM and press Enter.
Use up and down arrow keys to set Option ROM settings to enabled and press Enter.
Press the Escape key to return to the Advanced menu.
- Set a local disk as a second boot device.
Configure InfiniBand
To enable the InfiniBand mode:
- Go to Control Panel > Admin > Settings > Configuration on the OnApp CP.
- Move the Enable InfiniBand Boot slider in the CloudBoot section.
- Click the Save Configuration button.
Install Static Compute Resources
To install a compute resource:
Add a compute resource to your cloud using the OnApp Control Panel: Admin > Settings > Compute resources > Add New Compute Resource.
Make sure that the compute resource is visible in the Control Panel and at this point is shown as inactive.Update your server:
# yum update
Download the OnApp repository:
# rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-6.7.noarch.rpm
Install the OnApp compute resource installer package:
# yum install onapp-hv-install
Edit custom configuration for a compute resource. Custom values must be set before the installer script runs.
# vi /onapp/onapp-hv.conf
Run the OnApp compute resource installer script, depending on the compute resource:
For KVM
# /onapp/onapp-hv-install/onapp-hv-kvm-install.sh
Please refer to the Install Integrated Storage on Static Compute Resources section if you plan to use OnApp Integrated Storage on the compute resource (CentOS7 KVM only).
Configure the compute resource for your cloud. This step is also required for the SNMP statistics receiver configuration:
# /onapp/onapp-hv-install/onapp-hv-config.sh -h <CP_HOST_IP> -p <HV_HOST_IP> -b <HV_BSNET_IP>
If requested by the installer, reboot the compute resource to complete the installation:
# shutdown -r now
Perform the steps from 9 to 11 if you haven't installed SSH keys for the compute resource yet. You may proceed to step 10 if you want to install all compute resources or install a particular compute resource at step 11.
- Generate SSH keys that OnApp requires for you to access various elements of the cloud. The script provided will generate and transfer keys as necessary. The script needs to be run on your Control Panel server. It will overwrite any keys that already exist, so if you have custom keys already installed, you will need to add them again after running the script. The script will ask you for your login details to various servers during the execution. Please follow the onscreen instructions.
If you install a new cloud instance, connect to your Control Panel server via SSH, download, and run the script:
# wget http://downloads.repo.onapp.com/install-all-keys.sh # /bin/sh install-all-keys.sh
If you are add additional compute resources to an existing cloud, update the
authorized_keys
file by running the following script on the Control Panel server:# ssh-copy-id -i /home/onapp/.ssh/id_rsa.pub root@HV_HOST_IP
Perform the following step (12) if you do not plan to install a dedicated backup server.
- If you do not have a dedicated backup server, you must mount your template and backup repositories to compute resources. If your template and backup repositories are located on the Control Panel server, you can mount them as follows:
Make sure that locations are added to
/etc/exports
on the Control Panel server and then reboot.# /onapp/templates 192.168.10.0/24(rw,no_root_squash) # /onapp/backups 192.168.10.0/24(rw,no_root_squash)
Add locations to
/etc/rc.local
on the compute resource and run them manually on the command line (in this example, we are mounting from 192.168.10.101).# mkdir -p /onapp/backups && mount -t nfs 192.168.10.101:/onapp/backups /onapp/backups # mkdir -p /onapp/templates && mount -t nfs 192.168.10.101:/onapp/templates /onapp/templates
- Mount ISO locations:
To build virtual servers from ISO images, it is required to mount and share the location where the ISOs are stored at the Control Panel server with all the compute resources. When virtual servers are booted from ISOs, the ISO image is taken from the compute resource server. The location is preconfigured in onapp.yml config file:
iso_path_on_cp
- specifies the location where ISOs are stored on the Control Panel server. By default, the location is/data
. You can change it to any other suitable location. Make sure that this location is shared with the specified iso_path_on_hv location.iso_path_on_hv
- specifies the location where ISOs are located on the compute resource servers. By default, the location is/data
. You can change it to any other suitable location with theonappowner
user and read/write access. Make sure that this location is mounted to the specifiediso_path_on_cp
location.
CloudBoot compute resources mount the
/data
location automatically at boot to the/onapp/tools/recovery
on a compute resource.ISOs can be hosted on a dedicated server at any desired location with an arbitrary name if you want. In this case, it is necessary to mount the ISOs location on this server to the Control Panel
iso_path_on_cp
directory and all the compute resourcesiso_path_on_hv
locations. This can be a backup server to avoid the excess usage of the Control Panel resources.
Accelerator deployment for static compute resources
To edit the configuration for Accelerator manually, perform the following steps:
Copy file:
# cp /home/mq/onapp/messaging/credentials{_example,}.yml
Open
vi /home/mq/onapp/messaging/credentials.yml
and check the following details:--- host: 10.0.50.4 # RABBITMQ SERVER IP/FQDN port: 5672 # RABBITMQ CONNECTION PORT(default: 5672) vhost: '/' user: accelerator-example # RABBITMQ USER NAME password: 'e{y31?s8l' #RABBITMQ ACCESS PASSWORD queue: 'hv-10.0.50.102' # hv-[IP Address of Compute Resource] exchange: name: 'acceleration' type: 'direct' durable: True
Change an owner:
# chown -R mq:mq /home/mq
Run the following commands:
# service onapp-messaging start # monit monitor onapp-messaging
Install Static KVM Compute Resources with Integrated Storage
Before you proceed
There are the following limitations for static compute resources with Integrated Storage:
- Integrated storage is supported only for CentOS 7 KVM compute resources.
- You must be running OnApp 6.1 version and higher.
- You must enable Storage in the system configuration first (Settings > Configuration > OnApp Storage). Visit the Configuration Settings page for more details.
Use the following recommended partitioning schema for your compute resource. The /etc/fstab should look like:
/dev/centos/root / xfs defaults 0 0 UUID=... /boot xfs defaults 0 0 /dev/centos/swap /swap swap defaults 0 0
To install integrated storage on static compute resources:
- Add a static compute resource to your cloud using the OnApp Control Panel: Admin > Settings > Compute resources > Add New Compute Resource.
Make sure that the compute resource is visible in the Control Panel and at this point is shown as inactive. Update your server:
# yum update
Download the OnApp repository:
# rpm -Uvh http://rpm.repo.onapp.com/repo/onapp-repo-6.7.noarch.rpm
Install the OnApp compute resource installer package:
# yum install onapp-hv-install
Run the OnApp compute resource installer script:
# /onapp/onapp-hv-install/onapp-hv-kvm-install.sh -d
Configure the compute resource for your cloud. This step is also required for the SNMP statistics receiver configuration:
# /onapp/onapp-hv-install/onapp-hv-config.sh -h <CP_HOST_IP> -p <HV_HOST_IP> -b <HV_BSNET_IP>
Update the authorized_keys file by running the following script on the Control Panel server:
# ssh-copy-id -i /home/onapp/.ssh/id_rsa.pub root@HV_HOST_IP
- After you have installed integrated storage on static compute resource, configure your static compute resource devices.
Edit
/tmp
mount point entry/etc/fstab
and replace your current entry with the following:tmpfs /tmp tmpfs size=1024m,nosuid,nodev 0 0
- Reboot the compute resource to complete the installation.