Skip to main content

Cyware Threat Intelligence eXchange

Deployment Procedure

Review the Prerequisites before you start the deployment. The steps to deploy the web application services are:

Update db-stack.yml File

By default, the Kafka database service is configured to be used within the Docker network. To allow connections on the private IP of the instance, update the db-stack.yml file to set the Kafka advertised listener on the database server so that the web application server can access Kafka.

To update the db-stack.yml file, do the following:

  1. Run the following command on the database server to open the db-stack.yml file in edit mode:

    vi /apps/cyware/conf/db-stack.yml
  2. Delete the following line:

    - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://broker1:29092,PLAINTEXT_HOST://broker1:9092
  3. Uncomment the following lines:

    - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://broker1:29092,EXTERNAL_HOST://<PRIVATE IP of machine>:9092 
    - KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,EXTERNAL_HOST:PLAINTEXT
  4. In KAFKA_ADVERTISED_LISTENERS, replace <PRIVATE IP of machine> with the private IP address of the database server for the EXTERNAL_HOST value.

  5. Save and exit.

After updating the db-stack.yml file, run the following commands to restart the database stack and apply the updates:

cd /apps/cyware/conf 
docker stack deploy -c db-stack.yml db
Update vars.yml File

The vars.yml file includes variables, such as base path, database passwords, and endpoints, that are needed for the Intel Exchange application and database services.

Before you Start 

Ensure that you have configured static IP addresses for the database and web application servers.

Steps 

To update the vars.yml file, do the following:

  1. Run the following command on the web application server to open the vars.yml file in edit mode:

    vi /home/centos/ctix-installer/vars/ctix/vars.yml
  2. Update the respective values, such as base and log paths, database URLs and passwords, and more.

  3. Save and exit.

Deploy Intel Exchange Application Stack

To deploy the web application services, go to the /home/centos/ directory and run the following command on the web application server:

bash app.sh

Note

The app.sh script takes some time to run. Do not interrupt while the script is running.

Sample Output
PLAY [all] *********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [10.xx.x.64]
 
TASK [deploy/deploy-ctix : Change ansible python interpreter to python3] *******
ok: [10.xx.x.64]
  
TASK [deploy/deploy-ctix : create directory if they don't exist] ***************
changed: [10.xx.x.64] => (item=/apps/cyware/data)
changed: [10.xx.x.64] => (item=/apps/cyware/conf)

TASK [deploy/deploy-ctix : Change ansible python interpreter to python2] *******
ok: [10.xx.x.64]
 
TASK [deploy/deploy-ctix : Copy tenant.env] ************************************
changed: [10.xx.x.64]
 
TASK [deploy/deploy-ctix : Copy ctix stack file] *******************************
changed: [10.xx.x.64]

TASK [deploy/deploy-ctix : Change ansible python interpreter to python3] *******
ok: [10.xx.x.64]
  
TASK [deploy/deploy-ctix : Deploy ctix stack from a compose file] **************
changed: [10.xx.x.64]
 
TASK [deploy/deploy-ctix : Wait for services to become healthy] ****************
Pausing for 90 seconds
(ctrl+C then 'C' = continue early, ctrl+C then 'A' = abort)
ok: [10.xx.x.64]
  
TASK [deploy/deploy-ctix : Wait for API Gateway to be healthy] *****************
ok: [10.xx.x.64]
  
PLAY RECAP *********************************************************************
10.xx.x.64                 : ok=10   changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=1