Crossplane — это open source платформа, которая позволяет управлять облачной инфраструктурой прямо из Kubernetes через CRD. Проще говоря: базы данных, сети, бакеты, кластеры и другие ресурсы в AWS, GCP, Azure можно описывать так же, как обычные Kubernetes-манифесты.
Почему это важно?
Потому что Kubernetes становится не только платформой для запуска приложений, но и единой точкой управления инфраструктурой. 🚀
Как это работает
Crossplane расширяет Kubernetes с помощью Custom Resource Definitions. После установки в кластере появляются новые типы ресурсов, например:
RDSInstanceBucketVPCSQLInstance
Инженер применяет YAML, а Crossplane через провайдер создает нужный ресурс в облаке.
Что дает Crossplane
- ✅ Единый API
Вместо отдельных Terraform-конфигов, консольных CLI и ручных действий — один декларативный подход через Kubernetes API. - ✅ GitOps для инфраструктуры
Инфраструктуру можно хранить в Git и разворачивать через Argo CD или Flux. Это упрощает контроль версий, аудит и откаты. 📦 - ✅ Self-service для команд
Платформенная команда может описать шаблоны инфраструктуры, а разработчики — запрашивать готовые ресурсы без глубокого знания облака. - ✅ Композиции и абстракции
Одна из сильных сторон Crossplane — Composition. Она позволяет собирать из нескольких облачных ресурсов один собственный высокоуровневый объект. Например, CRDAppDatabaseможет автоматически создавать:- managed PostgreSQL
- сеть и security rules
- secret с доступами
Когда Crossplane особенно полезен
- в platform engineering
- при построении internal developer platform
- в multi-cloud среде
- если Kubernetes уже является центром управления
- когда нужен self-service без потери контроля
Чем отличается от Terraform
Crossplane не всегда заменяет Terraform, но часто решает другую задачу.
Terraform хорош как инструмент provisioning.
Crossplane сильнее там, где нужен постоянный reconciliation внутри Kubernetes и интеграция с Kubernetes-native процессами. 🔄
То есть Terraform чаще отвечает на вопрос: “как создать инфраструктуру?”
Crossplane — “как управлять инфраструктурой как частью K8s-экосистемы?”
На что обратить внимание перед внедрением
- потребуется зрелый Kubernetes-подход
- важно продумать RBAC и доступы к облаку
- не все провайдеры одинаково зрелые
- команде нужно понимать модель compositions и claims
Итог
Crossplane — мощный инструмент для компаний, которые хотят управлять облаком через привычные Kubernetes-механизмы. Он особенно полезен там, где нужны стандартизация, GitOps и удобный self-service для разработки. 💡
Если интересна тема platform engineering, Kubernetes и облачной инфраструктуры — загляните в подборку каналов про IT.