REST Resource: projects.locations.awsClusters.awsNodePools

Resource: AwsNodePool

Node pool Anthos yang berjalan di AWS.

Representasi JSON
{
  "name": string,
  "version": string,
  "config": {
    object (AwsNodeConfig)
  },
  "autoscaling": {
    object (AwsNodePoolAutoscaling)
  },
  "subnetId": string,
  "state": enum (State),
  "uid": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "maxPodsConstraint": {
    object (MaxPodsConstraint)
  },
  "errors": [
    {
      object (AwsNodePoolError)
    }
  ],
  "management": {
    object (AwsNodeManagement)
  },
  "kubeletConfig": {
    object (NodeKubeletConfig)
  },
  "updateSettings": {
    object (UpdateSettings)
  }
}
Kolom
name

string

Nama resource ini.

Nama node pool diformat sebagai projects/<project-number>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>.

Untuk mengetahui detail selengkapnya tentang nama resource Google Cloud, lihat Nama Resource

version

string

Wajib. Versi Kubernetes yang akan dijalankan di kumpulan node ini (misalnya, 1.19.10-gke.1000).

Anda dapat mencantumkan semua versi yang didukung di region Google Cloud tertentu dengan memanggil locations.getAwsServerConfig.

config

object (AwsNodeConfig)

Wajib. Konfigurasi node pool.

autoscaling

object (AwsNodePoolAutoscaling)

Wajib. Konfigurasi autoscaler untuk node pool ini.

subnetId

string

Wajib. Subnet tempat node kumpulan node berjalan.

state

enum (State)

Hanya output. Status siklus proses kumpulan node.

uid

string

Hanya output. ID unik global untuk kumpulan node.

reconciling

boolean

Hanya output. Jika disetel, saat ini ada perubahan dalam proses ke node pool.

createTime

string (Timestamp format)

Hanya output. Waktu saat kumpulan node ini dibuat.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Waktu saat kumpulan node ini terakhir diperbarui.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

etag

string

Memungkinkan klien melakukan operasi baca-ubah-tulis yang konsisten melalui kontrol serentak optimis.

Dapat dikirim pada permintaan update dan penghapusan untuk memastikan klien memiliki nilai terbaru sebelum melanjutkan.

annotations

map (key: string, value: string)

Opsional. Anotasi pada kumpulan node.

Kolom ini memiliki batasan yang sama dengan anotasi Kubernetes. Ukuran total semua kunci dan nilai gabungan dibatasi hingga 256k. Kunci dapat memiliki 2 segmen: awalan (opsional) dan nama (wajib), yang dipisahkan dengan garis miring (/). Awalan harus berupa subdomain DNS. Nama harus terdiri dari maksimal 63 karakter, diawali dan diakhiri dengan alfanumerik, dengan tanda hubung (-), garis bawah (_), titik (.), dan alfanumerik di antaranya.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

maxPodsConstraint

object (MaxPodsConstraint)

Wajib. Batasan jumlah maksimum pod yang dapat dijalankan secara bersamaan pada node di node pool.

errors[]

object (AwsNodePoolError)

Hanya output. Kumpulan error yang ditemukan di kumpulan node.

management

object (AwsNodeManagement)

Opsional. Konfigurasi Pengelolaan untuk node pool ini.

kubeletConfig

object (NodeKubeletConfig)

Opsional. Konfigurasi kubelet node.

updateSettings

object (UpdateSettings)

Opsional. Setelan update mengontrol kecepatan dan gangguan update.

AwsNodeConfig

Parameter yang mendeskripsikan node dalam cluster.

