Operator beban kerja dapat meneruskan opsi ke VM beban kerja Confidential Space untuk menentukan perilakunya sebelum dijalankan. Meskipun beberapa flag memiliki nilai wajib yang tidak berubah, Anda masih perlu membuat pilihan berikut:
Apakah akan mendasari VM pada image Confidential Space produksi atau debug.
Apakah akan menggunakan teknologi AMD SEV atau Intel TDX Confidential Computing.
Variabel metadata VM yang perlu diteruskan, yang mencakup detail seperti image container workload yang akan dijalankan, apakah akan mencatat ke Cloud Logging, dan variabel lingkungan yang akan ditetapkan.
Akun layanan yang akan dilampirkan ke VM untuk menjalankan beban kerja, dan izin yang diperlukan untuk mengakses data rahasia di project lain dan menulis hasilnya di suatu tempat.
Zona tempat instance VM harus berjalan.
Berikut adalah contoh yang membuat Confidential VM di zona us-west1-b
berdasarkan
image Confidential Space produksi terbaru, dan menjalankan penampung Docker yang disebut
WORKLOAD_CONTAINER_NAME:
gcloud compute instances create workload-vm-name \
--confidential-compute-type=CONFIDENTIAL_COMPUTING_TECHNOLOGY \
--machine-type=MACHINE_TYPE_NAME \
--maintenance-policy=MAINTENANCE_POLICY \
--shielded-secure-boot \
--image-project=confidential-space-images \
--image-family=IMAGE_FAMILY \
--metadata="^~^tee-image-reference=us-docker.pkg.dev/WORKLOAD_AUTHOR_PROJECT_ID/REPOSITORY_NAME/WORKLOAD_CONTAINER_NAME:latest" \
--service-account=WORKLOAD_SERVICE_ACCOUNT_NAME@WORKLOAD_OPERATOR_PROJECT_ID.iam.gserviceaccount.com \
--scopes=cloud-platform \
--zone=us-west1-b
Opsi yang digunakan dalam contoh ini dijelaskan dalam tabel berikut.
Flag | Deskripsi |
---|---|
--confidential-compute-type |
Wajib. Memberi tahu Compute Engine teknologi Confidential Computing yang akan digunakan saat membuat instance Confidential VM.
Ganti
Teknologi Confidential Computing harus cocok dengan kelompok image yang Anda pilih. |
--machine-type |
Opsional. Menentukan nama jenis mesin Confidential VM. Lihat Konfigurasi yang didukung untuk jenis mesin yang mendukung AMD SEV dan Intel TDX (Pratinjau). |
--maintenance-policy |
Untuk jenis mesin N2D yang menggunakan SEV, tetapkan ke MIGRATE
untuk dukungan migrasi langsung. Untuk semua jenis mesin lainnya, tetapkan nilai ini
ke TERMINATE , karena
tidak mendukung migrasi langsung.
|
--shielded-secure-boot |
Wajib. Memberi tahu Compute Engine untuk menggunakan Secure Boot untuk instance. |
--image-project=confidential-space-images |
Wajib. Memberi tahu Compute Engine untuk mencari di project confidential-space-images untuk
image Confidential Space.
|
|
Wajib. Memberi tahu Compute Engine untuk menggunakan image Confidential Space terbaru,
yang merupakan bagian dari project
Untuk menggunakan image produksi dengan beban kerja akhir yang memproses data rahasia, ganti
Untuk menggunakan image debug untuk
pemantauan dan proses debug, ganti
Kelompok image yang Anda gunakan harus cocok dengan teknologi Confidential Computing yang Anda pilih. |
--metadata |
Wajib. Mengubah perilaku VM Ruang Rahasia dengan meneruskan
variabel. Kunci dan nilai Untuk mengetahui pasangan nilai kunci yang tersedia, lihat Variabel metadata. |
--service-account |
Opsional. Akun layanan yang terpasang ke instance VM yang menjalankan beban kerja, dan meniru identitas akun layanan yang terpasang ke kumpulan identitas beban kerja di project lain. Jika tidak ditentukan, akun layanan Compute Engine default akan digunakan. |
--scopes=cloud-platform |
Wajib. Menetapkan
cakupan akses.
Cakupan cloud-platform adalah cakupan OAuth untuk
sebagian besar layanan ,
dan memungkinkan VM berkomunikasi dengan verifier pengesahan.
|
--zone |
Wajib. Zona tempat instance VM berjalan. Ruang Rahasia memerlukan layanan berikut, yang tersedia di lokasi tertentu: |
Akun layanan terlampir
Akun layanan harus dilampirkan ke Confidential VM beban kerja untuk menjalankan beban kerja. Akun layanan harus disiapkan dengan cara berikut:
Dengan peran berikut:
roles/confidentialcomputing.workloadUser
untuk membuat token pengesahan.roles/artifactregistry.reader
untuk mengambil image container beban kerja yang disimpan di Artifact Registry.roles/logging.logWriter
jika Anda ingin mengalihkanSTDOUT
danSTDERR
ke Cloud Logging.
Dengan akses baca ke tempat kolaborator data menyimpan data rahasia mereka, misalnya, bucket Cloud Storage atau tabel BigQuery.
Dengan akses tulis ke tempat workload harus menghasilkan output data, misalnya, bucket Cloud Storage. Kolaborator data harus memiliki akses baca ke lokasi ini.
Selain itu, kolaborator data dan operator beban kerja perlu menyiapkan hal-hal berikut:
Kolaborator data harus menambahkan akun layanan ke penyedia workload identity pool mereka sebagai kondisi atribut:
'WORKLOAD_SERVICE_ACCOUNT_NAME@DATA_COLLABORATOR_PROJECT_ID.iam.gserviceaccount.com' in assertion.google_service_accounts
Operator beban kerja memerlukan peran
roles/iam.serviceAccountUser
untuk meniru akun layanan. Hal ini memungkinkan mereka melampirkan VM workload sehingga dapat menjalankan workload.
Variabel metadata
Anda dapat mengubah perilaku VM workload Confidential Space dengan meneruskan variabel
ke opsi --metadata
saat membuat VM.
Untuk meneruskan beberapa variabel, tetapkan pembatas terlebih dahulu dengan menambahkan awalan
nilai --metadata
dengan ^~^
. Tindakan ini akan menetapkan pemisah ke ~
, karena ,
digunakan dalam
nilai variabel.
Contoh:
metadata="^~^tee-restart-policy=Always~tee-image-reference=us-docker.pkg.dev/WORKLOAD_AUTHOR_PROJECT_ID/REPOSITORY_NAME/WORKLOAD_CONTAINER_NAME:latest"
Tabel berikut menjelaskan variabel metadata yang dapat Anda tetapkan untuk VM beban kerja.
Kunci metadata | Jenis | Deskripsi dan nilai |
---|---|---|
Berinteraksi dengan:
|
String |
Wajib. Ini mengarah ke lokasi penampung beban kerja. Contoh
|
Berinteraksi dengan:
|
Array string JSON |
Mengganti petunjuk
CMD
yang ditentukan dalam Contoh
|
Berinteraksi dengan:
|
String yang ditentukan |
Output Nilai yang valid adalah:
Volume log yang tinggi di konsol serial dapat memengaruhi performa beban kerja. Contoh
|
|
Bilangan bulat |
Menetapkan ukuran dalam kB untuk pemasangan memori bersama
Contoh
|
Berinteraksi dengan:
|
String |
Menetapkan variabel lingkungan dalam penampung beban kerja. Penulis beban kerja
juga harus menambahkan nama variabel lingkungan ke
kebijakan peluncuran
Contoh
|
Berinteraksi dengan:
|
String |
Daftar akun layanan yang dapat ditiru identitasnya oleh operator workload. Operator beban kerja harus diizinkan untuk meniru identitas akun layanan. Beberapa akun layanan dapat dicantumkan, yang dipisahkan dengan koma. Contoh
|
Berinteraksi dengan:
|
Boolean |
Nilai defaultnya adalah Contoh
|
Berinteraksi dengan:
|
String |
Daftar definisi pemasangan yang dipisahkan titik koma. Definisi mount
terdiri dari daftar pasangan nilai kunci yang dipisahkan koma,
yang memerlukan Contoh
|
Berinteraksi dengan:
|
String yang ditentukan |
Kebijakan mulai ulang peluncur penampung saat beban kerja berhenti Nilai yang valid adalah:
Variabel ini hanya didukung oleh image Confidential Space produksi. Contoh
|
Berinteraksi dengan:
|
String |
Daftar repositori penampung yang dipisahkan koma yang menyimpan tanda tangan yang dihasilkan oleh Sigstore Cosign. Contoh
|
Penskalaan
Untuk penskalaan dan ketersediaan tinggi workload Confidential Space produksi, lihat Grup Instance Terkelola.