
本記事の目的
前回の記事にて、Oracle標準イメージのOracle Linux 7.xにて構築したCompute Instance環境では、時刻同期サービスであるchronyがデフォルトで設定されていることを確認しました。
次に、同じくOracle Linux7.xで構成されるDBaaS 19c環境でのchronyの設定状況およびインストール手順を確認してみました。
DBaaSにおけるNTPサービスの設定指針
OCI Database(DBaaS)の環境においても、以下のマニュアルに記載の通りNTPサービスの利用が推奨されています。
マニュアル「DBシステムの構成」-ネットワーク・タイム・プロトコル
https://docs.oracle.com/cd/E97706_01/Content/Database/Tasks/configuringDB.htm
より、
1ノードのDBシステムでNetwork Time Protocol (NTP)デーモンを実行して、再起動時にシステム・クロックを安定させることをお薦めします。 NTPデーモンに関する情報が必要な場合は、「RHEL/CentOS 7のNTP (Network Time Protocol)サーバーの設定」を参照してください。
2ノードのRAC DBシステムの両方のノードでNTPを構成して、ノード間の時間を同期することをお薦めします。 NTPを構成しないと、Oracle ClusterwareはCTSS (Cluster Time Synchronization Service)を構成して使用します。クラスタ時間は、時間同期にNTPを使用するアプリケーションと同期していない可能性があります。
ちなみに、上記マニュアルではNTPDデーモンへの設定手順へのリンク(しかも謎のブログ記事?)が貼られていますが、先の記事に記載した通り、今後はchronyの利用が推奨となるはず。
DBaaS環境へのchrony設定
以下の記事で紹介した通り、DBaaSでDBバージョンを利用した場合はOSはLinux7.xベースとなります。
[Oracle Cloud] Oracle Database 19c on DBaaS(VM) Now Available!!
が、Compute Instanceの場合と異なり、DBaaSの場合はLinux7.xベースの環境においてもchronyはデフォルトで設定されていませんでした(残念!)
※2019年8月時点での確認結果であり、今後変わる可能性あり(と期待)
というわけで、手動でchronyをインストール&設定してみました。
環境
[root@dbvm01 ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.5 (Maipo)
パッケージインストール
[root@dbvm01 ~]# yum install chrony
設定ファイルの確認&変更
[root@dbvm01 ~]# cat /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). server 0.pool.ntp.org iburst★ server 1.pool.ntp.org iburst★ server 2.pool.ntp.org iburst★ server 3.pool.ntp.org iburst★ # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 second. makestep 1.0 3★ # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Enable hardware timestamping on all interfaces that support it. #hwtimestamp * # Increase the minimum number of selectable sources required to adjust # the system clock. #minsources 2 # Allow NTP client access from local network. #allow 192.168.0.0/16 # Serve time even if not synchronized to a time source. #local stratum 10 # Specify file containing keys for NTP authentication. #keyfile /etc/chrony.keys # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. #log measurements statistics tracking
⇒NTPサーバとして外部サーバが設定されている
⇒Compute Instanceのデフォルトと同様、stepモードが有効となっている
ここでは以下の動作となるよう設定ファイルを修正します。
・NTPサーバをCompute Instanceと同様に「169.254.169.254 」のみを指定
・時刻同期モードをslewモードへ変更
修正箇所抜粋
#server 0.pool.ntp.org iburst ←コメントアウト #server 1.pool.ntp.org iburst ←コメントアウト #server 2.pool.ntp.org iburst ←コメントアウト #server 3.pool.ntp.org iburst ←コメントアウト server 169.254.169.254 iburst ←追加 #makestep 1.0 3 ←コメントアウト leapsecmode slew ←追加
chronyサービス起動&ステータス確認
[root@dbvm01 ~]# systemctl start chronyd [root@dbvm01 ~]# systemctl status chronyd ● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2019-08-17 13:44:05 UTC; 5s ago★ Docs: man:chronyd(8) man:chrony.conf(5) Process: 86011 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 86005 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 86007 (chronyd) CGroup: /system.slice/chronyd.service └─86007 /usr/sbin/chronyd Aug 17 13:44:05 dbvm01 systemd[1]: Starting NTP client/server... Aug 17 13:44:05 dbvm01 chronyd[86007]: chronyd version 3.4 starting (+CMDMO...G) Aug 17 13:44:05 dbvm01 chronyd[86007]: Could not open IPv6 command socket :...ol Aug 17 13:44:05 dbvm01 chronyd[86007]: Initial frequency -28.029 ppm Aug 17 13:44:05 dbvm01 systemd[1]: Started NTP client/server. Hint: Some lines were ellipsized, use -l to show in full.
⇒起動成功
同期NTPサーバの確認
[root@dbvm01 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 169.254.169.254 2 6 7 0 +28us[ -50us] +/- 17ms
トラッキング情報の確認
[root@dbvm01 ~]# chronyc tracking Reference ID : A9FEA9FE (169.254.169.254) Stratum : 3 Ref time (UTC) : Sat Aug 17 13:56:43 2019 System time : 0.000000022 seconds fast of NTP time Last offset : -0.000024474 seconds RMS offset : 0.000024474 seconds Frequency : 27.525 ppm slow Residual freq : -1.266 ppm Skew : 5.330 ppm Root delay : 0.000585816 seconds Root dispersion : 0.017448600 seconds Update interval : 2.0 seconds Leap status : Normal
DBaaSのデフォルト状態(2019/9/3追記)
DBaaSのデフォルト状態ではntpdが有効化されている状態なので、そのままntpdを利用することも可能です。
以下、chronyインストールを試したのとは別の環境ですが、DBaaS環境での確認結果↓
パッケージ確認
[opc@db19c ~]$ yum list installed | grep chrony [opc@db19c ~]$ yum list installed | grep ntp fontpackages-filesystem.noarch 1.44-8.el7 @odadom1 ntp.x86_64 4.2.6p5-28.0.1.el7 @odadom1 ntpdate.x86_64 4.2.6p5-28.0.1.el7 @odadom1 [opc@db19c ~]$
⇒デフォルトでntpdの方はインストールされている。
起動ステータス確認
[root@db19c ~]# systemctl status ntpd ● ntpd.service - Network Time Service Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2019-09-02 04:14:33 UTC; 4h 14min ago★ Main PID: 70339 (ntpd) CGroup: /system.slice/ntpd.service └─70339 /usr/sbin/ntpd -u ntp:ntp -g Sep 02 04:14:33 db19c ntpd[70339]: Listen normally on 1 lo 127.0.0.1 UDP 123 Sep 02 04:14:33 db19c ntpd[70339]: Listen normally on 2 ens3 10.0.0.19 UDP 123 Sep 02 04:14:33 db19c ntpd[70339]: Listen normally on 3 ens4 192.168.16.18 ...23 Sep 02 04:14:33 db19c ntpd[70339]: Listening on routing socket on fd #20 fo...es Sep 02 04:14:34 db19c ntpd[70339]: 0.0.0.0 c016 06 restart Sep 02 04:14:34 db19c ntpd[70339]: 0.0.0.0 c012 02 freq_set kernel 0.000 PPM Sep 02 04:14:34 db19c ntpd[70339]: 0.0.0.0 c011 01 freq_not_set Sep 02 04:14:40 db19c ntpd[70339]: 0.0.0.0 c614 04 freq_mode Sep 02 04:32:11 db19c ntpd[70339]: 0.0.0.0 0612 02 freq_set kernel 39.685 PPM Sep 02 04:32:11 db19c ntpd[70339]: 0.0.0.0 0615 05 clock_sync Hint: Some lines were ellipsized, use -l to show in full.
⇒デフォルトで起動
NTPサーバ確認
[root@db19c ~]# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== +t2.time.bf1.yah 98.139.133.62 2 u 431 1024 377 174.225 -8.717 1.265 +ntp.xtom.com 204.123.2.5 2 u 353 1024 377 110.917 -8.434 1.248 -static-72-87-88 18.26.4.105 2 u 237 1024 377 181.601 -6.733 1.493 +vps5.ctyme.com 216.218.254.202 2 u 288 1024 377 107.283 -9.110 1.740 *169.254.169.254 192.168.0.151 2 u 493 1024 377 0.290 -9.603 1.123
⇒「169.254.169.254」と同期
起動オプション確認
[opc@db19c ~]$ cat /etc/sysconfig/ntpd # Command line options for ntpd OPTIONS="-g" [opc@db19c ~]$
⇒slewモードは付いてない。
参考文書
・平成29年(2017年) 1月1日(日) に挿入される うるう秒に備えて
おまけ
以上
Leave a Reply