Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon ES に移行をしたら幸せになれるのか? / Moved to Amazon ES
Search
Yoshiaki Yoshida
September 11, 2017
Technology
0
5.9k
Amazon ES に移行をしたら幸せになれるのか? / Moved to Amazon ES
Amazon ES に移行をしたら幸せになれるのか?
Yoshiaki Yoshida
September 11, 2017
Tweet
Share
More Decks by Yoshiaki Yoshida
See All by Yoshiaki Yoshida
技術ブロガーを育てる!ブログメンタリングで何を教えているのか / Passion for Blog Mentoring
kakakakakku
8
37k
プログラミング初心者に教えるときは「身近な比喩」が重要なのだ! / Metaphor is Important for Beginner Programmer
kakakakakku
2
5.6k
プロジェクトの成功を支える ZenHub と モブプログラミング / ZenHub and Mob Programming
kakakakakku
1
5.8k
楽しく!アウトプットを習慣化しよう / Let's Enjoy Output
kakakakakku
3
6.8k
さぁ!今すぐプロジェクトリーダーに立候補しよう / Be a Project Leader
kakakakakku
3
9.1k
プロジェクトをリードする技術 (Kyash 社 再演) / Project Leading is Skill for Kyash
kakakakakku
4
2.2k
プロジェクトをリードする技術 / Project Leading is Skill
kakakakakku
43
47k
Mackerel で ECS をどこまでモニタリングできるのか / Monitoring ECS with Mackerel
kakakakakku
0
13k
[2018/01/30] Redash 初心者向けハンズオン / Redash Meetup #0.1
kakakakakku
0
2.4k
Other Decks in Technology
See All in Technology
The Madness of Multiple Gemini CLIs Developing Simultaneously with Jujutsu
gunta
1
2.4k
claude codeでPrompt Engineering
iori0311
0
370
複数のGemini CLIが同時開発する狂気 - Jujutsuが実現するAIエージェント協調の新世界
gunta
11
3.1k
怖くない!GritQLでBiomeプラグインを作ろうよ
pal4de
1
120
新規事業におけるAIリサーチの活用例
ranxxx
0
120
株式会社島津製作所_研究開発(集団協業と知的生産)の現場を支える、OSS知識基盤システムの導入
akahane92
1
1.1k
Frontier Airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
frontierairlineswithflyagent
0
110
AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う
netmarkjp
0
210
Turn Your Community into a Fundraising Catalyst for Black Philanthropy Month
auctria
PRO
0
110
メモ整理が苦手な者による頑張らないObsidian活用術
optim
0
110
Ktor + Google Cloud Tasks/PubSub におけるOTel Messaging計装の実践
sansantech
PRO
1
230
「現場で活躍するAIエージェント」を実現するチームと開発プロセス
tkikuchi1002
6
990
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
990
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
For a Future-Friendly Web
brad_frost
179
9.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Speed Design
sergeychernyshev
32
1k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Side Projects
sachag
455
43k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
Amazon ES に移行をしたら 幸せになれるのか? 2017.09.11 CA.io @kakakakakku
吉田 慶章 @kakakakakku - プレゼン芸人 - 7/05 : AWS Solution
Days 2017 登壇 - 7/21 : JAWS-UG コンテナ支部 登壇 - 8/27 : July Tech Festa 2017 登壇 - 9/08 : CROSS 2017 登壇 - 9/11 : CA.io 登壇 - 9/16 : XP 祭り 2017 登壇 \喋りすぎ/ 今日ココ →
僕はマッチングサービスに関係ないです → プレゼン芸人枠
さて
EC2 で運用されていた とある Elasticsearch を 最近 Amazon ES に移行してみた
つらかった
移行をして 幸せになれたのかな?
まず, 移行前の状況をザックリと
総ドキュメント数 3億 調べてみたら, 2億ドキュメントは不要だった
総インデックス数 1200 3年間以上も永続化している
バージョン Elasticsearch 1.4 比較的古め
構成 非クラスタ1台 つらい
open_file_descriptors ぐんぐん成長 そろそろ “too many open files” 出そう
Amazon ES \救世主?/
m3.xlarge 移行前
データノード c4.large x 5台 専用マスターノード c3.medium x 3台 Amazon ES
移行後
データノード c4.large x 5台 専用マスターノード c3.medium x 3台 Amazon ES
移行後 \圧倒的成長/
ハマりポイントなどを紹介
スプリットブレインの問題を考慮して 専用マスターノードは3台にする (AWS は奇数台数を推奨している) https://docs.aws.amazon.com/ja_jp/elasticsearch-service/latest/ developerguide/es-createupdatedomains.html
単純に, コスト3倍
試しに専用マスターノードを t2.small にして リロケーションをしてみたら
\ クラスタ死亡 / 本当に何もできなくなって サポートにクラスタを削除してもらった 専用マスターノードだとしても, t2 は控えましょう
次に
シャード数 インデックスサイズが 30GB 以下なら シャード数を 1 にする ( デフォルト設定は 5
) デフォルトのまま 運用してませんか?
https://aws.amazon.com/jp/blogs/news/get-started-with-amazon- elasticsearch-service-how-many-shards-do-i-need/
アプリケーション側も苦労した
Elastica v3.1.1 以降なら AwsAuthV4 トランスポート 対応 https://github.com/ruflin/Elastica \PHP Client/
AwsAuthV4 「IAM Role + 署名付きリクエスト」 アプリケーション側に実装が必要だった Amazon ES App
Amazon ES のダメな点 \良い点もたくさんあるけど/
- VPC 内に配置できない - リロケーション (クラスタ再構成) が遅すぎる - リロケーションに失敗すると, サクッと死亡する
- 自動スナップショットからリストアできない - サポートに依頼する必要がある - 札束で殴るしかない - まだまだ他にも...
まとめ
Amazon ES に移行をして 幸せにはならなかったけど 安定稼働したから良しとする (EC2 のままスケールさせても良かったかも)
移行フローで苦労した話などは また別途どこかで話せればと! Elasticsearch on EC2 → Amazon ES
http://kakakakakku.hatenablog.com/entry/2016/12/20/000612 運用面のコツは去年まとめた資料参照で!