ElasticSearch、適切に活用したい場合は? 原理+モニタリング+トラブルシューティングを一度に!
ElasticSearchクラスタ 事業のためのコアノウハウ。 オープンソース分散検索エンジン、Elasticsearch RPMを使用した簡単なインストールとRest APIベースの使い方に基づいて、ElasticSearchはすぐに認知度の高いオープンソースファミリーに参加しました。特に、Cubernetesベースのコンテナ環境への移行が加速し、迅速かつ確実にログを収集して照会するためのシステムが必要になり、ElasticSearchは良い選択肢として共に脚光を浴び始めました。
誰でも簡単かつ迅速に起動できるという利点のため、ElasticSearchベースのログ収集システムを構築して運営するサービスがたくさんあります。しかし、簡単かつ迅速に開始しただけに、サービスが一定規模以上に大きくなると、未だ考えられなかった様々な問題が発生することになります。
ElasticSearchはクラスタとして構築できます。そのため、用途に合わせて正しくクラスターに構築すれば、必要なだけのパフォーマンスを見せることができ、ノード1台または2台の障害が発生してもサービスに影響がないほど安定的に運用できます。このようにElasticSearchをクラスターに構築するには、その基盤となる概念とスキルをよく知る必要があります。
私たちの目標は、ElasticSearchの「コアアクション」を特定することです。 ElasticSearchは急速に発展しており、バージョンアップサイクルもそれほど高速です。しかし、バージョンがアップグレードされても変わらない内部動作があります。安定した運用のためには、このような内部動作の理解が不可欠です。特に、インデックスや検索がどのように行われるのか、シャードの数を適切に設定することが重要な理由を理解しておく必要があります。
そのため、このレッスンではElasticSearch固有のバージョンについては説明しません。その代わりに、すべてのバージョンを統一して同じように適用される重要な動作を 説明し、クラスタを運用するために必要な監視方法や問題が発生したときにどのように対処する必要があるかなどを例に示します。どのバージョンのElasticSearchを実行していても、適用し、適用可能な内部原理をしっかりと固めてください。
ワーキングElasticSearchの活用について根本的な悩み を解決します。 こんな悩みがあったら注目してください!
ElasticSearchクラスタ をすでに構築して使用している方
ElasticSearchクラスタの頻繁な障害でサービスの信頼性 に問題がある場合
ElasticSearchをプロジェクトまたはサービスに導入しよ うとしている人
💬「ElasticSearchを安定的に運営したいのですが、ElasticSearchの基盤知識が不足しています」
ElasticSearchのインデックスと検索がどのように機能するのかを 知ることで、なぜシャードの数が重要なのかを理解できます。このような運営に必要な基盤知識をお知らせします。
💬「ElasticSearchクラスタで何度も問題が発生しますが、原因の把握が難しく対処するのが難しい」
内部の動作原理を知ることで、問題が発生したときにどこで問題が発生するのかを見つけるのが簡単になります。この講義を通じて、トラブルシューティングができる基本的な知識を 習得することができます。
ElasticSearch Essentialコアをつかむ4-Step
Step #1 ElasticSearchについて見てください。 ElasticSearchの全体的な機能と操作に必要な重要な概念を見てください。クラスタとは何か、ノードとは何か、クラスタとして持つElasticSearchの特徴などを見て、インデックス、シャード、マッピングなどの基本概念について学びます。
✅ElasticSearchを操作するために知っておく必要がある概念を理解できます。
Step #2 ElasticSearchの内部動作を理解します。 ElasticSearch内でインデックス/検索がどのように処理されるのか、シャードの数がなぜ重要なのかを調べて、注意すべきことについて学びます。 textとkeyword型フィールドの違いを理解し、いつどのように活用すればよいかを学ぶことができます。
✅ElasticSearch内でインデックスと検索がどのように機能するかを理解できます。
Step #3 ElasticSearch を監視する方法を学習します。 ElasticSearchはCAT APIを介してさまざまな情報を表示するためのインターフェースを提供します。 CAT APIの中で最もよく使われるCAT health、nodes、indices、shardsなどについて調べて、それぞれをいつ活用すればよいかを学習します。 ElasticSearchクラスタを監視するときにどの指標を調べるべきか、そしてその指標が何を意味するのかを知ることができます。
✅ElasticSearchクラスタを監視する方法を知り、主要な監視指標が何を意味するのかを理解します。
Step #4 ElasticSearch クラスターで発生する障害事例の回避策を探します。 ElasticSearchクラスタを実行している場合、状況によってはさまざまな障害が発生する可能性があります。これらの中で最も頻繁に発生する障害の状況をケースバイケースで調べ、障害の原因を特定し、問題を解決するプロセスを通じて、ElasticSearchクラスタのトラブルシューティングプロセスを学びます。
✅ElasticSearchクラスタで発生する問題を見つけて解決できます。
ビジネスで経験したElasticSearchノウハウをお届けします。 カカオで3年以上のElasticSearchクラスタの構築および運営業務 を行っており、本『 基礎から固めるElasticSearch運営ノウハウ 』を執筆しました。
現在はニンジン市場でSREとして働いており、 ブランチ やティーストーリー を通じて様々な知識を共有しており、ElasticSearchに関連するオープンソース を作成しています。 このレッスンでは、多くの人がElasticSearchを利用するのを手伝ってくれることを願っています🙂
Q&A 💬 Q. ElasticSearchをまったく知らなくても聞くことはできますか?
いいえ。このレッスンでは、ElasticSearchを構築するプロセスは扱っていないため、基本的なレベルの経験が必要です。
Q. ElasticSearchクラスタの運用経験はどのくらい必要ですか?
大規模でなくても、基本的なクラスターを構築し、文書を索引付けした経験程度であっても十分です。