Prometheusノード・エクスポータを使用してメトリックを収集するための管理エージェントの構成

管理エージェントでPrometheusメトリックをスクレイプできるようにするには、構成ファイルを作成する必要があります。

構成ファイルは、エージェントの検出ディレクトリ(/opt/oracle/mgmt_agent/agent_inst/discovery/PrometheusEmitter/)の下に配置する必要があります

検出方向で構成ファイルの存在をエージェントが検出すると、Prometheusメトリックがスクレイピングされます。

構成ファイルに命名規則を使用することが重要です。ファイルのベース名は、スクレーピングされたメトリックを示す必要があり、ファイルの拡張子は.propertiesである必要があります。

ファイルの各行は、propertyName=propertyValueという形式の名前/値のペアです。

検出ディレクトリにファイルが存在すると、モニタリングおよびスクレイピングの現在の設定が示されます。監視が必要なかぎり、そのファイルをディレクトリ内に保持する必要があります。

構成ファイルの作成

ノード・エクスポータによって公開されたすべてのメトリックをpoc_prometheusネームスペースにスクレイプするには、構成ファイルを作成し、すべてのメトリック・データポイントのディメンションとしてnodeNameを指定する必要があります。

$ cat /opt/oracle/mgmt_agent/agent_inst/discovery/PrometheusEmitter/nodeVM1-ol7.properties
# property file scraping all metrics of the node_exporter that has been set up on 10.20.30.40
url=http://10.20.30.40:9100/metrics
namespace=poc_prometheus
nodeName=nodeVM1-ol7
metricDimensions=nodeName
allowMetrics=*
compartmentId=ocidl.compartment.ocl..aaaaaaaa...kovd6xlq
この例では、次を確認します:
  • urlは、IPアドレス10.20.30.40を使用します。ノード・エクスポータが実行されているIPアドレスまたは解決可能なホスト名で置き換える必要があります。
  • compartmentIdはOCID ocidl.compartment.ocl..aaaaaaaa...kovd6xlqを使用します。PrometheusメトリックがポストされるコンパートメントのOCIDに置き換える必要があります。

ハッシュタグ記号(#)で始まる行はコメントとみなされ、無視されます。

前述の構成ファイルが作成され、検出ディレクトリ /opt/oracle/mgmt_agent/agent_inst/discovery/PrometheusEmitter/に配置されると、管理エージェントによって数分で処理され、メトリックはOCIモニタリング・サービスへのフローを開始します。

メトリックをOCIモニタリングにポストするポリシーの作成

  1. 動的グループが作成されたことを確認します。

    ポリシーを作成する前に、必要な動的グループが作成されたことを確認する必要があります。

    たとえば、Management-Agent-Dynamic-Groupという名前の管理エージェント動的グループが、次を使用して作成されていることを確認します:
    ALL {resource.type='managementagent', resource.compartment.id='<AGENT_COMPARTMENT_OCID>'}

    この例では、<AGENT_COMPARTMENT_OCID>はエージェントのコンパートメントOCIDです。

  2. 動的グループのIAMポリシーを作成して、管理エージェント・サービスが、以前に作成した構成ファイルからcompartmentIdプロパティを使用して選択したコンパートメントのOCIモニタリング・サービスに収集されたメトリックをポストできるようにします。

    allow dynamic-group Management-Agent-Dynamic-Group to use metrics in compartment <PROMETHEUS_METRIC_COMPARTMENT_NAME> where target.metrics.namespace = 'poc_prometheus'
    • Management-Agent-Dynamic-Groupは、作成された動的グループの名前です。

    • <PROMETHEUS_METRIC_COMPARTMENT_NAME>は、構成ファイルの作成時にcompartmentIdプロパティを使用してOCIDが提供されたコンパートメントの名前です。構成ファイルの作成を参照してください。

      これは、Prometheusメトリックがポストされるコンパートメントです。

    • poc_prometheusはネームスペースであり、構成ファイルの作成時に指定されたnamespace値と一致する必要があります。

エージェントにポリシー変更を適用するには、エージェントを再起動する必要があります。

ノート

ポリシーが作成されていない場合、またはポリシーが正しく設定されていない場合は、エージェント・ログにHTTP 404 NotAuthorizedエラー・メッセージが表示されます。

構成ファイルのプロパティ

この項では、Prometheusエクスポータを使用してメトリックを収集するために使用できる必須プロパティとオプションのプロパティを示します。

必須プロパティ

構成ファイルを作成する場合は、次のプロパティーが必要です。

名前 ユニット/フォーマット 摘要
URL 文字列 Prometheus Exporterがメトリックを公開するURL。(httpのみ)
ネームスペース 文字列 スキャンされたメトリックをアップロードするOCIモニタリング・ネームスペース。
compartmentId 文字列 スキャンされたメトリックをアップロードするコンパートメントのOCID。

オプション・プロパティ:

構成ファイルでは、次のオプション・プロパティを使用できます。

名前 ユニット/フォーマット 摘要
allowMetrics 文字列- カンマで区切られたメトリック名リスト。 必要なスクレイプされたメトリックの完全なセット。必要に応じて、このプロパティを使用して、アップロードするメトリックのセットを制限します。
接続タイムアウト ミリ秒数。 Prometheus Exporterのエンドポイントに接続するためのタイムアウト。
metricDimensions String - カンマで区切られたプロパティ名リスト。 アップロードされたすべてのデータ・ポイントのディメンションとして使用される固定値として表される、他のユーザー指定のプロパティの名前。
proxy-url 文字列- URL。 Prometheus Exporterのエンドポイントへのアクセスを提供するネットワーク・プロキシのURL (URL必須プロパティ)。
read-data-limit 数値はキロバイトで表します。 送信されるデータの制限は、エージェントの固定制限である400 (KB)を超えないようにしてください。
read-timeout ミリ秒数。 Prometheus Exporterのエンドポイントからレスポンスを読み取るためのタイムアウト。
resourceGroup 文字列。英数字、ピリオド(.)、アンダースコア(_)、ハイフン(-)およびドル記号($)のみが含まれます。 OCIモニタリング・リソース・グループ。

指定した場合、リソース・グループは発行される各メトリックに割り当てられます。

scheduleMins 廃棄間隔(分) 指定した場合、スクレイピングは指定された間隔(分)で行われます。

最小値は1分です。

これが指定されていない場合、デフォルト値は5分です。

ノート: 収集間隔を短くすると、CPUに影響する可能性があります。

例: scheduleMins=1