Etcd pour SUSE¶
Actuellement, il n’existe pas de packages pour etcd3. Ce guide utilise l’installation par archive tar comme solution de contournement le temps qu’une distribution par packages soit disponible.
The etcd service runs on the controller node.
Installer et configurer les composants¶
Installer d’etcd:
Créer l’utilisateur etcd:
# groupadd --system etcd # useradd --home-dir "/var/lib/etcd" \ --system \ --shell /bin/false \ -g etcd \ etcd
Créer les répertoires nécessaires:
# mkdir -p /etc/etcd # chown etcd:etcd /etc/etcd # mkdir -p /var/lib/etcd # chown etcd:etcd /var/lib/etcd
Determine your system architecture:
# uname -m
Download and install the etcd tarball for x86_64/amd64:
# ETCD_VER=v3.2.7 # rm -rf /tmp/etcd && mkdir -p /tmp/etcd # curl -L \ https://github.com/coreos/etcd/releases/download/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz \ -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz # tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz \ -C /tmp/etcd --strip-components=1 # cp /tmp/etcd/etcd /usr/bin/etcd # cp /tmp/etcd/etcdctl /usr/bin/etcdctl
Or download and install the etcd tarball for arm64:
# ETCD_VER=v3.2.7 # rm -rf /tmp/etcd && mkdir -p /tmp/etcd # curl -L \ https://github.com/coreos/etcd/releases/download/${ETCD_VER}/etcd-${ETCD_VER}-linux-arm64.tar.gz \ -o /tmp/etcd-${ETCD_VER}-linux-arm64.tar.gz # tar xzvf /tmp/etcd-${ETCD_VER}-linux-arm64.tar.gz \ -C /tmp/etcd --strip-components=1 # cp /tmp/etcd/etcd /usr/bin/etcd # cp /tmp/etcd/etcdctl /usr/bin/etcdctl
Créer et éditer le fichier
/etc/etcd/etcd.conf.yml
et définir les valeursinitial-cluster
,initial-advertise-peer-urls
,advertise-client-urls
,listen-client-urls
avec l’IP de management du nœud contrôleur pour permettre l’accès par les autres nœuds via le réseau de management:name: controller data-dir: /var/lib/etcd initial-cluster-state: 'new' initial-cluster-token: 'etcd-cluster-01' initial-cluster: controller=http://10.0.0.11:2380 initial-advertise-peer-urls: http://10.0.0.11:2380 advertise-client-urls: http://10.0.0.11:2379 listen-peer-urls: http://0.0.0.0:2380 listen-client-urls: http://10.0.0.11:2379
Créer et éditer le fichier
/usr/lib/systemd/system/etcd.service
:[Unit] After=network.target Description=etcd - highly-available key value store [Service] # Uncomment this on ARM64. # Environment="ETCD_UNSUPPORTED_ARCH=arm64" LimitNOFILE=65536 Restart=on-failure Type=notify ExecStart=/usr/bin/etcd --config-file /etc/etcd/etcd.conf.yml User=etcd [Install] WantedBy=multi-user.target
Recharger le fichier du service systemd avec :
# systemctl daemon-reload
Finaliser l’installation¶
Activer et démarrer le service etcd:
# systemctl enable etcd # systemctl start etcd