日々充実

毎日が充実したと思えるようになるためのブログ

うるう秒(概要〜弊社対策編)

こんにちわ!ヒサユキです!

さて、もうじき年末な訳ですが・・・
今年はこんなのがあります。

閏秒 - Wikipedia

今日はコレにまつわるお話をしていきます!



うるう秒について

うるう年との関係

ざっくり言うと、太陽の周りを回る公転周期に合わせて微調整するのがうるう年。
地球自体が回転する自転時間に合わせて微調整するのがうるう秒

なぜ微調整が必要なのか

現在の時計というのは「原子時計」が基準になっている。[原子時]
ですが、本来1日の定義は地球の自転が1週したら1日と定義されている。[天文時]
しかし、最近の科学の進歩により地球の自転にムラがあることが解り、
必ずしも原子時計の1日と地球の自転1週が一致しないことが判明。
そのため、原子時と天文時のずれを調整するために、
1972年以降数年に1回程度のペースで実施されているのがうるう秒となる。

どのくらいずれるのか?

地球の自転は1000分の1秒という小さな単位で見ると“ふらつき”がある。
また、地球の自転は継続的に減速してきており、1日の長さは100年につき
0.001~0.0015秒ずつ長くなっていることがわかっている。
つまり、天文時のほうが徐々に遅れていく。

具体的にどう調整するのか?

原子時であるUTC(協定世界時)の6月または12月の最終日、
23時59分59秒の次に23時59分60秒が挿入されます。
これにより、遅れている天文時原子時の調整をしている。

JST(日本標準時)ではUTCに+9時間のため、
7月1日、または1月1日の8時59分59秒のあとに8時59分60秒が挿入される。

通常では、「08:59:59」の次の時刻は「09:00:00」だが、
うるう秒の調整される場合は、「08:59:59」→「08:59:60」→「09:00:00」となる

そして次回が2017年1月1日 8時59分59秒なのだ\(^o^)/

www.itmedia.co.jp

問題視されていること

2012 年 7 月 1 日のうるう秒挿入時に発生した Linux カーネルの不具合に関する情報

情報は4年前なのですが、結局起こることは一緒です。
代表的なのは、『CPU 使用率がほぼ 100% に上昇』ですね。
モニターみると張り付いて降りてこなくなります。

弊社も見事に去年はひっかかりました。
というわけで、今年は対策します。

対策内容

まぁ、対策方法はいろいろあるんですが・・・
再起動すれば治るってわかってるから、再起動ですよねー/(^o^)\
というわけで、1月2日の深夜に再起動バッチが動きます。

今後のこと考える場合はこちらがおすすめです。

hiroki.jp

弊社の場合は、自分の所にNTPサーバあるので他者のNTPサーバに向けるとかは
おそらく提案しても却下される気がします。
却下するのは良いけど、それなら自分とこのNTPサーバに対策いれてくれ

まとめ

まぁ、ちゃんと対策すれば問題ないです。
特に後者の対策はGoogleとかのNTPに向けるだけで大丈夫、簡単です。

問題は弊社の再起動バッチのatコマンド設定が誰も出来ないからってことで、
グループ超えて僕の所に作業が降ってきたこと/(^o^)\

一応、IT企業です。

Linuxイマイチわからんから、やって」

誰も出来ないとか、いまいちわからんとか、そんなんで済ませることや、
来月には退社する人間にそれで投げるあたり先のこと考えてないなーって
なんか悲しくなりました( ;∀;)

加えて、1月1日にバッチが起動してもし何かあったら出てきてとか言い始めたので、
流石にそれは断りました(#^ω^){フザケンナ}

今回はざっくり概要と弊社の対策書いたので、
AWSではどうするのかを次回書いていこうかなと思います!