運用上のオーバーヘッドがない ELK スタックの利点

ELK スタックの利点と、多くのチームが ELK スタックを使用している理由については、すでにご存知の方も多いでしょう。バグや実稼働環境における問題を診断して解決するうえで重要であるだけでなく、顧客のインサイトに関してはますます価値があるからです。さらに、システムのヘルスと使用状況に関する追加メトリクスを取得すると、チームが強力な競争上の優位性を確保することができます。他の企業はどこに不足しているのかを特定するのに苦労していますが、チームはデータを調べて適応させ、システムに必要なものだけを提供することができます。

マネージャーとして、エンジニアや DevOps チームに優れたログ記録ソリューションを提供したいと思うことがよくあります。しかし、それを提供するために費用を支払われるべきであることも知っています。インフラストラクチャの費用に加えて、対応するアップグレード、パッチ、およびデプロイがあります。そして、これらはすべて時間、労力、専門知識を必要とします。

では、メンテナンスとサポートを簡単に行える手際のよいログソリューションは、どうやって提供できるでしょうか? 頭痛に苦しむことなく ELK スタックのすべての利点を利用する方法はありますか?

ログ記録が重要なのはなぜですか?

マシンデータの増加に伴い、ログ記録はますます重要になっています。アプリケーションのパフォーマンスを最適化するために、問題の診断とトラブルシューティングを行うことは重要です。さらに、ログから重要なビジネスメトリクスとデータを取得できるツールが多数あります。ログ記録はもはや問題を見つけるためだけのものではありません。また、システムをモニタリングするためにも使用します。

間違いなく、ログ記録は重要です。それでは、どのように実装できるかについて話しましょう。現在人気のある方法の 1 つは、ELK スタックです。ELK スタックは Elasticsearch の Apache 2.0 ライセンスバージョンと Kibana (バージョン 7.10.2 まで) があればご自身でのデプロイを選択できます。もしくは、ELK スタックのオープンソースの代替を OpenSearch、OpenSearch Dashboards、Logstash で自己管理することもできます。

ELK スタックが必要なのはなぜですか?

簡単に言うと、ELK は、ElasticsearchLogstash、および Kibana のコアで構成されるスタックです。同じようにそれぞれの簡単なまとめを見てみましょう。

Elasticsearch: 全文検索およびログとメトリクスの分析に使用する検索および分析エンジン。
Logstash: ログとイベントを取り込んで変換するオープンソースツール。
Kibana: ログおよびイベントの確認に使用できるデータ可視化/探索ツールです。

ELK スタックのコンポーネントを一緒に使用すれば、すべてのシステムからログを集約することができます。それらの問題を分析するだけでなく、システムの使用状況をモニタリングし、改善するオポチュニティを見つけます。ELK が提供するデータ分析と視覚化にかなうものはありません。

しかし、なぜ ELK にマネージドサービスを使用するのでしょうか? あなたは良いチームを持っています。単一のホスティングプロバイダーに縛られたくはありません。また、特定のユースケースに合わせてすべてを柔軟に構成できるようにする必要があります。ELK を自ら管理してみませんか?

手短に言えば、それは簡単なことではありません。

ご自身の ELK スタックを管理する際に難しい点は何ですか?

自分で ELK を管理したくない理由についていくつか確認してみましょう。

インストールは決して簡単ではありません
システムの統合を検討するときは、インストールが必ずしも簡単ではないことを忘れないでください。最適な構成は何ですか? どこで秘密を管理しますか? どのくらいのハードウェアが必要ですか?

簡単なインターネット検索で、ELK のインストール方法について説明している記事がたくさん見つかります。詳しく見てみると、開始時にワンクリックでデプロイしていたのとはほど遠いことに気付くかもしれません。実際、多くの前提条件があります。また、どこにでもすぐに使用できる構成の基本インストールを使用するか、すべての構成オプションを調べることにたくさんの時間を費やします。データを取り込み際の制限は何ですか? メンテナンス計画はどうなっていますか? なぜそれが重要なのですか?

今、利用できる環境ごとに数回行うことを想像してみてください。

すべてに対して自動スクリプトを使用している場合でも、すべてをスムーズにセットアップして実行するには、相当な時間がかかります。その分、顧客に価値をもたらすための時間を使えなくなってしまいます。Amazon OpenSearch Service などのマネージドサービスを使用すれば、ELK スタックのデプロイは簡単で繰り返し可能です。

