Amazon ES (Amazon Elasticsearch Service) で,例えば「アクセス許可 IP」を追加するなど「アクセスポリシー」を変更する場合,クラスタも再構築されてしまうため,待ち時間が長時間化したり,場合によっては再構築がエラーになって,クラスタが死んでしまう場合もあった.Amazon ES を運用している人たちと話すと必ず話題に出るツライ仕様だったし,これまで何度も AWS サポートに改善要望を出していた 😰
最近どうしても「アクセスポリシー」を変更する必要があり,試したところ,数分以内で完了してしまった.今までは Amazon ES の CloudWatch メトリクス Nodes
を見ていると,一時的にノード数が2倍にスケールアウトして,徐々にスケールインするという挙動だったのに,その挙動も確認できなかったため,もしかして改善された?と思ったら,本当に改善されていた!
僕はリリースノートを見逃していて,Twitter で教えて頂いた @shinodogg さんに感謝 🎉
インスタントアクセスポリシーアップデート : 2018/03/07 リリース
「インスタントアクセスポリシーアップデート」って,カタカナで書くと名前が長いけど,ようするに Amazon ES の「アクセスポリシー」を変更すると,クラスタを再構築せずに,即時反映できる機能と言える.リリースノートにも書いてある通り,全ての Elasticsearch バージョンで使えるのも良かった.個人的には Amazon ES 関連で,過去最大の神アップデートだと思う❗️
詳細な構成はわからないけど,Amazon ES は Elasticsearch クラスタの前にロードバランサがあるので,ロードバランサのレイヤーで「アクセスポリシー」を反映できるようになった感じ?
www.slideshare.net
まとめ
「インスタントアクセスポリシーアップデート」は Amazon ES 運用者にとって神アップデートなのに,あまり知られていないような気がするので,普及のために記事を書いた.最近は Elasticsearch 6.2 までサポートされていたり,待望だった VPC 対応もリリースされたり,Amazon ES も日々良くなっているので,今後も積極的に使っていく❗️
関連記事
去年に比較的大きめの Elasticsearch クラスタを Amazon ES に移行した事例をまとめた記事もある.
Amazon ES を運用するコツをまとめた記事もある.