LogicMonitor が Catchpoint を買収し、LM Envision にインターネットとデジタル エクスペリエンスの洞察を追加しました。

続きを読む

Kubernetes リソースの可視性制限

Kubernetesリソースを過剰に追加すると、サービスの中断やポータルのパフォーマンス低下を引き起こします。LogicMonitorは、プラットフォームのパフォーマンスをサポートし、ユーザーエクスペリエンスを最適化するために、Kubernetesリソースの数に制限を設けています。

LogicMonitor は、バージョン 225 以降でこの制限を適用します。 

Kubernetes リソースの可視性制限を解決するための要件

プラットフォーム全体のリソース制限である 25,000 個に達すると、追加の Kubernetes リソースはシステムによって除外され、プラットフォームに表示されなくなります。

トラブルシューティングを行う前に、次の要件を確認してください。

  • Kubernetes リソースのプラットフォーム全体のデフォルトの制限は 25,000 です。
  • この制限を超える追加の Kubernetes リソースはプラットフォームに表示されません。
  • この制限は、削除されたが保持ポリシーに基づいて保持されているリソースも含め、すべてのリソースに適用されます。

Kubernetes リソースの可視性制限の解決

リソース制限に達し、追加の Kubernetes リソースが表示されない場合は、次の手順を実行します。

  1. リソース保持ポリシーを確認する
    チェック globalDeleteAfterDuration のプロパティ lm-container-configuration.yaml ファイルで現在の保存設定を確認するか、LogicMonitorポータルで設定を確認してください。 kubernetes.resourcedeleteafterduration Kubernetes ルート フォルダー内のプロパティ。

注意: 保持期間を短くすると、リソースの合計数を減らすことができます。

  1. 保存期間を調整する
    現在設定されている保持期間の制限が長すぎる場合は、より適切な値に調整してください。保持期間を短くすると、制限にカウントされる保持(削除)されたリソースの数が減少します。
  2. カスタマーサポートマネージャーにお問い合わせください
    運用上のニーズで 25,000 を超えるリソースしきい値が必要な場合は、カスタマー サクセス マネージャーに連絡して利用可能なオプションについてご相談ください。

Helm インストール コマンドが失敗した場合:

  • インストール中にKubernetes RBACの有効化オプションが正しく選択されていることを確認してください。これはHelm Chartの「enableRBAC」の値を制御します。これはクラスタ内のRBACと一致する必要があります(例: クラスタでRBACが有効になっていない場合、この値はfalseである必要があります)。
  • LogicMonitor APIトークンが有効であり、十分な権限があることを確認してください。
  • Argus&Collectorset-Controllerポッドのログを確認してください

Helm インストール コマンドが成功したが、クラスターが監視に追加されない場合は、次の操作を行います。

  • コレクターグループが追加されたかどうかを確認します。 そうでない場合は、提供されているLogicMonitorAPIトークンに問題がある可能性があります。 LogicMonitor監査ログを使用して、要求が拒否されたかどうかを識別できます。
  • コレクターが正常にインストールされたかどうかを確認します。 コレクターグループが追加されたが、コレクターが正常にインストールされなかった場合は、APIトークンに問題がある可能性はありません。 Collectorのインストールメモリ要件が満たされていない可能性があります。そうでないことを確認してください。 コレクターが正しくインストールされていない場合は、Argus、Collectorset-Controller、およびCollectorポッドのログを確認することもお勧めします。
  • OpenShift を使用している場合は、インストールを有効にするために、コレクターのサービス アカウントの権限を昇格する必要がある場合があります。 これは、次のコマンドで実行できます (デフォルトの名前空間が使用されていると仮定します)。
    oc adm policy add-scc-to-user anyuid system:serviceaccount:default:collector

Helm インストール コマンドが成功し、クラスターが監視に追加されたが、データ収集が機能しない場合は、次の操作を行います。

  • 最新バージョンのデータソースを使用していることを確認してください。 バグ修正と改善を含む新しいバージョンのデータソースを定期的にリリースしています。 新しいバージョンをインポートするには、を参照してください。 この記事
  • 最新バージョンのデータソースを使用してもデータ収集が機能しない場合は、データソースを変更してKubernetes APIの応答とステータスコードを表示し、詳細情報を取得できます。 たとえば、次のスクリーンショットのように、ポッドデータソースを変更して、リクエストとレスポンスの情報を出力し、データ収集の試行中にKubernetesAPIが返すエラーを絞り込むことができます。 これは、データ収集が機能しない理由を特定するのに役立つ場合があります。 
Kubernetes ポッド モーダル

メモリ、CPU、およびエフェメラルストレージが原因でGKEでArgusおよびCollectorset-Controllerポッドをセットアップできない場合は、次の構成を使用します。

  • Argus構成ファイルを使用して、コレクターのリソース制限と要求(メモリ、CPU、エフェメラルストレージ)を設定してください。
    サンプルファイル:
statefulsetspec:
      template:
        spec:                                                                                                                                                                               
         containers:
           - name: collector
           resources:
             requests:
               cpu: 1000m
               ephemeral-storage: 5Gi
               memory: 2Gi

Argus のインストール中に次の gRPC 接続障害が発生した場合:

level=warning msg="Error while creating gRPC connection. Error: context deadline exceeded" argus_pod_id=<pod-id> debug_id=<id> goroutine=1 method=pkg/connection.createGRPCConnection watch=init
  1. 次のコマンドを実行して、ArgusPodシェルにログインします。

    kubectl exec -it <argus_Pod_name> /bin/sh
  1. Argus ポッドと Collectorset-Controller ポッド間の通信を確認します。

    curl http://collectorset-controller:50000
  1. 通信に失敗してエラーが発生した場合は、内部ネットワークポリシーで設定されている制限のパラメータを確認する必要があります。

OpenShift v4.x クラスターでコレクター ポッドが頻繁に再起動し、監視のギャップが発生する場合は、次の操作を行います。

Dockerコレクターは、すべての収集ジョブを実行します。 ただし、OpenShiftにはプロセス数を1024に制限する1024のデフォルトのコンテナーPID制限があるため、この制限は大規模クラスターには不十分です。

を使用して設定を変更できます ContainerRuntimeConfig カスタムリソース。

たとえば、ポッドに次のようにラベルを付けました machineconfigpool キーを使用してPID制限を増やしたい custom-crio と値として custom-pidslimit次に、構成ファイルを次のように変更します。

apiVersion: machineconfiguration.openshift.io/v1
kind: ContainerRuntimeConfig
metadata:
 name: custom-pidslimit
spec:
 machineConfigPoolSelector:
   matchLabels:
     custom-crio: custom-pidslimit
 containerRuntimeConfig:
   pidsLimit: 4096

注意: 適切なPID制限は、コレクターのサイズと監視対象のKubernetesリソースの数によって異なります。ただし、小規模コレクターに設定されているデフォルトのPID制限は、最小で4096です。

ポッドシェルで次のコマンドを入力して、PID制限が有効かどうかを確認することもできます。
cat /sys/fs/cgroup/pids/pids.current

14日間フルアクセス LogicMonitor プラットフォーム