Deployment Guide 13.0_DEPRECATED
Solution Prerequisites
Following are the solution setup prerequisites.
Hardware requirements
For HA deployment, each machine in the cluster should have the following hardware specifications.
| Minimum requirement |
|---|---|
CPU | 2 cores vCPU (4 cores for non-HA deployment) |
RAM | 4 GB (8 GB for non-HA deployment) |
Disk | 100 GB mounted on / |
NICs | 1 NIC |
Software Requirements
Installation Steps
Internet should be available on the machine where the application is being installed and connections on port 9242 should be allowed in the network firewall to carry out the installation steps. Commands and steps marked with (HA only) tag shouldn't be executed in a standalone single server deployment. All the commands start with a # indicating that root user privileges are required to execute these commands. Trailing # is not a part of the command.
Allow ports in the firewall
For internal communication of docker swarm, you'll need to allow the communication (both inbound and outbound) on the ports: 7575/tcp, 8090/tcp, 8091/tcp and 7077/tcp.
To start the firewall on CentOS (if it isn't started already), execute the following commands. You'll have to execute these commands on all the cluster machines.:
# systemctl enable firewalld
# systemctl start firewalldTo allow the ports on CentOS firewall, you can execute the following commands. You'll have to execute these commands on all the cluster machines.
# firewall-cmd --add-port=7575/tcp --permanent
# firewall-cmd --add-port=8090/tcp --permanent
# firewall-cmd --add-port=8091/tcp --permanent
# firewall-cmd --add-port=7077/tcp --permanent
# firewall-cmd --reloadConfigure Log Rotation
Add the following lines in /etc/docker/daemon.json file (create the file if not there already) and restart the docker daemon using systemctl restart docker. Perform this step on all the machines in the cluster in case of HA deployment.
{
"log-driver": "json-file",
"log-opts": {
"max-size": "50m",
"max-file": "3"
}
}Creating a Swarm Cluster
Initialize a swarm manager with the IP address of the machine on which it is being run:
# docker swarm init --advertise-addr <ip-addr>
Installing Application
Download the deployment script ecm-deployment.sh and place it in the
/rootdirectory. This script will:delete the ecm-deployment directory in the present working directory if it exists.
clone the ecm-deployment repository from gitlab in the present working directory.
To execute the script, give it the execute permissions and execute it.
# chmod +x ecm-deployment.sh # ./ecm-deployment.shUpdate environment variables in the following files inside
/root/ecm-deployment/docker/environment_variablesfolder.common-variables.envumm-variables.envclm-variables.envprompt-variables.env
frontend-variables.env
Get domain/CA signed SSL certificates for ecm FQDN/CN and place the files in
/root/ecm-deployment/docker/certificatesfolder. The file names should beserver.crtandserver.key.Execute the following commands inside /root/ecm-deployment directory. You just need to execute this on any one of the machines even in case of HA cluster:
# chmod 755 install.sh # ./install.shRun the following command to ensure that all the components are up and running. The screenshot below shows a sample response for a standalone non-HA deployment.
# docker service ls
Adding License
Browse to https://FQDN/umm in your browser (FQDN will be the domain name assigned to the IP/VIP).
Click on the red warning icon on right, paste the license in the field and click save.