4.20. クラスターメトリクスの設定
クラスターメトリクスは、自動的にデプロイされるように設定されていません。クラスターインストール時にクラスターメトリクスを有効にするには、以下を設定します。
[OSEv3:vars] openshift_metrics_install_metrics=true
メトリクスのパブリック URL は、クラスターのインストール時に openshift_metrics_hawkular_hostname
Ansible 変数を使用して設定できます。 デフォルト値は以下の通りです。
https://hawkular-metrics.{{openshift_master_default_subdomain}}/hawkular/metrics
この変数を変更する場合は、ホスト名がルーター経由でアクセスできることを確認してください。
openshift_metrics_hawkular_hostname=hawkular-metrics.{{openshift_master_default_subdomain}}
アップストリームの Kubernetes ルールに応じて、eth0
のデフォルトインターフェイスでのみメトリクスを収集できます。
メトリクスをデプロイするために openshift_master_default_subdomain
値を設定する必要があります。
4.20.1. メトリクスストレージの設定
メトリクスに永続ストレージを使用するには、openshift_metrics_cassandra_storage_type
変数を設定する必要があります。openshift_metrics_cassandra_storage_type
が設定されていない場合、クラスターのメトリクスデータは emptyDir
ボリュームに保存されます。 このボリュームは、Cassandra Pod が終了すると削除されます。
テストにより、RHEL NFS サーバーをコンテナーイメージレジストリーのストレージバックエンドとして使用することに関する問題が検出されています。これには、メトリクスストレージの Cassandra が含まれます。そのため、コアサービスで使用される PV をサポートするために RHEL NFS サーバーを使用することは推奨されていません。
Cassandra は複数の独立したインスタンスにより冗長性を提供することを目的として設計されています。そのため、データディレクトリーに NFS または SAN を使用することは適切ではなく、推奨されていません。
ただし、他の NFS/SAN の実装ではこのコンポーネントのサポートやこのコンポーネントへのストレージの提供に関して問題が検出されない可能性があります。OpenShift コアコンポーネントに対して実施された可能性のあるテストに関する詳細情報は、個別の NFS/SAN 実装ベンダーにお問い合わせください。
クラスターインストール時にクラスターメトリクスストレージを有効にするには、次の 3 つのオプションを選択できます。
オプション A: 動的
OpenShift Container Platform 環境がクラウドプロバイダーの 動的ボリュームプロビジョニング をサポートする場合、以下の変数を使用します。
[OSEv3:vars] openshift_metrics_cassandra_storage_type=dynamic
gluster-storage および glusterfs-storage-block などのデフォルトで動的にプロビジョニングされたボリュームタイプが複数ある場合、変数でプロビジョニングされたボリュームタイプを指定できます。以下の変数を使用します。
[OSEv3:vars] openshift_metrics_cassandra_storage_type=pv openshift_metrics_cassandra_pvc_storage_class_name=glusterfs-storage-block
動的プロビジョニングを有効または無効にするために DynamicProvisioningEnabled を使用する方法についての詳細は、Volume Configuration
を参照してください。
オプション B: NFS ホストグループ
次の変数が設定されている場合、NFS ボリュームはクラスターインストール時に [nfs]
ホストグループ内のホストのパス <nfs_directory>/<volume_name> に作成されます。たとえば、以下のオプションを使用した場合、ボリュームパスは /exports/metrics になります。
[OSEv3:vars] # nfs_directory must conform to DNS-1123 subdomain must consist of lower case # alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character openshift_metrics_storage_kind=nfs openshift_metrics_storage_access_modes=['ReadWriteOnce'] openshift_metrics_storage_nfs_directory=/exports openshift_metrics_storage_nfs_options='*(rw,root_squash)' openshift_metrics_storage_volume_name=metrics openshift_metrics_storage_volume_size=10Gi
オプション C: 外部 NFS ホスト
外部 NFS ボリュームを使用するには、該当する NFS ボリュームがストレージホストの <nfs_directory>/<volume_name> パスにすでに存在している必要があります。
[OSEv3:vars] # nfs_directory must conform to DNS-1123 subdomain must consist of lower case # alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character openshift_metrics_storage_kind=nfs openshift_metrics_storage_access_modes=['ReadWriteOnce'] openshift_metrics_storage_host=nfs.example.com openshift_metrics_storage_nfs_directory=/exports openshift_metrics_storage_volume_name=metrics openshift_metrics_storage_volume_size=10Gi
以下のオプションを使用した場合、リモートボリュームのパスは nfs.example.com:/exports/metrics になります。
NFS を使用した OpenShift Container Platform のアップグレードまたはインストール
コアの OpenShift Container Platform コンポーネントでの NFS の使用は推奨されていません。 NFS (および NFS プロトコル) を使用すると、OpenShift Container Platform インフラストラクチャーを設定するアプリケーションに必要な適切な整合性が確保されなくなるためです。
そのため、インストーラーおよび更新 Playbook には、コアインフラストラクチャーコンポーネントで NFS の使用を有効にするオプションが必要になります。
# Enable unsupported configurations, things that will yield a partially # functioning cluster but would not be supported for production use #openshift_enable_unsupported_configurations=false
クラスターのアップグレードまたはインストール時に以下のメッセージが表示される場合、追加の手順が必要になります。
TASK [Run variable sanity checks] ********************************************** fatal: [host.example.com]: FAILED! => {"failed": true, "msg": "last_checked_host: host.example.com, last_checked_var: openshift_hosted_registry_storage_kind;nfs is an unsupported type for openshift_hosted_registry_storage_kind. openshift_enable_unsupported_configurations=True mustbe specified to continue with this configuration."}
Ansible インベントリーファイルで、以下のパラメーターを指定します。
[OSEv3:vars] openshift_enable_unsupported_configurations=True