Чтобы настроить кластер Etcd:
1.Установите Etcd, HAProxy, KeepAlived
2.Инициализируйте кластер на первом узле
3.Добавьте второй узел в кластер
4.Добавьте третий узел в кластер
5.Завершите настройку кластера
Установка Etcd, HAProxy, KeepAlived
На серверах BC1, BC2 и BC3 выполните команду:
apt install etcd haproxy keepalived -y
Инициализация кластера на первом узле
На сервере BC1 последовательно выполните действия:
1.Остановите Etcd. Для этого выполните команду:
systemctl stop etcd
2.Задайте настройки в конфигурационном файле /etc/default/etcd:
ETCD_NAME="etcd1"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://<BC1IP>:2380"
ETCD_INITIAL_CLUSTER="etcd1=http://<BC1IP>:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://<BC1IP>:2379"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="new"
ETCD_ELECTION_TIMEOUT="5000"
ETCD_HEARTBEAT_INTERVAL="1000"
3.Запустите Etcd:
systemctl start etcd
4.Проверьте статус кластера:
etcdctl member list
Если настройки выполнены верно, отобразится первый узел кластера.
5.Измените версию API:
export ETCDCTL_API=3
Добавление второго узла в кластер
1.На сервере BC2 остановите Etcd. Для этого выполните команду:
systemctl stop etcd
2.На сервере BC1 добавьте узел в кластер:
etcdctl member add etcd2 --peer-urls=http://<BC2IP>:2380
3.На сервере BC2 задайте настройки в конфигурационном файле /etc/default/etcd:
ETCD_NAME="etcd2"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://<BC2IP>:2380"
ETCD_INITIAL_CLUSTER="etcd1=http://<BC1IP>:2380,etcd2=http://<BC2IP>:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://<BC2IP>:2379"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="existing"
ETCD_ELECTION_TIMEOUT="5000"
ETCD_HEARTBEAT_INTERVAL="1000"
4.На сервере BC2 удалите папку со стандартными настройками узла кластера:
rm –r /var/lib/etcd/default/member
ПРИМЕЧАНИЕ. После установки Etcd автоматически создается узел кластера со стандартными настройками. Вместо них в дальнейшем используются свои настройки, поэтому папку со стандартными настройками нужно удалить.
5.На сервере BC2 запустите Etcd:
systemctl start etcd
6.Проверьте статус кластера:
etcdctl member list
Если настройки выполнены верно, отобразятся два узла кластера.
Добавление третьего узла кластера
1.На сервере BC3 остановите Etcd. Для этого выполните команду:
systemctl stop etcd
2.На сервере BC1 добавьте узел в кластер:
etcdctl member add etcd3 --peer-urls=http://<BC3IP>:2380
3.На сервере BC3 задайте настройки в конфигурационном файле /etc/default/etcd:
ETCD_NAME="etcd3"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://<BC3IP>:2380"
ETCD_INITIAL_CLUSTER="etcd1=http://<BC1IP>:2380,etcd2=http://<BC2IP>:2380,etcd3=http://<BC3IP>:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://<BC3IP>:2379"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="existing"
ETCD_ELECTION_TIMEOUT="5000"
ETCD_HEARTBEAT_INTERVAL="1000"
4.На сервере BC3 удалите папку со стандартными настройками узла кластера:
rm –r /var/lib/etcd/default/member
ПРИМЕЧАНИЕ. После установки Etcd автоматически создается узел кластера со стандартными настройками. Вместо них в дальнейшем используются свои настройки, поэтому папку со стандартными настройками нужно удалить.
5.На сервере BC3 запустите Etcd:
systemctl start etcd
6.Проверьте статус кластера:
etcdctl member list
Если настройки выполнены верно, должны отобразиться три узла кластера.
1.На серверах BC1, BC2, BC3 в конфигурационном файле /etc/default/etcd укажите значения параметров ETCD_INITIAL_CLUSTER и ETCD_INITIAL_CLUSTER_STATE.
Пример настройки:
ETCD_INITIAL_CLUSTER="etcd1=http://<BC1IP>:2380,etcd2=http://<BC2IP>:2380,etcd3=http://<BC3IP>:2380"
ETCD_INITIAL_CLUSTER_STATE="existing"
2.На серверах BC1, BC2, BC3 перезапустите службу Etcd. Для этого выполните команду:
systemctl restart etcd
3.На серверах BC1, BC2, BC3 проверьте статус кластера:
etcdctl member list
4.На серверах BC1, BC2, BC3 добавьте Etcd в автозапуск:
sudo systemctl enable etcd.service
© Компания Directum, 2024 |