[新サービス]ジオロケーションレベルのバランシング機能を試してみた[AWS Global Accelerator] #reinvent

2018.11.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

コンニチハ、千葉です。

ジオロケーションレベルのバランシング機能である、AWS Global Acceleratorを使ってみました。

詳細はこちら。

【新サービス】AWS Global Acceleratorがリリースされました!! #reinvent

試してみた

サービスが追加されているので、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化ができそうです。そっちも試してみます!!お楽しみに!