Document toolboxDocument toolbox

Deployment procedure (from EA 1.3)

The following procedure is provided to guide EAM administrators in the installation of the solution. Please review carefully the pre-requisites section before starting with the procedure itself.

The inventory file provided by default with the EAM installation package (also available in the example files section) is intended to be used in AIO (All In One)-type of deployments -i.e., all components running in a single server and communications using HOSTS file. If you have specific requirements for your deployment scenario -e.g., full high-availability-, please refer to the Generic deployment guidelines section for specific instructions to address your needs.

Prerequisites

Make sure all these prerequisites are met. Otherwise, the installation procedure will fail:

  • Ensure the host can connect to public URLs on the Internet.

  • Ensure you can access through SSH the host using its main service IP address. It should be also possible to open an SSH connection from the same host using that IP address.

  • Download the Devo domain certs:

    • Connect to your Devo domain web interface.

    • Access to Administration → Credentials in the left pane.

    • Select X.509 certificates in the upper menu

    • Select your certificate, download them and rename them as:

      • Click on CHAIN CA in the upper right corner ->chain.crt

      • Click on certificate on the certificate row -> domain.crt

      • Click on private key on the certificate row -> domain.key

         

    • Copy the files to $HOME/devo-ea-deployer/domain-certs

Installation procedure


  1. Download the package to your $HOME folder and extract it:

    tar -xzvf devo-ea-deployer-1.3.0.1.tgz
  2. Change the working directory to the path where the installation package was extracted:

    cd $HOME/devo-ea-deployer
  3. Run the preparation script:

    curl -L -u dea-repo:Th3R3p0! https://d2ur64jmn3k7yt.cloudfront.net/gtls/getansible-venv.sh | /bin/bash
  4. Activate the virtual environment with the command displayed at the end of the execution of the previous command. Typically it will be something like:

  5. Install the Ansible playbooks' dependencies:

The inventory is the base of the deployment process and will define the topology of the deployment. For more information on the ansible inventory, check this article.

The inventory file can be created using the inventory creation wizard or using the example files provided with the packages and editing them manually. Remember to have the virtual environment activated (step 4 in “Requirements Installation”).

Inventory creation (using wizard)

  1. Execute the inventory creation wizard specifying the inventory output file. The wizard will create the inventory file based on your inputs to a series of questions. To get more info, check this article.

  2. For security reasons, it is recommended to change the default password of the root user for the MySQL service. It is only necessary if the No-HA mode is selected and MySQL service will be deployed by the deployment tool. To configure the password for MySQL root user, edit the inventory file inventories/deployment_inventory.yaml

    and add deam_mysql_root_password variable with a strong password in its value.

    Replace <<ROOT PASSWORD HERE>> by the password value of your election.

Bear in mind that indentation is very important in yaml files.

Inventory creation (using example file)

  1. Copy the example inventories/1host-example.yaml and save it as inventories/deployment_inventory.yaml

  2. Edit the file based in the particular requirements of the installation. Refer to this article to create a proper inventory for your environment in a production deployment. Minimal configuration for a standard lab and PoC deployment in a single server is depicted in steps 7 and 8.

  3. Set the following properties under all.hosts.devo-ea-manager yaml section:

    • ansible_host: Devo Endpoint Agent Manager IP.

    • ansible_user: User that will run Devo EAM. Same as the user that has been configured previously in sudoers

    • ansible_ssh_password: User SSH Password that runs Devo EAM User (ansible_user)

    • Enable the packs that you want to deploy, for more info check this article.

    • If you want to use a private key instead of user and password, please check this article.

  4. Set the property ansible_python_interpreter according to your python interpreter:

    1. For Red Hat 7 / Centos 7: /usr/bin/python

    2. For other distros: /usr/bin/python3

  5. Set the following properties under all.vars yaml section:

    • deam_relay_entrypoint : tcp://FQDN_CENTRAL_RELAY:443. Where FQDN_CENTRAL_RELAY is the FQDN of your central Devo relay :

      • If your domain is deployed in the US Cloud (us.devo.com): tcp://us.elb.relay.logtrust.net:443

      • If your domain is deployed in the EU Cloud (eu.devo.com): tcp://eu.elb.relay.logtrust.net:443

      • If your domain is deployed in a different cloud, contact your Devo representative to know your entry point.

      • To send the data via a Devo Relay instead of sending it directly to Devo check here.

  1. Run the Deployment Inventory Checker Script and check that no errors or relevant warnings are showing by running:

    Deployment Inventory Checker Script will run validations on the inventory and report back if an issue is found. For more info on the Deployment Inventory Checker Script, see this article.

  2. Run the pre-requisites playbook to ensure that all external connectivity and requirements are in place. The playbook will output a summary with all the URLs connectivity that has been checked. If there is any error there, please fix it before moving ahead with the deployment. Deployment playbook will verify again these requirements and stop if they are not satisfied.

Run Ansible playbook:

Now you can connect to the server app using https://DEAM_IP:8080, where DEAM_IP is the Devo Endpoint Agent Manager IP. E-mail and password were configured in your inventory file. Note that from EA 1.3 onwards, login into the platform is done using e-mail instead of username. (More info)

Upon agent installation, all monitored endpoints (please refer to Endpoint Agent Deployment) should be automatically detected and listed as an active host. If the website was already opened before adding the host, a page refresh is required. This is an example screenshot:


Services verification

Use the following commands to verify the status of all the services exposed by the EA Manager:

  • To check the status port 8080:

  • To check the status port 8081: