Custom Resource Definition (CRD) — это механизм расширения, который позволяет тебе определять и управлять кастомными объектами в Kubernetes помимо стандартных встроенных ресурсов. CRD дают возможность рассматривать конфигурации, специфичные для твоей области, как нативные ресурсы Kubernetes, делая их полноправными членами твоего кластера.
kubectl и паттернов, что и для встроенных ресурсовКогда ты создаёшь CRD, Kubernetes автоматически генерирует:
etcdЗатем ты используешь контроллеры или операторы для реализации бизнес-логики, которая работает с этими кастомными ресурсами.
Вместо того чтобы управлять конфигурациями приложения через ConfigMaps или кастомные скрипты, ты можешь определить CRD AppConfig, который представляет полную конфигурацию твоего приложения. Это позволяет оператору приложения отслеживать изменения и автоматически приводить реальное состояние в соответствие с желаемым.
Многие популярные проекты Kubernetes полагаются на CRD — включая Istio (для управления трафиком), Prometheus (для мониторинга) и cert-manager (для управления сертификатами). Это показывает, как CRD стали неотъемлемой частью экосистемы Kubernetes, позволяя расширять его функциональность стандартизированным и удобным в поддержке способом.
CRD позволяют управлять пользовательскими ресурсами через команды kubectl, используя те же паттерны, что и встроенные ресурсы Kubernetes, такие как Pods и Services.
Новый — ещё не проверен сообществом
Вы