Japan
サイト内の現在位置を表示しています。
Amazon Time Sync Serviceを利用したHAクラスターの構築を試してみました (Windows/Linux)
CLUSTERPRO オフィシャルブログ ~クラブロ~はじめに
Amazon Time Sync Serviceとは2017年11月に新しくリリースされたサービスの一つで、非常に正確で信頼性の高い時間同期サービスです。
本サービスを使用することでインターネットのアクセスや自前でNTPサーバーの用意をすることなく時刻参照ができるといったメリットがあります。
今回はAmazon Time Sync Serviceを利用して、HAクラスター内のインスタンス(サーバー)の時刻を同期させたHAクラスターを構築します。
この記事の内容
1. Amazon Time Sync Service
VPC構成を変更することなく設定が可能で、また利用には追加料金がかかりません。
これまでVPC内のインスタンスがNTPサーバーを参照する場合、インターネットを経由して外部のNTPサーバーを参照する方法やVPNやDirect ConnectでVPCとオンプレミス環境を接続し、オンプレミス環境に用意した自前のNTPサーバーを参照する方法がありました。
Amazon Time Sync Serviceを利用すると下記のようにインターネットを経由しない、また自前のNTPサーバーを用意しないでインスタンスの時刻を同期させることができます。
2. HAクラスター構成
以降、インスタンスにはAWS CLIのインストール、リージョンの設定、セキュリティキーの設定、ネットワークの設定が完了していることを前提とします。
3. HAクラスター構築手順
3.1 HAクラスター構築の事前準備
- VPC(VPC ID:vpc-1234abcd)
- -CIDR:10.0.0.0/16
- -Subnets
- ■Subnet-1a (サブネット ID:sub-1111aaaa):10.0.10.0/24
- ■Subnet-2a (サブネット ID:sub-2222aaaa):10.0.110.0/24
- ■Subnet-1c (サブネット ID:sub-1111cccc):10.0.20.0/24
- ■Subnet-2c (サブネット ID:sub-2222cccc):10.0.120.0/24
- -RouteTables
- ■Main (ルートテーブル ID:rtb-00000001)
- >10.0.0.0/16 → local
- >0.0.0.0/0 → igw-1234abcd (Internet Gateway)
- >20.0.0.100/32 → eni-1234abcd (ENI ID)
- ■Route-A (ルートテーブル ID:rtb-0000000a)
- >10.0.0.0/16 → local
- >0.0.0.0/0 → nat-1234abcd(NAT1)
- >20.0.0.100/32 → eni-1234abcd (ENI ID)
- ■Route-C (ルートテーブル ID:rtb-0000000c)
- >10.0.0.0/16 → local
- >0.0.0.0/0 → nat-5678efgh(NAT2)
- >20.0.0.100/32 → eni-1234abcd (ENI ID)
3.2 Amazon Time Sync Serviceの設定
Amazon Time Sync Serviceを設定するコマンドはWindowsとLinuxで異なります。
Windows/Linuxそれぞれで検証実績がありますが、今回はLinuxの手順を記載します。
Windowsの手順については以下を参考にしてください。
ガイドに従って、NTPサービスをアンインストールして、chronyパッケージをインストールします。
3.2.1 NTPサービスのアンインストール
# yum erase ntp*
3.2.2 chronyのインストール
# yum install chrony
3.2.3 /etc/chrony.conf ファイルの編集
記載がない場合は、「server 169.254.169.123 prefer iburst」を他のserver or poolステートメントの後に追記し保存します。
今回はAmazon Time Sync Serviceを利用していることを明確にするため、追記後、他のserver または poolステートメントをコメントアウト(または削除)します。
# vi /etc/chrony.conf
3.2.4 chronyの開始
# service chronyd start
3.2.5 時刻同期の確認
# chronyc sources -v
210 Number of sources = 1 .
-- Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
|| .- xxxx [ yyyy ] +/- zzzz
|| Reachability register (octal) -. | xxxx = adjusted offset,
|| Log2(Polling interval) --. | | yyyy = measured offset,
|| \ | | zzzz = estimated error.
|| | | \
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 169.254.169.123 3 7 377 72 -20us[ -28us] +/- 1066us
3.3 VIP制御によるHAクラスターの作成
以下はHAクラスターを構成するインスタンスにLinuxを用いた場合のCLUSTERPROの構成例です。
- CLUSTERPRO
- -フェールオーバーグループ (failover)
- ■AWS仮想IPリソース
- >IPアドレス:20.0.0.100
- ■ミラーディスクリソース
- >データパーティション:/dev/xvdb2
- >クラスターパーティション:/dev/xvdb1
- CLUSTERPRO X ソフトウェア構築ガイド
- Windows > クラウド > Amazon Web Services > HAクラスタ構築ガイド
- Linux > クラウド > Amazon Web Services > HAクラスタ構築ガイド
4. 動作確認
さいごに
Amazon Time Sync Serviceを利用することで、VPC内のインスタンスの時刻同期においてインターネットへのアクセスや自前のNTPサーバーの用意が不要なHAクラスターが構築可能となることを確認できました。
HAクラスターの構築に関する疑問点や気になる点などがございましたら後述の窓口までお問い合わせください。
お問い合わせ