2013年4月19日金曜日

"DHCP Options Set"で指定したNTPサーバの設定スクリプトを作ってみた

スズキです。

以前、下記のような記事を書き、DHCPで設定ファイルのNTPサーバが書き変わらない
VPCの"DHCP Options Set"でNTPサーバを指定する
方法も紹介しましたが、今回は、その"NTP Server"を設定するスクリプトを作成し、
CloudInit(CloudFormation)を利用して起動時に自動的に"NTP Server"として
構築できるようにしてみました。


実際のスクリプト(suz-lab_ntp)は下記の通りです。
# cat suz-lab_ntp
#/bin/sh
set -e

cat << EOT > /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=on
PEERNTP=no
EOT

service network restart

cat << EOT > /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server 0.centos.pool.ntp.org
server 1.centos.pool.ntp.org
server 2.centos.pool.ntp.org
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
EOT

service ntpd restart

exit 0

さらに"User Data"を使ってCloudInitにて起動時に実行して設定することも可能です。

#!/bin/sh
/opt/suz-lab/share/cloud-init/component/suz-lab_ntp 2>&1 | logger -s -t suz-lab_ntp

当然、CloudFormationのテンプレートに組み込むことも可能です。

CloudFormation関係の記事が書きにくい...
--------
http://www.suz-lab.com

0 コメント: