インフラ

これだけは知っておきたいNTP関連コマンド

ntpコマンド

こんにちは、ちゃりおです。

本番サーバの時刻ずれをこないだ初めて経験したので、解決するために使用したntp関連コマンドをまとめます。
(割と時刻ずれ経験しないものですね)

centos系を想定しています。

時刻のズレの確認

まずは、時刻のズレの確認です。
下記コマンドを実行して、offsetの行を確認しましょう。
offsetはntpサーバとの時刻のズレをミリ秒単位で表示しています。

[centos@ip-192-168-1-208 ~]$ ntpq  -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 103.202.217.183 103.1.106.69     2 u    2   64    1   12.640   -7.176   0.596
 tor-relais2.lin 124.216.164.14   2 u    -   64    1  275.330  -10.602   0.101
 ntp2.ig-haase.d 130.133.1.10     2 u    1   64    1  265.774   -4.350   0.000
 ntp-d.0x5e.se   194.58.204.20    2 u    -   64    1  251.219  -12.231   0.000

ntpq -p(chronyc sources) コマンドの見方

ntp関連よく使うコマンド

ntpサーバを参照できているか

ntpサーバを参照できているかも、ntpq -pコマンドを使用します。
左側の列にアスタリスクがついているのが、現在参照しているntpサーバです。

[centos@ip-192-168-1-208 ~]$ ntpq  -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*time.cloudflare 10.35.8.220      3 u    3   64    1   80.166    2.817   0.259
 time.cloudflare 10.35.8.220      3 u    2   64    1   80.171    8.324   0.356
 puppet.kenyonra 80.72.67.48      3 u    1   64    1  111.702    5.486   0.332
 ntp-a2.nict.go. .NICT.           1 u    1   64    1    2.963    3.357   0.309

ntpサーバの追加

ntpサーバをデフォルトから変更したい場合は、「ntp.conf」を修正します。
server <ホスト名> <オプション>の形式で追加します。

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
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

よく使われるオプションを紹介します。詳細は、こちらがわかりやすいです。

オプション 説明
iburst 初回の同期にかかる時間を短縮(デフォルトオプション)
prefer 他のntpサーバーよりも優先されるよう指定

Redhat 19.17. NTP の設定

時刻を合わせる

ntpサーバを参照できていれば、徐々に時刻のずれがなくなり最終的に時間があいます。
強制的に時刻を合わせたい場合は、「ntpdate」を使います。

「ntpdate」を実行する際に、ntpのプロセスが停止している必要があるため停止してから実行します。

[centos@ip-192-168-1-208 ~]$ sudo systemctl stop ntpd
[centos@ip-192-168-1-208 ~]$
[centos@ip-192-168-1-208 ~]$ sudo ntpdate ntp.nict.jp
 7 Jun 01:23:53 ntpdate[1397]: adjust time server 133.243.238.243 offset -0.030071 sec
[centos@ip-192-168-1-208 ~]$
[centos@ip-192-168-1-208 ~]$ sudo systemctl start ntpd

まとめ

ntpコマンドの使い方と、設定について(少々)書きました。
現在は、chronyのほうが推奨されています。EC2でcentos7のサーバ立てた際も、ntpはインストールされていませんでした。

とはいえ、既存のサーバでntp使っていてとにかく時間を合わせたいときもあると思うので知っておいても損はないと思います。

Amazonで「Linux」の本を見てみる!!

linux再起動
[初心者向け]サーバ再起動するときにこれだけは確認しておきたいことこんにちは、ちゃりおです。 運用中のサーバ再起動することあまりないので、なんか怖いですよね。 不安を減らすために確認しておきたいことを...
slack通知
Webhookを使ってシェルスクリプトで手軽にslack通知するこんにちは、ちゃりおです。 アラートとかをslackに通知するのとても便利ですよね。 今回はシェルスクリプトでslackに通知する方法...
公開鍵秘密鍵-min
踏み台サーバの鍵(公開鍵・秘密鍵)の管理方法について比較してみたこんにちは、ちゃりおです。 みなさんは、踏み台サーバの鍵の管理どうしてますか。 ユーザごとにアカウント作ったり、秘密鍵を共有していたり...