OpenShift モニタリングのインストールおよび設定

ご使用の Docker 環境から OpenShift モニタリングをインストールして設定します。 このセクションで提供される YML コードには Deployment と Daemon のセットが含まれています。 クラスタ インストールで OpenShift モニタリングを使用している場合、クラスタ内の各ノードには、DaemonSet で展開されている 1 つのエージェントが含まれています。 クラスタ内の 1 つのノードには、クラスタ全体の展開および稼働状況をモニタする追加のエージェントが含まれています。 同じコマンドを使用してすべてのエージェントを展開します。 コンテナは特権モードで実行する必要があります。 続行する前に、コンテナを特権モードで実行するために必要なロールを OpenShift 管理者から付与されていることを確認します。 詳細については、OpenShift のドキュメントを参照してください。
apmdevops106
ご使用の Docker 環境から OpenShift モニタリングをインストールして設定します。 このセクションで提供される YML コードには Deployment と Daemon のセットが含まれています。 クラスタ インストールで OpenShift モニタリングを使用している場合、クラスタ内の各ノードには、DaemonSet で展開されている 1 つのエージェントが含まれています。 クラスタ内の 1 つのノードには、クラスタ全体の展開および稼働状況をモニタする追加のエージェントが含まれています。 同じコマンドを使用してすべてのエージェントを展開します。 コンテナは特権モードで実行する必要があります。 続行する前に、コンテナを特権モードで実行するために必要なロールを OpenShift 管理者から付与されていることを確認します。 詳細については、OpenShift のドキュメントを参照してください。
インストールおよび設定
ご使用の環境で OpenShift モニタリングをインストールして設定します。
以下の手順に従います。
  1. 以下の権限を持つ OpenShift ユーザとしてログインします。
    • Daemonset ポッドの作成
    • 特権モードでのコンテナの実行
  2. caapm
    という名前のプロジェクトを作成します
    oc new-project caapm
  3. イメージ ストリームをダウンロードします。
  4. ご使用のプラットフォームに対応する YML ファイルを任意の場所にダウンロードします。
    • CA Application Performance Management をオンプレミスで使用する場合は、 ファイルを使用します。
    • CA Digital Experience Insights Application Performance Management を使用する場合は、
      caagent-openshiftmonitor.yml
      ファイルを使用します。 このファイルは、CA Digital Experience Insights インスタンスのインストール手順に含まれています。
  5. 以下の変数をセットアップ詳細に置き換えます。
    • (CA APM オンプレミス)
      [AGENTMANAGER_URL]
      エージェントまたは Enterprise Manager 接続の詳細 -
      IntroscopeAgent.profile
      で提供されている接続の詳細に似ています。
    • (CA Digital Experience Insights Application Performance Management)
      [AGENTMANAGER_CREDENTIAL]
      SaaS インスタンスに接続するために必要なエージェント マネージャの認証情報
    • [OPENSHIFT_CONNECTION_URL]
      OpenShift 接続の詳細。 これらの詳細を取得するには、
      oc config view
      を実行します。
    • [APITOKEN]
      接続 URL の API トークン。 デフォルト ワークスペースでクラスタリーダ ロールを持つサービス アカウントを作成することにより、このトークンを取得します。 詳細については、「APITOKEN の取得」を参照してください。
    • registry_url
      : OpenShift レジストリの URL。 詳細については、「レジストリ詳細の取得」を参照してください。
  6. (オプション) YML ファイル内の環境変数に加えて、インフラストラクチャ エージェント プロファイル内のプロパティを使用して環境を設定します。 インフラストラクチャ エージェントのプロパティの詳細については、「インフラストラクチャ エージェント プロパティ リファレンス」を参照してください。
  7. インフラストラクチャ エージェント プロパティを環境変数として
    caagent-install.yml
    ファイルに渡すには、2 番目の
    env
    セクションの末尾に変数を追加します。 YML 形式では、プロパティ名に区切り文字「.」は使用できません。 プロパティ名のドットをアンダースコアに置き換える必要があります。 たとえば、エージェント名およびプロキシ サーバを設定するには、
    introscope.agent.agentName
    および
    introscope.agent.enterprisemanager.transport.http.proxy.host
    プロパティを以下のように使用します。
    env:
    - name: agentManager_url_1
    value: [AGENTMANAGER_URL]
    - name: connectionurl
    value: [OPENSHIFT_CONNECTION_URL]
    - name: apitoken
    value: [APITOKEN]
    - name: type
    value: Openshift
    - name: HostMonitoring
    value: disabled
    - name: introscope_agent_agentName
    value: example_agent_name
    - name: introscope_agent_enterprisemanager_transport_http_proxy_host
    value: example_proxy_server.com
  8. (オプション)ホスト モニタをインストールすると、コンポーネント ビュー内のホスト関連情報には
    StorageName
    メトリックが含まれます。 UNIX または Linux システムでは、ストレージ フィルタを設定して、このメトリックに関連付けられているように表示されるマウント ポイントを設定できます。 ストレージ フィルタを設定するには、以下の環境変数を使用します。
    • storage_mount_filter
      StorageName
      メトリックの考慮対象から削除するマウント ポイントを指定するための変数。 1 行に 1 つのマウント ポイント、または 1 行に複数のマウント ポイントをカンマで区切って指定できます。
    • storage_outofbox_filter_enabled
      有効にされている場合、以下のマウントを除外する標準装備のフィルタ。
      • devicemapper/mnt
      • docker/containers
      • docker/devicemapper
      • docker/
      • kubelet/pods
      • openshift.local.volumes
      このフィルタはデフォルトで有効です。 無効にするには、その値を
      no
      に設定します。
    /host/home
    マウント ポイントは非表示にしますが、
    storage_outofbox_filter_enabled
    フィルタでリストされているすべてのマウント ポイントを含めて、標準装備のフィルタを無効化します。 これを行うには、以下のように YML ファイルの最初の環境変数セクションに環境変数を追加します。
    env:
    - name: containerflow
    value: enabled
    - name: agentManager_url_1
    value: [AGENTMANAGER_URL]
    - name: type
    value: Openshift
    - name: interval
    value: "120"
    - name: storage_mount_filter
    value: "/host/home"
    - name: storage_outofbox_filter_enabled
    value: "no"
  9. (オプション)以下の環境変数を使用して、インフラストラクチャ エージェントが実行される JVM の
    xms
    および
    xmx
    パラメータを設定できます。
      • MIN_HEAP_VAL_IN_MB
        デフォルト:
        256
      • MAX_HEAP_VAL_IN_MB
        デフォルト:
        512
    YML ファイルを使用して、Java ヒープの値を更新することができます。 例:
    env:
    - name: containerflow
    value: enabled
    - name: agentManager_url_1
    value: [AGENTMANAGER_URL]
    - name: type
    value: Openshift
    - name: interval
    value: "120"
    - name: MIN_HEAP_VAL_IN_MB
    value: "335"
    - name: MAX_HEAP_VAL_IN_MB
    value: "670"
  10. caagent-openshiftmonitor.yml
    ファイルを保存します。
  11. ファイルを実行します。
    oc create -f caagent-openshiftmonitor.yml
    このファイルによってクラスタ内のすべてのエージェントが展開されます。
  12. ユーザが特権モードでコンテナを実行できるようにポリシーを追加します。
    oc adm policy add-scc-to-user privileged -z default
