带你读《云原生机密计算最佳实践白皮书》——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

相关文章
|
9天前
|
存储 Kubernetes Cloud Native
【阿里云云原生专栏】云原生容器存储:阿里云CSI与EBS的高效配合策略
【5月更文挑战第29天】阿里云提供云原生容器存储接口(CSI)和弹性块存储(EBS)解决方案,以应对云原生环境中的数据存储挑战。CSI作为Kubernetes的标准接口简化存储管理,而EBS则提供高性能、高可靠性的块存储服务。二者协同实现动态供应、弹性伸缩及数据备份恢复。示例代码展示了在Kubernetes中使用CSI和EBS创建存储卷的过程。
61 3
|
6天前
|
Kubernetes 负载均衡 Cloud Native
云原生架构之容器技术
容器作为标准化软件单元,它将应用及其所有依赖项打包,使应用不再受环境限制,在不同计算环境间快速、可靠地运行。
33 9
|
6天前
|
Docker 容器
docker: 如何不新建容器 修改运行容器的端口
docker: 如何不新建容器 修改运行容器的端口
|
7天前
|
敏捷开发 Kubernetes Cloud Native
构建高效云原生应用:容器化与微服务架构的融合
【5月更文挑战第31天】 随着云计算技术的不断演进,云原生应用已成为企业数字化转型的核心。本文深入探讨了如何通过容器化技术和微服务架构的有效结合,构建高效、弹性和可扩展的云原生应用。我们将分析容器化的基本概念、优势以及它如何促进微服务架构的实施,同时提供策略和最佳实践,帮助企业实现敏捷开发和持续部署,优化资源利用,并提高系统的可靠性。
|
9天前
|
运维 Cloud Native 开发者
云原生架构的未来演进:从容器化到无服务器
【5月更文挑战第28天】 在现代IT领域,云原生技术正成为推动企业数字化转型的核心力量。本文将探讨云原生架构的关键组成部分,包括容器化、微服务以及无服务器计算,并预测这些技术的发展趋势。文章旨在提供一个全面的视角,以理解云原生生态系统如何适应日益复杂的业务需求,并支持构建更加灵活、可扩展的应用程序。
|
9天前
|
运维 Kubernetes Cloud Native
构建高效云原生应用:采用微服务架构与容器化技术
【5月更文挑战第28天】 在当今数字化转型的浪潮中,企业正迅速采纳云原生技术以保持竞争力。本文深入探讨了构建高效云原生应用的关键要素,重点分析了微服务架构和容器化技术如何共同推动应用的敏捷性、可扩展性和可靠性。通过具体案例分析,揭示了这些技术在实际业务场景中的应用效果及其带来的显著改进。
|
11天前
|
弹性计算 安全 微服务
【阿里云云原生专栏】容器网络技术前沿:阿里云Terway网络方案详解
【5月更文挑战第26天】阿里云Terway是高性能的容器网络方案,基于ECS的ENI实现,提供低延迟高吞吐的网络服务。它简化网络管理,实现安全隔离,并与阿里云服务无缝集成。Terway由CNI、Node和Controller组成,适用于微服务、混合云和多租户环境,为企业数字化转型中的复杂网络需求提供强大支持。
172 1
|
12天前
|
运维 监控 Cloud Native
构建高效云原生应用:容器化与微服务架构的融合
【5月更文挑战第26天】 在数字化转型的浪潮中,企业正迅速将重心转向云原生技术以支撑其业务灵活性和扩展性。本文深入探讨了如何通过结合容器化技术和微服务架构来构建和维护高效的云原生应用。首先概述了云原生的核心概念及其带来的优势,接着详细分析了容器化技术的关键作用以及微服务架构的设计原则。文章还展示了如何通过持续集成/持续部署(CI/CD)流程实现快速迭代,并通过实际案例说明如何应对分布式系统带来的复杂性挑战。最终,文中提出了一系列优化策略,旨在帮助开发者和运维人员提高系统的可靠性、安全性和性能。
|
9天前
|
存储 弹性计算 监控
【阿里云云原生专栏】成本优化策略:在阿里云云原生平台上实现资源高效利用
【5月更文挑战第29天】本文探讨了在阿里云云原生平台上实现资源高效利用和成本优化的策略。通过资源监控与评估,利用CloudMonitor和Prometheus等工具分析CPU、内存等使用情况,识别浪费。实施弹性伸缩策略,利用自动伸缩规则根据业务负载动态调整资源。借助容器化管理和Kubernetes编排提高资源利用率,优化存储选择如OSS、NAS,以及网络配置如VPC和CDN。示例展示了如何使用Kubernetes的HorizontalPodAutoscaler进行弹性伸缩,降低成本。
46 4
|
9天前
|
边缘计算 Cloud Native 数据管理
【阿里云云原生专栏】云原生背景下的AIoT布局:阿里云Link平台解析
【5月更文挑战第29天】阿里云Link平台,作为阿里云在AIoT领域的核心战略,借助云原生技术,为开发者打造一站式物联网服务平台。平台支持多协议设备接入与标准化管理,提供高效数据存储、分析及可视化,集成边缘计算实现低延时智能分析。通过实例代码展示,平台简化设备接入,助力智能家居等领域的创新应用,赋能开发者构建智能生态系统。
50 3