Installing an All-In-One (AIO) Manager
All-in-One Installation
All-in-One (AIO) deployment is based on a single Studio Conductor box (single VM/Container) running all the cluster components, such as the manager, the database and the messaging queue.
An AIO deployment is recommended for non-mission critical use when High-availability is not required and the scale is not extreme. An AIO manager is typically used for development and testing systems, or as the production system for smaller-scale deployments.
Installation Overview
Setting up an AIO manager involves the following steps:
- Verifying that your environment meets the basic prerequisites.
- Preparing for the installation.
- Running the Install program.
Prerequisites
Review the following prerequistes to make sure your system supports this configuration. For general guidelines, see Sizing Guidelines.
Operating System
The recommended operating system is CentOS 7.9
Update to this system if required and, after downloading, log in as root and update the base image packages using the following command:
yum update -y
reboot
Note: If an internet connection is not available, an alternate method will need to be used to update the base image packages.
Configuration requirements
The following configuration settings should be available prior to installation:
- Public and private IP settings
- A configurable host name
- Administrator privileges (e.g. sudo permissions)
Sizing Guidelines
- | Minimum | Recommended |
---|---|---|
vCPUs | 2 | 8 |
RAM | 4GB | 16GB |
Storage | 10GB | 64GB |
- If a minimum of 5GB of storage is not available, cfy_manager will not install and an error message is generated.
- The minimum requirements are enough for a manager running just a few compute instances, typically for developer use, POC, or a small edge site.
- The recommended specifications were certified with 500K deployments and an average rate of over 1000 workflows per hour.
- Adding more resources has proven to be successful for higher loads.
Preparing for Installation
The following steps are required prior to running the AIO installation:
- Install the manager RPM file on your system.
- Generate the certificates.
- Upload the license file to all the nodes in the cluster.
- Install the required Python packages.
- Open the ports required for network access.
- Update the config.yaml file with your configuration parameters.
Installing the Manager RPM
The RPM file contains all the components and dependencies required to run the installation process and is available on Wind River Delivers, Wind River’s software portal. For detailed instuctions on accessing Wind River Delivers and downloading the file, see the Wind River Installation and Licensing Guide
To install the Manger RPM, log in as root and enter:
yum install -y $HOME/cloudify-manager-install-22.11-ga.el7.x86_64.rpm
Generating Certificates
Wind River recommends that a proper certificate authority is used to generate the certificates in a production environment. For additional information about certificates see Certificates Overview.
To generate test certificates using cty_manager built in commands, enter:
cfy_manager generate-test-cert -s <aio-node-fqdn>,<aio-node-private-ip>,<aio-node-public-ip>
The following shows an example of the test certificates:
Example certificates
cfy_manager generate-test-cert -s hostname1.example.com,192.0.2.1,203.0.113.1
Uploading the License File to each Nodes
Copy the license file you received from Wind River to each of the nodes and document the path. You will need to enter this path when you update the config.yaml file.
Installing Required Packages
Additional Python packages are required to support the Manager. As root, enter the following:
yum install -y unzip rsync python-setuptools python-backports python-backports-ssl_match_hostname
Open Ports for Network Access
For proper network communication, open the posts listed below.
firewall-cmd --permanent --add-port=22/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
firewall-cmd --list-ports
Update the config.yaml file
Using a text editor, open the /etc/cloudify/config.yaml file and enter your specific network parameters. Update the fields shown below by replacing the values marked in <> with values for your network.
# /etc/cloudify/config.yaml
private_ip: '<private-ip>'
public_ip: '<public-ip>'
hostname: '<host-name>'
security:
ssl_enabled: true
admin_username: '<admin-user-name>'
admin_password: '<secure-password-like-string>'
cloudify_license_path: '<cloudify-license-path-from-previous-step>'
ssl_inputs:
external_cert_path: '<this-node-local-certificate-path>'
external_key_path: '<this-node-local-key-path>'
external_ca_cert_path: '<local-ca-certificate-path>'
ca_cert_path: '<local-ca-certificate-path>'
ca_key_path: '<local-ca-key-path>'
The following shows an example of the updated fields:
Example Updates
# /etc/cloudify/config.yaml
private_ip: '192.0.2.1'
public_ip: '203.0.113.1'
hostname: 'hostname1'
security:
ssl_enabled: true
admin_username: 'adminusername'
admin_password: 'strongsecretadminpassword'
cloudify_license_path: '/root/cloudify/license.yaml'
ssl_inputs:
external_cert_path: '/root/.cloudify-test-ca/hostname1.example.com.crt'
external_key_path: '/root/.cloudify-test-ca/hostname1.example.com.key'
external_ca_cert_path: '/root/.cloudify-test-ca/ca.crt'
ca_cert_path: '/root/.cloudify-test-ca/ca.crt'
ca_key_path: '/root/.cloudify-test-ca/ca.key'
Installing the Manager
Once the preliminary installation tasks are complete, log in as root and run the following command to install the Manager.
cfy_manager install
Post Installation
Once the node is installed, perform the following to confirm the node status.
cfy cluster status