Core Concepts
Target Providers

Target Providers

Target Providers in Ctrlplane are automated processes responsible for discovering, registering, and updating targets. They continuously monitor your infrastructure and external systems, ensuring that Ctrlplane has an accurate and up-to-date representation of your deployment landscape.

Why Use Target Providers?

Target Providers offer several key advantages over manual creation and management of targets:

  1. Automation: Target Providers eliminate the need for manual intervention, saving time and reducing the potential for human error.
  2. Dynamic Updates: As your infrastructure evolves, target providers automatically detect changes (e.g., new clusters, servers, or cloud resources) and update the corresponding targets in Ctrlplane.
  3. External System Integration: Target Providers seamlessly integrate with various external systems (e.g., cloud providers, Kubernetes clusters, infrastructure-as-code tools), pulling in the latest information about your targets.
  4. Reduced Overhead: By automating the management of targets, target providers free up your team to focus on higher-level tasks.

How Target Providers Work

  1. Discovery: Target Providers periodically scan your defined infrastructure and external systems, identifying potential targets based on configured criteria.
  2. Registration: When a new target is discovered, the target provider registers it in Ctrlplane, including relevant metadata such as labels and associated information.
  3. Update: For existing targets, target providers detect any changes and update the corresponding information in Ctrlplane to ensure accuracy.

Types of Target Providers

Ctrlplane supports various types of target providers, including:

  • Cloud Target Providers: These target providers integrate with cloud platforms like AWS, Azure, and Google Cloud, discovering and registering resources such as virtual machines, Kubernetes clusters, and databases.
  • Kubernetes Target Providers: These target providers specifically target Kubernetes environments, detecting clusters, namespaces, and other relevant objects.
  • Infrastructure-as-Code Target Providers: These target providers parse your infrastructure-as-code definitions (e.g., Terraform, CloudFormation) to identify and register targets.
  • Custom Target Providers: You can create custom target providers to integrate with any system or platform that exposes information about your targets.

Example

Kubernetes Cluster Target Provider

A Kubernetes cluster target provider would typically:

  1. Connect to your Kubernetes API server.
  2. Discover clusters, namespaces, and other relevant objects.
  3. Register each discovered object as a target in Ctrlplane, applying labels based on its characteristics (e.g., cluster name, namespace, environment).
  4. Periodically re-scan the cluster to detect any changes and update the corresponding targets.
Ctrlplane
© 2024 Ctrlplane. All rights reserved.