Skip to main content

Deploying on single node

This page discusses the steps to deploy the Adeptia Automate application using the Adeptia Rancher package.

Deployment steps​

Follow the steps discussed here for on-premise deployment of Adeptia Automate by using the Adeptia Rancher package.

  1. Ensure that you have met the prerequisites for installing Rancher on a single node.​

  2. Connect to the VM node using PuTTY on Windows or Terminal on Mac.​

  3. Download the Adeptia Rancher package​

    1. In the VM node, create a directory.

Code

mkdir <Directory name, for example, rancher-single-node>
  1. Navigate to the directory.

Code

cd <Path of the directory>
  1. Download the package in the directory you created.

Code

wget https://adeptia.github.io/rancher-ansible-package/adeptia-rancher-5.2.x.tar.gz
  1. Extract the package​

    1. Run the following command to extract the package in the directory:

Code

sudo tar -xf <rancher package name>
  1. If prompted, enter the password of the user with which you are logged in to the VM.

  2. Install Ansible and Python on the VM to support the deployment process​

    InformationAnsible and Python can be installed by executing the prerequisite_ubuntu.sh file available in the extracted package.
    1. Run the following command to:
      1. Grant executable permissions on prerequisite_ubuntu.sh file
      2. Execute the prerequisite_ubuntu.sh file.

Code

sudo chmod +x prerequisite_ubuntu.sh && sudo ./prerequisite_ubuntu.sh

This executes the prerequisite_ubuntu.sh file installing Ansible and Python on the VM node. In case, your underlying OS is RedHat or Amazon-Linux, you can use prerequisite_redhat.sh and prerequisite_amazon-linux.sh respectively. 6. #### Configure the general-config.yaml available in the vars directory in the extracted package

  1. Navigate to the vars directory.

Code

cd vars
  1. Open the general-config.yaml file.

Code

sudo vi general-config.yaml
  1. Press the i (insert) key on the keyboard, and then configure the variables discussed in the table below. 

    VariableDescription
    install_modePossible values are single or cluster
    ssh_userUsername of the user with the required privileges to deploy Rancher on the VMs.
    ssh_key_pathComplete path of the SSH private key (PEM) file you copied on your Jump Box. Enter the path of the .pem file in the following format:


    /home/User1/Directory/abc.pem
    l7_lb_enabledSet to true if using an L7 load balancer (Azure AGW, KEMP, etc.) — ports 80/443 only.

    Possible values are true or false
    rke2_vip:kube-vip HA configuration (required when install_mode is cluster)
    • Free private IP in the same subnet as the VMs, not assigned to any VM.
    • Floats between control-plane nodes—used by kubectl (6443) and node registration (9345).For example: rke2_vip: 10.32.4.100
    backend_db_typeBackend database type. The possible values are:

    • SQL-Server
    • Oracle
    • MySQL
    backend_db_urlValue for SQL database

    jdbc:sqlserver://<DB Hostname>:<Port Number>;database=<Backend database> Name>;sendStringParametersAsUnicode=false



    Value for Oracle database

    jdbc:oracle:thin:@<hostName>:<portNumber>:<SID/ServiceName>



    Value for MySQL database

    jdbc:mysql://<hostName>:<portNumber>/<Backend DB Name>?sslMode=VERIFY_IDENTITY&fallbackToSystemKeyStore=false
    backend_db_username
    • Backend DB username.
    • Use either the database server admin credentials or a database user with required access to the Backend database.
    backend_db_passwordBackend DB password.
    log_db_typeLog database type. The possible values are:

    • SQL-Server
    • Oracle
    • MySQL
    log_db_urlValue for SQL database

    jdbc:sqlserver://<DB Hostname>:<Port Number>;database=<Log database Name>;sendStringParametersAsUnicode=false



    Value for Oracle database jdbc:oracle:thin:@<hostName>:<portNumber>:<SID/ServiceName>



    Value for MySQL database

    jdbc:mysql://<hostName>:<portNumber>/<Log DB Name>?sslMode=VERIFY_IDENTITY&fallbackToSystemKeyStore=false
    log_db_username
    • Log DB username.
    • Use either the database server admin credentials or a database user with required access to the Log database.
    log_db_passwordLog DB password.
    aimap_log_urlValue for SQL database

    mssql+pyodbc://<host>:<port>/<Log DB Name>?driver=ODBC+Driver+17+for+SQL+Server



    Value for Oracle database

    oracle+cx_oracle://<host>:<port>/<SID/ServiceName>



    Value for MySQL database

    mysql+mysqlconnector://<host>:<port>/<Log DB Name>
    aimap_backend_urlValue for SQL database

    mssql+pyodbc://<host>:<port>/<Backend DB Name>?driver=ODBC+Driver+17+for+SQL+Server



    Value for Oracle database

    oracle+cx_oracle://<host>:<port>/<SID/ServiceName>



    Value for MySQL database

    mysql+mysqlconnector://<host>:<port>/<Backend DB Name>
    ai_agent_backend_urlValue for SQL database

    mssql+pyodbc://<host>:<port>/<Backend DB Name>?driver=ODBC+Driver+17+for+SQL+Server



    Value for Oracle database

    oracle+cx_oracle://<host>:<port>/<SID/ServiceName>



    Value for MySQL database

    mysql+mysqlconnector://<host>:<port>/<Backend DB Name>
    rancher_lb_domainDNS domain mapped to the IP of the VM for accessing Rancher UI, for example:



    rancher.company.com



    Using this domain, you can access the Rancher UI.
    app_lb_domainDNS domain mapped to the IP of the VM for accessing application UI, for example:



    myapp.company.com



    Using this domain, you can access the application UI.
    shared_pvThe variable containing the following parameters that help you define the shared PV:

    • volume_mode
    • local_mount_path
    • nfs_server
    • nfs_shared_path
    volume_modeSpecify how the shared volume shall be accessed. The possible values are:

    • local
    • nfs

    local_mount_pathProvide the local volume path if you have set the volume_mode to local.
    nfs_serverProvide the NFS server domain or IP if you have set the volume_mode to nfs.
    nfs_shared_pathEnter the NFS shared path in the following format:



    /<Sub-folder (if any) or the folder path bound with the NFS share>
    tlsCrtTLS signed certificate in base64 encoding (for Envoy gateway setup). To know how to extract the certificate and convert it to Base64 encoding, refer to this page.
    tlsKeyTLS private key of the certificate in base64 encoding (for Envoy gateway setup). To know how to extract the private key and convert it to Base64 encoding, refer to this page.
    mcp_enabledIt is set to false by default. if you want to install the mcp observe service, then set this property to true during installation
    mcp_versionVersion of the mcp observe you want to install
    ac_versionVersion of the Adeptia Automate application you want to install

