Operator workload dapat meneruskan opsi ke VM workload Confidential Space untuk menentukan perilakunya sebelum dijalankan. Meskipun beberapa tanda memiliki nilai wajib yang tidak berubah, Anda tetap harus membuat pilihan berikut:
Apakah akan mendasarkan VM pada image Confidential Space produksi atau debug.
Apakah akan menggunakan teknologi Komputasi Rahasia AMD SEV atau Intel TDX.
Variabel metadata VM apa yang perlu diteruskan, yang mencakup detail seperti image container workload mana yang akan dijalankan, apakah akan mencatat ke Cloud Logging, dan variabel lingkungan apa yang akan ditetapkan.
Akun layanan mana yang akan dilampirkan ke VM untuk menjalankan beban kerja, dan izin apa 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 container 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 sesuai 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. |
--maintenance-policy |
Untuk jenis mesin N2D yang menggunakan SEV, tetapkan ini 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 Boot Aman untuk instance. |
--image-project=confidential-space-images |
Wajib. Memberi tahu Compute Engine untuk mencari di project confidential-space-images
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 Confidential Space dengan meneruskan
variabel. Kunci dan nilai Untuk pasangan nilai/kunci yang tersedia, lihat Variabel metadata. |
--service-account |
Opsional. Akun layanan yang terpasang ke instance VM yang menjalankan workload, dan meniru identitas akun layanan yang terpasang ke kumpulan identitas workload 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 Google Cloud layanan,
dan memungkinkan VM berkomunikasi dengan verifier pengesahan.
|
--zone |
Wajib. Zona tempat instance VM berjalan. Ruang Privasi 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 mengeluarkan 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 menyamar sebagai akun layanan. Hal ini memungkinkan mereka melampirkannya ke VM workload sehingga dapat menjalankan workload.
Variabel metadata
Anda dapat mengubah perilaku VM workload Confidential Space dengan meneruskan variabel
ke opsi --metadata
saat Anda membuat VM.
Untuk meneruskan beberapa variabel, tetapkan terlebih dahulu pembatas dengan menambahkan awalan
nilai --metadata
dengan ^~^
. Tindakan ini menetapkan pembatas 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 container workload. Contoh
|
Berinteraksi dengan:
|
Array string JSON |
Menambahkan kemampuan Linux tambahan ke container workload. Contoh
|
Berinteraksi dengan:
|
Boolean |
Nilai defaultnya adalah Contoh
|
Berinteraksi dengan:
|
Array string JSON |
Menggantikan
petunjuk
CMD yang ditentukan dalam
Contoh
|
Berinteraksi dengan:
|
String yang ditentukan |
Menampilkan Nilai yang valid adalah:
Volume log yang tinggi di konsol serial dapat memengaruhi performa workload. Contoh
|
|
Bilangan bulat |
Menetapkan ukuran dalam kB dari pemasangan memori bersama Contoh
|
Berinteraksi dengan:
|
String |
Menetapkan variabel lingkungan dalam container 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 workload 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 dengan titik koma. Definisi
pemasangan terdiri dari daftar pasangan nilai kunci yang dipisahkan koma,
yang memerlukan Contoh
|
Berinteraksi dengan:
|
String yang ditentukan |
Kebijakan mulai ulang peluncur container saat workload 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 Ruang Rahasia produksi, lihat Managed Instance Groups.