サーバの可視性のためのマシンエージェントの設定
サーバの可視性のデフォルト設定を変更できます。このページでは、構成可能な設定とそのデフォルト値について説明します。
構成ファイル <machine-agent-home>/extensions/ServerMonitoring/conf/ServerMonitoring.yml を編集します。
YML ファイルの編集
YML ファイルを編集する場合は、次のようにします。
ServerMonitoring.ymlまたは他のYMLファイルに変更を行う場合、変更したファイルが標準YML構文ルールを満たしていることを確認します。次のYMLの重要な推奨事項に従ってください。- タブ文字は含めない。フィールドをインデントする場合、空白文字のみ使用してください。
- 同じレベルのエントリをインデントするには、正確に同じ数の空白文字を使用する。
- ファイルを編集するには、WYSIWIG エディタではなく、プレーンテキストエディタを使用する。コンテンツを表示するには、固定幅/等幅フォントを使用する。
- 必ず UTF-8 エンコーディングを使用して保存する。
- オンラインの
YML構文テスターを使用して、編集したファイルをテストして確認する。
YMLファイル内の設定を編集する最も安全な方法は次のとおりです。- 編集する行をコピーして、そのコピーを新しい行に貼り付ける。必ず行全体を選択し、コピーして貼り付けてください。
- 必要に応じて元の行をコメントアウトし、コピーを編集する。
- このファイルで正規表現を追加または編集する場合は、オンラインの正規表現テスターを使用して正規表現をテストして確認する必要があります。
- このファイルに変更を加えて設定を変更する前に、このページのオプションの説明とファイル内のコメントを入念に確認してください。
- エージェントは、エージェント設定プロパティの変更に応じて動的に更新されるため、このファイルを更新した後、エージェントの再起動は不要です。
サーバの可視性の構成可能な設定
| 設定 | 説明 | |
|---|---|---|
|
basicEnabled |
マシンエージェントが SIM 拡張機能を使用して基本メトリックをレポートするかどうかを示します。Sigar を使用して基本メトリックをレポートするには、これを デフォルト = | |
|
volumeMonitorConfig: maxNumberVolumes |
N 個を超えるボリュームをレポートしない(N = デフォルト = 5 警告: この設定を変更することで、デプロイメントのリソース消費に影響を及ぼす場合があります。この設定を増やす前に、アプリケーション環境およびコントローラが増加したリソース要件を処理できることを確認してください。
| |
|
volumeMonitorConfig: whitelistSelectorRegex |
この正規表現と一致する名前を持つボリュームは、maxNumberVolumes で指定された最大値まで常にレポートされます。 デフォルト = "" | |
|
volumeMonitorConfig: blacklistSelectorRegex |
この正規表現と一致する名前のボリュームは除外されます。この設定は、無関係なメトリックをフィルタリングして除外する場合に役立ちます。 ボリューム名がブロックリストと許可リストの両方の正規表現に一致する場合、maxNumberVolumes で指定された最大値までそのネットワークのメトリックがレポートされます(許可リストが優先されます)。 デフォルトの ServerMonitoring.yml ファイルには、volumeMonitorConfig:whitelistSelectorRegex フィールドは含まれません。 | |
|
volumeMonitorConfig: samplingInterval |
Linux でボリュームメトリックを収集するためのカスタムサンプリング間隔を指定します。 デフォルト = 3000 | |
|
networkMonitorConfig: maxNumberNetworks |
N 個を超えるネットワークをレポートしない(N = デフォルト = 5 警告: この設定を変更することで、デプロイメントのリソース消費に影響を及ぼす場合があります。この設定を増やす前に、アプリケーション環境およびコントローラが増加したリソース要件を処理できることを確認してください。
| |
|
networkMonitorConfig: whitelistSelectorRegex |
この正規表現と一致する名前を持つネットワークは、maxNumberNetworks で指定された最大値まで常にレポートされます。 1 つ以上の仮想ネットワークのメトリックをレポートするには、仮想ネットワーク名に一致する正規表現を指定します。 Solaris でプロセスメトリックを収集する場合、マシンエージェントは、各プロセス名と引数リストの最初の 80 文字だけを観測してキャプチャします。これは、エージェントが許可リストを適用するときに、各プロセス文字列の最初の 80 文字のみを考慮することを意味します。 デフォルト = "" | |
|
networkMonitorConfig: blacklistSelectorRegex |
この正規表現と一致する名前のネットワークは除外されます。この設定は、無関係なメトリックをフィルタリングして除外する場合に役立ちます。 ネットワーク名がブロックリストと許可リストの両方の正規表現に一致する場合、maxNumberNetworks で指定された最大値までそのネットワークのメトリックがレポートされます(許可リストが優先されます)。 デフォルトの正規表現では、仮想ネットワークが除外されます。1 つ以上の仮想ネットワークのセットをモニターするには、whitelistSelectorRegex blacklistSelectorRegex を編集します。 Solaris でプロセスメトリックを収集する場合、マシンエージェントは、各プロセス名と引数リストの最初の 80 文字だけを観測してキャプチャします。これは、エージェントがブロックリストを適用するときに、各プロセス文字列の最初の 80 文字のみを考慮することを意味します。 デフォルト = "^veth.*|^vnet.*" | |
criticalProcessSelectorRegex |
一部のシナリオでは、リソースの消費やその他の除外基準に関係なく、特定の重要なプロセスを常にマシンエージェントでモニターすることが重要です。criticalProcessSelectorRegex Examples: 1. 部分文字列の一致:criticalProcessSelectorRegex:"redis|postgres|nginx|mysql|apache2|httpd|java|python|node" :この正規表現は、コマンドラインに指定されたキーワード(redis、postgres など)のいずれかが含まれているすべてのプロセスに一致します。 :コマンドラインでの部分一致に基づいてプロセスをモニターするには、この形式を使用します。 2. 単語全体の一致:criticalProcessSelectorRegex: "\b(redis|postgres|nginx|mysql|apache2|httpd|java|python|node)\b" :この正規表現により、プロセス名の完全一致のみが重要と見なされます。 :部分一致を防ぎ、単語全体を一致させるには、この形式を活用します(例:redis、redis-server ではありません)。 注:
| |
|
defaultProcessClassSelector |
class_selector_regex に基づくデフォルトの「クラスセレクタ」。この正規表現が定義されていて、プロセスのコマンドラインで一致が見つかった場合、クラス名は、コマンドラインのその正規表現の最初のグループオカレンスとなります。 デフォルト = "" | |
|
processClassSelectorRegexList |
例:
マシンエージェントは、次のようにプロセスをクラスに割り当てます。
次のステップは、このリストを更新するための推奨ワークフローの概要です。
| |
|
samplingInterval |
メトリックデータを収集する頻度を示します。単位はミリ秒です。 デフォルト = 30000(30 秒) | |
|
maxClassIdLength |
プロセスクラス名の最大長を指定します。指定された最大値よりも長いプロセスクラス名はすべて切り詰められます。プロセスクラス名のグローバルな最大値は 100 です。この変数が 100 よりも大きい値に設定されている場合、プロセス名は 100 に切り詰められます。 デフォルト = 50 | |
|
processSelectorRegex |
マシンエージェントでモニタする必要があるプロセスを指定する正規表現を含めます。正規表現は、プロセスを開始するために使用された完全なコマンドラインと比較されます。 デフォルトの正規表現では、コマンドラインが閉じ角カッコ(「]」)で終わるすべてのプロセスが除外されます。 Linux の場合、プロセスの引数が見つからないことは、通常はカーネルプロセスであることを意味します。 Windows の場合、角カッコ文字で終了するプロセスはないため、正規表現には Windows 上のすべてのプロセスを含める必要があります。 デフォルト = ""^.+[^]]$"" | |
|
minLiveTimeMillisBeforeMonitoring |
マシンエージェントによってモニタされる前に、プロセスが稼働している必要がある最小時間を指定します。これは、短時間のプロセスをモニタすることによって、マシンエージェントが過負荷になることを防ぐために使用します。単位はミリ秒です。 デフォルト = 60000(60 秒) | |
|
maxNumberMonitoredClasses |
マシンエージェントがモニタするプロセスクラスの最大数を指定します。 レポートされるプロセスは、processSelectorRegex によって指定された正規表現と一致する CPU とメモリを最も多く使用するプロセスです。 デフォルト = 20 警告: この設定を変更することで、デプロイメントのリソース消費に影響を及ぼす場合があります。この設定を変更する前に、アプリケーション環境およびコントローラが増加したリソース要件を処理できることを確認してください。
| |
defaultDiskSectorSize |
マシンエージェントがセクターサイズを判別できない場合の、各ディスクのデフォルトのセクターサイズ(バイト単位)を指定します。この値は、ディスクの読み取り/書き込みバイト数を計算するために使用されます。 デフォルト = 512 | |
memoryMonitorConfig |
Linux でメモリメトリックを収集するためのカスタムサンプリング間隔を指定します。 デフォルト = 3000 | |
|
cpusMonitorConfig |
Linux で CPU メトリックを収集するためのカスタムサンプリング間隔を指定します。 デフォルト = 3000 | |
tag |
個々のサーバのユーザ定義タグのリスト。これらのタグを使用して、関連するサーバの照会、フィルタ処理、集約、および比較を行います。「サーバーのタグ付け」を参照してください。
各タグは、
key-valueペアによって指定します。最大 127 の Unicode 文字のタグ名と、最大 255 の Unicode 文字のタグ値を定義できます。各キーを別々の行に定義します。すべてのキーと値の文字列は、引用符で囲む必要があります。キーに複数の値がある場合は、カンマを使用してリストを指定します。<key>: [ <value> ] tags: 'Location': ['NYC', 'Data Center', 'Server Room 7'] 'Environment': ['preProduction'] | |
| urlMonitorConfig | 監視対象の URL のリストと、Linux で CPU メトリックを収集するためのカスタムサンプリング間隔を指定します。例: |
Docker の可視性の設定
「Docker の可視性の設定」を参照してください。
プロセスの制限
これらの追加の構成可能な設定は、コントローラ管理 UI で使用できます。
-
1 つのクエリに対して UI に表示されるプロセスの合計数は、コールごとに 5000 プロセスです。
-
アカウントごとに追跡されるプロセスの合計数。デフォルト値は、アカウントごとに 10000 プロセスです。
「サーバーの可視性のコントローラ設定」を参照してください。