[新サービス]ジオロケーションレベルのバランシング機能を試してみた[AWS Global Accelerator] #reinvent
コンニチハ、千葉です。
ジオロケーションレベルのバランシング機能である、AWS Global Acceleratorを使ってみました。
詳細はこちら。
試してみた
サービスが追加されているので、Global Acceleratorの画面に移動しましょう。さっそく、Acceleratorを作成します。
アクセラレータの名前を指定します。
ポート番号とプロトコルを指定します。追加で、複数指定することもできます。
対象のリージョンとヘルスチェック(ポート番号、インターバル、タイムアウト)の設定をします。Traffic dialは、エンドポイントグループへのトラフィックの割り振りの割合を指定できます。デフォルトは100(100 percent)です。今回は、東京とシンガポールにエンドポイントを作成しました。予期せずトラフィックを流したくない場合は、ダイアルを0にすることでトラフィックを流さないようなります。
ルーティング先のエンドポイントを指定します。ALB/NLB/EIPを指定できます。今回はEIPを指定しました。
作成されたAcceleratorの情報です。お?スタティックIPが付与されてます。そして、バックエンドにALBを指定できます。って、ことはなんだ、ALBを固定IPにできるんじゃないだろうか(追加方は違うかもですが...)
EC2にApacheを立てて、リスナーの状況を確認してみました。ヘルスチェックがOKになってます!!
Acceleratorの固定IPに対して、何度かリクエストしてみました。
オレゴンに起動したApacheのアクセスログ
[ec2-user@ip-172-31-38-43 ~]$ sudo su - [root@ip-172-31-38-43 ~]# tail /var/log/httpd/access_log 99.82.172.221 - - [27/Nov/2018:10:14:12 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36" 99.82.172.218 - - [27/Nov/2018:10:14:12 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36" 99.82.172.219 - - [27/Nov/2018:10:14:13 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
東京に起動したApacheのアクセスログ
[root@ip-172-31-24-54 ~]# tail /var/log/httpd/access_log 99.82.170.174 - - [27/Nov/2018:10:10:01 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" [root@ip-172-31-24-54 ~]# tail /var/log/httpd/access_log 99.82.170.174 - - [27/Nov/2018:10:10:01 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" [root@ip-172-31-24-54 ~]# tail -f /var/log/httpd/access_log 99.82.170.174 - - [27/Nov/2018:10:10:01 +0000] "GET / HTTP/1.1" 403 3839 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
どちらも、ちゃんとアクセス来てました!!
最後に
ALB/NLB/EIPの前段に、グロバールレベルでの上位ロードバランサーのような機能です。クライアントは固定IP目掛けてリクエストすることができ、バックエンドがどこのリージョンか、またEIP/NLB/ALBを意識せずに利用できます。これは、裏を返せばALBの固定IP化ができそうです。そっちも試してみます!!お楽しみに!