带你读《云原生机密计算最佳实践白皮书》——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 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
626 59
|
10月前
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
996 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
12月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
针对本地存储和 PVC 这两种容器存储使用方式,我们对 ACK 的容器存储监控功能进行了全新升级。此次更新完善了对集群中不同存储类型的监控能力,不仅对之前已有的监控大盘进行了优化,还针对不同的云存储类型,上线了全新的监控大盘,确保用户能够更好地理解和管理容器业务应用的存储资源。
775 275
|
9月前
|
Ubuntu PHP Docker
一个可以运行的Dockerfile_php ,用来创建php容器镜像
该简介描述了一个基于 Dragonwell 8 Ubuntu 的 Docker 镜像,用于构建包含 PHP 7.4 及常用扩展的运行环境。通过更换为阿里云源提升安装速度,配置了 PHP-FPM 并暴露 9000 端口,使用自定义 Dockerfile 构建镜像并成功运行容器。
|
12月前
|
Kubernetes Cloud Native 区块链
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
389 0
|
人工智能 安全 API
容器化AI模型的安全防护实战:代码示例与最佳实践
本文基于前文探讨的容器化AI模型安全威胁,通过代码示例展示如何在实际项目中实现多层次的安全防护措施。以一个基于TensorFlow的图像分类模型为例,介绍了输入验证、模型加密、API认证和日志记录的具体实现方法,并结合最佳实践,如使用安全容器镜像、限制权限、网络隔离等,帮助构建更安全的AI服务。
|
PHP Docker 容器
如何在宿主主机运行容器中的php守护进程
在Docker容器中同时运行多个程序(如Nginx+PHP+Ftp)时,需用`docker exec`命令启动额外服务。首先通过`php -v`查看PHP版本,再用`which php-fpm7.4`确认PHP安装路径,通常返回`/usr/sbin/php-fpm7.4`。最后直接运行该路径启动PHP-FPM服务,确保其正常工作。
373 14
|
人工智能 Prometheus 监控
容器化AI模型的监控与治理:确保模型持续稳定运行
在前几篇文章中,我们探讨了AI模型的容器化部署及构建容器化机器学习流水线。然而,将模型部署到生产环境只是第一步,更重要的是确保其持续稳定运行并保持性能。为此,必须关注容器化AI模型的监控与治理。 监控和治理至关重要,因为AI模型在生产环境中面临数据漂移、概念漂移、模型退化和安全风险等挑战。全面的监控涵盖模型性能、数据质量、解释性、安全性和版本管理等方面。使用Prometheus和Grafana可有效监控性能指标,而遵循模型治理最佳实践(如建立治理框架、定期评估、持续改进和加强安全)则能进一步提升模型的可信度和可靠性。总之,容器化AI模型的监控与治理是确保其长期稳定运行的关键。
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
427 0
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明

热门文章

最新文章