带你读《云原生机密计算最佳实践白皮书》——AMD SEV机密容器(4)

简介: 带你读《云原生机密计算最佳实践白皮书》——AMD SEV机密容器(4)

《云原生机密计算最佳实践白皮书》——06运行时底座——AMD SEV机密容器(3) https://developer.aliyun.com/article/1231028?groupCode=aliyun_linux



步骤四:运行workload

示例一:运行一个未加密的容器镜像

为了验证主机上不存在容器镜像,应该登录到 k8s 节点并确保以下命令返回空结果:

crictl -r unix:///run/containerd/containerd.sock image ls | grep bitnami/nginx

启动POD

cat <<-EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
 labels:
 run: nginx
 name: nginx
spec:
 containers:
 - image: bitnami/nginx:1.22.0
 name: nginx
 dnsPolicy: ClusterFirst
 runtimeClassName: kata
EOF

预期结果:

pod/nginx created

查看 pod 状态:

kubectl get pods

预期结果如下,注意, STATUS 要是 Running 。

NAME READY STATUS RESTARTS AGE
nginx 1/1 Running 0 3m50s

示例二:运行一个加密容器

attestation agent 支持两种SEV平台相关的KBC:offlfflffline_sev_kbc 和 online_sev_kbc。

• offlfflffline sev KBC 在运行时不会与 Simple KBS 进行通信,而是使用在VM Boot时期通过QEMU注入的secret。该机制的缺点是对注入的 secret 长度有限制。

• online sev KBC 在offlfflffline sev KBC的基础上,支持在运行时发出请求。online sev KBC 在VM Boot时期通过QEMU注入connection。注入的connection包含一个对称密钥,用于加密和验证 KBC 发出的在线请求。 该连接受 SEV(-ES) 秘密注入过程保护,该过程提供机密性、完整性并防止重放攻击。 simple-kbs 为每个连接生成一个新的对称密钥。 KBC 要求每个在线secret都带有随机 guid 以防止重放攻击。

注意:offlfflffline_sev_kbc 和 online_sev_kbc 是两种option,用户只需要采用一种KBC方式运行镜像即可。

导出SEV证书链

sevctl 是 SEV 平台的命令行管理工具,Kata 机密容器需要 SEV 证书链从而与guest owner建立安全会话。请按照以下步骤安装 sevctl:

dnf install sevctl

SEV 证书链必须放在 /opt/sev 中,使用以下命令导出 SEV 证书链:

mkdir -p /opt/sev
sevctl export --full /opt/sev/cert_chain.cert




《云原生机密计算最佳实践白皮书》——06运行时底座——AMD SEV机密容器(5) https://developer.aliyun.com/article/1231024?groupCode=aliyun_linux

相关文章
|
27天前
|
存储 Kubernetes Cloud Native
【阿里云云原生专栏】云原生容器存储:阿里云CSI与EBS的高效配合策略
【5月更文挑战第29天】阿里云提供云原生容器存储接口(CSI)和弹性块存储(EBS)解决方案,以应对云原生环境中的数据存储挑战。CSI作为Kubernetes的标准接口简化存储管理,而EBS则提供高性能、高可靠性的块存储服务。二者协同实现动态供应、弹性伸缩及数据备份恢复。示例代码展示了在Kubernetes中使用CSI和EBS创建存储卷的过程。
160 3
|
6天前
|
Cloud Native 安全 Docker
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸
|
6天前
|
Kubernetes 安全 Cloud Native
云上攻防-云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行
云上攻防-云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行
|
7天前
|
运维 Kubernetes Cloud Native
云原生时代的技术革命:Kubernetes与容器编排
【6月更文挑战第17天】在数字化转型的浪潮中,云原生技术正成为推动企业IT架构现代化的核心力量。本文将深入探讨Kubernetes作为云原生生态中的佼佼者,如何引领容器编排的技术革命,并分析其在现代应用部署、管理和扩展中的关键作用。通过实例和案例分析,我们将揭示Kubernetes如何助力企业实现更高效、灵活和可靠的云原生应用管理。
|
24天前
|
Kubernetes 负载均衡 Cloud Native
云原生架构之容器技术
容器作为标准化软件单元,它将应用及其所有依赖项打包,使应用不再受环境限制,在不同计算环境间快速、可靠地运行。
52 9
|
4天前
|
运维 监控 Cloud Native
探索云原生架构的未来:容器化与微服务
在数字化浪潮的推动下,云原生技术正迅速成为企业数字化转型的核心。本文将深入探讨云原生架构的关键组成部分——容器化和微服务,并分析它们如何共同塑造着现代软件的开发、部署和运维。我们将从容器的基本概念出发,逐步解析微服务架构的设计原则,以及它们如何适应快速变化的市场需求。通过实际案例,我们还将揭示云原生技术带来的挑战与机遇,为读者提供一幅云原生技术发展的全景图。
|
25天前
|
敏捷开发 Kubernetes Cloud Native
构建高效云原生应用:容器化与微服务架构的融合
【5月更文挑战第31天】 随着云计算技术的不断演进,云原生应用已成为企业数字化转型的核心。本文深入探讨了如何通过容器化技术和微服务架构的有效结合,构建高效、弹性和可扩展的云原生应用。我们将分析容器化的基本概念、优势以及它如何促进微服务架构的实施,同时提供策略和最佳实践,帮助企业实现敏捷开发和持续部署,优化资源利用,并提高系统的可靠性。
|
9天前
|
NoSQL 关系型数据库 Redis
Docker的通俗理解和通过宿主机端口访问Redis容器的实例
本文目标:引导初学者入门Docker,理解镜像、容器和宿主机概念,学习常用Docker命令,特别是如何创建并从Redis容器通过宿主机端口访问。 关键点: - Docker核心:镜像(类)、容器(实例)、宿主机(运行环境)。 - `docker pull` 拉取镜像,如 `redis:3.0`。 - `docker run -d --name` 后台运行容器,如 `my-redis`。 - `-p` 参数做端口映射,如 `6379:6379`。 - `docker exec -it` 交互式进入容器,如 `bash` 或执行命令。
|
6天前
|
前端开发 安全 数据库
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
|
3天前
|
NoSQL Redis Docker
使用 Docker Compose 接管现有容器的文档
使用 Docker Compose 接管现有容器的文档
16 2