透過 vSphere IaaS control plane,您可以在 主管 上執行機密 vSphere 網繭。機密 vSphere 網繭 使用硬體技術來使客體作業系統記憶體保持加密狀態,從而防範從 Hypervisor 存取。
您可以透過新增安全加密虛擬化-加密狀態 (SEV-ES) 作為額外的安全性增強功能,以建立機密的
vSphere 網繭。SEV-ES 可防止 CPU 暫存器將暫存器中的資訊洩漏給 Hypervisor 之類的元件。SEV-ES 還可以偵測到對 CPU 暫存器狀態進行的惡意修改。如需有關在 vSphere 環境中使用 SEV-ES 技術的詳細資訊,請參閱
vSphere 安全性說明文件中的
使用 AMD 安全加密虛擬化加密狀態保護虛擬機器。
必要條件
若要在
ESXi 主機上啟用 SEV-ES,vSphere 管理員必須遵循下列準則:
- 使用支援 SEV-ES 功能的主機。
- 使用 ESXi 7.0 Update 2 版或更新版本。
- 在 ESXi 系統的 BIOS 組態中啟用 SEV-ES。如需有關存取 BIOS 組態的詳細資訊,請參閱系統說明文件。
- 在 BIOS 中啟用 SEV-ES 時,輸入的最小 SEV 非 ES ASID 設定值等於主機上之 SEV-ES 虛擬機器和機密 vSphere 網繭 的數目加上 1。例如,如果您計劃執行 100 個 SEV-ES 虛擬機器和 128 個 vSphere 網繭,請輸入至少 229。您可以輸入高達 500 的設定。
程序
- 建立包含下列參數的 YAML 檔案。
- 在註解中,啟用機密 vSphere 網繭 功能。
...
annotations:
vmware/confidential-pod: enabled
...
- 指定容器的記憶體資源。
確保將記憶體要求和記憶體限制設定為相同的值,如本範例所示。
resources:
requests:
memory: "512Mi"
limits:
memory: "512Mi"
將以下 YAML 檔案用作範例:
apiVersion: v1
kind: Pod
metadata:
name: photon-pod
namespace: my-podvm-ns
annotations:
vmware/confidential-pod: enabled
spec: # specification of the pod's contents
restartPolicy: Never
containers:
- name: photon
image: wcp-docker-ci.artifactory.eng.vmware.com/vmware/photon:1.0
command: ["/bin/sh"]
args: ["-c", "while true; do echo hello, world!; sleep 1; done"]
resources:
requests:
memory: "512Mi"
limits:
memory: "512Mi"
- 登入 主管。
kubectl vsphere login --server=https://<server_adress> --vsphere-username <your user account name>
- 切換至您想要部署應用程式的命名空間。
kubectl config use-context <namespace>
- 從 YAML 檔案部署機密 vSphere 網繭。
kubectl apply -f <yaml file name>.yaml
備註: 部署
vSphere 網繭 時,DRS 會將其置於支援 SEV-ES 的
ESXi 節點。如果沒有此類節點可用,則
vSphere 網繭 節點會標記為失敗。
啟動的 vSphere 網繭 會為該網繭上執行的所有工作負載提供硬體記憶體加密支援。
- 執行下列命令,來確認已建立機密 vSphere 網繭。
kubectl describe pod/<yaml name>
下一步
vSphere 管理員可檢視機密
vSphere 網繭。在
vSphere Client 中,它會顯示
加密模式: 機密計算資源標籤。