• Русский
  • cert-manager

    В каждом кластере автоматически разворачивается Certificate для cert-manager

    cert-manager — это нативный контроллер управления сертификатами Kubernetes, который автоматически генерирует и управляет TLS-сертификатами на основе ресурсов Certificate. Многие компоненты в Kubernetes кластерах используют cert-manager для управления своими TLS-сертификатами, обеспечивая безопасное взаимодействие.

    Обзор

    Cert-manager управляет жизненным циклом сертификатов через Custom Resource Definitions (CRD) Kubernetes:

    • Certificate: Определяет сертификаты, которые необходимо управлять
    • Issuer/ClusterIssuer: Определяет эмитентов сертификатов
    • CertificateRequest: Внутренний ресурс для обработки запросов на сертификаты

    Как это работает

    Когда создаётся ресурс Certificate, cert-manager автоматически:

    1. Генерирует приватные ключи и запросы на подпись сертификата (CSR)
    2. Получает подписанные сертификаты от указанного Issuer
    3. Сохраняет сертификаты и приватные ключи в Kubernetes Secrets

    Кроме того, cert-manager отслеживает срок действия сертификатов и обновляет их до истечения срока, чтобы обеспечить непрерывную доступность сервиса.

    Определение сертификатов, управляемых cert-manager

    Сертификаты, управляемые cert-manager, имеют соответствующие ресурсы Secret с типом kubernetes.io/tls и определёнными метками и аннотациями.

    Распространённые метки и аннотации

    Ресурсы Secret, управляемые cert-manager, обычно содержат следующие метки и аннотации:

    Метки:

    • controller.cert-manager.io/fao: "true": Указывает, что этот Secret управляется cert-manager и включает фильтрацию кеша Secret контроллером.

    Аннотации:

    • cert-manager.io/certificate-name: Имя сертификата
    • cert-manager.io/common-name: Общее имя сертификата
    • cert-manager.io/alt-names: Альтернативные имена сертификата
    • cert-manager.io/ip-sans: IP-адреса сертификата
    • cert-manager.io/issuer-kind: Тип эмитента сертификата
    • cert-manager.io/issuer-name: Имя эмитента сертификата
    • cert-manager.io/issuer-group: API-группа эмитента
    • cert-manager.io/uri-sans: URI Subject Alternative Names

    Связанные ресурсы