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.8k
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.1k
プロジェクトをリードする技術 / Project Leading is Skill
kakakakakku
43
46k
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
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
エンジニアが組織に馴染むために勉強会を主催してチームの壁を越える
ohmori_yusuke
2
120
Cursor Meetup Tokyo
iamshunta
1
310
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
8
930
Babylon.jsでゲームを作ってみよう
limes2018
0
100
新卒から4年間、20年もののWebサービスと向き合って学んだソフトウェア考古学 - PHPカンファレンス新潟2025 / new graduate 4year software archeology
oguri
2
350
AIエージェントデザインパターンの選び方
almondo_event
0
150
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
1.1k
実践Kafka Streams 〜イベント駆動型アーキテクチャを添えて〜
joker1007
0
150
データ戦略部門 紹介資料
sansan33
PRO
1
3.1k
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
yasunori0418
1
350
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
11
5.1k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
620
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
A designer walks into a library…
pauljervisheath
205
24k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
1
79
How to train your dragon (web standard)
notwaldorf
92
6k
Code Reviewing Like a Champion
maltzj
523
40k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Rails Girls Zürich Keynote
gr2m
94
13k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
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 運用面のコツは去年まとめた資料参照で!