Automated Certificate Lifecycle Management

Enterprise-grade Kubernetes operator for seamless certificate provisioning, renewal, and distribution across Azure, AWS, and Kubernetes clusters

3 Platforms
100% Kubernetes Native
Open Source Apache 2.0
CERTIFICATE ✓

Powerful Features

Built for modern Kubernetes environments

Automated Renewal

Intelligent certificate renewal that prevents expiry with configurable renewal windows and automatic retry policies

Multi-Cloud Support

Native integration with Azure Key Vault, AWS Certificate Manager, and cross-namespace Kubernetes distribution

Kubernetes Native

Built with KubeBuilder for seamless integration with your K8s clusters, leveraging CRDs and native patterns

Validation & Security

Comprehensive certificate validation, TLS verification, and security-first design with RBAC support

Observable & Monitored

Prometheus metrics, structured logging, and detailed status tracking for production environments

Flexible Configuration

GitOps-ready, declarative CertificateBinding resources with policy-based retry and distribution controls

Architecture

How CertAuto orchestrates certificate management

🔑
cert-manager
Issuance
→
⚙️
CertAuto Controller
Orchestration
☁️ Azure Key Vault
☁️ AWS ACM
🔄 K8s Distribution

Key Components

  • CertificateBinding CR: Declarative resource defining certificate lifecycle and destination rules
  • Controller: Watches CRs, orchestrates cert creation, validates TLS secrets, and syncs via plugins
  • Plugin System: Extensible architecture supporting multiple cloud providers and destinations
  • Metrics & Observability: Prometheus-compatible metrics and structured logging

Workflow

  1. Create a CertificateBinding CR specifying certificate source and destinations
  2. Controller detects the CR and creates cert-manager Certificate if needed
  3. cert-manager issues certificate and stores in TLS Secret
  4. Controller validates certificate integrity and expiry
  5. Configured plugins sync certificate to cloud vaults and K8s namespaces
  6. Status updates track sync results and failures

Quick Start

Get up and running in minutes

1

Install CertAuto Operator

Install using Kubernetes manifest or Helm chart:

kubectl apply -f https://github.com/sanmarg/CertAuto/releases/download/v0.1.0/certauto.yaml
2

Ensure cert-manager is Installed

CertAuto depends on cert-manager for certificate issuance:

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.19.2/cert-manager.yaml
3

Create a CertificateBinding

Define your certificate binding with source and destinations:

apiVersion: sanorg.in/v1
kind: CertificateBinding
metadata:
  name: my-cert
spec:
  caSecret:
    name: my-issuer
  commonName: example.com
  destinations:
    - name: kubernetes
      namespace: production
    - name: azure
      vaultName: my-vault
4

Monitor Certificate Status

Watch your certificate sync across platforms:

kubectl get certificatebindings -w
kubectl describe certificatebinding my-cert

📚 Full Documentation

For detailed configuration, advanced features, and troubleshooting:

View Full Docs

🔗 Useful Links

Documentation

Comprehensive guides and references

📖 Architecture Guide

Deep dive into CertAuto's design, components, and sequence flows for certificate lifecycle management.

Read More →

🚀 Installation Guide

Step-by-step instructions for installing CertAuto in your Kubernetes cluster with different backends.

Read More →

⚙️ Configuration Reference

Complete API reference for CertificateBinding CRD with all available options and examples.

Read More →

🔌 Plugin Development

Guide for extending CertAuto with custom plugins to support additional certificate destinations.

Read More →

📊 Metrics & Monitoring

Information about Prometheus metrics, Grafana dashboards, and observability best practices.

Read More →

🐛 Troubleshooting

Common issues, debugging techniques, and solutions for typical operational challenges.

Read More →

Contributors

Built with passion by our community

SP

Sanmarg Paranjpe

Creator & Lead Maintainer

Kubernetes enthusiast and DevOps engineer focused on building cloud-native automation tools.

How to Contribute

We welcome contributions from the community! Whether you're fixing bugs, adding features, improving documentation, or providing feedback, your help is invaluable.

👨‍💻 Code Contributions

Submit bug fixes, features, and improvements via pull requests.

📝 Documentation

Help improve guides, examples, and API documentation for better understanding.

🐛 Bug Reports

Report issues you find and help us make CertAuto more robust.

🎯 Feature Requests

Suggest new features and improvements you'd like to see.

View Contributing Guide

Technology Stack

Built with industry-leading tools and frameworks

Go 1.25
Core Language
KubeBuilder
K8s Framework
cert-manager
Certificate Authority
Kubernetes 1.34+
Platform
Azure SDK
Cloud Integration
AWS SDK v2
Cloud Integration
Prometheus
Monitoring
Docker
Containerization

Ready to Automate Your Certificate Management?

Join teams using CertAuto to simplify their Kubernetes certificate workflows