Amazon Elasticsearch Service 小ネタ

お断り

Amazon Elasticsearch Service に限った話ではないけれど。

elasticsearch-head を使う

elasticsearch-head はローカル環境のDockerで実行させる.

$ docker run --rm -p 9100:9100 mobz/elasticsearch-head:5

ブラウザで elasticsearch-head にアクセスする

$ open http://localhost:9100

テキストボックスに接続したい Elasticsearch のエンドポイントを入力し、Connect ボタンをクリック.

f:id:ymmtmsys:20170729143232p:plain

AWS の Elasticsearch はデフォルトで Access-Control-Allow-Origin:* を返してくるので, これだけでOK.

cluster health を green にする

クラスタ構成でない場合限定.

デフォルトで number_of_replicas は 1 になっている. クラスタ構成でない場合, レプリカを作るノードがないので cluster health が yellow になってしまう.

問題はないのだが, ちょっとソワソワするので number_of_replicas を 0 にして cluster health を green にする.

curl -XPUT https://{elasticsearch service}/\*/_settings -d'
{
    "index" : {
        "number_of_replicas" : 0
    }
}'

/*/ を入れないと {"Message":"Your request: '/_settings' is not allowed."} と言うエラーになった.

参考