あまり迅速ではありません
ほとんどの企業は、自社製品を迅速に市場に投入しようとします。ただし、スタックとインフラストラクチャを実稼働環境に対応できる状態にするために数週間または数か月を費やさなければならない場合は、迅速に市場に投入することはできません。

アプリケーションを実稼働環境に移行するために行っている現在のプロセスは何ですか? 準備が整っていることを確認するために、どのようなテスト、検証、および研磨を行いますか? また、ハードウェアを書き込みの多い操作で最適になるよう設定する必要がある場合、実稼働環境に移行する前に実行しますか? アップグレードの計画はどうなっていますか?

独自の ELK スタックを管理している場合は、慣れていないインフラストラクチャとアプリケーションを使用してすべてを実行することになります。また、Amazon OpenSearch Service のようなサービスは、インフラストラクチャ、実装、および継続的なメンテナンスにかかる費用を大幅に削減することができます。

回復性により多くの時間を使います
ELK スタックを管理するとなると、回復性について心配することになります。Elasticsearch ノードの 1 つがダウンした場合はどうすればよいですか? あるいは、Kibana のパフォーマンスが使用できなくなった場合はどうすればよいですか?

さらに、上記のステップでインフラストラクチャを正しく設定すると、問題が発生する可能性があります。Logstash と Elasticsearch はメモリを大量に消費します。同じく小さなハードウェアにインストールして時間とお金を節約しようとすると、それらは互いにないがしろになってしまいます。また、バージョンの更新やセキュリティ問題のモニタリングとパッチ適用といった計画についてはまだ話していません。

AWS はこれらのニーズに対応できます。たとえば、Elasticsearch ノードについて考えてみましょう。ノードがダウンした場合、Amazon OpenSearch Service がノードを検出して置き換えます。あなたには、このために時間を費やしてほしくないです。

基本的に、自己管理によってチームがさらに大きくなるため、大きなチームを持つことは良いことです。Elasticsearch クラスターの実行がビジネスラインにとって重要でない場合は、AWS に管理してもらいます。ELK スタックを管理する代わりに、エンジニアに対価を支払ってビジネス価値を生み出すのは良い考えです。

では、ELK スタックの問題を防ぐためのツールには何がありますか?
ELK を構築、実行、およびサポートする場合は、1 つのツールだけをサポートしているわけではないことを覚えておきましょう。今は、それらのうちの 3 つについて心配しなければなりません。また、実稼働環境で実行すると、他の懸念事項が生じます。自己管理を探求するうえで、他にサポートすることは何がありますか?

たとえば、回復性を高めるために、ログのキューイングに Kafka を使用することをお勧めします。トラフィックが多いときは、ELK スタックが追いつかないため、ログを失いたくないと思うはずです。Kafka の管理も行う準備はできていますか? または、Redis を使用して、ピーク時の負荷を管理することもできます。しかし、他のことを管理する必要があるのではありませんか? また、チームがシステムをモニタリングできるように、必要な分析を引き出すにはどうすればよいですか? ここで気を引き締めていきませんか? または、別のシステムをインストールして構成して、必要なモニタリングを提供しますか?

別の方法があります。Amazon CloudWatch などを使用して支援することができます。これは Kibana と連携して機能し、ログを分析する上で使いやすい方法を作成します。

最後になりましたが、確かに重要なことです。Amazon OpenSearch Service などのマネージド Elasticsearch サービスは、VPC サポート、保存データと移動中のデータの組み込み暗号化、ユーザー認証などのセキュリティ統合に対しても役に立ちます。

マネージドソリューションはあなたに適していますか?

多くの企業は、セルフホスティングがオプションであると判断しています。しかし、スムーズな運営を続けるために必要な作業量、技術リソース、専門知識をすべて考慮しているわけではありません。また、優れた製品を顧客に提供するためにシステムを使用するものであって、システムの稼働を維持するために時間を使いたいと思う人は誰もいません。

セルフホスティングについて考えていたとしても、Amazon OpenSearch Service などのマネージドサービスから起動して実行することをすぐに検討する必要があります。Amazon OpenSearch Service などのマネージドサービスを一度試してみると、他の重要なことに時間を費やすことができる可能性があります。

OpenSearch には、Elasticsearch B.V. の Apache ライセンスによる Elasticsearch コードの一部と、その他のソースコードが含まれています。Elasticsearch B.V. はその他のソースコードのソースではありません。ELASTICSEARCH は、Elasticsearch B.V. の登録商標です。

Amazon OpenSearch Service の料金の詳細

料金ページを見る
構築を始めましょう。
Amazon OpenSearch Service の開始方法
ご不明な点がおありですか?
お問い合わせ