目次 >> AWS >> AWS ParallelClusterのタイムゾーンの設定
ParallelClusterに限らず、AWSはどの地域のサーバを使っても基本的にUTCを使う。
しかし、例えばログファイルを確認する際などには、ローカルタイムで出力されていたほうが便利な場合がある。
これはAWSのサイトにある通りに行えばよい。
/etc/sysconfig/clockファイルをviなどで直接
ZONE="Japan" UTC=true
のように書き換えてもよいが、短いので下記のコマンドをタイプすればよい。、
sudo sh -c 'echo "ZONE=\"Japan\"" > /etc/sysconfig/clock' sudo sh -c 'echo "UTC=true" >> /etc/sysconfig/clock' sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
実は、
sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
だけでも、タイムゾーンは日本になるが、glibcの変更時に再びUTCに戻ってしまうので/etc/sysconfig/clockの書き換えも必ず行うようにする。
アメリカ西海岸であれば、
sudo sh -c 'echo "ZONE=\"America/Los_Angeles\"" > /etc/sysconfig/clock'
sudo sh -c 'echo "UTC=true" >> /etc/sysconfig/clock'
sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
となる。
計算ノードの方は、起動するたびに、UTCで起動するので、起動時にスクリプトを実行して設定する。なお、この方法は、ジョブスケジューラーにawsbatchを使っている場合は使えない。
具体的には、configファイルのpost_installの項目で設定する。
まず、additionalsetting.shというテキストファイルを用意して、中身を
sudo sh -c 'echo "ZONE=\"Japan\"" > /etc/sysconfig/clock' sudo sh -c 'echo "UTC=true" >> /etc/sysconfig/clock' sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
アメリカ西海岸であれば、
sudo sh -c 'echo "ZONE=\"America/Los_Angeles\"" > /etc/sysconfig/clock' sudo sh -c 'echo "UTC=true" >> /etc/sysconfig/clock' sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
とする。改行コード(LFにする)に注意する。
そしてS3にアップロードする。ここでは、hogehogehogeにアップロードしている。
アップロードしたら、公開設定(public)にする。
configファイルに
post_install = https://hogehogehoge.s3.amazonaws.com/additionalsetting.sh
と設定して、クラスターを起動する。
最終更新日