Halaman ini menunjukkan cara menentukan platform CPU minimum untuk node di cluster Google Kubernetes Engine (GKE).
Mengapa memilih platform CPU minimum?
Menentukan platform CPU minimum berguna jika Anda memerlukan kemampuan dan spesifikasi CPU tertentu, seperti frekuensi dasar yang tinggi atau fungsi pengelolaan daya yang dioptimalkan.
Beberapa workload intensif komputasi tingkat lanjut di industri grafis, game, dan analisis dapat memanfaatkan fitur khusus yang tersedia melalui berbagai set fitur platform CPU, seperti AVX-2 dan AVX-512. Memilih platform CPU tertentu dapat menghasilkan peningkatan signifikan dalam waktu eksekusi dan performa. Dengan menentukan platform CPU minimum, workload Anda dapat mewujudkan peningkatan ini dengan cara yang lebih dapat diprediksi, dan Anda dapat memastikan bahwa node tidak pernah menggunakan platform CPU yang tidak sesuai untuk workload-nya.
Cara memilih platform
Tabel berikut menunjukkan cara memilih platform CPU minimum berdasarkan cara Anda menggunakan GKE:
Cakupan | Deskripsi | Konfigurasi cluster yang didukung |
---|---|---|
Tingkat workload (direkomendasikan) | Pilih platform minimum dalam spesifikasi Pod Anda. GKE menjadwalkan Pod tersebut sebagai berikut:
|
|
Tingkat node dan cluster | Pilih platform CPU minimum saat Anda membuat cluster mode atau node pool Standard yang baru. Setelan ini tidak mendukung penyediaan otomatis node. Untuk mengetahui petunjuknya, langsung ke bagian Memilih platform CPU minimum di level node pool. | Cluster atau node pool Standard yang baru |
Harga
Anda dapat memilih platform CPU minimum tanpa biaya tambahan.
Sebelum memulai
Sebelum memulai, pastikan Anda telah menjalankan tugas berikut:
- Aktifkan Google Kubernetes Engine API. Aktifkan Google Kubernetes Engine API
- Jika ingin menggunakan Google Cloud CLI untuk tugas ini,
instal lalu
initialize
gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan
gcloud components update
.
Periksa ketersediaan platform CPU
Platform CPU yang tersedia bervariasi berdasarkan zona komputasi tempat node Anda berjalan. Anda harus memeriksa platform CPU mana yang tersedia di zona meskipun Anda menggunakan cluster Autopilot atau cluster Standard regional.
Untuk memeriksa platform yang tersedia di zona tertentu, jalankan perintah berikut:
gcloud compute zones describe COMPUTE_ZONE
Ganti COMPUTE_ZONE
dengan nama zona, seperti us-central1-a
. Jika Anda menggunakan jenis cluster regional, tentukan nama zona di region tersebut.
Outputnya mirip dengan hal berikut ini:
availableCpuPlatforms:
- Intel Ice Lake
- Intel Cascade Lake
- Intel Skylake
- Intel Broadwell
- Intel Haswell
- Intel Ivy Bridge
- Intel Sandy Bridge
- AMD Milan
- AMD Rome
- Ampere Altra
- Intel Sapphire Rapids
Saat Anda menggunakan nilai ini untuk meminta platform CPU minimum, ganti spasi dengan
garis bawah pada nama platform. Misalnya, AMD_Milan
.
Pilih platform CPU minimum pada level workload
Jika menggunakan cluster GKE Autopilot atau cluster GKE Standard dengan penyediaan otomatis node, Anda dapat memilih platform CPU minimum dalam spesifikasi Pod. Saat Anda men-deploy workload, GKE menjadwalkan Pod tersebut hanya pada node yang memiliki platform tertentu atau yang lebih baru. Kami menyarankan metode ini.
Autopilot
Dalam Autopilot, minta platform CPU minimum dan
class komputasi. Class komputasi harus mendukung platform CPU. Autopilot
mendukung pemilihan platform CPU minimum untuk
class komputasi Balanced
. Untuk mengetahui daftar platform CPU yang tersedia di setiap class komputasi, lihat Kapan harus menggunakan class komputasi tertentu.
Simpan manifes berikut sebagai min-cpu.yaml
:
apiVersion: apps/v1
kind: Deployment
metadata:
name: min-cpu-platform
labels:
app: min-cpu
spec:
replicas: 3
selector:
matchLabels:
app: min-cpu
template:
metadata:
labels:
app: min-cpu
spec:
nodeSelector:
cloud.google.com/compute-class: "COMPUTE_CLASS"
supported-cpu-platform.cloud.google.com/PLATFORM: "true"
containers:
- name: hello-app
image: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
ports:
- containerPort: 8080
resources:
requests:
cpu: 250m
Ganti kode berikut:
PLATFORM
: nama platform CPU, sepertiAMD_Milan
. Nama platform peka huruf besar/kecil dan harus dipisahkan garis bawah.COMPUTE_CLASS
: nama class komputasi, yang harus berupaBalanced
.
Standard
Di cluster Standard dengan penyediaan otomatis node yang diaktifkan, minta platform CPU bersama kelompok mesin Compute Engine. Kelompok mesin harus mendukung platform CPU. Untuk daftar platform yang didukung bagi setiap kelompok mesin, lihat platform CPU Compute Engine.
Simpan manifes berikut sebagai min-cpu.yaml
:
apiVersion: apps/v1
kind: Deployment
metadata:
name: min-cpu-platform
labels:
app: min-cpu
spec:
replicas: 3
selector:
matchLabels:
app: min-cpu
template:
metadata:
labels:
app: min-cpu
spec:
nodeSelector:
cloud.google.com/machine-family: MACHINE_FAMILY
cloud.google.com/requested-min-cpu-platform: PLATFORM
containers:
- name: hello-app
image: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
ports:
- containerPort: 8080
resources:
requests:
cpu: 250m
Ganti kode berikut:
PLATFORM
: nama platform CPU, sepertiAMD_Milan
. Nama platform peka huruf besar/kecil dan harus dipisahkan garis bawah.MACHINE_FAMILY
: nama kelompok mesin, sepertin2d
.
Men-deploy workload:
kubectl apply -f min-cpu.yaml
Node mempertahankan platform yang sama selama siklus prosesnya, kecuali jika platform CPU yang ditentukan sudah dihentikan. Dalam hal ini, node Anda berjalan di platform yang lebih baru.
Memilih platform CPU minimum di level node pool
Untuk cluster GKE Standard tanpa penyediaan otomatis node, Anda dapat menentukan platform CPU minimum saat membuat cluster atau node pool baru. Anda hanya boleh menggunakan pendekatan ini jika Anda tidak dapat menggunakan setelan tingkat workload. Setelan ini tidak memengaruhi penyediaan otomatis node.
gcloud
Untuk membuat node pool baru dengan platform CPU minimum menggunakan gcloud CLI, tetapkan flag --min-cpu-platform
dan tentukan nama platform CPU:
gcloud container node-pools create POOL_NAME \
--cluster CLUSTER_NAME \
--region COMPUTE_REGION \
--min-cpu-platform PLATFORM
Ganti kode berikut:
POOL_NAME
: nama node pool baru.CLUSTER_NAME
: nama cluster Anda.COMPUTE_REGION
: region untuk cluster.PLATFORM
: platform CPU yang ingin Anda jalankan di node pool, seperti"Intel Broadwell"
.
Konsol
Buka halaman Google Kubernetes Engine di konsol Google Cloud.
Di daftar cluster, klik nama cluster yang ingin diubah.
Klik add_box Add Node Pool.
Konfigurasikan node pool sesuai keinginan.
Dari panel navigasi, klik Node.
Di bagian Machine Configuration,
Di menu drop-down Series, pilih jenis mesin.
Di menu drop-down Machine type, pilih Custom.
Pilih Cores dan Memory sesuai keinginan.
Klik expand_more CPU Platform and GPU.
Dalam menu drop-down CPU Platform, pilih platform yang diinginkan.
Klik Buat.
API
Sertakan properti minCpuPlatform
sebagai bagian dari kolom nodeConfig
dalam
isi permintaan. Nilai untuk minCpuPlatform
harus berupa nama
platform, seperti Intel Haswell
, Intel Broadwell
, dan
Intel Sandy Bridge
.
Misalnya, permintaan berikut akan membuat node pool baru yang menjalankan platform Intel Broadwell:
POST https://container.googleapis.com/v1/projects/PROJECT_ID/regions/COMPUTE_REGION/clusters/CLUSTER_NAME/nodePools
{
'nodePool': {
'name': 'POOL_NAME',
'nodeConfig': {
'minCpuPlatform': 'Intel Broadwell'
...
}
...
}
}
Ganti kode berikut:
PROJECT_ID
: project ID Anda.COMPUTE_REGION
: region untuk cluster.CLUSTER_NAME
: nama cluster Anda.POOL_NAME
: nama node pool baru.
Jika Anda menentukan platform saat membuat cluster, setelan platform CPU minimum akan diterapkan untuk node pool default di cluster baru tersebut.
Alternatif
GKE juga memungkinkan Anda memilih platform CPU minimum menggunakan metode berikut:
Alternatif | |
---|---|
Flag tingkat cluster Flag |
Batasan
Batasan berikut berlaku untuk semua metode pemilihan platform CPU minimum:
- Semua batasan platform CPU minimum Compute Engine berlaku.
- Ketersediaan platform CPU tertentu bervariasi menurut zona.
- Jenis mesin E2 tidak mendukung platform CPU minimum. Anda harus memilih jenis mesin yang berbeda.
- Cluster Autopilot hanya mendukung pemilihan platform untuk
class komputasi
Balanced
, bukan class komputasi default atauScale-Out
. - Jika workload Autopilot Anda meminta lebih dari 80 vCPU, platform CPU minimum harus berupa Intel Ice Lake atau yang lebih baru. Jika Anda menentukan platform yang kurang canggih, Pod Anda mungkin tetap dalam status
Pending
tanpa batas.
Batasan berikut berlaku untuk setelan platform CPU minimum node pool atau cluster:
Jika Anda memilih platform CPU minimum yang kurang canggih daripada platform CPU default di zona tersebut, atau jika platform yang dipilih tidak lagi tersedia, GKE akan memeriksa ketersediaan platform yang lebih baru dengan biaya yang sama. Jika platform yang lebih baru tersedia dengan biaya yang sama, GKE akan membuat node menggunakan platform yang lebih baru tersebut. Jika platform yang lebih baru tidak ada dengan biaya yang sama, pembuatan cluster atau node pool akan gagal.
Langkah selanjutnya
- Lihat daftar platform CPU yang tersedia.
- Pelajari lebih lanjut tentang Region dan zona .
- Pelajari node lebih lanjut.