Infrastructure Manager Service
Purpose
The service identifies a suitable cluster to deploy services and stores infrastructure information.
Function
This component exposes APIs for different components, such as Kubernetes workers and masters, to register with the infrastructure manager. When a request comes from the pricing service, it redirects the parameters to a registered cluster to determine if it can serve the request. If a suitable cluster is found, the service returns true. It also handles requests from the node service after a bid is won.
Upon receiving a request, the service identifies the appropriate cluster by calling the cluster manager service deployed on each cluster. It then creates the configuration based on the cluster and calls the API exposed by the cluster manager service to deploy the POS on the respective cluster.
The cluster manager service registers with the infrastructure manager service, storing its endpoint and other relevant information for use by the infrastructure manager service.
The infrastructure manager service also periodically performs health checks, calls APIs to terminate pods when their lease time expires, and can renew existing services.
All information is stored in the service's database. The service also maintains a copy of cluster information and the status of deployed pod services. Active information for clusters and pod services is updated regularly by the cluster service, and notifications are triggered if a ping is not received within a certain period.
Deploying
Users can fetch the Docker file from the Kandola Committee GitHub repository and run the Docker Compose command.
Provider
Girnaar built
Type
Docker image
Configuration
Dependencies
Docker
Docker Compose
Pricing Service
Cluster Manager Service
Last updated