第8章 Deployment [apps/v1]
- 説明
- デプロイメントにより、Pod と ReplicaSets の宣言型更新が可能になります。
- タイプ
-
object
8.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。更新はできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| DeploymentSpec は、デプロイメントの望ましい動作の仕様です。 |
|
| DeploymentStatus は、Deployment の最後に観察されたステータスです。 |
8.1.1. .spec
- 説明
- DeploymentSpec は、デプロイメントの望ましい動作の仕様です。
- タイプ
-
object
- 必須
-
selector
-
template
-
プロパティー | 型 | 説明 |
---|---|---|
|
| 新しく作成された Pod が使用可能であると見なされるために、コンテナーがクラッシュすることなく準備ができる最小秒数。デフォルトは 0 です (Pod は準備ができ次第利用可能と見なされます) |
|
| デプロイメントが一時停止されていることを示します。 |
|
| デプロイメントが失敗したと見なされる前に、デプロイメントが進行するまでの最大時間 (秒単位)。デプロイメントコントローラーは失敗したデプロイメントの処理を続行し、ProgressDeadlineExceeded 理由のある条件がデプロイメントステータスに表示されます。デプロイメントが一時停止している間は、進行状況は推定されないことに注意してください。デフォルトは 600 秒です。 |
|
| 必要な Pod の数。これは、明示的なゼロと指定されていないものを区別するためのポインターです。デフォルトは 1 です。 |
|
| ロールバックを可能にするために保持する古い ReplicaSet の数。これは、明示的なゼロと指定されていないものを区別するためのポインターです。デフォルトは 10 です。 |
| Pod のラベルセレクター。これによって Pod が選択される既存の ReplicaSet は、このデプロイメントの影響を受けるものになります。Pod テンプレートのラベルと一致する必要があります。 | |
|
| DeploymentStrategy は、既存の Pod を新しい Pod に置き換える方法を説明しています。 |
| テンプレートには、作成される Pod が記述されています。 |
8.1.2. .spec.strategy
- 説明
- DeploymentStrategy は、既存の Pod を新しい Pod に置き換える方法を説明しています。
- タイプ
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| ローリング更新の望ましい動作を制御するための仕様。 |
|
| デプロイメントのタイプ。Recreate または RollingUpdate にすることができます。デフォルトは RollingUpdate です。
使用可能な列挙値: - |
8.1.3. .spec.strategy.rollingUpdate
- 説明
- ローリング更新の望ましい動作を制御するための仕様。
- タイプ
-
object
プロパティー | 型 | 説明 |
---|---|---|
| 希望する Pod 数を超えてスケジュールできる Pod の最大数。値は、絶対数 (例:5) または目的の Pod のパーセンテージ (例:10%) にすることができます。MaxUnavailable が 0 の場合、これを 0 にすることはできません。絶対数は、端数を切り上げてパーセンテージから計算されます。デフォルトは 25% です。例: これが 30% に設定されている場合、ローリング更新の開始時に新しい ReplicaSet をすぐにスケールアップして、新旧の Pod の総数が目的の Pod の 130% を超えないようにすることができます。古い Pod が強制終了されると、新しい ReplicaSet をさらにスケールアップして、更新中にいつでも実行されている Pod の総数が目的の Pod の最大 130% になるようにすることができます。 | |
| 更新中に使用できなくなる可能性のある Pod の最大数。値は、絶対数 (例:5) または目的の Pod のパーセンテージ (例:10%) にすることができます。絶対数は、端数を切り捨ててパーセンテージから計算されます。MaxSurge が 0 の場合、これを 0 にすることはできません。デフォルトは 25% です。例: これが 30% に設定されている場合、ローリング更新が開始されるとすぐに、古い ReplicaSet を目的の Pod の 70% に縮小できます。新しい Pod の準備ができたら、古い ReplicaSet をさらにスケールダウンしてから、新しい ReplicaSet をスケールアップして、更新中に常に使用可能な Pod の総数が目的の Pod の少なくとも 70% になるようにします。 |
8.1.4. .status
- 説明
- DeploymentStatus は、Deployment の最後に観察されたステータスです。
- タイプ
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| このデプロイメントの対象となる利用可能な Pod の総数 (少なくとも minReadySeconds の準備ができています)。 |
|
| Deployment のハッシュ競合の数。Deployment コントローラーは、最新の ReplicaSet の名前を作成する必要がある場合に、このフィールドを競合回避メカニズムとして使用します。 |
|
| デプロイメントの現在の状態の最新の利用可能な観測を表します。 |
|
| DeploymentCondition は、特定の時点でのデプロイメントの状態を記述します。 |
|
| デプロイメントコントローラーにより監視される世代。 |
|
| readyReplicas は、このデプロイの対象となる Ready Condition 状態の Pod の数です。 |
|
| このデプロイメントの対象となる非終了 Pod の総数 (ラベルはセレクターと一致します)。 |
|
| このデプロイメントの対象となる使用できない Pod の総数。これは、デプロイメントで 100% の使用可能な容量を確保するために必要な Pod の総数です。それらは、実行されているがまだ利用できない Pod か、まだ作成されていない Pod のいずれかです。 |
|
| 目的のテンプレート仕様を持つ、このデプロイメントの対象となる非終了 Pod の総数。 |
8.1.5. .status.conditions
- 説明
- デプロイメントの現在の状態の最新の利用可能な観測を表します。
- タイプ
-
array
8.1.6. .status.conditions[]
- 説明
- DeploymentCondition は、特定の時点でのデプロイメントの状態を記述します。
- タイプ
-
object
- 必須
-
type
-
status
-
プロパティー | 型 | 説明 |
---|---|---|
| 最後にある状態から別の状態に遷移した時間。 | |
| この状態が最後に更新された時刻。 | |
|
| 遷移の詳細を示す人が判読できるメッセージ。 |
|
| 条件の最後の遷移の理由。 |
|
| 状態のステータス、True、False、Unknown のいずれか。 |
|
| デプロイメント条件のタイプ。 |