This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.7.2. OpenShift Container Platform のノードが保持できる Pod の数の見積り
クラスター管理者は、クラスター容量ツールを使用して、現在のリソースが使い切られる前にそれらを増やすべくスケジュール可能な Pod 数を表示し、スケジュール可能な Pod 数を表示したり、Pod を今後スケジュールできるようにすることができます。この容量は、クラスター内の個別ノードからのものを集めたものであり、これには CPU、メモリー、ディスク領域などが含まれます。
7.2.1. OpenShift Container Platform クラスター容量ツールについて リンクのコピーリンクがクリップボードにコピーされました!
クラスター容量ツールはより正確な見積もりを出すべく、スケジュールの一連の意思決定をシミュレーションし、リソースが使い切られる前にクラスターでスケジュールできる入力 Pod のインスタンス数を判別します。
ノード間に分散しているすべてのリソースがカウントされないため、残りの割り当て可能な容量は概算となります。残りのリソースのみが分析対象となり、クラスターでのスケジュール可能な所定要件を持つ Pod のインスタンス数という点から消費可能な容量を見積もります。
Pod のスケジューリングはその選択およびアフィニティー条件に基づいて特定のノードセットについてのみサポートされる可能性があります。そのため、クラスターでスケジュール可能な残りの Pod 数を見積もることが困難になる場合があります。
クラスター容量分析ツールは、コマンドラインからスタンドアロンのユーティリティーとして実行することも、OpenShift Container Platform クラスター内の Pod でジョブとして実行することもできます。これを Pod 内のジョブとして実行すると、介入なしに複数回実行することができます。
7.2.2. コマンドラインでのクラスター容量ツールの実行 リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインから OpenShift Container Platform クラスター容量ツールを実行して、クラスターにスケジュール設定可能な Pod 数を見積ることができます。
前提条件
- OpenShift Cluster Capacity Tool を実行します。これは、RedHat エコシステムカタログからコンテナーイメージとして入手できます。
ツールがリソース使用状況を見積もるために使用するサンプル
Pod
仕様ファイルを作成します。podspec
はそのリソース要件をlimits
またはrequests
として指定します。クラスター容量ツールは、Pod のリソース要件をその見積もりの分析に反映します。Pod
仕様入力の例は以下の通りです。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
手順
コマンドラインでクラスター容量ツールを使用するには、次のようにします。
ターミナルから、RedHat レジストリーにログインします。
podman login registry.redhat.io
$ podman login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスター容量ツールのイメージをプルします。
podman pull registry.redhat.io/openshift4/ose-cluster-capacity
$ podman pull registry.redhat.io/openshift4/ose-cluster-capacity
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスター容量ツールを実行します。
podman run -v $HOME/.kube:/kube:Z -v $(pwd):/cc:Z ose-cluster-capacity \ /bin/cluster-capacity --kubeconfig /kube/config --podspec /cc/pod-spec.yaml \ --verbose
$ podman run -v $HOME/.kube:/kube:Z -v $(pwd):/cc:Z ose-cluster-capacity \ /bin/cluster-capacity --kubeconfig /kube/config --podspec /cc/pod-spec.yaml \ --verbose
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
--verbose
オプションを追加して、クラスター内の各ノードでスケジュールできる Pod の数の詳細な説明を出力することもできます。
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の例では、クラスターにスケジュールできる推定 Pod の数は 88 です。
7.2.3. Pod 内のジョブとしてのクラスター容量ツールの実行 リンクのコピーリンクがクリップボードにコピーされました!
クラスター容量ツールを Pod 内のジョブとして実行すると、ユーザーの介入なしに複数回実行できるという利点があります。クラスター容量ツールをジョブとして実行するには、ConfigMap
オブジェクトを使用する必要があります。
前提条件
cluster-capacity ツール をダウンロードし、これをインストールします。
手順
クラスター容量ツールを実行するには、以下の手順を実行します。
クラスターロールを作成します。
cat << EOF| oc create -f -
$ cat << EOF| oc create -f -
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow サービスアカウントを作成します。
oc create sa cluster-capacity-sa
$ oc create sa cluster-capacity-sa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ロールをサービスアカウントに追加します。
oc adm policy add-cluster-role-to-user cluster-capacity-role \ system:serviceaccount:default:cluster-capacity-sa
$ oc adm policy add-cluster-role-to-user cluster-capacity-role \ system:serviceaccount:default:cluster-capacity-sa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod
仕様を定義し、作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスター容量分析は、
cluster-capacity-configmap
という名前のConfigMap
オブジェクトを使用してボリュームにマウントされ、入力 Pod 仕様ファイルpod.yaml
はパス/test-pod
のボリュームtest-volume
にマウントされます。ConfigMap
オブジェクトを作成していない場合は、ジョブの作成前にこれを作成します。oc create configmap cluster-capacity-configmap \ --from-file=pod.yaml=pod.yaml
$ oc create configmap cluster-capacity-configmap \ --from-file=pod.yaml=pod.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ジョブ仕様ファイルの以下のサンプルを使用して、ジョブを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- クラスター容量ツールにクラスター内で Pod として実行されていることを認識させる環境変数です。
ConfigMap
のpod.yaml
キーはPod
仕様ファイル名と同じですが、これは必須ではありません。これを実行することで、入力 Pod 仕様ファイルは/test-pod/pod.yaml
として Pod 内でアクセスできます。
クラスター容量イメージを Pod のジョブとして実行します。
oc create -f cluster-capacity-job.yaml
$ oc create -f cluster-capacity-job.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ジョブログを確認し、クラスター内でスケジュールできる Pod の数を確認します。
oc logs jobs/cluster-capacity-job
$ oc logs jobs/cluster-capacity-job
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow