בדף הזה מוסבר איך להשתמש ב-Virtual Trusted Platform Modules (vTPM) עם עומסי עבודה רגילים של Google Kubernetes Engine (GKE) שפועלים ב-Confidential GKE Nodes. מודולי vTPM מספקים שלמות פלטפורמה יחד עם תכונות אבטחה אחרות, כמו אימות מרחוק, איטום סודות ויצירת מספרים אקראיים. בדף הזה מוסבר איך להתקין תוסף למכשיר ואיך להפוך את מודולי ה-vTPM לגלויים לאפליקציות GKE.
הדף הזה מיועד למהנדסי אבטחה שרוצים לגשת מרחוק לתכונות האבטחה של vTPM באפליקציות GKE.
לפני שקוראים את הדף הזה, חשוב להכיר את התכונות הבאות:
לפני שמתחילים
לפני שמתחילים, חשוב לוודא שביצעתם את הפעולות הבאות:
- מפעילים את ממשק Google Kubernetes Engine API. הפעלת Google Kubernetes Engine API
- אם רוצים להשתמש ב-CLI של Google Cloud למשימה הזו, צריך להתקין ואז להפעיל את ה-CLI של gcloud. אם התקנתם בעבר את ה-CLI של gcloud, מריצים את הפקודה
gcloud components updateכדי לקבל את הגרסה העדכנית. יכול להיות שגרסאות קודמות של ה-CLI של gcloud לא יתמכו בהרצת הפקודות שמופיעות במסמך הזה.
מגבלות
אפשר להפוך את ה-vTPM לגלוי לאפליקציות GKE רק בצמתים של GKE סודי שמשתמשים ב-AMD SEV כטכנולוגיית Confidential Computing. אין תמיכה ב-Intel TDX וב-AMD SEV-SNP.
זמינות
אפשר להשתמש ב-Confidential GKE Nodes בתנאים הבאים:
תמונות צמתים שמשתמשות במערכת הפעלה שמותאמת לקונטיינרים עם containerd (
cos_containerd).
יצירת אשכול Confidential GKE Nodes
אפשר ליצור אשכול חדש עם הפעלה של Confidential GKE Nodes באמצעות ה-CLI של gcloud או המסוף Google Cloud . אם מפעילים את Confidential GKE Nodes ברמת האשכול, כל הצמתים באשכול הופכים ל-Confidential VMs.
gcloud
יוצרים אשכול חדש שמשתמש ב-AMD SEV כטכנולוגיית Confidential Computing:
gcloud container clusters create CLUSTER_NAME \
--machine-type=MACHINE_TYPE \
--confidential-node-type=SEV
מחליפים את מה שכתוב בשדות הבאים:
- CLUSTER_NAME: השם של האשכול החדש.
- MACHINE_TYPE: סוג המכונה של מאגר הצמתים שמוגדר כברירת מחדל באשכול, שחייב להיות מסוג N2D או C2D.
המסוף
- נכנסים לדף Create a Kubernetes cluster במסוף Google Cloud .
- בתפריט הניווט, בקטע Cluster (אשכול), לוחצים על Security (אבטחה).
- בוחרים באפשרות הפעלת Confidential GKE Nodes.
- בתיבת הדו-שיח לאישור, לוחצים על ביצוע שינויים.
- בתפריט Type (סוג), בוחרים באפשרות AMD SEV.
- כדי להגדיר חלקים אחרים באשכול, פועלים לפי ההוראות במאמר יצירת אשכול אזורי.
- לוחצים על יצירה.
אחרי שיוצרים אשכול עם Confidential GKE Nodes, אפשר להשתמש רק בצמתים חסויים בכל מאגרי הצמתים שנוצרים באשכול הזה. אי אפשר ליצור מאגרי צמתים רגילים באשכולות שמופעל בהם Confidential GKE Nodes. בנוסף, אי אפשר להשבית את Confidential GKE Nodes במאגרי צמתים ספציפיים כשמפעילים את Confidential GKE Nodes ברמת האשכול.
הפעלת vTPM בעומסי עבודה של Confidential GKE Nodes
כדי להריץ vTPM בעומסי עבודה של Confidential GKE Nodes, Google מספקת DaemonSet שאפשר להחיל על אשכולות Confidential GKE Nodes. מריצים את הפקודה הבאה כדי לפרוס את DaemonSet:
kubectl create -f https://raw.githubusercontent.com/google/cc-device-plugin/main/manifests/cc-device-plugin.yaml
הגדרת Pods כך שיוכלו לראות את ה-vTPM
משתמשים במגבלת משאבים כדי להגדיר את ה-Pods כך שיוצג vTPM. מגדירים את מגבלת המשאבים כ-1 במפרט של Pod באמצעות צמד מפתח/ערך הבא:
- מקש:
google.com/cc - ערך: 1
דוגמה למפרט של Pod שמשתמש ב-vTPM:
apiVersion: v1
kind: Pod
metadata:
name: my-vtpm-pod
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 8080
name: http
resources:
limits:
google.com/cc: 1