-
Notifications
You must be signed in to change notification settings - Fork 1
universal_agent_quick_start
This page provides a quick start guide for the Universal Agent. How to run, configure and work with it.
The agent is embedded into Genesis base image and the simplest way to test it just to run a VM from the base image or its inherited images.
For manual installation prepare a virtual environment and install the gcl-sdk.
python3 -m venv venv
source venv/bin/activate
pip install gcl-sdkRun the agent:
genesis-universal-agent --config-file /etc/genesis_universal_agent/genesis_universal_agent.confThe configuration file will be described later.
The agent use a configuration file in the ini format. The default path to the configuration file is /etc/genesis_universal_agent/genesis_universal_agent.conf. The main agent section is universal_agent:
[universal_agent]
orch_endpoint = http://localhost:11011
status_endpoint = http://localhost:11012
caps_drivers = CoreCapabilityDriver,PasswordCapabilityDriver
facts_drivers = CoreFactDriver-
orch_endpoint,status_endpointare endpoints to orchestrator services. -
caps_drivers- the list of capability drivers. -
facts_drivers- the list of fact drivers.
For the universal scheduler:
[universal_agent_scheduler]
capabilities = em_core_*,password-
capabilities- the list of capabilities to schedule. You can use wildcards likeem_core_*to schedule all capabilities starting withem_core_.
If any of drivers use a database it should be configured in the [db] section. Example:
[db]
connection_url = postgresql://genesis_core:genesis_core@127.0.0.1:5432/genesis_core
connection_pool_size = 2Also you may specify specific configuration for each driver, for example, for the CoreCapabilityDriver:
[CoreCapabilityDriver]
username = test
password = test
user_api_base_url = http://localhost:11010
project_id = 12345678-aaaa-bbbb-cccc-f691897b8145
em_core_compute_nodes = /v1/nodes/
em_core_config_configs = /v1/config/configs/