Amazon Elasticsearch Serviceについて構築時のパラメータ整理
- 論理設計に関わるところは、詳細設定のところか
- VPC内に配置可能でSGも適用できる
クラスターの設定
1.ノード設定
- インスタンス数
- インスタンス数=データノードの数
- インスタンスタイプ
- データノードのインスタンスタイプ
- 専用マスターの有効化
- クラスターの管理を行う専用マスターノードを利用するか否か
- 専用マスターノードを利用する場合最低3台必要
- ゾーン対応の有効化
- クラスターを同一リージョン内の複数AZに分散
- このオプションを利用する場合最低でも2台データノードが必要
2.ストレージ設定
- ストレージタイプ
- EBS ボリュームタイプ
- gp2(SSD),piops,standard(磁気ディスク)
- EBS ボリュームサイズ
- ディスクサイズ、投入するデータに合わせて設定
- 保存時の暗号化の有効化
- KMSでの暗号化の有効化
3.スナップショットの設定
- 自動スナップショットの開始時間
- 自動スナップショット取得タイミングを設定(UTC)
4.詳細設定
- rest.action.multi.allow_explicit_index
- indices.fielddata.cache.size
- indices.query.bool.max_clause_count
5.ネットワーク設定
- VPC or PublicAccess
- VPC内のリソースとして扱うか否か
- ここではVPC前提で以降の設定は記載
- VPC
- 配置するVPCを選択
- サブネット
- 同じく配置するサブネットを選択する
- ゾーン対応を有効化する場合、2つ以上サブネットを選択する
- セキュリティグループ
- 適用するセキュリティグループを選択
- IAM Role
- デフォルトロールAWSServiceRoleForAmazonElasticsearchService
- 権限の内容はENIの付け外しとSG周り
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1480452973134",
"Action": [
"ec2:CreateNetworkInterface",
"ec2:DeleteNetworkInterface",
"ec2:DescribeNetworkInterfaces",
"ec2:ModifyNetworkInterfaceAttribute",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
- ノード間の有効化
- ノード間の通信を暗号化(TLS)する
- 特に鍵情報等の指定はない
- Kibana認証
- ESドメインにくっついてくるKibanaには認証がない
- Kibanaアクセスに対し、Cognitoを利用するか否かを選択する
6.アクセスポリシー
- Amazon Elasticsearch Serviceに対するアクセス制御を設定
- IAM使うかどうか、SGでの制御のみとするかどうか