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

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

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



步骤二:安装Confifidential computing Operator

Confifidential computing Operator 提供了一种在 Kubernetes 集群上部署和管理 Confifidential Containers

Runtime 的方法。具体信息请参考指南。

前提条件

1、确保 Kubernetes 集群节点至少有 8GB RAM 和 4 个 vCPU

2、当前 CoCo 版本仅支持基于 containerd 运行时的 Kubernetes 集群

3、确保 SELinux 被禁用或未强制执行 (confifidential-containers/operator#115)

部署Operator

Operator目前有3个版本,这里默认安装最新版v0.3.0版本。 通过运行以下命令部署Operator:

kubectl apply -k github.com/confifidential-containers/operator/confifig/release?ref=v0.3.0

cc-operator-controller-manager 资源依赖国外的镜像,可能拉不下来,请参考以下步骤对镜像进行修改:

kubectl edit deploy cc-operator-controller-manager -n confifidential-containers-system
# 将gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0替换成
image: quay.io/brancz/kube-rbac-proxy:v0.13.0

查看节点状态:

kubectl get pods -n confifidential-containers-system --watch

预期结果如下。注意这三个pod都要存在,且STATUS都要为Running。

NAME READY STATUS RESTARTS AGE
cc-operator-controller-manager-56cb4d5ffff5-lqd9x 2/2 Running 0 167m
cc-operator-daemon-install-rg8s9 1/1 Running 0 154m
cc-operator-pre-install-daemon-7jhnw 1/1 Running 0 154m

创建custom resource

创建 custom resource 会将所需的 CC runtime安装到集群节点中并创建 RuntimeClasses。操作如下:

kubectl apply -k github.com/confifidential-containers/operator/confifig/samples/ccruntime/
default?ref=v0.3.0

检查创建的 RuntimeClasses。

kubectl get runtimeclass

预期结果如下:

NAME HANDLER AGE
kata kata 154m
kata-clh kata-clh 154m
kata-clh-tdx kata-clh-tdx 154m
kata-qemu kata-qemu 154m
kata-qemu-sev kata-qemu-sev 154m
kata-qemu-tdx kata-qemu-tdx 154m

卸载Operator(非必要步骤)

如果您想更新Operator的版本,或者您的安装出现问题,可以先卸载,再回到上面的步骤重新安装。具体

操作请参考链接。

kubectl delete -k github.com/confifidential-containers/operator/confifig/samples/ccruntime/
default?ref=<RELEASE_VERSION>
kubectl delete -k github.com/confifidential-containers/operator/confifig/release?ref=$
{RELEASE_VERSION}

步骤三:启动Simple KBS

simple kbs是一个密钥代理服务,可以存储并向 workload 提供 secret 。对于 SEV 加密容器示例来说,需要从simple kbs 中获取 secret ,并用于解密已加密的容器。 在步骤四的示例二中,本文提供了一个简单的加密镜像( docker.io/haosanzi/busybox-v1:encrypted ),该镜像使用 simple kbs 已经存在的密钥来解密,同时对 policy 不进行校验。此加密镜像只作为测试使用,如您想用于自己的生产用例中,请参考指南制作一个新

的加密镜像并部署。

要了解有关创建 policy 的更多信息,请参考指南。

• 安装 docker-compose 后,才能在 docker 容器中运行 simple-kbs 及其数据库,数据库中存放了 secret 等信息:

dnf install docker-compose-plugin

• 下载 simple-kbs 的代码:

simple_kbs_tag="0.1.1"
git clone https://github.com/confifidential-containers/simple-kbs.git
cd simple-kbs && git checkout -b "branch_${simple_kbs_tag}" "${simple_kbs_tag}"

• 使用 docker-compose 运行 simple-kbs :

cd simple-kbs
sudo docker compose up -d




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

相关文章
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
608 2
|
7月前
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
451 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
9月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
9月前
|
Kubernetes Cloud Native 区块链
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
302 0
|
Kubernetes Cloud Native Docker
云原生之旅:从容器化到微服务
本文将带领读者踏上云原生的旅程,深入探讨容器化和微服务架构的概念、优势以及它们如何共同推动现代软件的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务应用,并解释相关的配置和操作。无论你是云原生新手还是希望深化理解,这篇文章都将为你提供有价值的见解和实操指南。
|
Kubernetes Cloud Native Docker
云原生之旅:从传统架构到容器化服务的演变
随着技术的快速发展,云计算已经从简单的虚拟化服务演进到了更加灵活和高效的云原生时代。本文将带你了解云原生的概念、优势以及如何通过容器化技术实现应用的快速部署和扩展。我们将以一个简单的Python Web应用为例,展示如何利用Docker容器进行打包和部署,进而探索Kubernetes如何管理这些容器,确保服务的高可用性和弹性伸缩。
|
运维 Cloud Native 云计算
云原生之旅:Docker容器化实战
本文将带你走进云原生的世界,深入理解Docker技术如何改变应用部署与运维。我们将通过实际案例,展示如何利用Docker简化开发流程,提升应用的可移植性和伸缩性。文章不仅介绍基础概念,还提供操作指南和最佳实践,帮助你快速上手Docker,开启云原生的第一步。

热门文章

最新文章