Deploying a Cloudify Manager Image
A Cloudify Manager is a compute host that runs the Cloudify Management services. To help you get running with Cloudify Manager easily, Cloudify provides images of Cloudify Manager for:
- OpenStack
- Docker
You can create an OpenStack instance with the OpenStack QCOW file, or load a Docker container. Images include pre-installation of Cloudify Manager and its dependencies.
To install Cloudify Manager on bare-metal or other platforms using a single offline RPM package, go to installing Cloudify Manager.
Make sure that your environment meets the prerequisites before you install Cloudify Manager.
Setup an Instance of a Cloudify Manager Image
- Go to the Cloudify download page and select the Cloudify Enterprise or Community image for your platform.
Start the image in your platform:
OpenStack
Go to your OpenStack cloud and launch an instance based on the image you downloaded:
- Go to Compute > Images and click Create.
- Enter the details of the image, including:
- Image Source - Select Image File and click Browse File to browse to the QCOW2 image file.
- Format - Select QCOW2.
- Configure the instance resources according to the prerequisites.
- Launch the instance.
- To verify that the Cloudify Manager is installed after the instance is created and running, go to the Cloudify Management Console at
http://<public_ip>
. Use this IP address as the manager IP address for CLI and Cloudify Management Console connections.
Docker
- Verify that the target computer meets the prerequisites.
To create and start a Docker container with Cloudify Manager, run:
Or, with a minimal command:docker run --name cfy_manager_local -d --restart unless-stopped \ -v /sys/fs/cgroup:/sys/fs/cgroup:ro --tmpfs /run --tmpfs /run/lock \ --security-opt seccomp:unconfined --cap-add SYS_ADMIN \ -p 80:80 -p 5671:5671 -p 53333:53333 -p 8000:8000 \ cloudifyplatform/premium-cloudify-manager-aio:latest
Explanation of commonly useddocker run -d \ -v /sys/fs/cgroup:/sys/fs/cgroup:ro --tmpfs /run --tmpfs /run/lock \ cloudifyplatform/premium-cloudify-manager-aio:latest
docker run
flags:--restart unless-stopped
: auto-restart of the containersecurity-opt secconmp:unconfined --cap-add SYS_ADMIN
or alternatively--privileged
: when running a SystemD-based container, giving the container elevated privileges is required for SystemD itself to run. When using a new enough Docker Engine (at least 17.05+), those flags can be omitted, but the host SELinux policy might need to be adjusted by doingsetsebool -P container_manage_cgroup true
. Neither those flags, nor the SELinux adjustment, are required when using containers not based on SystemD.-v /sys/fs/cgroup:/sys/fs/cgroup:ro --tmpfs /run --tmpfs /run/lock
: mounts required only when using a SystemD-based container. Note that the host machine must also be using SystemD.-p 80:80 -p 5671:5671 -p 53333:53333 -p 8000:8000
or alternatively-p 443:443
: the ports 5671 and 53333 are used for manager/agent communication, while the port 80 or 443 is used for CLI/UI access to the manager. Port 8000 is used for the hello-world example and is optional. Using the-p
flags, or even--network host
, these ports can be forwarded from the host machine to the container.--name cfy_manager_local
: the name given to the container, for use with laterdocker exec
calls.-v /some/absolute/path/to/config.yaml:/etc/cloudify/config.yaml:rw
: mounting a yaml file at/etc/cloudify/config.yaml
allows configuring the manager container, including setting an admin password, and providing paths to TLS certificates.
The container’s starter service will take a while to boot up all the manager components. Run
cfy_manager wait-for-starter
to synchronously wait for the manager to fully start:When done,docker exec cfy_manager_local cfy_manager wait-for-starter
wait-for-starter
will print out the manager’s admin password to stdout.You can change the admin password by running
cfy_manager reset-admin-password
:docker exec cfy_manager_local cfy_manager reset-admin-password NEW_PASSWORD
To verify that the Cloudify Manager is installed after the instance is created and running, go to the Cloudify Management Console at
http://<manager_ip>
, or if the manager’s port was bound to the host machine’s port using-p 80:80
or similar, usehttp://<host_ip>
. Use this IP address as the manager IP address for CLI and Cloudify Management Console connections.Cloudify Management Console’s HTTP port depends on actual Cloudify Manager’s configuration. If you wish to enable SSL, you should also start using
443
port (-p 443:443
in thedocker run
command) andhttps://
protocol for accessing Cloudify Management Console.Activate your license - Learn more about license activation
To use Cloudify Manager from the terminal using the Cloudify CLI, run the following command with your instance details.
$ cfy profiles use <manager-ip> -u admin -p admin -t default_tenant
The default credentials are:
- username -
admin
- password -
admin
Because the
cfy
command is already available and configured, you can navigate to Cloudify Manager using SSH and use the already configured CLI environment (except for Docker). You can also install Cloudify CLI on a local host and connect to the instance remotely.- username -
To change the
admin
password, run:cfy users set-password admin -p <new-password>
To update the active CLI profile to use the new password, run:
cfy profiles use <manager-ip> -u admin -p <the-new-password> -t default_tenant
Next Steps
After Cloudify Manager is installed, you can configure your Cloudify Manager for your environment, including:
- Upload plugins to add functionality to Cloudify Manager
- If you intend to use Cloudify to work with LDAP, setup the LDAP connection.
- Build the secrets store for your tenants to store data variables that you do not want to expose in plain text in Cloudify, such as login credentials for a platform.
First Deployment
Check out your new Cloudify Manager by installing the Local Hello-World Example Deployment.
This example demonstrates how you can use Cloudify to easily install a local HTTP server with a hello-world page on it.