このセクションでは、Openstack のサービスをノード間で正しく同期するために、推奨されるノード間での時刻同期の設定について紹介します。
コントローラーノード
コントローラーノードに Chrony がインストールされていることを確認します。標準でインストールされているはずですが、インストールされていない場合は、yum install chrony でインストールして下さい。
[root@controller ~]# rpm -qa | grep chrony chrony-3.2-2.el7.x86_64 [root@controller ~]#
chronyの設定ファイル( /etc/chrony.conf )を編集し、他のノードがコントローラーノードの時刻と同期できるようにします。
[root@controller ~]# vi /etc/chrony.conf # Allow NTP client access from local network. の下に以下設定を追加 allow 192.168.24.0/24
Chrony の自動起動を有効化します。
■ 自動起動の有効化 [root@controller ~]# systemctl enable chronyd [root@controller ~]# ■ 自動起動の状態確認 [root@controller ~]# systemctl is-enabled chronyd enabled [root@controller ~]#
Chrony を再起動します。
■ 再起動 [root@controller ~]# systemctl restart chronyd [root@controller ~]# ■ 起動状態の確認 [root@controller ~]# systemctl status chronyd ● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since 月 2018-10-22 09:59:24 JST; 7s ago Docs: man:chronyd(8) man:chrony.conf(5) Process: 24998 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 24994 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 24996 (chronyd) CGroup: /system.slice/chronyd.service └─24996 /usr/sbin/chronyd 10月 22 09:59:24 controller systemd[1]: Starting NTP client/server... 10月 22 09:59:24 controller chronyd[24996]: chronyd version 3.2 starting (+...) 10月 22 09:59:24 controller chronyd[24996]: Frequency 33.699 +/- 0.122 ppm ...t 10月 22 09:59:24 controller systemd[1]: Started NTP client/server. 10月 22 09:59:29 controller chronyd[24996]: Selected source 133.243.238.163 10月 22 09:59:31 controller chronyd[24996]: Selected source 202.181.103.212 Hint: Some lines were ellipsized, use -l to show in full. [root@controller ~]#
コンピュートノード
コンピュートノードに Chrony がインストールされていることを確認します。
[root@compute1 ~]# rpm -qa | grep chrony chrony-3.2-2.el7.x86_64 [root@compute1 ~]#
chronyの設定ファイル( /etc/chrony.conf )を編集し、コントローラーノードに時刻の同期を行うようにします。 初期値の NTP 参照先サーバーの設定はコメントアウトします。
[root@compute1 ~]# vi /etc/chrony.conf #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst server controller iburst
Chrony の自動起動を有効化します。
■ 自動起動の有効化 [root@compute1 ~]# systemctl enable chronyd [root@compute1 ~]# ■ 自動起動の状態確認 [root@compute1 ~]# systemctl is-enabled chronyd enabled [root@compute1 ~]#
Chrony を再起動します。
■ 再起動 [root@compute1 ~]# systemctl restart chronyd [root@compute1 ~]# ■ 起動状態の確認 [root@compute1 ~]# systemctl status chronyd ● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since 月 2018-10-22 10:16:10 JST; 5s ago Docs: man:chronyd(8) man:chrony.conf(5) Process: 26753 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 26749 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 26751 (chronyd) Tasks: 1 CGroup: /system.slice/chronyd.service └─26751 /usr/sbin/chronyd 10月 22 10:16:09 compute1 systemd[1]: Starting NTP client/server... 10月 22 10:16:10 compute1 chronyd[26751]: chronyd version 3.2 starting (+CM...) 10月 22 10:16:10 compute1 chronyd[26751]: Frequency 34.302 +/- 1.306 ppm re...t 10月 22 10:16:10 compute1 systemd[1]: Started NTP client/server. Hint: Some lines were ellipsized, use -l to show in full. [root@compute1 ~]#
ブロックストレージノード
ブロックストレージノードに Chrony がインストールされていることを確認します。
[root@block1 ~]# rpm -qa | grep chrony chrony-3.2-2.el7.x86_64 [root@block1 ~]#
chronyの設定ファイル( /etc/chrony.conf )を編集し、コントローラーノードに時刻の同期を行うようにします。 初期値の NTP 参照先サーバーの設定はコメントアウトします。
[root@block1 ~]# vi /etc/chrony.conf #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst server controller iburst
Chrony の自動起動を有効化します。
■ 自動起動の有効化 [root@block1 ~]# systemctl enable chronyd [root@block1 ~]# ■ 自動起動の状態確認 [root@block1 ~]# systemctl is-enabled chronyd enabled [root@block1 ~]#
Chrony を再起動します。
■ 再起動 [root@block1 ~]# systemctl restart chronyd [root@block1 ~]# ■ 起動状態の確認 [root@block1 ~]# systemctl status chronyd ● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since 月 2018-10-22 10:22:38 JST; 14s ago Docs: man:chronyd(8) man:chrony.conf(5) Process: 29328 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 29324 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 29326 (chronyd) CGroup: /system.slice/chronyd.service └─29326 /usr/sbin/chronyd 10月 22 10:22:38 block1 systemd[1]: Starting NTP client/server... 10月 22 10:22:38 block1 chronyd[29326]: chronyd version 3.2 starting (+CMDM...) 10月 22 10:22:38 block1 chronyd[29326]: Frequency 33.656 +/- 0.078 ppm read...t 10月 22 10:22:38 block1 systemd[1]: Started NTP client/server. Hint: Some lines were ellipsized, use -l to show in full. [root@block1 ~]#
動作検証
コントローラーノードで、時刻同期されていることを確認します。MS の S 列の * は、対象の NTP サーバーと時刻同期されていることを表しています。
[root@controller ~]# chronyc sources 210 Number of sources = 4 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- x.ns.gin.ntt.net 2 8 377 26 +1997us[+1771us] +/- 84ms ^* ntp-b2.nict.go.jp 1 8 377 26 -654us[ -879us] +/- 9179us ^- sv1.localdomain1.com 2 7 367 25 +1082us[+1082us] +/- 45ms ^- ntp1.jst.mfeed.ad.jp 2 8 377 26 +2392us[+2392us] +/- 87ms [root@controller ~]#
コンピュートノードが、コントローラーノードと時刻同期できていることを確認します。MS の S 列の * は、対象の NTP サーバーと時刻同期されていることを表しています。
[root@compute1 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* controller 2 6 17 23 -8397ns[ -40us] +/- 9933us [root@compute1 ~]#
ブロックストレージノードが、コントローラーノードと時刻同期できていることを確認します。MS の S 列の * は、対象の NTP サーバーと時刻同期されていることを表しています。
[root@block1 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* controller 2 6 17 47 -10us[ -33us] +/- 9812us [root@block1 ~]#