Amazon ElasticsearchがVPCをサポートしました
まいど、大阪の市田です。
本日のアップデートでAmazon ElasticsearchがVPCをサポートしました。
AWS Developer Forums: Amazon Elasticsearch Service now supports Amazon Virtual Private Cloud (VPC)
試してみた
それでは早速試してみます。マネジメントコンソールから作成してみます。
ドメインの名前を付けます。バージョンはデフォルトの「5.5」のまま「Next」をクリックします。
インスタンス数は「2」として、複数のサブネットにMulti-AZで構成するため「Enable zone awareness」にチェックを入れておきます。
次の画面で「VPC access」を選択して下さい。サブネットが2つ選択出来ます。セキュリティグループは複数選択することが可能です。
VPCがサポートされてますね!
アクセスポリシーは「Do not require signing request with IAM credential」を選択します。カッコ書きの説明にあるように、セキュリティグループで許可されたものがアクセス可能となります。
ポリシーの内容は次のようなものになります。
レビューで問題なければ作成します。
また、セキュリティグループは同じVPCからのアクセスを許可するようにしました。
作成完了後、インスタンスのエンドポイントに対して名前解決を行ってみると、VPCのプライベートIPが返ってきました。
1 2 3 4 | dig +short vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com192.168.4.144192.168.3.156 |
次に、同じVPCにWindows Serverを立ててkibanaの画面にアクセスしてみます。見れましたね。
VPC外(ローカルのPC)からはアクセスできません。
次に、同じVPC上のインスタンスからデータを登録してみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | $ curl -XPUT https://vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com/testidx/test/1 -d '> {> "title": "test1",> "body": "body1"> }> '{"_index":"testidx","_type":"test","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":2,"failed":0},"created":true}$ curl -XPUT https://vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com/testidx/test/2 -d' {> "title":"test2",> "body":"body2"> }'{"_index":"testidx","_type":"test","_id":"2","_version":1,"result":"created","_shards":{"total":2,"successful":2,"failed":0},"created":true} |
投入したデータをkibanaで確認できました。
また、インスタンスのエンドポイントに対して名前解決を行うと、VPCのプライベートIPが返ってきます。
1 2 3 4 | dig +short vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com192.168.4.144192.168.3.156 |
最後に
VPC内にElasitcsearchインスタンスが作成できることで、セキュアに利用できる用途が広がったと思います。
ぜひご活用下さい。
以上です。