Native Installation (Not recommended)
In a scenario where you need to have the agent run locally on a machine or to run commands that cannot be executed from within a docker container, you can always install it natively.
Follow the steps below to install Kaholo Agent on your machine
Step 1: Install Node.js LTS
For Windows OS, we recommend using Choco. Instructions on Choco can be found on this link: https://chocolatey.org/install.
After installing Choco, run this:
|choco install nodejs-lts|
For any other OS, follow the Node.js instructions using this link: https://nodejs.org/en/download/package-manager/
Step 2: Install pm2 and clone Kaholo-agent
Use the codes below to install pm2 and clone the Kaholo Agent.
npm i pm2 -g#clone kaholo-agent
git clone https://github.com/Kaholo/kaholo-agent#install dependencies
cd kaholo-agent && npm install –production
Step 3: Set Configuration
After doing steps 1 and 2, configure the Kaholo Agent settings. Copy kaholo-agent.conf.example to kaholo-agent.conf. Note that kaholo-agent.conf is the configuration file for the agent and it contains the following options:
|PORT||The port which the agent will run.|
Note: the default port is 8090, if you use any other port, you will also need to adjust the docker run command.
|SERVER_URL||The URL of the Kaholo server that you want to connect to.|
|AGENT_KEY||A unique random 32 characters to identify this specific agent.|
|AMQP_HOST||The host of the queue, usually the same as the server.|
|AMQP_PORT||The port of the AMQP server is usually 5671.|
|AMQP_CERT_PATH||The path to the agent crt file.|
|AMQP_KEY_PATH||The path to the agent pem file.|
Step 4: Run the Agent
After installing the Kaholo Agent, try a test run to see if it was successfully installed. From the agent directory, run:
|pm2 start app.js –name “kaholo-agent”|
Known Native Installation Issues
The pm2 environment is conservative and when you run a new process, the new environment variables will not be updated into the existing process. This commonly affects native installations on Windows machines.
To resolve the outdated environment variables issue, you need to restart the agent using this command:
|pm2 restart kaholo-agent –update-env|
Currently, there is a known issue on the agent_key and the port/IP the agent is using for being coupled for agent identification.
This means that you must always use a unique key for each agent, and change the key if you move the agent to any other port/IP. Otherwise, the agent won’t be able to connect correctly and will be marked as a red flag in the system. Rest assured, we are working on a fix for this issue and other agent-related issues to ensure seamless automation.