Representasi JSON
{
  "instanceType": string,
  "rootVolume": {
    object (AwsVolumeTemplate)
  },
  "taints": [
    {
      object (NodeTaint)
    }
  ],
  "labels": {
    string: string,
    ...
  },
  "tags": {
    string: string,
    ...
  },
  "iamInstanceProfile": string,
  "imageType": string,
  "sshConfig": {
    object (AwsSshConfig)
  },
  "securityGroupIds": [
    string
  ],
  "proxyConfig": {
    object (AwsProxyConfig)
  },
  "configEncryption": {
    object (AwsConfigEncryption)
  },
  "instancePlacement": {
    object (AwsInstancePlacement)
  },
  "autoscalingMetricsCollection": {
    object (AwsAutoscalingGroupMetricsCollection)
  },
  "spotConfig": {
    object (SpotConfig)
  }
}
Kolom
instanceType

string

Opsional. Jenis instance EC2 saat membuat instance on-Demand.

Jika tidak ditentukan selama pembuatan kumpulan node, setelan default akan dipilih berdasarkan versi kumpulan node, dan ditetapkan ke kolom ini.

rootVolume

object (AwsVolumeTemplate)

Opsional. Template untuk volume root yang disediakan untuk node pool. Volume akan disediakan di zona ketersediaan yang ditetapkan ke subnet node pool.

Jika tidak ditentukan, setelan defaultnya adalah 32 GiB dengan jenis volume GP2.

taints[]

object (NodeTaint)

Opsional. Taint awal yang ditetapkan ke node di kumpulan node ini.

labels

map (key: string, value: string)

Opsional. Label awal yang ditetapkan ke node kumpulan node ini. Objek yang berisi daftar pasangan "kunci": nilai. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

tags

map (key: string, value: string)

Opsional. Metadata nilai/kunci untuk ditetapkan ke setiap resource AWS pokok. Tentukan maksimal 50 pasangan yang berisi alfanumerik, spasi, dan simbol (.+-=_:@/). Kunci dapat berisi hingga 127 karakter Unicode. Nilai dapat mencapai 255 karakter Unicode.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

iamInstanceProfile

string

Wajib. Nama atau ARN profil instance IAM AWS yang akan ditetapkan ke node dalam pool.

imageType

string

Opsional. Jenis image OS yang akan digunakan pada instance node pool. Dapat tidak ditentukan, atau memiliki nilai ubuntu.

Jika tidak ditentukan, setelan defaultnya adalah ubuntu.

sshConfig

object (AwsSshConfig)

Opsional. Konfigurasi SSH.

securityGroupIds[]

string

Opsional. ID grup keamanan tambahan yang akan ditambahkan ke node di kumpulan ini. Pengelola akan otomatis membuat grup keamanan dengan aturan minimum yang diperlukan agar cluster berfungsi.

proxyConfig

object (AwsProxyConfig)

Opsional. Konfigurasi proxy untuk traffic HTTP(S) keluar.

configEncryption

object (AwsConfigEncryption)

Wajib. Enkripsi konfigurasi untuk data pengguna.

instancePlacement

object (AwsInstancePlacement)

Opsional. Info terkait penempatan untuk node ini. Jika tidak ditentukan, tenancy default VPC akan digunakan.

autoscalingMetricsCollection

object (AwsAutoscalingGroupMetricsCollection)

Opsional. Konfigurasi terkait pengumpulan metrik CloudWatch di grup Penskalaan Otomatis node pool.

Jika tidak ditentukan, pengumpulan metrik akan dinonaktifkan.

spotConfig

object (SpotConfig)

Opsional. Konfigurasi untuk menyediakan instance Spot EC2

Jika ditentukan, kumpulan node akan menyediakan instance Spot dari kumpulan spotConfig.instance_types. Kolom ini sama eksklusifnya dengan instanceType.

AwsAutoscalingGroupMetricsCollection

Konfigurasi terkait pengumpulan metrik CloudWatch dalam grup Penskalaan Otomatis AWS.

Representasi JSON
{
  "granularity": string,
  "metrics": [
    string
  ]
}
Kolom
granularity

string

Wajib. Frekuensi EC2 Auto Scaling mengirimkan data gabungan ke AWS CloudWatch. Satu-satunya nilai yang valid adalah "1Minute".

