Я следил за хелотным репо Келси Хайтауэра и успешно создал кластер с 3 основными узлами и 3 рабочими узлами. Вот проблемы, возникающие при удалении одного из участников etcd и последующем его добавлении, также со всеми используемыми шагами:
3 мастер-узла:
10.240.0.10 контроллер-0
10.240.0.11 контроллер-1
10.240.0.12 контроллер-2
Шаг 1:
isaac@controller-0:~$ sudo ETCDCTL_API=3 etcdctl member list --endpoints=https://127.0.0.1:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem
Результат:
b28b52253c9d447e, запущен, контроллер-2, https://10.240.0.12:2380, https://10.240.0.12:2379
f98dc20bce6225a0, запущен, контроллер-0, https://10.240.0.10:2380, https://10.240.0.10:2379
ffed16798470cab5, запущен, контроллер-1, https://10.240.0.11:2380, https://10.240.0.11:2379
Шаг 2 (Удалить член etcd контроллера-2):
isaac@controller-0:~$ sudo ETCDCTL_API=3 etcdctl member remove b28b52253c9d447e --endpoints=https://127.0.0.1:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem
Шаг 3 (добавить участника обратно):
isaac@controller-0:~$ sudo ETCDCTL_API=3 etcdctl member add controller-2 --peer-urls=https://10.240.0.12:2380 --endpoints=https://127.0.0.1:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem
Результат:
Элемент 66d450d03498eb5c добавлен в кластер 3e7cc799faffb625
ETCD_NAME = "контроллер-2"
ETCD_INITIAL_CLUSTER = "контроллер-2 = * 1 039 *https://10.240.0.12:2380,controller -0 = * * -1 одна тысяча сорок-одна = https://10.240.0.11:2380"
ETCD_INITIAL_ADVERTISE_PEER_URLS = "https://10.240.0.12:2380"
ETCD_INITIAL_CLUSTER_STATE = "существующие"
Шаг 4 (запустить команду списка участников):
isaac@controller-0:~$ sudo ETCDCTL_API=3 etcdctl member list --endpoints=https://127.0.0.1:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem
Результат:
66d450d03498eb5c, без запуска,, https://10.240.0.12:2380,
f98dc20bce6225a0, запущен, контроллер-0, https://10.240.0.10:2380,
https://10.240.0.10:2379 ffed16798470cab5, запущен, контроллер-1,
https://10.240.0.11:2380, https://10.240.0.11:2379
Шаг 5 (Запустите команду для запуска etcd в controller-2):
isaac@controller-2:~$ sudo etcd --name controller-2 --listen-client-urls https://10.240.0.12:2379,http://127.0.0.1:2379 --advertise-client-urls https://10.240.0.12:2379 --listen-peer-urls https://10.240.0.12:
2380 --initial-advertise-peer-urls https://10.240.0.12:2380 --initial-cluster-state existing --initial-cluster controller-0=http://10.240.0.10:2380,controller-1=http://10.240.0.11:2380,controller-2=http://10.240.0.1
2:2380 --ca-file /etc/etcd/ca.pem --cert-file /etc/etcd/kubernetes.pem --key-file /etc/etcd/kubernetes-key.pem
Результат:
2019-06-09 13: 10: 14.958799 I | etcdmain: etcd Версия: 3.3.9
2019-06-09 13: 10: 14.959022 I | etcdmain: Git SHA: fca8add78
2019-06-09 13: 10: 14.959106 I | etcdmain: версия Go: go1.10.3
2019-06-09 13: 10: 14.959177 I | etcdmain: Go OS / Arch: linux / amd64
2019-06-09 13: 10: 14.959237 I | etcdmain: установка максимального количества процессоров равным 1, общее количество доступных процессоров - 1
2019-06-09 13: 10: 14.959312 W | etcdmain: каталог данных не предоставлен, используется каталог данных по умолчанию ./controller-2.etcd
2019-06-09 13: 10: 14.959435 N | etcdmain: сервер уже инициализирован как участник прежде, начиная с члена etcd ...
2019-06-09 13: 10: 14,959575 C | etcdmain: не может прослушивать TLS для 10.240.0.12:2380: KeyFile и CertFile не представлены
Очевидно, что служба etcd не запустилась должным образом, поэтому я выполняю поиск неисправностей, как показано ниже:
isaac@controller-2:~$ sudo systemctl status etcd
Результат:
● etcd.service - etcd Загружен: загружен
(/etc/systemd/system/etcd.service; включено; предустановка поставщика: включено)
Активен: неактивен (мертв) с Вс 2019-06-09 13:06:55 UTC; 29 мин. Назад
Документы: https://github.com/coreos Процесс: 1876 ExecStart = / usr / local / bin / etcd --name controller-2
--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 / kube Основной PID: 1876 (код = выход, статус = 0 / УСПЕХ) 09 июня 13:06:55 контроллер-2 etcd [1876]: остановлен
peer f98dc20bce6225a0 09 июня 13:06:55 контроллер-2 и т. д. [1876]:
остановка peer ffed16798470cab5 ... 09 июня 13:06:55 контроллер-2
etcd [1876]: прекращено потоковое воспроизведение с одноранговым узлом ffed16798470cab5 (писатель) июнь
09 13:06:55 контроллер-2 и т. Д. [1876]: прекращена потоковая передача с одноранговым узлом
ffed16798470cab5 (писатель) 09 июня 13:06:55 контроллер-2 и т. д. [1876]:
остановил конвейерную передачу HTTP с равноправным узлом ffed16798470cab5 июн 09 13:06:55
контроллер-2 и т. д. [1876]: остановка потоковой передачи с равноправным узлом ffed16798470cab5
(потоковое чтение MsgApp v2) 09 июня 13:06:55 контроллер-2 и т. д. [1876]:
прекратил потоковую передачу с одноранговой сети ffed16798470cab5 (потоковая программа чтения сообщений)
Июн 09 13:06:55 контроллер-2 и т. Д. [1876]: остановлен одноранговый узел ffed16798470cab5
Июн 09 13:06:55 controller-2 etcd [1876]: не удалось найти участника
f98dc20bce6225a0 в кластере 3e7cc799faffb625 09 июня 13:06:55
controller-2 etcd [1876]: забыл установить Type = notify в сервисе systemd
файл
Я действительно пытался запустить член etcd, используя разные команды, но кажется, что etcd контроллера-2 все еще застрял в незапущенном состоянии.Могу ли я узнать причину этого?Любые указатели будут высоко оценены!Благодарю.