アンインストール
OpenShift モニタリング拡張機能をアンインストールするには、以下のコマンドを実行します。
oc delete -f caagent-openshiftmonitor.yml
API トークンの取得
API トークンは、サービスへのアクセスを要求しているアプリケーションの一意の識別子です。 YML ファイルには、接続 URL を認証するために OpenShift によって生成された API トークンを含めます。
caagent-openshiftmonitor.yml
で必要な API トークンを取得します。
以下の手順に従います。
  1. Create a Service Account in the
    default
    ネームスペースでサービス アカウントを作成します。
    oc login -u system:admin
    oc project default
    oc create sa caapm
  2. クラスタリーダ ロールを追加します。
    oc adm policy add-cluster-role-to-user cluster-reader system:serviceaccount:default:caapm
  3. トークンを取得します。
    oc sa get-token -n default caapm
レジストリ詳細の取得
レジストリ URL を YML ファイル内に指定するには、docker-registry 詳細を取得する必要があります。
以下の手順に従います。
  1. docker-registry
    サービスを特定します。
    oc login -u system:admin oc get svc -n default
  2. サンプル出力を以下に示します。
    NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE docker-registry 172.30.1.1 <none> 5000/TCP 9d
  3. この例では、registry_url 値は
    172.30.1.1:5000
    です。
エージェント プロパティの使用
一部のエージェント プロパティには、エージェントの設定に使用できるエイリアスがあります。 以下の表の同じ行に記載されているプロパティの機能は同じです。 これらのプロパティは入れ替えて使用できます。
エイリアス プロパティ
説明
デフォルト値
docker.interval.seconds
間隔
com.ca.apm.openshift.monitor.polling.interval
データ収集のレポート間隔を設定します。
120 seconds
type
monitoring.type
com.ca.apm.docker.monitor.type
モニタリング タイプを設定します。
DockerMonitor
containerflow
com.ca.apm.docker.monitor.containerflow
Containerflow モジュールが有効か無効かどうかを示します。
enabled
connectionurl
KUBERNETES_CONNECTION_URL
com.ca.apm.kubernetes.monitor.connection.url
Kubernetes クライアントの接続 URL を示します。
空の文字列値
apitoken
com.ca.apm.kubernetes.monitor.api.token
Kubernetes クラスタに接続するために必要な API トークンを示します。
空の文字列値
k8s_username
com.ca.apm.kubernetes.monitor.username
クラスタ アクセス用の Kubernetes ユーザ名を示します。
空の文字列値
SHOW_METRICS_LEVEL
com.ca.apm.show.metrics.level
Kubernetes モニタリング用のメトリック レベルを示します。
設定可能な値:
full
または
minimum
minimum
DEFAULT_MAX_POD_INSTANCE
メトリック ツリーに表示されるインスタンスの最大数を設定します。 設定された最大値を超えるインスタンスは、メトリック ツリーの[InstanceDefault]ノードの下に表示されます。
デフォルト: 5
  • SHOW_METRICS_LEVEL が
    full
    に設定されている場合、または
    ReadyState
    1
    に設定されている場合、以下のメトリックが表示されます:
    ClusterMonitor
    Container State
    Containers Per Pod
    、および
    Total Containers Ready
  • SHOW_METRICS_LEVEL が full に設定されている場合、または
    Deployment Health
    1
    に設定されている場合、以下のメトリックが表示されます:
    ReadyState
    Available Replicas
    Desired Replicas
    、および
    UptoDate Replicas
    これらのメトリックの詳細については、「OpenShift モニタリング メトリック」を参照してください。