Используя kubeadm, почему вы хотите вручную генерировать сертификаты? - PullRequest
0 голосов
/ 31 октября 2018

Я пытаюсь следовать этому учебнику .

  1. В чем преимущество создания сертификатов самостоятельно, а не в зависимости от кубеадма?
  2. если вы сами создаете сертификаты, происходит ли автоповорот после настройки кластера из kubeadm?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

Я создаю все сертификаты самостоятельно, причина этого

  1. Кластер kubernetes, который мы используем, может обновляться не каждый год, поэтому нам нужны сертификаты с более длительным сроком действия. Наши приложения не поддерживают случайный перезапуск докера, и мы не принимаем команду фазы kubeadm для регенерации сертификатов и перезапуска докера. Поэтому мы создали все сертификаты с 5-летним сроком действия и предоставили его kubeadm, и он работает нормально. Теперь нам не нужно беспокоиться об истечении срока действия нашего сертификата каждый год.

  2. Ни один kubeadm не предоставляет средства автоматического поворота сертификатов, поэтому в первую очередь нам потребовался более длительный срок действия сертификатов.

Надеюсь, это поможет.

0 голосов
/ 31 октября 2018
  1. Нет большого преимущества. kubeadm делает то же самое: генерирует самоподписанные сертификаты. Единственное мини-преимущество заключается в том, что вы можете добавить некоторые пользовательские значения в CSR , такие как город, организация и т. Д.

  2. Не совсем.

    • Существует сертификат kubelet флаг вращения --rotate-certificates, который необходимо включить.
    • Существует также ротация сертификатов от мастеров, и kubeadm может помочь с этим с помощью этих команд :

      mkdir /etc/kubernetes/pkibak
      mv /etc/kubernetes/pki/* /etc/kubernetes/pkibak
      rm /etc/kubernetes/pki/*
      kubeadm init phase certs all --apiserver-advertise-address=0.0.0.0 --apiserver-cert-extra-sans=x.x.x.x,x.x.x.x
      systemctl restart docker
      

Если вы хотите восстановить файл admin.conf, вы также можете использовать kubeadm:

$ kubeadm init phase kubeconfig admin \
  --cert-dir /etc/kubernetes/pki \
  --kubeconfig-dir /tmp/.
...