免責事項:これは英文の記事「Unable to Create New Nodes in Workload Clusters due to "Insufficient configured resources to satisfy the desired vSphere HA failover level on the cluster"」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
vSphere Supervisor 環境において、ワークロードクラスタ内でノードの作成またはスケールアップを試みた際に、以下のエラーメッセージが報告されます:
Insufficient configured resources to satisfy the desired vSphere HA failover level on the cluster
環境内には十分なリソースが存在します。CPU およびメモリ使用率は最大容量に近い状態ではありません。
ワークロードクラスタをホストしている vSphere クラスタオブジェクトを確認すると、リソース割り当てにおいて CPU および/またはメモリが最大予約量に近い、もしくは最大に達していることが表示されます:
Supervisor クラスタのコンテキストで既に稼働中のノードを確認すると、guaranteed vmclass が割り当てられているノードが多数存在します:
以下の vmclass は一例であり、環境によって異なる場合があります。
kubectl get vm -o wide -A
NAMESPACE NAME POWER-STATE CLASS
<namespace> <node-a> poweredOn guaranteed-2xlarge
<namespace> <node-b> poweredOn guaranteed-2xlarge
<namespace> <node-c> poweredOn guaranteed-2xlarge
<namespace> <node-d> poweredOn guaranteed-2xlarge
<namespace> <node-e> poweredOn guaranteed-2xlarge
<namespace> <node-f> poweredOn guaranteed-x2large
割り当てられている guaranteed vmclass は、大量のリソースを予約している可能性もあります:
以下の vmclass は一例であり、環境によって異なる場合があります。
kubectl get vmclass
NAME CPU MEMORY
guaranteed-2xlarge 8 64Gi
vSphere Supervisor
This issue can occur regardless of whether or not the cluster is managed by Tanzu Mission Control (TMC)
vSphere クラスタレベルでは CPU およびメモリに十分な空きがある場合でも、CPU およびメモリのリソース割り当ては最大値に近い、または最大に達していることがあります。
「Reservation Details」バーが最大に近い、もしくは最大に達している場合、これらのリソースは現在使用されていない可能性があっても、すでに予約されており、新しいノードに割り当てることができないことを示しています。
guaranteed vmclass は、指定されたリソースが常にノードで利用可能であることを保証します。ただし、これらのリソースは予約済みとして設定されるため、新たに作成されるノードでは利用できません。
詳細については、以下の vmclass に関するドキュメントをご参照ください:
最終的に、本件はリソース予約に起因する問題であり、お客様の環境要件に基づいて解決する必要があります。
予約済みとして設定されているリソース量を削減するためのいくつかの提案を以下に示します:
Note:ノードプールの vmclass を変更すると、そのノードプール内のすべてのノードに対してローリング再デプロイが実行されます。これには、ワークロードクラスタ内のコントロールプレーンノードに割り当てられている vmclass の変更も含まれます。