- リソース: AwsNodePool
- AwsNodeConfig
- AwsAutoscalingGroupMetricsCollection
- SpotConfig
- AwsNodePoolAutoscaling
- 都道府県
- AwsNodePoolError
- AwsNodeManagement
- NodeKubeletConfig
- UpdateSettings
- SurgeSettings
- メソッド
リソース: AwsNodePool
AWS で実行されている Anthos ノードプール。
JSON 表現 |
---|
{ "name": string, "version": string, "config": { object ( |
フィールド | |
---|---|
name |
このリソースの名前。 ノードプールの名前の形式は Google Cloud リソース名の詳細については、リソース名をご覧ください。 |
version |
必須。このノードプールで実行する Kubernetes バージョン(
|
config |
必須。ノードプールの構成。 |
autoscaling |
必須。このノードプールのオートスケーラーの構成。 |
subnetId |
必須。ノードプール ノードが実行されるサブネット。 |
state |
出力専用。ノードプールのライフサイクル ステータス。 |
uid |
出力専用。ノードプールのグローバルな固有識別子。 |
reconciling |
出力専用。設定されている場合は、現時点でノードプールに対して処理中の変更があります。 |
createTime |
出力専用。このノードプールが作成された時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
updateTime |
出力専用。このノードプールが最後に更新された時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
etag |
クライアントがオプティミスティック同時実行制御で一貫した読み取り - 修正 - 書き込みを行えるようにします。 更新リクエストと削除リクエストで送信して、クライアントが最新の値を保持していることを続行する前に確認できます。 |
annotations |
省略可。ノードプールに関するアノテーション。 このフィールドには、Kubernetes アノテーションと同じ制限があります。結合されたすべてのキーと値の合計サイズは 256k に制限されています。キーには、スラッシュ(/)で区切られる、接頭辞(省略可)と名前(必須)の 2 つのセグメントを含めることができます。接頭辞は DNS サブドメインにする必要があります。名前は 63 文字以下にしてください。先頭と末尾には英数字を使用し、先頭と末尾の間にはダッシュ(-)、アンダースコア(_)、ドット(.)、英数字を使用します。
|
maxPodsConstraint |
必須。ノードプールのノードで同時に実行できる Pod の最大数に対する制約。 |
errors[] |
出力専用。ノードプールで検出された一連のエラー。 |
management |
省略可。このノードプールの管理構成。 |
kubeletConfig |
省略可。ノードの kubelet 構成。 |
updateSettings |
省略可。更新設定は、更新の速度と中断を制御します。 |
AwsNodeConfig
クラスタ内のノードを記述するパラメータ。
JSON 表現 |
---|
{ "instanceType": string, "rootVolume": { object ( |
フィールド | |
---|---|
instanceType |
省略可。オンデマンド インスタンスを作成する際の EC2 インスタンス タイプ。 ノードプールの作成時に指定されていない場合は、ノードプールのバージョンに基づいてデフォルトが選択され、このフィールドに割り当てられます。 |
rootVolume |
省略可。ノードプール ノード用にプロビジョニングされたルート ボリュームのテンプレート。ボリュームは、ノードプール サブネットに割り当てられたアベイラビリティ ゾーンでプロビジョニングされます。 指定しない場合、GP2 ボリューム タイプではデフォルトで 32 GiB になります。 |
taints[] |
省略可。このノードプールのノードに割り当てられる初期設定の taint。 |
labels |
省略可。このノードプールのノードに割り当てられる初期設定のラベル。"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。
|
tags |
省略可。基になる各 AWS リソースに割り当てる Key-Value メタデータ。英数字、スペース、記号(.+-=_:@/)を含むペアを最大 50 個指定できます。鍵は 127 文字以下の Unicode 文字です。値には 255 文字までの Unicode 文字を使用できます。
|
iamInstanceProfile |
必須。プール内のノードに割り当てる AWS IAM インスタンス プロファイルの名前または ARN。 |
imageType |
省略可。ノードプール インスタンスで使用する OS イメージタイプ。指定しないか、 指定しない場合、デフォルトで |
sshConfig |
省略可。SSH 構成。 |
securityGroupIds[] |
省略可。このプール内のノードに追加されるセキュリティ グループの ID。マネージャーは、クラスタを機能させるために必要な最小限のルールを持つセキュリティ グループを自動的に作成します。 |
proxyConfig |
省略可。アウトバウンド HTTP(S) トラフィックのプロキシ構成。 |
configEncryption |
必須。ユーザーデータの暗号化を設定します。 |
instancePlacement |
省略可。このノードのプレースメント関連情報。指定しない場合、VPC のデフォルトのテナンシーが使用されます。 |
autoscalingMetricsCollection |
省略可。ノードプールの自動スケーリング グループでの CloudWatch 指標の収集に関連する構成。 指定しない場合、指標の収集は無効になります。 |
spotConfig |
省略可。EC2 Spot インスタンスのプロビジョニングの構成 指定すると、ノードプールは spotConfig.instance_types のセットから Spot インスタンスをプロビジョニングします。このフィールドは |
AwsAutoscalingGroupMetricsCollection
AWS 自動スケーリング グループでの CloudWatch 指標の収集に関連する構成。
JSON 表現 |
---|
{ "granularity": string, "metrics": [ string ] } |
フィールド | |
---|---|
granularity |
必須。EC2 自動スケーリングが集計データを AWS CloudWatch に送信する頻度。有効な値は 1Minute のみです。 |
metrics[] |
省略可。有効にする指標。有効な指標の一覧については、https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html をご覧ください。粒度を指定して指標を指定しない場合、すべての指標が有効になります。 |
SpotConfig
SpotConfig には、Spot ノードの構成情報が含まれています。
JSON 表現 |
---|
{ "instanceTypes": [ string ] } |
フィールド | |
---|---|
instanceTypes[] |
必須。スポット ノードプールを作成するためのインスタンス タイプのリスト。 |
AwsNodePoolAutoscaling
AwsNodePoolAutoscaling には、クラスタ オートスケーラーが現在のクラスタ使用状況に合わせてノードプールのサイズを調整するために必要とする情報が含まれています。
JSON 表現 |
---|
{ "minNodeCount": integer, "maxNodeCount": integer } |
フィールド | |
---|---|
minNodeCount |
必須。ノードプール内のノード数。1 以上 maxNodeCount 以下の値を指定する必要があります。 |
maxNodeCount |
必須。ノードプール内の最大ノード数。minNodeCount 以上 50 以下にする必要があります。 |
状態
ノードプールのライフサイクル ステータス。
列挙型 | |
---|---|
STATE_UNSPECIFIED |
未設定。 |
PROVISIONING |
PROVISIONING 状態は、ノードプールが作成中であることを示します。 |
RUNNING |
RUNNING 状態は、ノードプールが作成済みで、完全に使用可能であることを示します。 |
RECONCILING |
RECONCILING 状態は、ノードプールが調整中であることを示します。 |
STOPPING |
STOPPING 状態は、ノードプールの削除中であることを示します。 |
ERROR |
ERROR 状態は、ノードプールが破損して回復不能な状態であることを示します。 |
DEGRADED |
DEGRADED 状態は、ノードプールで完全な機能を復元するためにユーザーの操作が必要であることを示します。 |
AwsNodePoolError
AwsNodePoolError は、AWS ノードプールで見つかったエラーを記述します。
JSON 表現 |
---|
{ "message": string } |
フィールド | |
---|---|
message |
エラーに関するわかりやすい説明。 |
AwsNodeManagement
AwsNodeManagement は、AWS ノードプールで有効になっているノード管理機能のセットを定義します。
JSON 表現 |
---|
{ "autoRepair": boolean } |
フィールド | |
---|---|
autoRepair |
省略可。ノードが自動的に修復されるかどうか。true に設定すると、このノードプールのノードがモニタリングされます。ヘルスチェックに一定期間にわたって繰り返し失敗すると、自動修復アクションがトリガーされ、新しいノードに置き換えられます。 |
NodeKubeletConfig
ノードプールの kubelet オプションの構成。
JSON 表現 |
---|
{ "insecureKubeletReadonlyPortEnabled": boolean, "cpuManagerPolicy": string, "cpuCfsQuota": boolean, "cpuCfsQuotaPeriod": string, "podPidsLimit": string } |
フィールド | |
---|---|
insecureKubeletReadonlyPortEnabled |
省略可。安全でない kubelet 読み取り専用ポートを有効にします。 |
cpuManagerPolicy |
省略可。ノードの CPU 管理ポリシーを制御します。https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ をご覧ください。 使用できる値は以下のとおりです。* 「none」: デフォルト。既存のスケジューリング動作を表します。* "static": 特定のリソース特性を持つ Pod に、ノードでの CPU アフィニティと排他性の増加を許可します。指定しない場合、デフォルト値は「none」です。 |
cpuCfsQuota |
省略可。CPU の上限を指定するコンテナに対して CPU CFS 割り当ての適用を有効にします。 このオプションはデフォルトで有効になっており、kubelet は CFS 割り当て(https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt)を使用してコンテナの CPU 上限を適用します。そうしないと、CPU 上限は適用されません。 このオプションを無効にすると、CPU 制限を指定することで、Pod を Guaranteed QoS クラスに維持しながら、CPU スロットリングの問題を軽減できます。 指定しない場合、デフォルト値は「true」です。 |
cpuCfsQuotaPeriod |
省略可。CPU CFS 割り当て期間の値「cpu.cfs_period_us」を設定します。 文字列は、10 進数のシーケンスで、小数と単位接尾辞がオプションで含まれます(例: 300ms など)。有効な時間単位は ns、us(または μs)、ms、s、m、h です。期間は正の値である必要があります。 指定しない場合、デフォルト値は「100ms」です。 |
podPidsLimit |
省略可。Pod PID の上限を設定します。https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits をご覧ください。 Pod で実行できるプロセスの最大数を制御します。値は 1024 以上 4194304 未満でなければなりません。 |
UpdateSettings
UpdateSettings は、ノードプールの更新中に発生する並列処理のレベルと中断のレベルを制御します。
これらの設定は、ノードプールの更新で既存のノードプールのノードを更新されたノードに置き換える必要がある場合に適用されます。
UpdateSettings は省略可能です。ノードプールの作成時に UpdateSettings が指定されていない場合、親クラスタのバージョンに基づいてデフォルトが選択されます。マイナー バージョン 1.27 以降のクラスタでは、maxSurge = 1、maxUnavailable = 0 のデフォルトの surgeSettings 構成が使用されます。古いバージョンのクラスタの場合、ノードプールの更新では、「作成前に停止」方式で一度に 1 つのノードを更新する従来のローリング アップデート メカニズムが使用され、updateSettings は適用されません。
surgeSettings パラメータを設定して、ノードプールのノードのローリング アップデートにサージ アップデート メカニズムを使用します。1. maxSurge は、使用可能なノードの数を増やすために、更新時にノードプールの現在のサイズを超えて一時的に作成できる追加ノードの数を制御します。2. maxUnavailable は、更新中に同時に使用不可になるノードの数を制御します。3. (maxSurge + maxUnavailable)は、並列処理のレベル(同時に更新されるノードの数)を決定します。
JSON 表現 |
---|
{
"surgeSettings": {
object ( |
フィールド | |
---|---|
surgeSettings |
省略可。サージ アップデートの設定。 |
SurgeSettings
SurgeSettings には、Surge アップデートのパラメータが含まれています。
JSON 表現 |
---|
{ "maxSurge": integer, "maxUnavailable": integer } |
フィールド | |
---|---|
maxSurge |
省略可。更新プロセス中に、ノードプールの現在のサイズを超えて作成できるノードの最大数。 |
maxUnavailable |
省略可。更新プロセス中に同時に使用不可にできるノードの最大数。ステータスが Ready ではないノードは、使用不可とみなされます。 |
メソッド |
|
---|---|
(deprecated) |
指定された AwsCluster に関連付けられた新しい AwsNodePool を作成します。 |
(deprecated) |
特定の AwsNodePool リソースを削除します。 |
(deprecated) |
特定の AwsNodePool リソースについて説明します。 |
(deprecated) |
指定された AwsCluster のすべての AwsNodePool リソースを一覧表示します。 |
(deprecated) |
AwsNodePool を更新します。 |
(deprecated) |
以前に中止または失敗した AwsNodePool 更新リクエストをロールバックします。 |