次の方法で共有


Vertical Pod Autoscaler API リファレンス

この記事では、Azure Kubernetes Service の Vertical Pod Autoscaler 機能の API リファレンスを示します。

このリファレンスは、VPA の AKS 実装のバージョン 0.13.0 に基づいています。

VerticalPodAutoscaler

名前 オブジェクト 説明
metadata ObjectMeta 標準のオブジェクト メタデータ
spec VerticalPodAutoscalerSpec Vertical Pod Autoscaler の目的の動作。
status VerticalPodAutoscalerStatus 観察された最新の Vertical Pod Autoscaler の状態。

VerticalPodAutoscalerSpec

名前 オブジェクト 説明
targetRef CrossVersionObjectReference 自動スケーラーが制御するポッドのセットを管理するコントローラーへの参照。 たとえば、Deployment や StatefulSet です。 Vertical Pod Autoscaler は、Scale サブリソースを持つ任意のコントローラーを指すことができます。 通常、Vertical Pod Autoscaler はコントローラーの ScaleStatus からポッド セットを取得します。
updatePolicy PodUpdatePolicy 推奨される更新をポッド開始時に適用するかどうか、および推奨される更新をポッドの有効期間中に適用するかどうかを指定します。
resourcePolicy PodResourcePolicy 個々のコンテナーに対して CPU とメモリの要求をどのように調整するかに関するポリシーを指定します。 リソース ポリシーを使用して、個々のコンテナーの推奨値に制約を設定できます。 指定しない場合、自動スケーラーは、ポッド内のすべてのコンテナーに対して推奨されるリソースを追加の制約なしで計算します。
recommenders VerticalPodAutoscalerRecommenderSelector レコメンダーは、VPA オブジェクトの推奨値の生成を担当します。 既定のレコメンダーを使用するには、空のままにします。 それ以外の場合、リストには、ユーザー指定の代替レコメンダーのエントリを厳密に 1 つ含めることができます。

VerticalPodAutoscalerList

名前 オブジェクト 説明
metadata ObjectMeta 標準のオブジェクト メタデータ
項目 VerticalPodAutoscaler (配列) Vertical Pod Autoscaler オブジェクトのリスト。

PodUpdatePolicy

名前 オブジェクト 説明
updateMode string 推奨される更新をポッド開始時に適用するかどうか、および推奨される更新をポッドの有効期間中に適用するかどうかを指定する文字列。 指定できる値は、OffInitialRecreate、および Auto です。 値を指定しない場合、既定値は Auto です。
minReplicas int32 アップデーターが (ポッド中断バジェットのような他の検査の前に) ポッドの削除を試みるために稼働している必要があるレプリカの最小数を表す値。 正の値のみが許可されます。 既定値はグローバルな --min-replicas フラグであり、2 に設定されます。

PodResourcePolicy

名前 オブジェクト 説明
conainerPolicies ContainerResourcePolicy 個々のコンテナーのリソース ポリシーの配列。 すべての名前付きコンテナーに対して最大 1 つのエントリを、また必要に応じて、個々のポリシーがないすべてのコンテナーを処理する単一のワイルドカード エントリ (containerName = '*' を使用) を指定できます。

ContainerResourcePolicy

名前 オブジェクト 説明
containerName string ポリシーを適用するコンテナーの名前を指定する文字列。 指定しない場合、ポリシーは既定のポリシーとして機能します。
mode ContainerScalingMode 推奨される更新をコンテナー開始時に適用するかどうか、および推奨される更新をコンテナーの有効期間中に適用するかどうかを指定する文字列。 設定可能な値は Off および Auto です。 値を指定しない場合、既定値は Auto です。
minAllowed ResourceList コンテナーに対して許可される最小の CPU 要求とメモリ要求を指定します。 既定では、適用される最小値はありません。
maxAllowed ResourceList コンテナーに対して許可される最大の CPU 要求とメモリ要求を指定します。 既定では、適用される最大値はありません。
ControlledResources []ResourceName Vertical Pod Autoscaler によって計算される (適用される可能性もある) 推奨値の種類を指定します。 空の場合、[ResourceCPU, ResourceMemory] の既定値が使用されます。

VerticalPodAutoscalerRecommenderSelector

名前 オブジェクト 説明
name string このオブジェクトの推奨値の生成を担当するレコメンダーの名前を指定する文字列。

VerticalPodAutoscalerStatus

名前 オブジェクト 説明
推奨事項 RecommendedPodResources 推奨された最新の CPU とメモリの要求。
conditions VerticalPodAutoscalerCondition Vertical Pod Autoscaler の現在の状態を示す配列。

RecommendedPodResources

名前 オブジェクト 説明
containerRecommendation RecommendedContainerResources 個々のコンテナーに対するリソースの推奨値の配列。

RecommendedContainerResources

名前 オブジェクト 説明
containerName string 推奨値が適用されるコンテナーの名前を指定する文字列。
ターゲット ResourceList コンテナーに対して推奨される CPU 要求とメモリ要求。
lowerBound ResourceList コンテナーに対して推奨される最小の CPU 要求とメモリ要求。 この量は、アプリケーションが安定するのに十分であるとは限りません。 CPU とメモリの要求を小さくして実行すると、パフォーマンスや可用性に大きな影響を与える可能性があります。
upperBound ResourceList コンテナーに対して推奨される最大の CPU 要求とメモリ要求。 これらの値よりも高い CPU とメモリの要求は無駄になる可能性が高くなります。
uncappedTarget ResourceList コンテナー リソース ポリシーを考慮せず、実際のリソース使用量に基づいて自動スケーラーによって計算された最新のリソースの推奨値。 実際のリソース使用量が原因でターゲットがコンテナー リソース ポリシーに違反する場合、これは制限付きの推奨値とは異なる可能性があります。 このフィールドは、実際のリソース割り当てには影響しません。 状態表示としてのみ使用されます。

VerticalPodAutoscalerCondition

名前 オブジェクト 説明
VerticalPodAutoscalerConditionType 示される条件の種類。 指定できる値は、RecommendationProvidedLowConfidenceNoPodsMatched、および FetchingHistory です。
status ConditionStatus 条件の状態。 有効な値は TrueFalseUnknown です。
lastTransitionTime 時刻 条件がある状態から別のものに最後に遷移した時刻。
reason string ある状態から別のものに最後に遷移した理由。
message string ある状態から別のものへの最後の遷移の詳細を示す、人間が判読できる文字列。

次のステップ

クラスター リソースの使用率を向上させ、他のポッド用に CPU とメモリを解放する方法については、Vertical Pod Autoscaler に関する記事を参照してください。