■はじめに
お疲れ様です。
AWSのEC2インスタンスをAmazonLinuxで作成した場合、デフォルトのタイムゾーンはUTCになっております。
EC2インスタンス初回起動の際、User DataによりタイムゾーンをJSTに変更する設定メモです。
Launch Instanceで作成したEC2インスタンスのタイムゾーンはデフォルトでUTCになっております。
$ date
Tue Dec 23 01:30:39 UTC 2014
$ cat /etc/sysconfig/clock
ZONE="UTC"
UTC=true
$
■使用したAMI
・Amazon Linux AMI 2014.09.1 (HVM) - ami-4985b048
■Launch Instanceの際にUserDataに貼り付ける設定
[AWS Management Console] -> [AWSアカウントにEC2インスタンス作成権限を持つIAMユーザーでログインする] -> [EC2] -> [Instances] -> [Launch Instance]を選択する。
EC2インスタンス作成画面の中で[Step 3: Configure Instance Details]の[Advanced Details]を選択します。
[User data]に[As text]で、以下のコマンドを貼り付けて、EC2インスタンスを作成します。
#!/bin/sh
echo "User Data start"
yum -y update
unalias cp
cp -f -p /usr/share/zoneinfo/Japan /etc/localtime
cat << _EOT_ > /etc/sysconfig/clock
ZONE="Asia/Tokyo"
UTC=false
_EOT_
chmod 644 /etc/sysconfig/clock
/etc/init.d/crond restart
echo "User Data end"
■User Dataを設定して作成したEC2インスタンスのタイムゾーン
ECインスタンスを作成すると、User DataによりタイムゾーンがJSTとして起動されます。
$ date
Tue Dec 23 11:19:45 JST 2014
$ cat /etc/sysconfig/clock
ZONE="Asia/Tokyo"
UTC=false
$
$ sudo yum update
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main/latest | 2.1 kB 00:00
amzn-updates/latest | 2.3 kB 00:00
No packages marked for update
$
なお、User Dataの実行ログは以下で確認可能です。
cat /var/log/cloud-init-output.log
また、EC2インスタンスに設定しているUser Dataの内容は以下でも確認出来ます。
cat /var/lib/cloud/instance/user-data.txt