Elastic Observabilityで年末年始の慌ただしさを乗り切る
※本投稿は、上記のElastic BlogをDeepL翻訳したものです。
著者 Mike Hansen
2022年9月21日
9月に入り、多くの小売業者はすでに次のホリデーシーズンに向けての準備を始めていることでしょう。特に、ある週末は、企業が愛憎半ばする現実的なストレステストになる傾向があります。それは、サイバーウィークエンドです。具体的には、ブラックフライデー、サイバーマンデーと、その間の週末です。
この記事では、Elastic Observabilityを活用して、あと2ヶ月で世界中のeコマースインフラに押し寄せるトラフィックに備え、対応するために必要なデータの洞察を提供する方法について説明します。Elastic Observabilityについて初めてお読みになる方は、私の同僚であるPaul Smaleraが、このソリューションの完全な概要を説明する素晴らしい記事を書いていますので、そちらをご覧ください。
Elastic Observabilityが、アップタイム・メトリクスやアプリケーション・パフォーマンス・モニタリング(APM)を通じて、どのようにシステムの健全性を追跡するのに役立つのか、ぜひご覧ください。また、リアルユーザーモニタリング(RUM)機能でサイトのパフォーマンスを測定し、Elasticの機械学習機能で異常を検出してアラートを出す方法についてもご紹介しています。
休日のときめきへの備えの重要性
年末年始に観測可能なデータを考えるとき、どのようなデータが最も重要でしょうか?インフラの健全性?収益やコンバージョン率?アプリケーションやウェブサイトのパフォーマンス?セキュリティ?誰に尋ねるかによって、これらのいずれか、あるいはすべてとなる可能性もあります。
特に2021年を除いて、サイバーウィークエンドのオンライン売上は2014年以来、前年比約18%増となっているため、経営陣は売上がどのように推移しているかを気にすることでしょう。しかし、サイトの問題や障害もそれなりに発生しており、販売数に影響したり、頭痛の種になったりすることがあります。このようなデータを報告し、対処する能力を持つことは、サイバーウィークエンドとホリデー全般の成功に不可欠です。
多くの小売業者が直面する共通の課題は、必要なデータが複数のベンダーの複数のシステムに存在する可能性があることです。さらに、これらのシステムは異なるチームによって管理され、互いに連携していない可能性があります。データは、オンプレミス、クラウド、またはハイブリッドクラウドモデルのデータセンターに存在する可能性があります。売上や注文のデータはビジネスチームが収集・管理し、ウェブパフォーマンスのデータはデジタルチームが監視し、インフラの健全性は全く別の場所で追跡することができます。しかし、これらの一部(またはすべて)を組み合わせて、経営陣のための1つのエグゼクティブサマリーにしたい場合はどうすればよいのでしょうか。そうです。Elastic Observabilityです。
Elastic Observabilityはデータを統合することで、以下のような重要な質問に1つのインターフェースからリアルタイムで簡単に答えることができます。
インフラやワークロードのパフォーマンスはどの程度か?
インフラやワークロードのパフォーマンスはどの程度か?
私のウェブサイトやアプリケーションはエンドユーザにとってどの程度のパフォーマンスなのか?
年末年始の営業成績はどうか?
問題を診断するために必要なメトリクスやログをすべて収集できているか?
以下にElastic Observabilityの機能を紹介しますが、これらの質問を念頭に置いておいてください。そしていつも通り、エラスティック・コンサルティングがお手伝いさせていただきます。
インフラストラクチャのメトリクスとインサイト
インフラストラクチャがどこに配置されているかによって、スタック全体に対する単一のビューを作成することは困難な場合があります。アップタイムレポートは集中システムにフィードバックされるかもしれませんが、アプリケーション、ウェブ、データベースのログ、パフォーマンスメトリクス、セキュリティデータ、オンプレミスおよびクラウドシステムのCPUおよびメモリ使用量、Kubernetesメトリクスなどについてはどうでしょうか。数え上げればきりがありません。
このような種類のインフラストラクチャ・データは、いくつものシステムに存在する可能性があり、手作業で統合してレポートを作成するには、大きな労力が必要になる場合があります。これらのシステム間で使用されるフィールドは、似たような値を含んでいても異なる名前になっていることがあります(たとえば、client.ip と client.ip-address のように)。このため、複数のシステムにまたがるデータについてレポートを作成しなければ、重複したデータになってしまうという問題が生じます。さらに、問題が発生した場合、適切なチームに警告するために、いくつのシステムを更新し、設定する必要があるでしょうか。
Elastic Agentを活用することで、ホストごとに統一された1つのエージェントで、どこからでも、どのシステムからでも、あらゆる種類のデータを簡単に収集することができます。つまり、1つのエージェントで、インストール、設定、拡張を行い、必要なデータをすべて収集することができます。ダッシュボード、ビジュアライゼーション、構造化フィールドを抽出するインジェストパイプラインなど、多くの一般的なサービスやプラットフォームに対応するコンポーネントがすぐに利用できるため、お客様のシステムからElasticにすべてのデータを簡単に統合し、ホリデーシーズンに向けて必要なインサイトを提供することが可能です。
ストレス下のパフォーマンス
ホリデーシーズンに先立って、大手小売業者のほぼすべてが行う重要な準備段階が負荷テストです。負荷テストを行うことで、レッドラインやパフォーマンスの低下が発生する前に、インフラがどの程度のストレスに耐えられるかを把握することができます。小売業者にとって最も避けたいことは、サイトの停止やパフォーマンスの低下でニュースに取り上げられることです。
ほとんどの負荷テストプロバイダーはテスト結果に関する独自のレポートを提供しますが、自社システムでそのデータを利用できるようにしておくことも重要です。そうすれば、参照すべき基準値や、システムの限界に近づいている時期や状況を知るための「レッドライン統計値」を得ることができます。以前、コンテンツ・デリバリー・ネットワークのアカマイで勤務していた際に、ストレステストに備える方法と、休日に備えるために取り組むべきその他の重要な質問について広範囲にわたって書きましたので、ご興味があるかもしれません。
Elastic Observabilityのログ監視、メトリクス、APMなどの機能を活用することで、Webアプリケーションやデータベースが負荷のかかった状態でどの程度機能しているかを監視するために必要な洞察を1つのダッシュボードで収集することが可能になります。APM を使用すると、実行中のすべてのサービスのメトリクス(待ち時間、スループット、トランザクション失敗率)を簡単に表示できるほか、リクエストがインフラストラクチャを通過する際のトレースのパフォーマンスも表示できます。依存関係とサービスマップを使用すると、インフラストラクチャ内のパフォーマンスのボトルネックを迅速に特定できるため、それらのボトルネックにも対処できます。
リアルユーザーエクスペリエンスの測定
すべての小売業者の観察可能性戦略の一部となるべき重要な要素は、そのサイトが実際のユーザーに対してどの程度のパフォーマンスを発揮しているかを測定することです。APM データは確かに全体的なパフォーマンスと健全性の素晴らしい指標となりますが、リアルユーザーモニタリング(RUM)データは、エンドユーザーがブラウザで経験していることをリアルタイムで正確に示してくれます。陳腐な表現ですが、第一印象を決めるチャンスは二度とありません。したがって、特に多くの小売業者が同様のドア・バスター・セールや割引販売を実施する年末年始には、サイトのパフォーマンスを最大限に高めることが不可欠です。
Elastic Observabilityのユーザーエクスペリエンスダッシュボードは、場所、デバイス、オペレーティングシステム、ブラウザのあらゆる組み合わせにおいて、エンドユーザーがどのような体験をしているかを素早く測定できる優れた方法です。コアウェブバイタルのレポート機能により、サイトのパフォーマンスを簡単に確認でき、Largest Contentful PaintやCumulative Layout Shiftのメトリクスに対処する必要があるかどうかを確認できます(ヒント:これらのメトリクスは重要です!)。ユーザー・エクスペリエンスは、APM RUMエージェントまたは数行のJavaScriptで簡単に有効にすることができます。デモサイトをご覧になり、ご自分の目で確かめてください。
IT運用データによるビジネス・メトリックの可視化の価値
上記のセクションでは、インフラストラクチャの健全性、ストレス下でのパフォーマンス、エンドユーザが体験しているパフォーマンスについての洞察をどのように監視できるかについて、多くのことを話してきました。Elasticsearchはあらゆるシステムからあらゆる種類のログデータを取り込むことができるため、販売データ、コンバージョンメトリクスなどのビジネスメトリクスも取り込むことができます。さらに、これらすべてを1つのダッシュボードにまとめることができるのです。
なぜこれが重要なのか?統合のためだけでなく、ウェブサイトが高速であればあるほど、通常、より多くの収益を生み出すからです。パフォーマンス・データとビジネス指標を1つのダッシュボードにまとめることで、新機能の展開やA/Bテストの実行中にエンドユーザーの反応を簡単に判断することができます。さらに重要なこととして、休日には、ビジネス指標と適切なパフォーマンス指標を結びつけて、経営陣がサイバーウィークエンドや休日のパフォーマンスを評価するための1つのビューを持つことができます。
プロからのアドバイス:Canvasでは、美しいビジュアライゼーションを作成してリアルタイムの統計を表示したり、イベント後のサマリーレポートやインフォグラフィックを提供することができます。
アラートとモニタリング
最後に、アラートとモニタリングについて説明します。ホリデーシーズンを成功させるために、多くの部品や複数のチームが動いている中、システムが健全であることを確認するためにダッシュボードを見続けることは困難か、ほとんど不可能です。さらに事態を複雑にするのは、アラートとモニタリング機能が複数のベンダーに分散しており、それぞれが独自の方法を取っていることです。
Elasticsearchは、あらゆる種類のログデータを取り込むことができるため、単一のシステムですべてのデータに対してアラートを出すことができます。アラートは、IBM QRadar、ServiceNow、PagerDuty、Slack、JIRA、Microsoft Teamsなど、多くの人気ベンダーに送信して、インシデント管理に利用できます。Webhookを設定して、独自のカスタムエンドポイントにアラートを送信することも、単に電子メールを使用することも、簡単に行うことができます。
アラートのトリガーとなる特定の閾値を設定できるだけでなく(例えば、HTTPリクエストが多すぎる、または速すぎる、CPUの使用率が限界に達したなど)、Elasticsearchの機械学習機能を活用して、どの閾値を設定するかを決定しなくても自動的に異常な動作を検出してチームに警告を出すことができます。Elastic独自の機械学習アルゴリズムを活用することで、数値やカウントの時間的なズレ、通常とは異なる地域から発生した売上、統計上のレアリティなどを簡単に検出することができます。
ホリデーシーズンに向けて
サイバーウィークエンド、そして一般的なホリデーシーズンに向けて、避けられない交通渋滞に備える一方で、すべてを一人で抱え込む必要はないことを知っておくことが重要です。この時期は通常、動く部分が多くストレスがたまるので、チームがすべてのボックスをチェックするための時間とリソースを確保するのは難しすぎるかもしれません。
エラスティックのコンサルティングとアドバイザリーサービスの専門知識を駆使して、お客様がホリデーシーズンを成功させるために必要な見識を身につけられるよう、適切な計画を立てるお手伝いをさせていただきます。皆様のご多幸をお祈りいたします。
10/26開催予定のウェビナー
CI/CDのオブザーバビリティとOpenTelemetryでソフトウェアデリバリーを改善
概要
継続的なインテグレーションと継続的なデリバリー(CI/CD)は組織における重要なプロセスですが、最新の観測機能による可視性とそのインサイト情報が不足している場合が多くありました。エラーが特定できないため、デバッグに多くの時間を費やし、開発者の生産性を低下させ、イノベーションを遅らせる結果になっているのが現状です。
このオンラインイベントでは、DevOpsチームがCI/CDオブザーバビリティを実装して、ビルドパイプラインとプラットフォームの問題のトラブルシューティング、パイプラインパフォーマンスの最適化、セキュリティ監査とプロセス監査の実行、トレーサビリティの追加を実現する方法を紹介します。OpenTelemetryが、Jenkins、Maven、Ansibleといった非常に一般的なツールに対して、どのようにターンキーのオブザーバビリティを提供するのかを解説。
そして、ElasticオブザーバビリティがどのようにJenkinsの信頼性とスケーラビリティを向上させるかも紹介します。
主な内容:
Jenkinsと自動化テストによるCI/CDプラットフォームの監視とトラブルシューティング
OpenTelemetryとElasticによるCI/CDオブザーバビリティアーキテクチャー(カスタムDevOpsやPrometheusなどの他ツールとの柔軟な組み合わせを含む)
CI/CDワークフローのパフォーマンス最適化(SpringBoot/Maven/Snyk/Dockerアプリケーションのパイプラインを使用)
生成された成果物の部品表のトレーサビリティ
JenkinsパイプラインのログをElasticに保存する方法
詳細・ご登録はこちら