ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントに例の値を使用します。演習を終える際は、これらの値をクラウド環境に固有の値に置き換えてください。
Datadog Observability Pipelinesを使用したOracle Cloud InfrastructureとDatadogの統合
イントロダクション
Oracle Cloud Infrastructure(OCI)は、大規模な企業によって信頼されるInfrastructure-as-a-Service(IaaS)およびPlatform-as-a-Service(PaaS)です。ホスティング、ストレージ、ネットワーキング、データベースなどを含む包括的なマネージド・サービスを提供します。
Oracle Cloud Observability and Management Platformは、顧客の好みに合わせて設計されています。多くは、サードパーティの可観測性ツールを使用して確立された運用プラクティスを採用しています。オラクルの目標は、これらのツールとのシームレスな統合を保証し、お客様がOCIとともに既存の投資を活用できるようにすることです。
Datadogによると、それらのObservability Pipelinesを使用すると、任意のソースから所有または管理するインフラストラクチャ内の任意の宛先にログを収集、処理およびルーティングできます。
Observability Pipelines Workerは、インフラストラクチャで実行されるソフトウェアです。データを集計して一元的に処理し、ルーティングします。OCIログをDatadogに収集するために、Observability Pipelines WorkerソフトウェアはOCIのコンピュート・インスタンスで実行されます。具体的には、可観測性パイプライン・ワーカーは次のことを行います。
- Kafkaソースを使用して、OCIストリーミングからログをプルします。
- ログをDatadogログの宛先にルーティングします。
次の図に示すように、ソリューション・アーキテクチャの高レベル表現。
目的
- Datadog Observability Pipelinesを使用してOracle Cloud InfrastructureとDatadogを統合します。
前提条件
-
OCIのユーザーは、リソースを管理するためにOCIストリーミング、OCIコネクタ・ハブおよびOCIロギング・サービスに必要なポリシーを持っている必要があります。すべてのサービスのポリシー・リファレンスは、ポリシー・リファレンスを参照してください。
-
Datadog Observability Pipeline Workerとして指定されたコンピュート・インスタンスの可用性。詳細は、インスタンスの作成を参照してください。
タスク1: 取得するログの構成
Oracle Cloud Infrastructure Loggingサービスは、テナンシ内のすべてのログに対応した、スケーラビリティの高いフルマネージド型の一元管理ペインです。OCIロギングにより、Oracle Cloud Infrastructureリソースからログにアクセスできます。ログは、特定のコンテキストで収集されたログ・イベントを格納および取得する最重要のOracle Cloud Infrastructureリソースです。ログ・グループは、コンパートメントに格納されたログのコレクションです。ログ・グループは、ログの論理コンテナです。ログ・グループを使用して、Oracle Cloud Infrastructure Identity and Access Management (OCI IAM)ポリシーを適用したり、分析用にログをグループ化したりすることで、ログを編成して管理を効率化します。
開始するには、リソースのログを有効にします。サービスには、リソースで使用できる様々なタイプのログに対応したログ・カテゴリがあります。たとえば、OCI Object Storageサービスでは、ストレージ・バケットに対して次のログ・カテゴリがサポートされます: 読取りおよび書込みアクセス・イベント。読取りアクセス・イベントはダウンロード・イベントを取得し、書込みアクセス・イベントは書込みイベントを取得します。各サービスは、リソースに対して異なるログ・カテゴリを持つことができます。
-
OCIコンソールにログインし、「監視および管理」、「ロギング」および「ログ・グループ」に移動します。
-
コンパートメントを選択し、「ログ・グループの作成」をクリックして、次の情報を入力します。
- 名前:
Datadog_log_group
と入力します。 - 説明(オプション):説明を入力します。
- タグ(オプション):タグを入力します。
- 名前:
-
「作成」をクリックして、新しいログ・グループを作成します。
-
「リソース」で、「ログ」をクリックします。
-
必要に応じて、「カスタム・ログの作成」または「サービスの有効化」ログをクリックします。
たとえば、OCIオブジェクト・ストレージ・バケットの書込みログを有効にするには、ステップに従います:
-
「サービス・ログの有効化」をクリックします。
-
リソース・コンパートメントを選択し、「サービスの検索」に「オブジェクト・ストレージ」と入力します。
-
「ログの有効化」をクリックし、「リソース」でOCIオブジェクト・ストレージ・バケット名を選択します。
-
タスク1.2で作成したログ・グループ(
Datadog_log_group
)および「ログ・カテゴリ」で「アクセス・イベントの書込み」を選択します。必要に応じて、「ログ名」にDatadog_bucket_write
と入力します。 -
「有効化」をクリックして、新しいOCIログを作成します。
-
タスク2: OCIストリーミングを使用したストリームの作成
Oracle Cloud Infrastructure (OCI) Streamingサービスは、開発者とデータ・サイエンティスト向けの、リアルタイムでサーバーレスのApache Kafka互換イベント・ストリーミング・プラットフォームです。ログなど、大量のデータ・ストリームをリアルタイムで取り込んで消費するための、完全に管理されたスケーラブルで耐久性のあるソリューションを提供します。パブリッシュ/サブスクライブ・メッセージング・モデルでデータが継続的かつ順番に生成および処理されるあらゆるユース・ケースにOCIストリーミングを使用できます。
-
OCIコンソールに移動し、アナリティクスとAI、メッセージングおよびストリーミングに移動します。
-
「ストリームの作成」をクリックしてストリームを作成します。
-
次の情報を入力して、「作成」をクリックします。
- 名前:ストリーム名を入力します。このチュートリアルでは、
Datadog_Stream
です。 - ストリーム・プール:既存のストリーム・プールを選択するか、パブリック・エンドポイントを含む新しいストリーム・プールを作成します。
- 保持(時間):このストリームでメッセージを保持する時間を入力します。
- パーティション数:ストリームのパーティション数を入力します。
- 合計書込み率および合計読取り率:処理する必要があるデータの量に基づいて入力します。
テスト用のデフォルト値から始めることができます。詳細は、ストリームのパーティション化を参照してください。
- 名前:ストリーム名を入力します。このチュートリアルでは、
タスク3: OCIコネクタ・ハブの設定
OCI Connector Hubは、Oracle Cloud Infrastructureのサービス間のデータ移動を調整します。OCI Connector Hubは、OCI Logging、OCI Object Storage、OCI Streaming、OCI Logging Analytics、OCI Monitoringなどのサービス間のデータ移動を記述、実行、監視するための一元的な場所を提供します。また、軽量なデータ処理のためにOCI Functionsをトリガーしたり、アラートを設定するためにOCI Notificationsをトリガーすることもできます。
-
OCIコンソールに移動し、「監視および管理」、「ロギング」および「コネクタ」に移動します。
-
「コネクタの作成」をクリックして、コネクタを作成します。
-
次の情報を入力します
- 名前:
Datadog_SC
と入力します。 - 説明(オプション):説明を入力します。
- コンパートメント:コンパートメントを選択します。
- ソース: 「ロギング」を選択します。
- ターゲット: 「ストリーミング」を選択します。
- 名前:
-
「ソース接続の構成」で、「コンパートメント名」、「ログ・グループ」および「ログ」(タスク1で作成したログ・グループおよびログ)を選択します。
-
監査ログも送信する場合は、+Anotherログをクリックして、
_Audit
をログ・グループと置き換えながら同じコンパートメントを選択します。 -
「ターゲットの構成」で、「コンパートメント」および「ストリーム」(タスク2で作成したストリーム)を選択します。
-
デフォルトのポリシーを受け入れるには、各デフォルト・ポリシーに指定された「作成」リンクをクリックします。デフォルト・ポリシーは、このコネクタがソース、タスクおよびターゲット・サービスにアクセスするために必要な認可のために提供されます。
-
「作成」をクリックします。
タスク4: ログを取得するためのアクセス制御
Datadog Observability PipelineによってOCIストリームからデータにアクセスするには、ユーザーを作成し、ログを取得するためのストリームプル権限を付与します。
-
OCIユーザーを作成します。詳細は、ユーザーの管理を参照してください。
-
OCIグループ(
Datadog_User_Group
)を作成し、OCIユーザーをグループに追加します。詳細は、「グループの管理」を参照してください。 -
次のOCI IAMポリシーを作成します。
Allow group <Datadog_User_Group> to use stream-pull in compartment <compartment_of_stream>
ノート:このユーザー詳細は、Datadog Observability Pipeline構成
pipeline.yaml
のストリームからログをプルする場合に使用します。
タスク5: Datadog可観測性パイプラインの構成
-
Datadogポータルにログインし、「統合」、「監視パイプライン」をクリックします。
-
パイプラインを初めて使用する場合は「スタート・ガイド」をクリックするか、「新規パイプライン」をクリックします。パイプライン名を入力し、「次へ」をクリックします。
-
QuickStartパイプライン・テンプレートおよびプラットフォームを選択します。
-
既存のAPIキーを選択するか、新しいAPIキーを作成してインストール・コマンドをコピーします。APIキーは組織に固有です。Datadog Agentがメトリックとイベントを Datadogに送信するには、APIキーが必要です。
-
OCIでObservability Pipeline Workerとして指定されたコンピュート・インスタンスにログインし、次のコマンドを実行してWorkerをインストールします。
スクリプトの実行により、インストール・プロセスのDatadog Observabilityパイプラインのworker.As部分のインストールが開始され、
observability-pipelines-worker
という名前のファイルが、変数DD_API_KEY
、DD_OP_PIPELINE_ID
およびDD_SITE
を使用してディレクトリ/etc/default/
の下に作成されます。 -
構成ファイル
pipeline.yaml
でパスワードを直接指定することは許可されていないため、OCIストリームにアクセスするためのパスワード(タスク4で作成したユーザーの認証トークン)を、別の変数(DD_KAFKA_PW
)として/etc/default/observability-pipelines-worker
ファイルに追加します。 -
次の構成を使用して、
/etc/observability-pipelines-worker/
の下にpipeline.yaml
という名前のファイルを作成します。username
、topics
およびbootstrap_servers
を値に置き換えます。sinks: Datadog_OCI_Logs: default_api_key: ${DD_API_KEY} inputs: - OCI_LOGS site: ${DD_SITE} type: datadog_logs sources: OCI_LOGS: bootstrap_servers: <Bootstrap Servers> group_id: datadog sasl: enabled: true mechanism: PLAIN password: ${DD_KAFKA_PW} username: <username> tls: enabled: true topics: - <OCI_Stream_name> type: kafka
ノート:前述のパラメータは、Kafka接続設定から参照できます。ストリーム・プール詳細ページで、「リソース」に移動し、「Kafka接続設定」をクリックします。
-
Workerを起動するには、次のコマンドを実行します。
sudo systemctl restart observability-pipelines-worker
-
可観測性パイプライン・ワーカーのステータスを確認します。これは実行中である必要があります。
sudo systemctl status observability-pipelines-worker
ノート: Observability Pipeline Workerの起動に失敗した場合は、
/var/log/messages
の下のメッセージでエラーがないか確認します。 -
このステップでは、Datadogコンソールのソースから流入するデータでObservability Pipelines Workerをブートします。Observability Pipelines Workerが稼働している場合は、「パイプラインの表示」をクリックしてパイプラインに移動できます。
OCI Connector Hub、OCI Streaming構成がOCIで設定されている場合、Datadogに流れているログを確認できます。
-
ログをクリックして、OCIから収集されたログを表示します。
次のステップ
このチュートリアルでは、Oracle Cloud Infrastructure (OCI)とDatadogを統合するプロセスを実証しています。セキュリティ情報およびイベント管理(SIEM)側では、重要なメトリックを取得するためのダッシュボードを定義し、事前定義済のしきい値を超えた場合にトリガーするアラートを構成することが不可欠です。また、特定の問合せの定義は、悪意のあるアクティビティを検出し、OCIテナンシ内のパターンを識別するために重要です。これらのアクションにより、セキュリティ・ポスチャがさらに強化され、クラウド環境のプロアクティブな監視が可能になります。
関連リンク
確認
- 著者 - Chaitanya Chintala (クラウド・セキュリティ・アドバイザ)
その他の学習リソース
docs.oracle.com/learnの他のラボをご覧いただくか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。
製品ドキュメントは、Oracle Help Centerを参照してください。
Integrate Oracle Cloud Infrastructure and Datadog using Datadog Observability Pipelines
F96615-01
April 2024