Skip to content
GitHub stars
β—† Infrastructure as Data

Your Database.
Your Infrastructure.

Lynq turns database records into Kubernetes resources. Automatically.

πŸ—ƒ
Database
⎈
Kubernetes
Scroll to explore
↓
15resource types
3lifecycle policies
MySQL & PostgreSQLbuilt-in datasources
Kubernetes 1.28+cluster requirement
MITopen source license

From Data to Resources in Seconds

Click each step to explore the full lifecycle β€” from database row to running Kubernetes resources

Database
MySQL / PostgreSQL
sync
LynqHub
Data Source
data
LynqForm
Template
apply
Kubernetes
Resources
Step 1

Connect Your Database

LynqHub polls your MySQL or PostgreSQL table at the configured syncInterval (default: 1 minute). Any row where the activate column is truthy gets a corresponding LynqNode CR. Existing infrastructure keeps running if the database goes temporarily offline.

lynqhub.yamlYAML
apiVersion: operator.lynq.sh/v1
kind: LynqHub
metadata:
  name: my-hub
spec:
  source:
    type: mysql
    syncInterval: 1m
    mysql:
      host: mysql.default.svc
      port: 3306
      username: node_reader
      passwordRef:
        name: mysql-credentials
        key: password
      database: nodes
      table: node_configs

Your Database Knows. Your Cluster Doesn't.

❌

The Old Way

deploysvcingnscmpvcsasecret
  • πŸ›  Manual kubectl for each customer
  • πŸ“ Git commits for every change
  • πŸ’₯ Constant drift between DB and cluster
vs
βœ”

With Lynq

DBRowDataLynqdeploysvcing
  • πŸ“„ One LynqForm template per resource type
  • ⚑ INSERT a row β†’ resources appear within 60s
  • πŸ”„ DELETE a row β†’ resources are cleaned up

Precise Lifecycle Control

Per-resource policies for creation, deletion, conflict resolution, and rollout pacing

Owner AOwner B
conflictPolicy

Conflict Detection

Halts if another controller owns the resource. Choose Stuck to surface conflicts or Force to take ownership.

conflictPolicy: Stuck
max 2 at a time
maxSkew

Gradual Rollout

Limit how many nodes update simultaneously when a LynqForm template changes.

maxSkew: 2
βœ“ data protected
deletionPolicy

Retain on Delete

Keep specific resources (PVCs, Secrets) when a row is deactivated. Resources get orphan markers for audit.

deletionPolicy: Retain

Observe the Full Hub β†’ Form β†’ Node Graph

A web UI that shows live resource health, reconciliation events, and topology relationships β€” no kubectl required

πŸ”’localhost:8080/topology
πŸ—ΊοΈ
Topology ViewHub β†’ Form β†’ Node hierarchy with live status
πŸ“Š
Resource HealthReady, pending, failed counts per node
πŸ“‹
Event StreamReconciliation events and error details per node
πŸ”
Quick Search⌘K to find any hub, form, or node instantly
LynqHub
LynqForm
LynqNode
MySQL
Deployment
Service
Ingress
ConfigMap
Secret
StatefulSet
CronJob
PVC
Namespace
PostgreSQL

Start Automating Infrastructure from Your Database

Requires Kubernetes and cert-manager. The quickstart provisions a full local environment β€” MySQL, Lynq, and sample resources β€” using automated setup scripts.