CentOS/ RHEL
Overview
A Cloudify Manager is a compute host running Cloudify components.
Deploying Cloudify Manager RPM
The Cloudify Manager RPM file includes all Cloudify Manager components and their dependencies. The RPM is self-contained and the installation process does not require an internet connection.
-
Download the Cloudify Manager RPM file
-
Copy the RPM file to your target host
-
From the terminal of your target host, run:
sudo yum install <RPM file path>
-
Customize Cloudify Manager’s settings
-
Install on a single All-In-One host
-
Cloudify Manager is ready for use at
http(s)://<manager_public_address>
Cloudify Manager Configuration
Once RPM is deployed, file /etc/cloudify/config.yaml
(View in GitHub) contains all installation options, including:
Setting | Description | Comments |
---|---|---|
admin_password |
Administrator password | Recommended. If you do not specify an administrator password in the command-line or the config.yaml file, the installation process generates a random password and shows it as output in the installation logs. |
private_ip ;public_ip |
Private and public IP addresses | Can be set in config.yaml or as command line argument to cfy_manager install |
ssl_enabled |
External REST communications over HTTPS | Recommended. |
import_resolver |
Local path replacement for remote resources with a URL | |
skip_sanity |
Skip sanity check after installation | Not recommended. |
extra_env |
Additional environment variables (see below) | |
ssl_inputs |
SSL communication settings | |
cloudify_license_path |
Path to Cloudify license file | |
task_retries |
Maximum number of retries for a task. -1 means infinite retries |
This applies to all workflows. |
task_retry_interval |
Minimum wait time (in seconds) between task retries | This applies to all workflows. |
You can validate the configurations are valid using cfy_manager validate
command.
Adding Environment Variables
In certain cases, it may be required to add environment variables to the processes that run Cloudify Manager.
For example, certain organizations impose restrictions on the installation-default temporary files directory (usually
/tmp
), requiring the adjustment of the TEMP
/ TMP
/ TMPDIR
environment variables accordingly.
This can be achieved by providing additional settings in config.yaml
:
-
The
extra_env
key under therestservice
category contains a dictionary of environment variables to be added to Cloudify’s REST Service. -
The
extra_env
key under themgmtworker
category is read as a dictionary of environment variables to be added to Cloudify’s Management Workers Service.
For example, to override the TEMP
environment variable with /var/tmp
:
mgmtworker:
extra_env:
TEMP: /var/tmp
restservice:
extra_env:
TEMP: /var/tmp
Multi-Network Management
Cloudify Manager uses Cloudify Agents to execute tasks and collect information about the resources that it manages. You must specify the Cloudify Manager IP addresses or DNS names that your agents will use to communicate with it.
- You cannot configure multi-network management on Cloudify Manager images.
- If no manager network interface is specified in the blueprint, the agent connects to the
default
interface, which is configured with theprivate_ip
flag during the RPM installation process.
Multi-network management can be configured before installing a new Manager and after.
Option 1: Configure Multi-network Management before Installing a New Manager
The Cloudify Manager networks are configured in the networks
section of the /etc/cloudify/config.yaml
file, for example:
networks:
default: <privately_routable_ip>
external: <externally_routable_ip>
You must specify the name of the Cloudify Manager network for each agent that is deployed in your blueprint with this syntax:
host:
type: cloudify.nodes.Compute
properties:
agent_config:
network: external
install_method: remote
user: { get_input: username }
key: { get_secret: agent_key_private }
port: 22
ip: { get_input: host_ip }
Option 2: Add New Networks to a Running Manager
- In order to add networks to a running Manager use the
cfy_manager add-networks
command. - New networks should be supplied as a JSON string. It is possible to add multiple new networks using one command (as shown in the example below).
- Please note that you can only add networks with unique names, otherwise an error will be raised.
- If using a Cloudify Manager cluster, the command will add the network only for the node it is run on. The command needs to be run separately on each node in the cluster, for the newly-installed agents to be able to contact all nodes in the cluster.
cfy_manager add-networks --networks '{"<network-name>": "<ip>", "<network-name>":"<ip>"}'
All-In-One Installation
To install the Cloudify Manager, run:
cfy_manager install [--private-ip <PRIVATE_IP>] [--public-ip <PUBLIC_IP>] [--admin-password <password>] [-v]
The arguments are optional if already configured in config.yaml
(see Cloudify Manager’s settings)
Uninstalling Cloudify Manager
Uninstalling the Cloudify Manager erases all Cloudify data and is irreversible.
- To uninstall the Cloudify Manager, run:
sudo cfy_manager remove -f
- To remove all of the files that the installation process extracted, run:
sudo yum remove cloudify-manager-install