The password you provide in the general-config.yaml file are in plain text and cannot be encrypted. If you want to encrypt these credentials, set the password in the vault-config.yaml file which is available in the /vars directory in the extracted package, and then encrypt the contentin the file. 7. #### Save the general-config.yaml file

  1. Press Esc (Escape) key on the keyboard to exit from edit mode.

  2. Type :wq and then press Enter to save the changes and close the file.

    SuccessTo exit without saving, type :q! and then press Enter.
  3. Configure the vault-config.yaml file in the vars directory in the extracted package

    1. Navigate to the vars directory.

Code

[Code] cd vars
  1. Open the vault-config.yaml file.

Code

[Code] sudo vi vault-config.yaml
  1. Press the i (insert) key on the keyboard, and then configure the variables discussed in the table below. 

    VariableDescription
    vault_ansible_sudo_passSudo password used by Ansible when privilege escalation is required on target hosts.
    vault_backend_db_usernameUsername for the AC backend database connection.
    vault_backend_db_passwordPassword for the AC backend database connection.
    vault_log_db_usernameUsername for the AC log database connection.
    vault_log_db_passwordPassword for the AC log database connection.
    vault_customactuator_usernameBasic authentication username for the CUSTOMACTUATOR.
    vault_customactuator_passwordBasic authentication password for the CUSTOMACTUATOR.
    >
    > The following variables are required only if you want to install MCP Observe using this Rancher package. To install MCP Observe, set mcp_enabled to true and specify the MCP version using the mcp_version property in the general-config.yaml file.
    >
    vault_mcp_llm_providerLLM provider used by Adeptia Automate MCP. Supported values are azure-openai, openai, anthropic, and aws. The default value is azure-openai.
    vault_mcp_azure_openai_api_keyAzure OpenAI API key. Required only when vault_mcp_llm_provider is set to azure-openai.
    vault_mcp_azure_openai_endpointAzure OpenAI endpoint URL. Required only when vault_mcp_llm_provider is set to azure-openai.
    vault_mcp_openai_api_keyOpenAI API key. Required only when vault_mcp_llm_provider is set to openai.
    vault_mcp_anthropic_api_keyAnthropic API key. Required only when vault_mcp_llm_provider is set to anthropic.
    vault_mcp_aws_regionAWS Region for Amazon Bedrock. Required only when vault_mcp_llm_provider is set to aws.
    vault_mcp_aws_access_key_idAWS access key ID for Amazon Bedrock. Required only when vault_mcp_llm_provider is set to aws.
    vault_mcp_aws_secret_access_keyAWS secret access key for Amazon Bedrock. Required only when vault_mcp_llm_provider is set to aws.
  2. Deploy the application

    1. Navigate to the location where you had extracted the package.

