Agent
xpanse agent is a Go based application that can be deployed on the service's compute resources to communicate with the xpanse controller.
xpanse Agent is implemented with a pull mechanism since the xpanse controller in both
modes can't reach the compute nodes which is running on a completely different private network.
The agent is planned to take over all activities that needs to be performed on the service application after the service is created. Some examples include
- Update application configuration
- Perform actions on the application - for example, create users on a database service.
- Perform backup of service data and configuration.
- and many more.
Agent as System Service
It's recommended to install the xpanse agent as a system service on the compute node so that the agent is always started.
Example of how to do it can be found here.
Supported Use cases
The following use cases are currently supported by the agent.
Update Application configuration
The application configuration management is based on Ansible. Agent wraps the GIT and Ansible client to execute the whole process.
The same agent can also be used for containerized solutions by deploying it in the same network where the other containers are reachable.
In case of Kubernetes, it can be in the same POD as the application container.
Private APIs
The polling APIs in the xpanse are considered as private and shouldn't be reachable outside cloud provider's management area.