π Overview
Lynq Operator is a Kubernetes operator that automates database-driven infrastructure provisioning. It reads data from external datasources and dynamically creates, updates, and manages Kubernetes resources using declarative templates.
π‘ Core Concept
Important
One database row = One complete set of Kubernetes resources
Each row in your database automatically provisions and manages a complete stack of Kubernetes resources (Deployments, Services, Ingresses, ConfigMaps, and more) using declarative templates.
β¨ Key Features
- ποΈ Database-driven automation - Sync resources from MySQL, PostgreSQL, and more
- π Go templates + Sprig functions - Powerful template engine with 200+ built-in functions
- π Server-Side Apply - Kubernetes-native resource management
- π DAG-based dependencies - Control resource creation order with dependency graphs
- βοΈ Lifecycle policies - Fine-grained control over creation, deletion, and conflicts
- π Production-ready - Battle-tested with comprehensive monitoring and observability
π Learn More
- Complete Documentation - Full guides, tutorials, and API reference
- Architecture Guide - Deep dive into design and internals
π₯οΈ Dashboard
Lynq Dashboard provides a visual interface for monitoring Hub, Form, and Node resources.
dashboard-example.mov
- Topology View - Visualize Hub β Form β Node relationships as a tree
- Problem Mode - Instantly highlight failed nodes
- Real-time Status - Monitor resource health at a glance
Dashboard Guide - Installation and usage
π Quick Start
Get started with Lynq Operator in 5 minutes:
- π― Quick Start Guide - Step-by-step tutorial with working examples
- π¦ Installation Guide - Helm, Kustomize, and manual installation options
- βοΈ Configuration Examples - LynqHub and LynqForm setup
π Documentation
Complete documentation is available at lynq.sh
Getting Started
- Quick Start - Get up and running in minutes
- Installation - Multiple installation methods
Core Concepts
- Architecture - System design and components
- API Reference - CRD specifications
- Templates - Template syntax and functions
Operations
- DataSource Setup - Configure MySQL, PostgreSQL, and more
- Monitoring - Metrics and observability
- Troubleshooting - Common issues and solutions
Integrations
- Crossplane - Infrastructure as Code
- ExternalDNS - Dynamic DNS management
- Flux - GitOps workflows
- Argo CD - Declarative GitOps
π οΈ Development
Getting Started
# Clone the repository git clone https://github.com/k8s-lynq/lynq.git cd lynq # Install CRDs make install # Run locally make run # Run tests make test
Resources
- π Development Guide - Building, testing, and contributing
- π§ Local Development Setup - Environment configuration
- π§ͺ Testing Guide - Unit, integration, and e2e tests
π€ Contributing
We welcome contributions! Whether you're fixing bugs, adding features, improving documentation, or sharing use cases - all contributions are valued.
How to Contribute
- π Report Issues - Bug reports and feature requests
- π Contributing Guidelines - Code standards, commit conventions, and PR process
- π Add a Datasource - Pluggable adapter pattern guide
- π¬ Join Discussions - Ask questions and share ideas
π Project Status
Production-ready β’ Kubernetes v1.28-v1.33 validated β’ Apache 2.0 License
- β Stable - Used in production environments
- πΊοΈ Roadmap - Feature plans and versioning
- π Active Development - Regular updates and improvements
π License
Licensed under the Apache License 2.0.
Copyright 2025 Lynq Operator Authors.
π¬ Community & Support
Get Help
- π Report Issues - Bug reports and feature requests
- π¬ Discussions - Ask questions and share ideas
- π Documentation - Comprehensive guides and tutorials
Stay Updated
- β Star this repository to show your support
- ποΈ Watch for updates and releases
- π Follow our releases for the latest features
β Star History
Made with β€οΈ by the Lynq community