metrics[]

string

Opsional. Metrik yang akan diaktifkan. Untuk mengetahui daftar metrik yang valid, lihat https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html. Jika Anda menentukan Perincian dan tidak menentukan metrik apa pun, semua metrik akan diaktifkan.

SpotConfig

SpotConfig memiliki info konfigurasi untuk node Spot.

Representasi JSON
{
  "instanceTypes": [
    string
  ]
}
Kolom
instanceTypes[]

string

Wajib. Daftar jenis instance untuk membuat spot node pool.

AwsNodePoolAutoscaling

AwsNodePoolAutoscaling berisi informasi yang diperlukan oleh autoscaler cluster untuk menyesuaikan ukuran node pool dengan penggunaan cluster saat ini.

Representasi JSON
{
  "minNodeCount": integer,
  "maxNodeCount": integer
}
Kolom
minNodeCount

integer

Wajib. Jumlah minimum node dalam kumpulan node. Harus lebih besar dari atau sama dengan 1 dan kurang dari atau sama dengan maxNodeCount.

maxNodeCount

integer

Wajib. Jumlah maksimum node dalam kumpulan node. Harus lebih besar dari atau sama dengan minNodeCount dan kurang dari atau sama dengan 50.

Negara bagian/Provinsi

Status siklus proses kumpulan node.

Enum
STATE_UNSPECIFIED Belum ditetapkan.
PROVISIONING Status PROVISIONING menunjukkan bahwa node pool sedang dibuat.
RUNNING Status RUNNING menunjukkan bahwa kumpulan node telah dibuat dan dapat digunakan sepenuhnya.
RECONCILING Status RECONCILING menunjukkan bahwa kumpulan node sedang disesuaikan.
STOPPING Status STOPPING menunjukkan bahwa kumpulan node sedang dihapus.
ERROR Status ERROR menunjukkan bahwa kumpulan node berada dalam status rusak yang tidak dapat dipulihkan.
DEGRADED Status DEGRADED menunjukkan bahwa kumpulan node memerlukan tindakan pengguna untuk memulihkan fungsi penuh.

AwsNodePoolError

AwsNodePoolError menjelaskan error yang ditemukan di node pool AWS.

Representasi JSON
{
  "message": string
}
Kolom
message

string

Deskripsi error yang mudah dipahami.

AwsNodeManagement

AwsNodeManagement menentukan kumpulan fitur pengelolaan node yang diaktifkan untuk node pool AWS.

Representasi JSON
{
  "autoRepair": boolean
}
Kolom
autoRepair

boolean

Opsional. Apakah node akan diperbaiki secara otomatis atau tidak. Jika disetel ke benar (true), node di node pool ini akan dipantau dan jika gagal melewati health check secara konsisten selama jangka waktu tertentu, tindakan perbaikan otomatis akan dipicu untuk menggantinya dengan node baru.

NodeKubeletConfig

Konfigurasi untuk opsi kubelet node pool.

Representasi JSON
{
  "insecureKubeletReadonlyPortEnabled": boolean,
  "cpuManagerPolicy": string,
  "cpuCfsQuota": boolean,
  "cpuCfsQuotaPeriod": string,
  "podPidsLimit": string
}
Kolom
insecureKubeletReadonlyPortEnabled

boolean

Opsional. Aktifkan port hanya baca kubelet yang tidak aman.

cpuManagerPolicy

string

Opsional. Mengontrol kebijakan pengelolaan CPU di node. Lihat https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/

Nilai berikut diizinkan. * "none": default, yang merepresentasikan perilaku penjadwalan yang ada. * "statis": memungkinkan pod dengan karakteristik resource tertentu mendapatkan peningkatan afinitas dan eksklusivitas CPU pada node. Nilai defaultnya adalah 'none' jika tidak ditentukan.

cpuCfsQuota

boolean

Opsional. Aktifkan penerapan kuota CFS CPU untuk penampung yang menentukan batas CPU.

