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での制御のみとするかどうか
TOP