OpenStack では、分散キーのロック、構成の保存、サービスの稼働状況の追跡、その他のシナリオの追跡に、信頼性の高いキー値ストアである Etcd を使用します。このセクションでは、Etcd の導入について紹介します。
openstack-rocky の yum リポジトリ(CentOS-Openstack-rocky.repo)を使って、 Etcd のパッケージをインストールします。インストールは、コントローラーノードで実施します。
[root@controller ~]# yum --enablerepo=centos-openstack-rocky -y install etcd 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * updates: ftp.nara.wide.ad.jp 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ etcd.x86_64 0:3.2.22-1.el7 を インストール --> 依存性解決を終了しました。 依存性を解決しました ================================================================================ Package アーキテクチャー バージョン リポジトリー 容量 ================================================================================ インストール中: etcd x86_64 3.2.22-1.el7 extras 9.3 M トランザクションの要約 ================================================================================ インストール 1 パッケージ 総ダウンロード容量: 9.3 M インストール容量: 42 M Downloading packages: etcd-3.2.22-1.el7.x86_64.rpm | 9.3 MB 00:01 Running transaction check Running transaction test Transaction test succeeded Running transaction インストール中 : etcd-3.2.22-1.el7.x86_64 1/1 検証中 : etcd-3.2.22-1.el7.x86_64 1/1 インストール: etcd.x86_64 0:3.2.22-1.el7 完了しました! [root@controller ~]#
Etcd の設定ファイル( /etc/etcd/etcd.conf )を編集し、以下設定します。ETCD_LISTEN_PEER_URLS、ETCD_LISTEN_CLIENT_URLS、ETCD_INITIAL_ADVERTISE_PEER_URLS、ETCD_ADVERTISE_CLIENT_URLS、ETCD_INITIAL_CLUSTER をコントローラーノードの管理 IP アドレスにし、管理ネットワーク経由で他のノードにアクセスできるようにします。
[root@controller ~]# vi /etc/etcd/etcd.conf #[Member] ETCD_DATA_DIR="/var/lib/etcd/default.etcd" ETCD_LISTEN_PEER_URLS="http://192.168.24.111:2380" ETCD_LISTEN_CLIENT_URLS="http://192.168.24.111:2379" ETCD_NAME="controller" #[Clustering] ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.24.111:2380" ETCD_ADVERTISE_CLIENT_URLS="http://192.168.24.111:2379" ETCD_INITIAL_CLUSTER="controller=http://192.168.24.111:2380" ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01" ETCD_INITIAL_CLUSTER_STATE="new"
Etcd の自動起動を有効化します。
■ 自動起動の有効化 [root@controller ~]# systemctl enable etcd [root@controller ~]# ■ 自動起動の状態確認 [root@controller ~]# systemctl is-enabled etcd enabled [root@controller ~]#
Etcd を再起動します。
■ 再起動 [root@controller ~]# systemctl restart etcd [root@controller ~]# ■ 起動状態の確認 [root@controller ~]# systemctl status etcd ● etcd.service - Etcd Server Loaded: loaded (/usr/lib/systemd/system/etcd.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-10-21 03:21:32 JST; 7s ago Main PID: 10930 (etcd) CGroup: /system.slice/etcd.service └─10930 /usr/bin/etcd --name=controller --data-dir=/var/lib/etcd/default.etcd --listen-client-urls=http://192.168.24.111:2379 10月 21 03:21:30 controller etcd[10930]: enabled capabilities for version 3.2 10月 21 03:21:32 controller etcd[10930]: 6a3c1d99a300afa9 is starting a new election at term 2 10月 21 03:21:32 controller etcd[10930]: 6a3c1d99a300afa9 became candidate at term 3 10月 21 03:21:32 controller etcd[10930]: 6a3c1d99a300afa9 received MsgVoteResp from 6a3c1d99a300afa9 at term 3 10月 21 03:21:32 controller etcd[10930]: 6a3c1d99a300afa9 became leader at term 3 10月 21 03:21:32 controller etcd[10930]: raft.node: 6a3c1d99a300afa9 elected leader 6a3c1d99a300afa9 at term 3 10月 21 03:21:32 controller etcd[10930]: published {Name:controller ClientURLs:[http://192.168.24.111:2379]} to cluster 244c19a381c27c0 10月 21 03:21:32 controller etcd[10930]: ready to serve client requests 10月 21 03:21:32 controller etcd[10930]: serving insecure client requests on 192.168.24.111:2379, this is strongly discouraged! 10月 21 03:21:32 controller systemd[1]: Started Etcd Server. [root@controller ~]#