Skip to content

A Rust-powered, distributed declarative state reconciliation engine for continuous multi-cloud infrastructure automation.

Notifications You must be signed in to change notification settings

m0nirul/cloud-state-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Cloud State Controller

A Rust-powered, distributed declarative state reconciliation engine for continuous multi-cloud infrastructure automation. It continuously monitors cloud resources, detects configuration drift, and automatically remediates non-compliant infrastructure.

Features

  • Declarative State Definition Language: Define desired infrastructure state.
  • Real-time Drift Detection: Continuously monitor configurations against declared states.
  • Automated Remediation Engine: Pluggable engine for corrective actions.
  • Multi-Cloud Abstraction Layer: Unified API for AWS, Azure, GCP, etc.
  • Distributed Event Processing: Robust handling of cloud provider events.
  • Secure Credential Management: Integration with external secret management systems.
  • Policy Enforcement Framework: Define and enforce security, cost, and compliance policies.

Prerequisites

Ensure you have Rust installed. We recommend using rustup.

curl --tlsv1.2 -sSf https://sh.rustup.rs | sh

Installation

Clone the repository and build the project:

git clone https://github.com/your-org/cloud-state-controller.git
cd cloud-state-controller
cargo build --release

Usage

To run the controller, you can use cargo run or execute the compiled binary. The controller expects a config.yaml file in the current directory or specified via --config-path.

# Run with default config.yaml
cargo run --release

# Run with a specific config file
cargo run --release -- --config-path ./my-custom-config.yaml

# Or, run the compiled binary directly
./target/release/cloud-state-controller

Example config.yaml

app:
  log_level: info
  api_listen_address: "0.0.0.0:8080"
cloud:
  aws_region: "us-east-1"
  azure_subscription_id: "your-azure-subscription-id"
  gcp_project_id: "your-gcp-project-id"
reconciliation:
  interval_seconds: 60
  max_concurrent_remediations: 5
  dry_run_mode: false

About

A Rust-powered, distributed declarative state reconciliation engine for continuous multi-cloud infrastructure automation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages