4.3. Object Service ダッシュボードのモニターリングの有効化

OpenShift Container Storage 4.6 の Object Service ダッシュボードで Object Gateway (RGW) メトリクスを表示するには、モニターリングを有効にする必要があります。Object Service ダッシュボードの詳細は、 Object Service dashboard indicators および Metrics in the Object Service dashboard を参照してください。

前提条件

  • OpenShift Container Platform クラスターを 4.6.z の最新の安定したリリースに更新する場合は、クラスターの更新 を参照してください。
  • OpenShift Container Storage Operator がバージョン 4.6 にアップグレードされます。詳細は、Enabling automatic updates for OpenShift Container Storage operator in external mode または Manually updating OpenShift Container Storage operator in external mode を参照してください。
  • Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが付いていることを確認します。
  • Status カードの Object Service で、Object Service および Data Resiliency の両方が Ready 状態 (緑のチェックマーク) にあることを確認します。
  • Red Hat Ceph Storage には Ceph Dashboard がインストールされ、設定されている必要があり、Ceph Manager Prometheus エクスポーターにポート 9283 を使用する必要があります。

手順

  1. Ceph クラスターの詳細を更新および抽出するための python スクリプトをダウンロードします。

    1. OpenShift Web コンソールで Operators → Installed Operators をクリックし、インストールされた Operator を表示します。
    2. Installed Operators ページで、インストールされた OpenShift Container Storage Operator の Provided APIs 列で Storage Cluster リンクをクリックします。
    3. Create Storage Cluster をクリックします。
    4. ModeExternal に選択します。
    5. Connect to external cluster セクションで、Download Script リンクをクリックして、Ceph クラスターの詳細を抽出するために python スクリプトをダウンロードします。
    6. ストレージクラスターがすでに作成されているので Cancel をクリックします。
  2. Red Hat Ceph Storage クラスターの OpenShift Container Storage クライアントのパーミッション制限を更新します。

    1. RHCS 管理者に問い合わせた上で、Red Hat Ceph Storage クラスターノードでダウンロードした python スクリプトを実行します。
    2. スクリプトを実行するには、以下を実行します。

      # python3 ceph-external-cluster-details-exporter.py --upgrade --run-as-user=<client_name_used_for_OCS_4.5_install>

      --run-as-user は、OpenShift Container Storage 4.5 のデプロイメント時に使用されるクライアント名を指定します。このオプションが OpenShift Container Storage 4.5 のデプロイメント時に使用されない場合、デフォルトのクライアント名 client.healthchecker が設定されます。

      ユーザーの更新されたパーミッションは以下のように設定されます。

      caps: [mgr] allow command config
      caps: [mon] allow r, allow command quorum_status, allow command version
      caps: [osd] allow rwx pool=default.rgw.meta, allow r pool=.rgw.root, allow rw pool=default.rgw.control, allow rx pool=default.rgw.log, allow x pool=default.rgw.buckets.index
  3. Object Service ダッシュボードのモニターリングを有効にするには、モニターリング情報を openshift-storage namespace の外部シークレット rook-ceph-external-cluster-details に追加する必要があります。シークレットを更新する方法は 2 つあります。

    • CLI を使用してシークレットを更新する場合は、この Red Hat ナレッジベースアーティクル を参照してください。
    • OpenShift Web コンソールからシークレットを更新するには、以下の手順に従います。

      1. 手順 1v でダウンロードしたスクリプトを実行します。

        # python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name <rbd block pool name> --monitoring-endpoint <ceph mgr prometheus exporter endpoint> --monitoring-endpoint-port <ceph mgr prometheus exporter port> --run-as-user <client_name_used_for_OCS_4.5_install>  [optional arguments]

        monitoring-endpoint は、OpenShift Container Platform クラスターから到達できるアクティブな ceph-mgr の IP アドレスです。

        monitoring-endpoint-port--monitoring-endpoint で指定された ceph-mgr Prometheus エクスポーターに関連付けられるポートです。ポート 9283 のみが OpenShift Container Platform 4.6 でサポートされます。

        注記

        monitoring-endpoint および monitoring-endpoint-port を除くオプション引数を含むすべてのパラメーターが、外部モードでの OpenShift Container Storage 4.5 のデプロイメント時に使用したパラメーターと同じであることを確認します。

      2. 前の手順でスクリプトを実行した後に生成された JSON 出力を保存します。出力例:

        [{"name": "rook-ceph-mon-endpoints", "kind": "ConfigMap", "data": {"data": "xxx.xxx.xxx.xxx:xxxx", "maxMonId": "0", "mapping": "{}"}}, {"name": "rook-ceph-mon", "kind": "Secret", "data": {"admin-secret": "admin-secret", "fsid": "<fs-id>", "mon-secret": "mon-secret"}}, {"name": "rook-ceph-operator-creds", "kind": "Secret", "data": {"userID": "client.healthchecker", "userKey": "<user-key>"}}, {"name": "rook-csi-rbd-node", "kind": "Secret", "data": {"userID": "csi-rbd-node", "userKey": "<user-key>"}}, {"name": "ceph-rbd", "kind": "StorageClass", "data": {"pool": "ceph-rbd"}}, {"name": "monitoring-endpoint", "kind": "CephCluster", "data": {"MonitoringEndpoint": "xxx.xxx.xxx.xxx", "MonitoringPort": "xxxx"}}, {"name": "rook-csi-rbd-provisioner", "kind": "Secret", "data": {"userID": "csi-rbd-provisioner", "userKey": "<user-key>"}}, {"name": "rook-csi-cephfs-provisioner", "kind": "Secret", "data": {"adminID": "csi-cephfs-provisioner", "adminKey": "<admin-key>"}}, {"name": "rook-csi-cephfs-node", "kind": "Secret", "data": {"adminID": "csi-cephfs-node", "adminKey": "<admin-key>"}}, {"name": "cephfs", "kind": "StorageClass", "data": {"fsName": "cephfs", "pool": "cephfs_data"}}, {"name": "ceph-rgw", "kind": "StorageClass", "data": {"endpoint": "xxx.xxx.xxx.xxx:xxxx", "poolPrefix": "default"}}]
      3. OpenShift Container Platform Web コンソールの openshift-storage namespace で WorkloadsSecrets に移動し、rook-ceph-external-cluster-details をクリックします。

        Example rook-ceph-external-cluster-details page
      4. Actions ドロップダウンメニューから、Edit Secret をクリックします。
      5. Edit Key/Value Secret ページで、Value テキストボックスの横にある Browse をクリックし、以前に保存した JSON ファイルをアップロードします。

        Example Edit Key/Value Secret page
      6. Save をクリックします。

検証手順

  1. OpenShift Web コンソールから HomeOverview をクリックし、 Object Service タブをクリックします。
  2. Status カード で、以下のイメージのように Object Service に緑色のチェックマークが表示されていることを確認します。

    Example of Object Service status verified
  3. Performance カードのドロップダウンから Object Gateway(RGW) を選択し、メトリクスを表示します。

    Example Object Gateway (RGW) metrics
  4. OverviewPersistent Storage タブをクリックし、Status カードで OCS Cluster に緑色のチェックマークが付いていることを確認します。