Tutorial ini menunjukkan cara membuat sejumlah besar instance virtual machine (VM) komputasi berperforma tinggi (HPC) yang identik dan independen satu sama lain. Instance menggunakan jenis mesin yang dioptimalkan untuk HPC H4D dan berjalan di blok kapasitas yang dicadangkan. Tutorial ini juga menunjukkan cara mengonfigurasi instance H4D untuk menggunakan Cloud RDMA.
Tutorial ini ditujukan bagi engineer HPC, administrator dan operator platform, serta spesialis data dan MPI yang tertarik untuk membuat cluster instance HPC yang saling terhubung. Instance yang dihasilkan tidak menggunakan pengelola untuk pengelolaan instance atau penjadwalan tugas.
Tujuan
- Cadangkan blok kapasitas untuk deployment Anda.
- Opsional: Buat kebijakan penempatan jika Anda tidak membuat VM di blok atau sub-blok yang sama.
- Buat jaringan Virtual Private Cloud.
- Buat instance yang mendukung RDMA secara massal.
- Jalankan pembersihan.
Biaya
Tutorial ini menggunakan komponen Google Cloudyang dapat ditagih, termasuk:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan Kalkulator Harga.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the required API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.gcloud services enable compute.googleapis.com
-
Install the Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the required API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.gcloud services enable compute.googleapis.com
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/compute.instanceAdmin.v1,roles/compute.networkAdmin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID
: your project ID.USER_IDENTIFIER
: the identifier for your user account—for example,myemail@example.com
.ROLE
: the IAM role that you grant to your user account.
- Untuk deployment non-padat: Model penyediaan instance Compute Engine
- Untuk deployment padat: Pilih opsi konsumsi dan dapatkan kapasitas
Hubungi tim akun Anda dan berikan informasi berikut kepada Google untuk membuat draf permintaan pemesanan untuk masa mendatang:
Nomor project: nomor project tempat tim akun Anda membuat permintaan dan Compute Engine menyediakan kapasitas. Untuk mengetahui informasi tentang cara menemukan nomor project, lihat Menemukan nama, nomor, dan ID project dalam dokumentasi Resource Manager.
Jenis mesin: salah satu jenis mesin yang dioptimalkan untuk HPC H4D
Jumlah total: jumlah total VM yang akan dipesan. Anda hanya dapat mencadangkan kelipatan dua VM. Ukuran blok dan jumlah VM per blok bervariasi berdasarkan jenis mesin dan ketersediaan. Tim akun Anda dapat memberikan detail selengkapnya untuk permintaan Anda.
Zone: zona tempat Anda ingin memesan kapasitas. Untuk meninjau region dan zona yang tersedia untuk seri mesin H4D, lihat Region dan zona yang tersedia dan pilih
H4D
dalam daftar Pilih seri mesin.Waktu mulai: waktu mulai periode pemesanan. Format waktu mulai sebagai stempel waktu RFC 3339:
YYYY-MM-DDTHH:MM:SSOFFSET
Ganti kode berikut:
YYYY-MM-DD
: tanggal yang diformat sebagai tahun empat digit, bulan dua digit, dan hari dua digit dalam sebulan, yang dipisahkan oleh tanda hubung (-
).HH:MM:SS
: waktu yang diformat sebagai jam dua digit dengan menggunakan waktu 24 jam, menit dua digit, dan detik dua digit, yang dipisahkan oleh titik dua (:
).OFFSET
: zona waktu yang diformat sebagai offset Waktu Universal Terkoordinasi (UTC). Misalnya, untuk menggunakan Waktu Standar Pasifik (PST), tentukan-08:00
. Jika tidak ingin menggunakan offset, tentukanZ
.
Waktu berakhir: waktu berakhir periode pemesanan. Format sebagai stempel waktu RFC 3339.
Jenis berbagi: apakah hanya project Anda yang dapat menggunakan reservasi yang dibuat otomatis (
LOCAL
), atau project lain dapat menggunakan reservasi tersebut (SPECIFIC_PROJECTS
).Untuk membagikan kapasitas yang dipesan dengan project lain di organisasi Anda, lakukan hal berikut:
Jika belum melakukannya, verifikasi bahwa project tempat Google membuat permintaan diizinkan untuk membuat pemesanan bersama.
Berikan nomor project yang akan menggunakan bersama kapasitas yang dicadangkan. Anda dapat menentukan hingga 100 project di organisasi Anda.
Nama pemesanan: nama pemesanan yang dibuat secara otomatis oleh Compute Engine untuk menyediakan kapasitas yang dipesan. Compute Engine hanya membuat pemesanan yang ditargetkan secara khusus.
Nama komitmen: jika periode reservasi Anda satu tahun atau lebih, Anda harus membeli dan melampirkan komitmen berbasis resource ke resource yang dipesan. Anda dapat membeli komitmen dengan paket 1 tahun atau 3 tahun. Jika Anda membagikan kapasitas yang dipesan ke project lain, project tersebut hanya akan mendapatkan diskon jika menggunakan akun Penagihan Cloud yang sama dengan project tempat Anda memesan kapasitas. Untuk mengetahui detailnya, lihat Mengaktifkan berbagi CUD untuk komitmen berbasis resource.
Google akan membuat draf permintaan pemesanan untuk masa mendatang dan tim akun Anda akan menghubungi Anda.
Tinjau permintaan draf. Perhatikan hal-hal berikut saat meninjau permintaan reservasi:
- Anda dapat mulai menggunakan kapasitas yang dicadangkan hanya setelah tanggal dan waktu mulai yang ditentukan.
Saat waktu berakhir yang ditentukan tercapai, Compute Engine akan melakukan hal berikut:
- Menghapus pemesanan yang dibuat otomatis.
- Menghentikan atau menghapus VM yang menggunakan reservasi. Tindakan yang dilakukan didasarkan pada tindakan penghentian yang Anda tentukan saat membuat VM.
Anda tidak dapat mengubah apakah kapasitas yang dipesan dibagikan setelah Anda mengirimkan permintaan pemesanan.
Untuk meninjau draf permintaan pemesanan untuk masa mendatang, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman Reservations.
Klik tab Future reservations. Tabel Future Reservations mencantumkan setiap permintaan pemesanan untuk masa mendatang di project Anda, dan setiap kolom tabel menjelaskan properti.
Di kolom Name, klik nama permintaan draf yang dibuat Google untuk Anda. Halaman yang memberikan detail permintaan pemesanan untuk masa mendatang akan terbuka.
Di bagian Informasi dasar, pastikan detail permintaan, seperti Tanggal dan Jenis berbagi, sudah benar. Selain itu, jika Anda meminta komitmen, pastikan komitmen tersebut ditentukan.
Jika ada detail yang salah, hubungi tim akun Anda.
gcloud
Untuk melihat daftar permintaan pemesanan untuk masa mendatang di project Anda, gunakan perintah
gcloud beta compute future-reservations list
dengan flag--filter
ditetapkan kePROCUREMENT_STATUS=DRAFTING
:gcloud beta compute future-reservations list --filter=PROCUREMENT_STATUS=DRAFTING
Di output perintah, cari permintaan reservasi yang memiliki nama yang Anda berikan kepada tim akun Anda.
Untuk melihat detail permintaan draf, gunakan perintah
gcloud beta compute future-reservations describe
:gcloud beta compute future-reservations describe FUTURE_RESERVATION_NAME \ --zone=ZONE
Ganti kode berikut:
FUTURE_RESERVATION_NAME
: nama draf permintaan pemesanan untuk masa mendatang.ZONE
: zona tempat Google membuat permintaan.
Outputnya mirip dengan hal berikut ini:
autoCreatedReservationsDeleteTime: '2026-02-10T19:20:00Z' creationTimestamp: '2025-11-27T11:14:58.305-08:00' deploymentType: DENSE id: '7979651787097007552' kind: compute#futureReservation name: example-draft-request planningStatus: DRAFT reservationName: example-reservation schedulingType: INDEPENDENT selfLink: https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b/futureReservations/example-draft-request selfLinkWithId: https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b/futureReservations/7979651787097007552 specificReservationRequired: true specificSkuProperties: instanceProperties: localSsds: - diskSizeGb: '375' interface: NVME ... machineType: h4d-highmem-192-lssd totalCount: '2' status: autoCreatedReservations: - https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b/reservations/example-reservation fulfilledCount: '2' lockTime: '2026-01-27T19:15:00Z' procurementStatus: DRAFTING timeWindow: endTime: '2026-02-10T19:20:00Z' startTime: '2026-01-27T19:20:00Z' zone: https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b
Di output perintah, pastikan detail permintaan, seperti periode reservasi dan jenis berbagi, sudah benar. Selain itu, jika Anda membeli komitmen, verifikasi bahwa komitmen tersebut telah ditentukan.
Jika detailnya salah, hubungi tim akun Anda.
REST
Untuk melihat daftar permintaan pemesanan untuk masa mendatang dalam project Anda, buat permintaan
GET
ke metodefutureReservations.list
beta. Di URL permintaan, sertakan parameter kuerifilter
dan tetapkan kestatus.procurementStatus=DRAFTING
:GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations?filter=status.procurementStatus=DRAFTING
Ganti kode berikut:
PROJECT_ID
: ID project tempat Google membuat draf permintaan pemesanan untuk masa mendatang.ZONE
: zona tempat permintaan berada.
Dalam output permintaan, cari permintaan reservasi yang memiliki nama yang Anda berikan kepada tim akun Anda.
Untuk melihat detail draf permintaan, buat permintaan
GET
ke metodefutureReservations.get
beta :GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME
Ganti
FUTURE_RESERVATION_NAME
dengan nama permintaan pemesanan untuk masa mendatang versi draf.Outputnya mirip dengan hal berikut ini:
{ "specificSkuProperties": { "instanceProperties": { "machineType": "h4d-highmem-192-lssd", "localSsds": [ { "diskSizeGb": "375", "interface": "NVME" }, ... ] }, "totalCount": "2" }, "kind": "compute#futureReservation", "id": "7979651787097007552", "creationTimestamp": "2025-11-27T11:14:58.305-08:00", "selfLink": "https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b/futureReservations/example-draft-request", "selfLinkWithId": "https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b/futureReservations/7979651787097007552", "zone": "https://www.googleapis.com/compute/beta/projects/example-project/zones/europe-west4-b", "name": "example-draft-request", "timeWindow": { "startTime": "2026-01-27T19:20:00Z", "endTime": "2026-02-10T19:20:00Z" }, "status": { "procurementStatus": "DRAFTING", "lockTime": "2026-01-27T19:15:00Z" }, "planningStatus": "DRAFT", "specificReservationRequired": true, "reservationName": "example-reservation", "deploymentType": "DENSE", "schedulingType": "INDEPENDENT", "autoCreatedReservationsDeleteTime": "2026-02-10T19:20:00Z" }
Dalam output, pastikan detail permintaan, seperti periode reservasi dan jenis berbagi, sudah benar. Selain itu, jika Anda meminta komitmen, pastikan komitmen tersebut ditentukan.
Jika detailnya salah, hubungi tim akun Anda.
Jika semuanya sudah benar, kirim permintaan reservasi. Anda harus mengirimkan permintaan sebelum waktu mulai permintaan.
Untuk mengirimkan draf permintaan pemesanan untuk masa mendatang, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman Reservations.
Klik tab Future reservations.
Di kolom Name, klik nama permintaan draf yang dibuat Google untuk Anda.
Klik Kirim.
gcloud
Untuk mengirimkan draf permintaan untuk ditinjau, gunakan perintah
gcloud beta compute future-reservations update
dengan flag--planning-status
ditetapkan keSUBMITTED
:gcloud beta compute future-reservations update FUTURE_RESERVATION_NAME \ --planning-status=SUBMITTED \ --zone=ZONE
REST
Untuk mengirimkan draf permintaan untuk ditinjau, buat permintaan
PATCH
ke metode betafutureReservations.update
. Di URL permintaan, sertakan parameter kueriupdateMask
dan tetapkan keplanningStatus
:PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME?updateMask=planningStatus { "name": "FUTURE_RESERVATION_NAME", "planningStatus": "SUBMITTED" }
Google Cloud segera menyetujui permintaan yang Anda kirimkan.
Compute Engine membuat pemesanan kosong dengan resource yang Anda minta.
Untuk melihat reservasi, lihat Melihat kapasitas yang dicadangkan dalam dokumentasi AI Hypercomputer.
POLICY_NAME
: nama kebijakan penempatan ringkasMAX_DISTANCE
: konfigurasi jarak maksimum untuk instance VM Anda. Tentukan3
untuk menempatkan VM di blok yang berdekatan, dan2
untuk menempatkan VM di blok yang sama. Penempatan VM dilakukan berdasarkan upaya terbaik.REGION
: region tempat Anda ingin membuat kebijakan penempatan. Tentukan region tempat jenis mesin yang ingin Anda gunakan tersedia. Untuk mengetahui informasi tentang region yang tersedia, lihat Region dan zona yang tersedia.PROJECT_ID
: project ID AndaREGION
: region tempat Anda ingin membuat kebijakan penempatan. Tentukan region tempat jenis mesin yang ingin Anda gunakan tersedia. Untuk mengetahui informasi tentang region yang tersedia, lihat Region dan zona yang tersedia.POLICY_NAME
: nama kebijakan penempatan ringkasMAX_DISTANCE
: konfigurasi jarak maksimum untuk instance VM Anda. Tentukan3
untuk menempatkan VM di blok yang berdekatan, dan tentukan2
untuk menempatkan VM di blok yang sama. Penempatan VM dilakukan berdasarkan upaya terbaik.- Jenis NIC
GVNIC
: menggunakan drivergve
untuk traffic TCP/IP dan Internet untuk komunikasi VM-VM dan VM-Internet normal - Jenis NIC
IRDMA
: menggunakan driver IDPF/iRDMA untuk komunikasi jaringan RDMA antar-instance - Setiap antarmuka jaringan harus terhubung ke jaringan Virtual Private Cloud yang berbeda.
- Untuk mengonfigurasi antarmuka jaringan IRDMA, Anda harus membuat jaringan VPC dengan profil jaringan Falcon RDMA di region dan zona yang sama dengan instance.
- Untuk antarmuka jaringan GVNIC, jika Anda tidak menentukan jaringan atau subnet, Compute Engine akan menggunakan jaringan VPC default dan subnet otomatis yang berada di dalam region yang sama dengan instance tersebut.
- Jika Anda menentukan subnet, tetapi tidak menentukan jaringan, Compute Engine akan menyimpulkan jaringan dari subnet yang ditentukan.
- Jika menentukan jaringan, Anda harus menentukan subnet dan subnet tersebut harus berasal dari jaringan yang sama. Jika tidak, pembuatan instance akan gagal.
Untuk membuat jaringan host bagi antarmuka jaringan
GVNIC
, lihat Membuat dan mengelola jaringan VPC.Jika hanya mengonfigurasi satu antarmuka jaringan
GVNIC
, Anda dapat menggunakan jaringan VPC default dan subnet otomatis yang berada di region yang sama dengan instance.Untuk membuat jaringan untuk antarmuka jaringan
IRDMA
, lihat Membuat jaringan VPC dengan profil jaringan RDMA. Gunakan nilai default untuk unit transmisi maksimum (MTU) untuk jaringan RDMA, yaitu8896
.Opsional: Sebelum menjalankan skrip, buat daftar profil jaringan VPC Falcon untuk memverifikasi apakah ada profil yang tersedia. Profil jaringan VPC Falcon tidak tersedia di semua zona.
gcloud beta compute network-profiles list --filter=falcon
Salin kode berikut dan jalankan di jendela shell Linux.
GVNIC_NAME_PREFIX
: awalan nama yang akan digunakan untuk jaringan dan subnet VPC standar yang menggunakan jenis NIC GVNIC.REGION
: region tempat Anda ingin membuat jaringan. Ini harus sesuai dengan zona yang ditentukan untuk flag--network-profile
, saat membuat VPC Falcon. Misalnya, jika Anda menentukan zona sebagaieurope-west4-b
, maka region Anda adalaheurope-west4
.IP_RANGE
: rentang alamat IP di luar jaringan VPC yang akan digunakan untuk aturan firewall SSH. Sebagai praktik terbaik, tentukan rentang alamat IP tertentu yang Anda perlu izinkan aksesnya, bukan semua sumber IPv4 atau IPv6. Jangan gunakan0.0.0.0/0
atau::/0
sebagai rentang sumber karena hal ini memungkinkan traffic dari semua sumber IPv4 atau IPv6, termasuk sumber di luar Google Cloud.RDMA_NAME_PREFIX
: awalan nama yang akan digunakan untuk jaringan VPC dan subnet yang menggunakan jenis NIC IRDMA.ZONE
: zona tempat Anda ingin membuat jaringan dan instance komputasi. Gunakan salah satuus-central1-a
ataueurope-west4-b
.- Anda tidak dapat menggunakan Migrasi langsung selama peristiwa pemeliharaan host dengan instance yang memiliki antarmuka jaringan Cloud RDMA. Anda harus mengonfigurasi instance agar dihentikan selama peristiwa pemeliharaan.
- Anda hanya dapat menggunakan alamat IPv4 dengan antarmuka jaringan RDMA dan jaringan VPC dengan profil jaringan Falcon RDMA.
- Anda hanya dapat menggunakan seri mesin H4D untuk membuat instance yang dioptimalkan untuk HPC dengan Cloud RDMA.
NAME_PATTERN
: pola nama untuk instance. Misalnya, menggunakanvm-#
untuk pola nama akan menghasilkan instance dengan nama sepertivm-1
danvm-2
, hingga jumlah yang ditentukan oleh tanda--count
.COUNT
: jumlah instance yang akan dibuat.MACHINE_TYPE
: jenis mesin yang akan digunakan untuk instance. Gunakan salah satu jenis mesin H4D, misalnyah4d-highmem-192-lssd
.IMAGE_FAMILY
: kelompok image dari image OS yang ingin Anda gunakan, misalnyarocky-linux-9-optimized-gcp
. Untuk mengetahui daftar image OS yang didukung, lihat Sistem operasi yang didukung. Pilih versi image OS yang mendukung antarmuka IRDMA.IMAGE_PROJECT
: project ID untuk image OS, misalnya,rocky-linux-cloud
.RESERVATION
: untuk nilai ini, Anda dapat menentukan salah satu opsi berikut:- Jika Anda menggunakan kebijakan penempatan atau jika VM
dapat ditempatkan di mana saja dalam blok reservasi, tentukan
nama reservasi, misalnya,
h4d-highmem-exfr-prod
. - Jika Anda ingin instance ditempatkan dalam blok tertentu dan Anda tidak
menggunakan kebijakan penempatan yang ringkas, tentukan nama blok reservasi
menggunakan format
RESERVATION_NAME/reservationBlocks/
RESERVATION_BLOCK_NAME, for example,
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1`.
Untuk melihat nama reservasi atau blok reservasi yang tersedia, lihat Melihat kapasitas.
- Jika Anda menggunakan kebijakan penempatan atau jika VM
dapat ditempatkan di mana saja dalam blok reservasi, tentukan
nama reservasi, misalnya,
REGION
: tentukan region tempat jenis mesin yang ingin Anda gunakan tersedia, misalnyaeurope-west1
. Untuk mengetahui informasi tentang region yang tersedia, lihat Region dan zona yang tersedia.DISK_SIZE
: Opsional: ukuran boot disk dalam GiB. Nilai harus berupa bilangan bulat.GVNIC_NAME_PREFIX
: awalan nama yang Anda gunakan saat membuat jaringan VPC dan subnet untuk antarmuka GVNIC.Untuk antarmuka jaringan GVNIC, Anda dapat menghilangkan tanda
network
dansubnet
untuk menggunakan jaringandefault
.STACK_TYPE
: Opsional: jenis stack untuk antarmuka jaringan GVNIC.STACK_TYPE
harus salah satu dari:IPV4_ONLY
, atauIPV4_IPV6
. Nilai defaultnya adalahIPV4_ONLY
.EXTERNAL_IPV4_ADDRESS
: Opsional: alamat IPv4 eksternal statis yang akan digunakan dengan antarmuka jaringan. Anda harus telah mencadangkan alamat IPv4 eksternal sebelumnya. Lakukan salah satu hal berikut:- Tentukan alamat IPv4 yang valid dari subnet.
- Gunakan tanda
no-address
jika Anda tidak ingin antarmuka jaringan memiliki alamat IP eksternal. - Tentukan
address=''
jika Anda ingin antarmuka menerima alamat IP eksternal sementara.
Untuk menentukan alamat IPv6 eksternal, gunakan flag
--external-ipv6-address
.RDMA_NAME_PREFIX
: awalan nama yang Anda gunakan saat membuat jaringan dan subnet VPC untuk antarmuka IRDMA.- Sertakan objek
networkInterfaces
dengan minimal dua konfigurasi jaringan, satu untuk antarmuka jaringan gVNIC dan satu untuk antarmuka jaringan RDMA. - Jika Anda memilih untuk menggunakan kebijakan penempatan rapat, tambahkan juga
objek
resourcePolicies
ke isi permintaan. - Untuk menggunakan blok kapasitas yang dicadangkan saat membuat instance, tetapkan
provisioningModel
keRESERVATION_BOUND
. - Anda dapat menyesuaikan properti instance lainnya sesuai kebutuhan.
Ganti baris berikut dalam isi permintaan:
PROJECT_ID
: project ID dari project tempat Anda ingin membuat instance.ZONE
: tentukan zona tempat jenis mesin yang ingin Anda gunakan tersedia. Jika Anda menggunakan kebijakan penempatan rapat, gunakan zona di region yang sama dengan kebijakan penempatan rapat. Untuk mengetahui informasi tentang region tempat jenis mesin H4D tersedia, lihat Region dan zona yang tersedia.NAME_PATTERN
: pola nama untuk instance. Misalnya, menggunakanvm-#
untuk pola nama akan menghasilkan instance dengan nama sepertivm-1
danvm-2
, hingga jumlah yang ditentukan oleh kolomcount
.COUNT
: jumlah instance yang akan dibuat.MACHINE_TYPE
: jenis mesin yang akan digunakan untuk instance. Gunakan salah satu jenis mesin H4D, misalnyah4d-highmem-192-lssd
.DISK_SIZE
: ukuran boot disk dalam GiB.IMAGE_PROJECT
: project ID untuk image OS, misalnya,debian-cloud
.IMAGE_FAMILY
: kelompok image dari image OS yang ingin Anda gunakan, misalnyarocky-linux-9-optimized-gcp
. Untuk mengetahui daftar image OS yang didukung, lihat Sistem operasi yang didukung. Pilih versi image OS yang mendukung antarmuka IRDMA.GVNIC_NAME_PREFIX
: awalan nama yang Anda gunakan saat membuat jaringan VPC dan subnet untuk antarmuka GVNICUntuk antarmuka jaringan GVNIC, Anda dapat menghilangkan kolom
network
dansubnetwork
untuk menggunakan jaringandefault
.EXTERNAL_IPV4_ADDRESS
: Opsional: alamat IPv4 eksternal statis yang akan digunakan dengan antarmuka jaringan. Anda harus telah mencadangkan alamat IPv4 eksternal sebelumnya.RDMA_NAME_PREFIX
: awalan nama yang Anda gunakan saat membuat jaringan dan subnet VPC untuk antarmuka IRDMA.RESERVATION
: untuk nilai ini, Anda dapat menentukan salah satu opsi berikut:- Jika Anda menggunakan kebijakan penempatan atau jika VM
dapat ditempatkan di mana saja dalam blok reservasi, tentukan
nama reservasi, misalnya,
h4d-highmem-exfr-prod
. - Jika Anda ingin instance ditempatkan dalam blok tertentu dan Anda tidak
menggunakan kebijakan penempatan rapat, tentukan nama blok pemesanan
sebagai
RESERVATION_NAME/reservationBlocks/
RESERVATION_BLOCK_NAME, for example,
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1`.
Untuk melihat nama reservasi atau blok reservasi yang tersedia, lihat Melihat kapasitas.
- Jika Anda menggunakan kebijakan penempatan atau jika VM
dapat ditempatkan di mana saja dalam blok reservasi, tentukan
nama reservasi, misalnya,
Opsional: Jika Anda menggunakan kebijakan penempatan rapat, ganti
...
di isi permintaan dengan kolom berikut:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ],
Ganti kode berikut:
PROJECT_ID
: project ID kebijakan penempatan ringkas.REGION
: region kebijakan penempatan yang ringkas.POLICY_NAME
: nama kebijakan penempatan yang ringkas.
Kirim permintaan.
Di konsol Google Cloud , buka halaman VM instances.
Pilih baris yang berisi instance VM yang Anda buat dalam tutorial ini.
Klik
Hapus, lalu klik Hapus untuk mengonfirmasi.Untuk menghapus kebijakan penempatan, gunakan perintah
gcloud compute resource-policies delete
.gcloud compute resource-policies delete POLICY_NAME \ --region=REGION
Ganti kode berikut:
POLICY_NAME
: nama kebijakan penempatanREGION
: region tempat kebijakan penempatan berada
Mencadangkan blok kapasitas untuk deployment Anda
Dokumen ini menjelaskan cara memesan blok kapasitas dengan meminta tim akun Anda membuat permintaan pemesanan untuk masa mendatang bagi Anda. Gunakan jenis reservasi ini untuk mendapatkan kapasitas untuk deployment padat instance VM. Untuk ringkasan semua opsi konsumsi, lihat:
Tindakan ini memungkinkan Anda memesan blok kapasitas untuk durasi yang ditentukan, dimulai pada tanggal dan waktu tertentu yang Anda pilih. Berdasarkan permintaan Anda, Google akan membuat draf permintaan pemesanan untuk masa mendatang. Setelah Anda meninjau dan mengirimkan permintaan draf ini, dan Google Cloud menyetujuinya, Compute Engine akan otomatis membuat (membuat secara otomatis) pemesanan kosong. Kemudian, pada waktu mulai yang Anda pilih, Compute Engine akan menyediakan kapasitas yang Anda minta ke dalam pemesanan yang dibuat otomatis. Selanjutnya, Anda dapat menggunakan reservasi untuk membuat instance virtual machine (VM) hingga periode reservasi berakhir.
Sebagai bagian dari proses permintaan pemesanan untuk masa mendatang, Google mengelola kuota untuk resource yang dipesan. Anda tidak perlu meminta kuota. Pada waktu mulai pemesanan untuk masa mendatang yang disetujui, Google akan meningkatkan kuota Anda jika Anda tidak memilikinya untuk resource yang dipesan.
Untuk memesan blok kapasitas, selesaikan langkah-langkah berikut:
Opsional: Buat kebijakan penempatan
Gunakan kebijakan penempatan jika Anda ingin VM ditempatkan sedekat mungkin satu sama lain. Namun, jika Anda ingin VM berada di blok tertentu, lewati langkah ini dan berikan nama blok yang diperlukan selama pembuatan VM massal.
Instance yang berkomunikasi menggunakan Cloud RDMA harus berada dalam satu zona, dan, lebih ketat lagi, dalam satu fabric cluster. Anda dapat membuat kebijakan penempatan rapat dan menentukan nilai jarak maksimum untuk menetapkan kerapatan minimum dalam zona. Ada batasan jumlah instance yang dapat Anda tetapkan kebijakan penempatan rapatnya saat Anda menentukan nilai jarak maksimum, dan batasnya berubah bergantung pada nilai yang Anda pilih.
Untuk membuat kebijakan penempatan rapat, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan penempatan yang ringkas, gunakan
perintah gcloud beta compute resource-policies create group-placement
.
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--max-distance=MAX_DISTANCE \
--region=REGION
Ganti kode berikut:
REST
Untuk membuat kebijakan penempatan ringkas, buat permintaan POST
ke
metode beta.resourcePolicies.insert
.
Dalam isi permintaan, sertakan kolom collocation
yang ditetapkan ke COLLOCATED
,
dan kolom maxDistance
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"maxDistance": "MAX_DISTANCE"
}
}
Ganti kode berikut:
Membuat jaringan Virtual Private Cloud
Instance yang mendukung RDMA memerlukan minimal dua antarmuka jaringan (NIC):
Instance yang menggunakan Cloud RDMA hanya dapat memiliki satu antarmuka IRDMA
. Anda dapat menambahkan hingga delapan antarmuka jaringan GVNIC
tambahan dengan total 10 NIC per instance.
Tinjau aturan berikut untuk mengonfigurasi antarmuka jaringan untuk instance:
Untuk menyiapkan jaringan Virtual Private Cloud (VPC) Falcon yang akan digunakan dengan instance Anda, Anda dapat mengikuti petunjuk yang didokumentasikan atau menggunakan skrip yang disediakan.
Panduan petunjuk
Untuk membuat jaringan, Anda dapat menggunakan petunjuk berikut:
Skrip
Anda dapat membuat hingga sembilan antarmuka jaringan GVNIC
dan satu antarmuka jaringan IRDMA
per instance. Setiap antarmuka jaringan harus terhubung ke jaringan yang terpisah. Untuk membuat jaringan, Anda dapat menggunakan skrip berikut, yang membuat dua jaringan untuk GVNIC
dan satu jaringan untuk IRDMA
yang menggunakan profil jaringan VPC Falcon.
#!/bin/bash
# Create standard VPC (networks and subnets) for the two GVNIC interfaces
for N in $(seq 0 1); do
gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \
--subnet-mode=custom
gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \
--network=GVNIC_NAME_PREFIX-net-$N \
--region=<var>REGION</var> \
--range=10.$N.0.0/16
gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \
--network=GVNIC_NAME_PREFIX-net-$N \
--action=ALLOW \
--rules=tcp:0-65535,udp:0-65535,icmp \
--source-ranges=10.0.0.0/8
done
# Create SSH firewall rules
gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \
--network=GVNIC_NAME_PREFIX-net-0 \
--action=ALLOW \
--rules=tcp:22 \
--source-ranges=IP_RANGE
# Optional: Create a firewall rule for the external IP address for the
# first GVNIC network interface
gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \
--network=GVNIC_NAME_PREFIX-net-0 \
--action=ALLOW \
--rules=icmp \
--source-ranges=IP_RANGE
# Create a network for the RDMA over Falcon network interface
gcloud beta compute networks create RDMA_NAME_PREFIX-irdma \
--network-profile=ZONE-vpc-falcon \
--subnet-mode custom
# Create a subnet for the RDMA network
gcloud beta compute networks subnets create RDMA_NAME_PREFIX-irdma-sub \
--network=RDMA_NAME_PREFIX-irdma \
--region=REGION \
--range=10.2.0.0/16
# offset to avoid overlap with GVNIC subnet ranges
Ganti kode berikut:
Membuat instance yang mendukung RDMA secara massal
Tinjau batasan berikut sebelum membuat instance H4D dengan Cloud RDMA:
Langkah-langkah berikut menunjukkan cara membuat instance yang mendukung RDMA secara massal dengan dua antarmuka jaringan pertama dikonfigurasi sebagai antarmuka GVNIC, dan antarmuka jaringan ketiga dikonfigurasi sebagai antarmuka jaringan IRDMA:
gcloud
Gunakan perintah gcloud compute instances create
dengan tiga flag --network-interface
, dua untuk antarmuka GVNIC dan
satu untuk antarmuka IRDMA. Jika Anda memilih untuk menggunakan kebijakan penempatan rapat, tambahkan juga flag berikut: --resource-policies=POLICY_NAME
.
Ganti POLICY_NAME
dengan nama kebijakan penempatan
padat. Anda dapat menyesuaikan opsi instance lainnya sesuai kebutuhan.
gcloud compute instances bulk create \
--name-pattern=NAME_PATTERN \
--count=COUNT \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image=project= IMAGE_PROJECT \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination=action=DELETE \
--maintenance-policy=TERMINATE \
--region=REGION \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--network-interface=nic-type=GVNIC, \
network=GVNIC_NAME_PREFIX-net-0, \
subnet=GVNIC_NAME_PREFIX-sub-0, \
stack-type=STACK_TYPE, \
address=EXTERNAL_IPV4_ADDRESS \
--network-interface=nic-type=GVNIC, \
network=GVNIC_NAME_PREFIX-net-1, \
subnet=GVNIC_NAME_PREFIX-sub-1, no-address \
--network-interface=nic-type=IRDMA, \
network=RDMA_NAME_PREFIX-irdma, \
subnet=RDMA_NAME_PREFIX-irdma-sub, \
stack-type=IPV4_ONLY, no-address
Ganti kode berikut:
REST
Untuk membuat instance yang mendukung RDMA secara massal, buat permintaan POST
ke
metode beta instances.bulkInsert
dengan setelan berikut:
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert
{
"namePattern":"NAME_PATTERN",
"count":"COUNT",
"instanceProperties":{
"machineType":"MACHINE_TYPE",
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb":"DISK_SIZE",
"diskType":"hyperdisk-balanced",
"sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode":"READ_WRITE",
"type":"PERSISTENT"
}
],
"networkInterfaces": [
{
"network": "GVNIC_NAME_PREFIX-net-0",
"subnetwork": "GVNIC_NAME_PREFIX-sub-0",
"accessConfigs": [
{
"type": "ONE_TO_ONE_NAT",
"name": "External IP",
"natIP": "EXTERNAL_IPV4_ADDRESS"
}
],
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "GVNIC_NAME_PREFIX-net-1",
"subnetwork": "GVNIC_NAME_PREFIX-sub-1",
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "RDMA_NAME_PREFIX-irdma",
"subnetwork": "RDMA_NAME_PREFIX-irdma-sub",
"stackType": "IPV4_ONLY",
"nicType": "IRDMA",
}
],
"reservationAffinity":{
"consumeReservationType":"SPECIFIC_RESERVATION",
"key":"compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
],
"scheduling":{
"provisioningModel":"RESERVATION_BOUND",
"instanceTerminationAction":"DELETE",
"onHostMaintenance": "TERMINATE",
"automaticRestart":true
}
},
...
}
}
Selesaikan langkah-langkah berikut:
Pembersihan
Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.
Menghapus project Anda
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID