普通のうるう秒対応をしました(June 30, 2015)

ITシステムに関わる人にとっては気が気ではなかったであろううるう秒ですが、無事に過ごすことができましたのでやったことをメモしておきます。

www.nikkei.com

やったこと

今回のうるう秒を迎えるにあたっては自宅ラック友の会 ポータルの記事とHIROCASTERさんの7/1の閏秒を迎えるにあたってLinuxでは何をすべきか?を大いに参考にさせていただきました。
ありがとうございます。

行った対策は以下です。

  • うるう秒による影響範囲の調査
    • Linuxカーネルのバージョン確認
    • ntpdのバージョン確認とアップデート
  • (ベンダー様による)ネットワーク機器の対策
  • Slewモードで動くNTPサーバーの構築
  • サーバーのNTP設定変更
  • 当日待機

影響調査

会社では東京のIDC(ハウジング)とさくらのクラウドを併用しており、どちらにあるサーバーも主にLinux系OSで動いています。

Linuxサーバーのカーネルバージョンを確認したところ下記いずれかでした。

  • 3.12, 3.18等比較的新しいカーネル
  • 対策済みの2.6系カーネル

大丈夫そうですね。

一方ntpdは一部古いものがありましたので下記いずれかのバージョンにアップデートしました。

  • ntpd 4.2.8@1.3265-o
  • ntpd 4.2.6p5@1.2349-o

続いてネットワーク機器ですが、保守してくださってるベンダー様から連絡をいただきまして、ハウジングで使用しているCiscoのNexusというスイッチが影響を受けることがわかりました。

ネットワーク機器の対策

Cisco Nexusは前後1日程度バッファを取って下記のオペレーションで対応することになりました。

  • 6/29 にNTP設定削除
  • 7/2 にNTP設定復元

Slewモードで動くNTPサーバーの構築

この機会にNTPの設定も整理しよう!ということでNTPサーバーを新設しました。

# uname -r
4.0.5-gentoo
# ntpd --version
ntpd 4.2.8@1.3265-o Sat Jun 27 17:13:03 UTC 2015 (1)
# ps aux | grep 'ntp[d]'
root      2871  0.0  0.0 102768 14852 ?        SLs  19:17   0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -x
# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+ntp1.jst.mfeed. 133.243.236.17   2 u   66  128  377    0.538    2.622   0.016
*ntp2.jst.mfeed. 133.243.236.17   2 u  125  128  377    0.542    1.133   0.050
+ntp3.jst.mfeed. 133.243.236.17   2 u   90  128  377    0.734    1.299   0.062

意気込んで新設した結果カーネル4系になりました!
ピカピカですね!

サーバーのNTP設定変更

全サーバーのNTP設定を新設したNTPサーバーを見るように変更します。
Ansibleで設定ファイルを置き換えていくだけなので楽チンです。

当日待機

当日は念のため待機しました。
前回はけっこう大変なことになってたので、今度は自分が対応に追われる番かと覚悟もしていたのですが、幸い今回はとくに大きな異常は発生せずに9時(JST)を過ぎました。
でもちょっとくらい問題起こってもおもしろかったかも

さくらのクラウドでも事前にしっかりと対策していただいていたようでクラウド基盤での異常も皆無でした。

何事もなかったことをSlackで報告し意気揚々と帰路に着くことができました。
これもLinuxや各コミュニティ・企業の皆様のおかげですね!

f:id:mazgi:20150702123420p:plain

ただ、帰宅すると自宅のMacがフリーズしていました。
原因につきましてはわかりかねました。

参考にさせていただいたページ

対策実施および本記事を書くにあたっては下記ページを参考にさせていただきました。