Code

cd ..
SuccessThe command cd .. takes you back from vars (current directory) to the previous directory (the directory where you extracted the package).
  1. Grant executable permission on adeptia-rancher.sh file.

Code

sudo chmod +x adeptia-rancher.sh
  1. Run the following command to deploy the Rancher environment.

Code

sudo ./adeptia-rancher.sh --tag=install-all

The --tag argument in the command can have the following values based on what components of the package you want to install.

TagDescription
--tag=install-platformBrings up RKE2 → Envoy Gateway → Rancher → LAN Volume Provisioner. After this, you have a working K8s cluster with ingress + storage but no app.
--tag=install-dependenciesAdds RabbitMQ Operator and KEDA on top of the platform.
--tag=install-applicationInstalls Adeptia Automate. If mcp_enabled: true, also installs the MCP add-on. Re-renders Envoy routes so the app is reachable via your domain.
--tag=install-allRuns all three layers end-to-end. The typical "fresh install" command.

It takes approximately 20 to 30 minutes for the installation to complete and you see the following message.

Post deployment steps​

After you have deployed the environment, follow the steps given below:

  1. Verify the RKE2 and Rancher deployment​

  1. Verify if you are able to log in to the Rancher UI on https://<IP address:31000> or https://<domain of the VM> using the password configured ( Default value: adeptia1234) in the vault-config.yaml file available in the vars directory.

  2. In the Rancher UI, validate if the Rancher cluster is listed in Clusterstable with the name localat the home page.

  3. Verify if the node is up and running by following the steps given below.

    1. In the Rancher UI, click the menu icon at the top left corner, and then click Local.
    2. Click Nodes.
    3. Verify if the node is in Activestate and the roles assigned to it is set to Control Plane, Etcd.
  4. Verify the deployment of Adeptia Connect application​

    1. Validate if the Adeptia Connect helm is deployed by following the steps given below.

      1. Log in to the Rancher UI.
      2. Click the menu icon at the top left corner, and then click Local.
      3. Go to Apps > Installed Apps.
      4. In the Installed Apps, verify if the chart entry for adeptia-connect is in Deployedstate.
    2. Check the status of the deployed pods of adeptia-connect by following the steps given below.

      1. Log in to the Rancher UI.
      2. Click the menu icon at the top left corner, and then click Local.
      3. Go to Workload> Pods.
      4. In the Namespaces dropdown menu, select the namespace to which you have deployed the Adeptia Connect application.
      5. Validate if all the listed pods are in Runningstate.
    3. Check the logs to see the status of the pods by following the steps given below.

      1. Follow the steps from 1 through 4.

      2. Click the more options icon against the pod whose status you want to view, and then click View Logs.

      3. Search for “Microservice started successfully” to validate if the pod was started successfully.The screenshot given below is an example that shows the status of the Runtime pod.

        WarningThe status of runtime deployment manager and rabbitmq pods could not be viewed in their respective logs.
    4. Follow the steps given below to check the status of the shared Runtime pod.

      1. Follow the steps from 1 through 4.
      2. Verify if the pod for ac-runtime microservice is present and is in Runningstate.
    5. Verify if you are able to log in to the Adeptia Connect UI on https://<IP address of the VM>. Following are the default credentials. They are configured in the vault-config.yamlfile available in the varsdirectory. User Name: admin Password: indigo1

  5. Configure Mail Server Parameters ​

    After deploying the application, you must configure the Mail Server Parameters so users can receive invitation emails to set up their accounts. Without this post-deployment configuration, invited users will not get the account-setup email.