ITAS On-Premise Runbook

For Luma Automation On-Premise deployment, the following components should be installed on the on-premise server:

  • itas_mule_adaptor

  • mule_run

  • itas_connectors

  • itas_service_bus

  • sa_tunneling_service

Use 'lumauser' to execute all the docker container, deployment scripts, and all the docker commands instead of sudo user. 

Pre-Deployment Actions

Perform the following Pre-deployment actions:

  1. Set up artifacts

    1. Download the latest artifact version:

b. Copy that artifact under the directory /platform/deployment.

cd /platform/deployment cd itas-deployment-onprem/deploy

2. Set up "master.properties"

  1. Locate the master.properties file and update your configurations in the respective sections.

  2. If upgrading to the latest ITAS version, you may copy the master.properties file from the previous release and add the below properties under the respective section.

    ############ Common Configuration - BEGIN ############ DOCKER_REGISTRY=registry-1.docker.io STOP_DOCKER_RESTART_ON_APP_STARTUP_FAILURE=false #ENVIRONMENT name should not have space and hyphen(-). #Use only underscore(_) and alphanumeric name in lower case #Example: desdevops ENVIRONMENT= ############ Common Configuration - END ############ ############ Application URLs - BEGIN ############ ITAS_APPLICATION_URL= SA_ONPREM_BRIDGE_URL= ############ Application URLs - END ############ ############ Versions & Servers - BEGIN ############ ITAS_SERVICE_BUS_VERSION= ITAS_MULE_ADAPTOR_VERSION= ITAS_DBUPGRADE_VERSION= ITAS_CONNECTORS_PACKAGE_VERSION= SA_TUNNELLING_SERVICE_VERSION= #ITAS Hosts #Provide ip of the host machine where docker container will run. If all the container are on the same machine then all ip will be same. ITAS_ACTIVEMQ_MASTER_BROKER_SERVER_NAME= ITAS_ACTIVEMQ_SLAVE_BROKER_SERVER_NAME= SA_TUNNELING_ACTIVEMQ_MASTER_BROKER_SERVER_NAME= ITAS_MULE_ADAPTOR_SERVER_NAME= ITAS_MULE_RUN_SERVER_NAME= ############ Versions & Servers - END ############ ############ Database Configuration - BEGIN ############ #ITAS MySQL Database ITAS_DB_HOST_NAME= ITAS_DB_USERNAME= #Use the encryption utility to get the encrypted password and provide it here ITAS_DB_PASSWORD= ITAS_DB_PORT=3306 ITAS_DB_TYPE=MYSQL ITAS_DB_DRIVER=com.mysql.jdbc.Driver #ITAS Mule Database (MySQL) ITAS_MULE_DB_HOST_NAME= ITAS_MULE_DB_USERNAME= #Use the encryption utility to get the encrypted password and provide it here ITAS_MULE_DB_PASSWORD= ITAS_MULE_DB_PORT=3306 ############ Database Configuration - END ############ ############ Base Machine Configuration - BEGIN ############ ITAS_BASE_MACHINE_SERVICE_BUS_DATASTORE_PATH=/platform/data/servicebus_store/itas ITAS_BASE_MACHINE_ATTACHMENTS_STORE_PATH=/platform/data/attachment_store/itas # MULE Run - Base Machine mount paths ITAS_MULE_DIR_PATH=/platform/data/mule_run MULE_RUN_INITIAL_MEMORY=4096 MULE_RUN_MAX_MEMORY=4096 ############ Base Machine Configuration- END ############ ############ Application Ports - START ############ #ITAS ActiveMQ Ports ITAS_ACTIVEMQ_MASTER_BROKER_PORT=61516 ITAS_ACTIVEMQ_SLAVE_BROKER_PORT=61515 #ITAS Jolokia Ports ITAS_MULE_ADAPTOR_JOLOKIA_PORT=7502 ITAS_SERVICE_BUS_MASTER_JOLOKIA_PORT=7505 #ITAS JVM DEBUG Ports TAS_MULE_ADAPTOR_JVM_DEBUG_PORT=2502 SA_TUNNELING_SERVICE_JVM_DEBUG_PORT=2504 ITAS_SERVICE_BUS_MASTER_JVM_DEBUG_PORT=2505 #ITAS JMX Ports ITAS_MULE_ADAPTOR_JMX_PORT=4502 SA_TUNNELING_SERVICE_JMX_PORT=4504 ITAS_SERVICE_BUS_MASTER_JMX_PORT=4505 #Tunneling Service #ActiveMQ ports should be same as application activemq ports. e.g., for ITAS deployment ITAS_ACTIVEMQ_MASTER_BROKER_PORT and SA_TUNNELING_ACTIVEMQ_MASTER_BROKER_PORT should be same. SA_TUNNELING_ACTIVEMQ_MASTER_BROKER_PORT=61516 SA_TUNNELING_SERVICE_PORT=10095 #ITAS Email Configurations #Below credentials used to send email notification for db/ootb content upgrade failure and application emails ITAS_DB_MIGRATION_ERRORS_ENABLE_EMAIL=true ITAS_EMAIL_SERVER_USERNAME= ITAS_EMAIL_SERVER_PASSWORD= ITAS_EMAIL_SERVER_NAME= ITAS_EMAIL_SERVER_PORT= ITAS_DB_MIGRATION_ERRORS_SEND_TO_EMAIL_ADDRESS= ############ Miscellaneous Common - BEGIN ############ #Possible values for ITAS_MULE_DEPLOYMENT are: IN_HOUSE and ON_PREM ITAS_MULE_DEPLOYMENT=ON_PREM MULE_ENCRYPTION_PASSWORD=serviceaide ############ Miscellaneous Common - END ############ ############ On Premise Properties - BEGIN ############ ##These need to be updated once instance registration is performed with ITAS## SA_TUNNELING_TARGET_APP=ITAS SA_TUNNELING_TENANT_EXTERNAL_ID= SA_TUNNELING_APPLICATION_IDENTIFIER= SA_TUNNELING_SECRET_KEY= ############ On Premise Properties - END ############
  3. Configure system ulimits in file /etc/security/limits.conf

    centos soft nproc 16384 centos hard nproc 16384 centos soft nofile 65536 centos hard nofile 65536 lumauser soft nproc 16384 lumauser hard nproc 16384 lumauser soft nofile 65536 lumauser hard nofile 65536 root soft nproc 16384 root hard nproc 16384 root soft nofile 65536 root hard nofile 65536
  4. Login to dockerhub using the below command:

Deployment  Actions

The next step is to deploy containers in the docker hub.

  1. To deploy all containers, including itas_mule_run, itas_service_bus, itas_db_migration, sa_tunneling_service, itas_connectors, use the below command:
    ./onprem_stack.sh deployall

     

  2. If you wish to deploy individual containers, then follow the below process.

Post Deployment Actions

Run the below command to clean up older unused volumes, images, etc after deployment.

Troubleshoot Errors

  1. If we get the below "permission denied error" : Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.37/containers/redis/stop: dial unix /var/run/docker.sock: connect: permission denied.

     

  • Ensuring that if the deployment is completed or not :   
     Whenever we enter "Docker ps" command then we can see the status of the containers, If any container's status is less than 1 minute then focus on that and wait 1 or 2 minutes and issue again the same 'docker ps' command , if we see the same container's status is less than a minute then we can ensure that there will be some issue and later we can go ahead with "docker logs [container_name]"  

© 2019 Serviceaide 1-650-206-8988 http://www.serviceaide.com info@serviceaide.com