Что такое Custom Resource Definition (CRD) в Kubernetes?

Этот вопрос проверяет понимание механизма расширения API Kubernetes с помощью пользовательских ресурсов.

Короткий ответ

CRD – это способ добавить в Kubernetes новый тип ресурса, например Database или Cache, который будет управляться пользовательским контроллером.

Длинный ответ

1. Почему нужны CRD?

- Kubernetes API ограничен стандартными объектами (Pods, Services).

- CRD позволяет создать новый ресурс с кастомной логикой.

 

2. Пример CRD:

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: databases.example.com
spec:
  group: example.com
  names:
    kind: Database
    plural: databases
  scope: Namespaced
  versions:
    - name: v1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              type: object
              properties:
                version:
                  type: string


CRD – это инструмент для расширения API Kubernetes, позволяющий создавать новые объекты с индивидуальной логикой.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Kubernetes

Ключевые слова

Подпишись на Python Developer в телеграм