Kubernetes the hard way: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 62: Строка 62:
 
[Install]
 
[Install]
 
WantedBy=multi-user.target
 
WantedBy=multi-user.target
<PRE>
+
</PRE>
   
 
=Связнные статьи=
 
=Связнные статьи=

Версия 15:22, 21 октября 2021

Kubernetes the hard way

Тут заметки о том как я пробую заставить себя изучить K8S

Я попробовал творчески переосмыслить это руководство и так же добавить свои пояснения что и нахрена я делаю и почему именно так. Настраиваю k8s я первый раз и тут возможны ошибки.

Описание "лаборатории"

  • Используется три ноды которые имитируют три раззных AZ в пределах одного региона
  • Для сервисов задаются ДНС-записи если это необходимо
  • Каждая нода находится в своем VLAN
    • node 1 AZ1 == VLAN 2001 == 10.240.1.2/24, GW (catalyst) 10.240.1.1
    • node 2 AZ2 == VLAN 2001 == 10.240.2.2/24, GW (catalyst) 10.240.2.1
    • node 3 AZ3 == VLAN 2001 == 10.240.2.2/24, GW (catalyst) 10.240.3.1

PKI

Абсолютно необходимый шаг это настройка - настройка инфраструктуры ключей и сертефикатов

Etcd

/etc/systemd/system/etcd.service
[Unit]
Description=etcd
Documentation=https://github.com/coreos

[Service]
Type=notify
ExecStart=/usr/local/bin/etcd \\
  --name ${ETCD_NAME} \\
  --cert-file=/etc/etcd/kubernetes.pem \\
  --key-file=/etc/etcd/kubernetes-key.pem \\
  --peer-cert-file=/etc/etcd/kubernetes.pem \\
  --peer-key-file=/etc/etcd/kubernetes-key.pem \\
  --trusted-ca-file=/etc/etcd/ca.pem \\
  --peer-trusted-ca-file=/etc/etcd/ca.pem \\
  --peer-client-cert-auth \\
  --client-cert-auth \\
  --initial-advertise-peer-urls https://${INTERNAL_IP}:2380 \\
  --listen-peer-urls https://${INTERNAL_IP}:2380 \\
  --listen-client-urls https://${INTERNAL_IP}:2379,https://127.0.0.1:2379 \\
  --advertise-client-urls https://${INTERNAL_IP}:2379 \\
  --initial-cluster-token etcd-cluster-0 \\
  --initial-cluster controller-0=https://10.240.0.10:2380,controller-1=https://10.240.0.11:2380,controller-2=https://10.240.0.12:2380 \\
  --initial-cluster-state new \\
  --data-dir=/var/lib/etcd
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Связнные статьи

При подготовке пришлось настроить некоторые сервисы или железки (которые не относятся непосредственно к K8S но тем не менее необходимы)