Opsi ini diaktifkan secara default sehingga kubelet menggunakan kuota CFS (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) untuk menerapkan batas CPU container. Jika tidak, batas CPU tidak akan diterapkan sama sekali.

Nonaktifkan opsi ini untuk mengurangi masalah throttling CPU sekaligus memastikan pod Anda berada di class QoS yang Dijamin dengan menentukan batas CPU.

Nilai defaultnya adalah 'true' jika tidak ditentukan.

cpuCfsQuotaPeriod

string

Opsional. Tetapkan nilai periode kuota CFS CPU 'cpu.cfs_period_us'.

String harus berupa urutan angka desimal, yang masing-masing memiliki pecahan opsional dan sufiks satuan, seperti "300ms". Unit waktu yang valid adalah "ns", "us" (atau "µs"), "ms", "s", "m", "h". Nilai harus berupa durasi positif.

Nilai defaultnya adalah '100 md' jika tidak ditentukan.

podPidsLimit

string (int64 format)

Opsional. Menetapkan batas PID Pod. Lihat https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits

Mengontrol jumlah maksimum proses yang diizinkan untuk berjalan dalam pod. Nilai harus lebih besar dari atau sama dengan 1024 dan kurang dari 4194304.

UpdateSettings

UpdateSettings mengontrol tingkat paralelisme dan tingkat gangguan yang disebabkan selama update node pool.

Setelan ini berlaku saat update node pool memerlukan penggantian node pool yang ada dengan node yang diupdate.

UpdateSettings bersifat opsional. Jika UpdateSettings tidak ditentukan selama pembuatan node pool, setelan default akan dipilih berdasarkan versi cluster induk. Untuk cluster dengan versi minor 1.27 dan yang lebih baru, konfigurasi surgeSettings default dengan maxSurge = 1 dan maxUnavailable = 0 akan digunakan. Untuk cluster dengan versi yang lebih lama, update node pool menggunakan mekanisme update berkelanjutan tradisional dengan mengupdate satu node dalam satu waktu dengan cara "akhiri sebelum buat" dan updateSettings tidak berlaku.

Tetapkan parameter surgeSettings untuk menggunakan mekanisme Update Lonjakan untuk update bergulir node pool. 1. maxSurge mengontrol jumlah node tambahan yang dapat dibuat di luar ukuran node pool saat ini untuk sementara selama waktu update guna meningkatkan jumlah node yang tersedia. 2. maxUnavailable mengontrol jumlah node yang dapat tidak tersedia secara bersamaan selama update. 3. (maxSurge + maxUnavailable) menentukan tingkat paralelisme (yaitu, jumlah node yang diupdate secara bersamaan).

Representasi JSON
{
  "surgeSettings": {
    object (SurgeSettings)
  }
}
Kolom
surgeSettings

object (SurgeSettings)

Opsional. Setelan untuk update lonjakan.

SurgeSettings

SurgeSettings berisi parameter untuk update Surge.

Representasi JSON
{
  "maxSurge": integer,
  "maxUnavailable": integer
}
Kolom
maxSurge

integer

Opsional. Jumlah maksimum node yang dapat dibuat di luar ukuran node pool saat ini selama proses update.

maxUnavailable

integer

Opsional. Jumlah maksimum node yang mungkin tidak tersedia secara bersamaan selama proses update. Node dianggap tidak tersedia jika statusnya bukan Siap.

Metode

create
(deprecated)

Membuat AwsNodePool baru, yang dilampirkan ke AwsCluster tertentu.

delete
(deprecated)

Menghapus resource AwsNodePool tertentu.

get
(deprecated)

Menjelaskan resource AwsNodePool tertentu.

list
(deprecated)

Mencantumkan semua resource AwsNodePool pada AwsCluster tertentu.

patch
(deprecated)

Memperbarui AwsNodePool.

rollback
(deprecated)

Me-roll back permintaan update AwsNodePool yang sebelumnya dibatalkan atau gagal.