
Amazon Elasticsearch Serviceのサービス制限について
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
はじめに
その他のAWSのサービスと同様、Amazon Elasticsearch Serviceにもデフォルトの制限があります。以下のAmazon Elasticsearch Service Developer Guideのページに記載があります。
こちらは今後のサービス拡張により変更があるかと思いますが、2015年10月時点でのサービス制限についてご紹介します。
Amazon Elasticsearch Serviceのサービス制限
クラスターの制限
| クラスタ内の最大インスタンス数 | 10インスタンス | 
| クラスタ機能として使用するストレージ領域 | クラスタのセグメントマージ、ログ、その他内部機能向けとして、各インスタンスのストレージ領域のうち10%から20%が予約されます。 | 
| メモリスワップの無効化 | 全てのインスタンスタイプでメモリスワップは無効化されます。 | 
EBSの制限
| EBSボリュームサイズの上限及び下限 | EBSボリュームサイズの上限及び下限は、EBSボリュームタイプとインスタンスタイプによって決まります。 ■インスタンスタイプ: ・t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch →Min:10 GB、Max:35 GB * データノードとなっているインスタンス数 ・その他のsmallとmediumのインスタンスタイプ →Min:10 GB、Max:100 GB ・全てのlarge、xLarge、2xLargeのインスタンスタイプ →Min:10 GB、Max:512 GB ■EBSボリュームタイプ ・gp2 →Min:10 GB、Max:512 GB ・io1 →Min:35 GB、Max:512 GB ・standard →Min:10 GB、Max:100 GB 例えば、t2.small.elasticsearchでgp2を使った場合、gp2としての上限は512GBですが、インスタンスタイプとしての上限は35GBなので、この組み合わせで使える上限は35GBになります。 | 
Elasticsearchの制限
| bootstrap.mlockall | bootstrap.mlockallは有効化されており、JVMが起動する際にメモリを確保し、スワップを防ぎます。 なお、以下インスタンスタイプを除きます。 ・t2.micro.elasticsearch ・t2.small.elasticsearch ・t2.medium.elasticsearch | 
| カスタムプラグイン | カスタムプラグインはサポートしていません。しかし、Kibana、ICU、Kuromojiなどの幾つかの標準的なプラグインを組み込んでいます。 | 
| ES_HEAP_SIZE環境変数 | ElasticsearchのJavaプロセスのヒープサイズは32GBに制限されています。 | 
| スクリプティングモジュール | Dynamic Scriptingはサポートされていません。 | 
Logstashの制限
| アウトプットプラグイン | Logstashアウトプットプラグインとしてelasticsearchをサポートしています。 (※なお、logstash-output-amazon_esも使えます) | 
リージョン固有の制限
| sa-east-1(サンパウロ)リージョン | サンパウロリージョンではi2及びr3リージョンをサポートしていません。 | 
サービスリクエストの制限
| HTTPリクエストのサイズ上限 | HTTPリクエストはインスタンスタイプによってサイズ上限があります。 ・t2.micro.elasticsearch: 10 MB ・t2.small.elasticsearch: 10 MB ・t2.medium.elasticsearch: 10 MB ・m3.medium.elasticsearch: 10 MB ・m3.large.elasticsearch: 10 MB ・m3.xlarge.elasticsearch: 100 MB ・m3.2xlarge.elasticsearch: 100 MB ・r3.large.elasticsearch: 100 MB ・r3.xlarge.elasticsearch: 100 MB ・r3.2xlarge.elasticsearch: 100 MB ・r3.4xlarge.elasticsearch: 100 MB ・r3.8xlarge.elasticsearch: 100 MB ・i2.xlarge.elasticsearch: 100 MB ・i2.2xlarge.elasticsearch: 100 MB | 
| HTTP POSTリクエストのパラメータ | 署名バージョン4でリクエストされたHTTP POSTのパラメータは無視します。 | 
| TCPトランスポート | 本サービスはHTTP(80/tcp)プロトコルでの接続をサポートしています。 (※HTTP(443/tcp)もサポートしています) | 
さいごに
クラスタ内の最大インスタンス数については上限緩和申請が可能ですので、10インスタンス以上必要な場合はAWSサポートへ上限緩和申請を行ってください。
何ができて何ができないのかが分かれば活用の幅が広がります。ぜひ皆さんもAmazon ESをお試しください!








