174 Views
May 31, 22
スライド概要
https://www.elastic.co/jp/virtual-event/developer-advocate-series-1
デベロッパー アドボケート ウェビナーシリーズ (Vol.1) VMware、Microsoft、Elastic - Java 18、Azure Spring Cloud そしてElastic x Azure Spring Cloudコラボレーションの最新技術情報
FPT ジャパン エグゼクティブエバンジェリスト 独立行政法人 国立印刷局 デジタル統括アドバイザー兼最高情報セキュリティアドバイザー Microsoft で13年間、テクニカルエバンジェリストとして .NET、C#、Visual Studio、Windows、iOS、Android、Microsoft Azure 等の開発者向け技術啓発活動 (DevRel) 。Dell、Accenture、Elastic、VMware 等での DevRel 後、2024年11月1日より現職で DevRel 活動を開始。NVIDIA との戦略的協業 AI GPU クラウド、Azure/AWS/GC 上の AI &データ関連サービスのマーケティング、プリセールス、教育、関連新規サービス開発。元内閣官房 IT 総合戦略室 政府 CIO 補佐官(兼務)、元デジタル庁 ソリューションアーキテクト(兼務)。
デベロッパー アドボケート ウェビナーシリーズ (Vol.1) VMware、Microsoft、Elastic - Java 18、 Azure Spring Apps そして Elastic x Azure Spring Apps コラボレーションの最新技術情報
Elastic x Microsoft Azure 統合の進化 : Spring Boot アプリケーション⽤の統合監視 鈴⽊ 章太郎 Elastic テクニカルプロダクトマーケティングマネージャー/エバンジェリスト デジタル庁 省庁業務グループ ソリューションアーキテクト
Shotaro Suzuki Twitter : @shosuz Elastic Technical Product Marketing Manager/Evangelist デジタル庁 省庁業務グループ ソリューションアーキテクト 元 Microsoft Technical Evangelist
• アジェンダ • • • • Elastic 概要 Observability と APM Elastic x Azure 統合による Observability と APM の進化 Azure Spring Apps との統合 まとめ
Elastic 概要
The Elasticsearch Platform In a world where endless data creates endless possibility, search helps people and organizations thrive. Enterprise Search Observability Security Kibana Explore, Visualize, Engage Elasticsearch Store, Search, Analyze Integrations Connect, Collect, Alert Public cloud Hybrid On-premises
Observability と APM
開発者にありがちな信頼性の捉え⽅
開発者にありがちな信頼性の捉え⽅
デプロイした後は、コードをテストしない デプロイメント コードの不具合 メモリガベージ コレクション 同時接続 キャッシュのヒット とハズレ システムのテストをしている Network 不具合 ディストロ、 カーネル、OSの バージョン スケジューラと そのクセ クロックシンクの 問題 コードレース 条件 クライアントの バックオフ、 リトライ
「機械に限界まで負荷をかけ、それを維持しようとするならば、 その限界はどこなのか、ある程度⾒極めなければならない。 外を⾒てごらん。あそこには完璧なラップがある。ミスは許され ない。すべてのギアチェンジ、すべてのコーナー。完璧に。 」ケン・マイルズ
分散型トレースによるレスキュー
しかし、サービスが同期でない場合はどうでしょうか︖ REST API Analytics
マイクロサービスアーキテクチャの採⽤はメリットも多いが、 同時に問題発⽣時の根本的な原因を⾒つけるのが難しくなる
Three pillars of observability Metrics Logs Traces ⼈、 プロセス、 ツール ⼈、 プロセス、 ツール ⼈、 プロセス、 ツール
可能な限りオープンスタンダードを使⽤する https://openTelemetry.io
Elastic の特⻑ • あらゆる種類のテレメトリーデータに対応する シングルエージェント • 全エージェントを対象とした集中管理および ポリシー設定 • OpenTelemetry のサポート • 豊富な可視化機能とデータ探索機能により、 すぐに使える分析、その場限りの分析が可能
Architecture of The Gallivant Web Shop DevOps Engineer React Client SecOps Engineer Search Cart End user Catalog Ordering Internet Marketer End user Actions Checkout Monitoring … Public Cloud Backend micro services Ship metrics & logs Elastic Stack
Elastic x Azure 統合による Observability と APM の進化
Azure x Elastic Deep Integration https://azure.microsoft.com/ja-jp/overview/linux-on-azure/elastic/#overview 運⽤を簡素化し、お客様の Azure 環境を最⼤限 に視覚化 Evaluate Requirements Customer Engagement • Azure 上のお客様のインフラストラクチャ、アプリ、 データの正常性、パフォーマンス、セキュリティを 監視する⽅法を効率化 • Azure portal 内で Elasticsearch の検索、 デプロイ、管理を簡単に⾏えるため、お客様が 必要なスピード、スケール、関連性を得られ、 お客様はビジネスに集中が可能 • Elastic on Azure でお客様のアプリや IT の検 索、分析、セキュリティを実現するには、こちらのソ リューション ガイドをお読みください Build Together Elastic Grow Extend Support
Elastic on Azure ネイティブ統合のメリット • Azure における Elastic のネイティブ統合は、 Elastic on Azure を使い始めるための最も簡単 で迅速な⽅法 • Azure の Spring Cloud ログや APM データを Elastic へすばやく送信し、データがオンプレミス、 マルチクラウド、ハイブリッドクラウド環境のどこに あっても、あらゆる種類のデータに、どこからでも、 必要なときにアクセスできる • 全体像を把握することで、Spring Boot アプリ ケーションのクラウドへの移⾏を効率化できる • Elastic Cloud によってセキュリティ、メンテナンス、 維持管理が⾏われるため、お客様は視覚化の向 上、運⽤の改善、サイバー回復性の強化によりビ ジネスを推進することができる
Elastic でログやメトリクスを分析し Spring Boot アプリケーションを監視 • Azure Spring Apps は、Microsoft と VMware が共同で作成、運⽤、サポート • Spring Boot アプリケーション向けフルマネージド サービスで、インフラストラクチャと Spring Cloud ミドルウェア管理にかかる⼿間が省かれる • ビジネス ロジックの作成に集中することができ、 Azure に動的スケーリング、パッチ、セキュリティ、 コンプライアンス、⾼可⽤性の管理を任せられる • Azure Spring Apps のプロビジョニング、アプリ ケーションの作成、デプロイ、Spring Boot アプリ ケーションのスケーリングまで、数分で監視を開始 できる
Azure Spring Apps との統合
Spring Boot アプリケーションのインストルメント化 • “プロビジョニング” ⾃動化を実⾏すると、Elastic の Terraform または ARM Template を使⽤して作成 およびデプロイした新しいアプリケーションのインストルメント化と監視を完全に⾃動で⾏うことができる • Azure コマンド ライン インターフェイス (CLI) を使⽤してオンデマンドで実⾏することで、より⾼い柔軟性と制御 が可能になる Azure CLI (コマンドライン インターフェイス) を使⽤して Elastic インストルメント化を設定する例
Azure Spring Apps ログとの統合 • • • • Spring Boot は Java アプリケーションで 最も使⽤されているフレームワーク Azure Spring Apps という完全な マネージドサービスが Marketplace で提供 Elastic ユーザーは Azure Spring Apps から Elastic Cloud にシステム、コンソール、 およびアプリケーションログを取り込める Spring Boot アプリで発⽣する問題を継続 的に監視およびデバッグできる https://docs.microsoft.com/ja-jp/azure/springcloud/how-to-elastic-diagnostic-settings
Azure Spring Apps ログを Elastic に送る • ネイティブ統合により、Elastic Observability ソリューションにログをシームレスに送信することができる • Elastic にデータが取り込まれたら、お客様はすぐに視覚化やダッシュボードを作成して分析を開始できる Azure Spring Apps Service の診断設定ブレード
Spring Boot アプリケーションのパフォーマンスを分析する • Spring Boot アプリケーションにインストル メント化を⾏い、ログを出⼒したら、Elastic Observability を使⽤してデータの監視、 分析、検索を⾏うことにより、アプリケーションの パフォーマンスを維持することができる • Elastic Observability 内で Azure Spring Apps ダッシュボードを使⽤すること で、Azure Spring Apps のログからすぐに 分析情報を得ることができる Elastic Observability のAzure Spring Apps Service のログをすぐに利⽤できるダッシュボード
Elastic APM を使って Spring Boot Application を分析・監視 • Elastic アプリケーションパフォーマンス監視 (APM) を使⽤すると、アプリケーションのパフォーマンスデータを 分析および検索できる Elastic Observability → APM → Service Map
Elastic APM を使⽤して Java Virtual Machine (JVM) のメトリクスを⾒る • ヒープメモリ使⽤量、システムメモリ使⽤量、CPU 使⽤量などを把握し、根拠に基づいた容量計画の判断が できるようになる Customer Service に関する Elastic APM での JVM メトリック
Elastic APM の分散トレース機能を活⽤ • アプリケーションのパフォーマンスをさらに掘り下げ、どのトランザクションが顧客に最も影響を与え、そのトランザクションが どこで最も時間を消費しているかを理解することができる Elastic APM における顧客サービスの GET オーナー操作の分散トレース
機械学習で異常を⾃動検知 (Anomaly Detection) • Elastic の組み込み機械学習機能により、 Azure Spring Apps のデータから新しい分析 情報を抽出することは、ボタンをクリックすると同じ くらい簡単に機械学習を実⽤化できる • Elastic Stack によってデータが取り込まれる際 に処理が⾏われるため、根本的な原因を特定し たり、あらゆるイベントにコンテキストを追加するた めに必要なメタデータを確実に取得できる。データ ビジュアライザー等の組み込みツールにより、ジョブ を⾒つけたり、データの中から機械学習と相性の 良いフィールドを特定したりできる • Elastic Observability の豊富なアラート機能 と異常検知機能により、ログと APM データから 実⽤的な分析情報を導き出すことができる。 たとえば、Azure Spring Apps 内のアプリ ケーションの応答時間における不規則なログ 速度や異常な動作を発⾒できる Anomaly Explorer
同じログを使⽤してクラウド スケールで脅威を阻⽌する • Elastic は共通のスキーマと単⼀のリポジトリを提供しているため、Spring アプリケーションやその他のデータ セットから得られる同じ監視データを拡張検知および応答 (XDR) に使⽤することもでき、検知までの平均 時間をゼロに向けて加速できる • Elastic Security によってセキュリティ情報およびイベント管理 (SIEM) とエンドポイント セキュリティが統合 されるため、組織は多様なソースからの⼤量のデータの取り込みと保持、より⻑い期間のデータ保存と検索、 検知と機械学習による脅威ハンティングの強化が可能になる
まとめ
Elastic の特⻑ • あらゆる種類のテレメトリーデータに対応する シングルエージェント • 全エージェントを対象とした集中管理および ポリシー設定 • OpenTelemetry のサポート • 豊富な可視化機能とデータ探索機能により、 すぐに使える分析、その場限りの分析が可能
マネージドクラウドサービス です。 サービスとしての Observability︖ https://cloud.elastic.co/registration
Elastic Cloud を 使って戴く理由 クラウドサービスユーザー にとって負担の少ない Elastic オンボーディング ● クラウドサービス事業者の Marketplace から発⾒可能 ● インジェストインフラの管理は 不要 ❏ AWS: Serverless Application Repository (SAR)/AWS Cloud Watch ログ⼊⼒対応 ❏ AWS S3 Storage Lens 統合、他 ❏ Google Cloud: PubSub/DataFlow/ BigQuery/Firebase 他 Azure: Portal 統合/ SSO/VM extensions/ Spring Cloud 統合、他
リソース • GitHub で MS Learn モジュールまたはマイペースで進められるワークショップを使⽤する⽅法について確認する • Azure Spring Apps でソリューションを実装する⽅法についての詳細情報 • Spring Petclinic アプリケーションの頒布バージョンのデプロイ • 企業のベスト プラクティスを活⽤した Spring Boot アプリケーションのデプロイ - Azure Spring Apps 参照アーキテクチャ • Spring Boot、Spring Cloud、Tomcat アプリケーションを Azure Spring Apps に移⾏する • Azure サービスと連携するための Spring アプリケーションの接続 • Elastic APM Java エージェントで Spring Boot アプリを監視する⽅法 • 診断設定を使⽤して Elastic (ELK) でログを分析する • Azure-Samples/spring-petclinic-microservices • Elastic on Azureのデプロイと管理⽅法
IT Media Cloud Native Week 2022 Summer 2022/6/22 https://enq.itmedia.co.jp/on24u/form/cnw2206?partnerref=itm_atit_ev#keynote2 Elastic 最新バージョンを使って Web・モバイルアプリ開発をしてみよう︕ Elastic 8.x を使った Web・モバイルアプリ開発について、各種パブリッククラウドと連携したデモを交えて、ご紹介していきます。
Thank you for your attention!