Понимание команды инициализации kubeadm для фланели

Чтобы установить kubernetes с использованием фланели, сначала необходимо выполнить:

kubeadm init --pod-network-cidr 10.244.0.0/16

Вопросы:

  • Какова цель "pod-network-cidr"?
  • Что означает такой IP "10.244.0.0/16"?
  • Как фланель использует это потом?

1 ответ

Решение

pod-network-cidr - это виртуальная сеть, которую будут использовать pods. То есть любой созданный модуль получит IP-адрес в этом диапазоне.

Причина установки этого параметра во фланели заключается в следующем: https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml

Давайте посмотрим на конфигурацию:

  net-conf.json: |
    {
      "Network": "10.244.0.0/16",
      "Backend": {
        "Type": "vxlan"
      }
    }

Файл yube-kube-flannel содержит 10.244.0.0/16 в качестве сетевого значения. Если вы хотите использовать другую сеть (например, по умолчанию, которую использует kubeadm), вам придется изменить yml для соответствия этой сети. В этом смысле проще просто запустить kubeadm с 10.244.0.0/16, чтобы yml работал "из коробки".

При такой конфигурации фланель настроит оверлей в разных узлах соответственно. Более подробная информация здесь: https://blog.laputa.io/kubernetes-flannel-networking-6a1cb1f8ec7c

Другие вопросы по тегам