开发者社区> 流生> 正文

自建Kubernetes集群如何使用阿里云CSI存储组件

简介: 阿里云容器服务ACK的容器存储功能基于Kubernetes存储系统,深度融合阿里云存储服务并完全兼容Kubernetes原生的存储服务,例如EmptyDir、HostPath、Secret、ConfigMap等存储。ACK基于社区容器存储接口(CSI)通过部署CSI插件实现了阿里云存储服务接入能力。容器服务ACK支持Pod自动绑定阿里云云盘、NAS、 OSS、CPFS、本地卷等存储服务。
+关注继续查看

阿里云容器服务ACK的容器存储功能基于Kubernetes存储系统,深度融合阿里云存储服务并完全兼容Kubernetes原生的存储服务,例如EmptyDir、HostPath、Secret、ConfigMap等存储。ACK基于社区容器存储接口(CSI)通过部署CSI插件实现了阿里云存储服务接入能力。容器服务ACK支持Pod自动绑定阿里云云盘、NAS、 OSS、CPFS、本地卷等存储服务,每种存储卷的主要特点及应用场景参见存储CSI概述

前提条件

注意事项

[注意]

阿里云CSI存储组件只支持运行在阿里云ECS节点上。自建Kubernetes集群中的阿里云ECS节点需要打标节点标签 alibabacloud.com/external=true

  1. 如果您的自建集群部署在阿里云ECS上,请参考[阿里云ECS上自建Kubernetes集群接入ACK注册集群]()
  2. 如果您使用ACK注册集群节点池功能为本地数据中心自建Kubernetes集群扩容了阿里云ECS节点,则默认打标了 alibabacloud.com/external=true

步骤一 在自建集群中配置CSI组件RAM权限

在注册集群中安装CSI组件前,您需要在接入集群中设置AK用来访问云服务的权限。设置AK前,您需要创建RAM用户并为其添加访问相关云资源的权限。

  1. 创建RAM用户。有关如何创建RAM用户的具体步骤,请参见创建RAM用户
  2. 创建权限策略。有关创建权限策略的具体操作步骤,请参见创建自定义策略。请授权RAM权限如下所示:
{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:AttachDisk",
                "ecs:DetachDisk",
                "ecs:DescribeDisks",
                "ecs:CreateDisk",
                "ecs:ResizeDisk",
                "ecs:CreateSnapshot",
                "ecs:DeleteSnapshot",
                "ecs:CreateAutoSnapshotPolicy",
                "ecs:ApplyAutoSnapshotPolicy",
                "ecs:CancelAutoSnapshotPolicy",
                "ecs:DeleteAutoSnapshotPolicy",
                "ecs:DescribeAutoSnapshotPolicyEX",
                "ecs:ModifyAutoSnapshotPolicyEx",
                "ecs:AddTags",
                "ecs:DescribeTags",
                "ecs:DescribeSnapshots",
                "ecs:ListTagResources",
                "ecs:TagResources",
                "ecs:UntagResources",
                "ecs:ModifyDiskSpec",
                "ecs:CreateSnapshot",
                "ecs:DeleteDisk",
                "ecs:DescribeInstanceAttribute",
                "ecs:DescribeInstances"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "nas:DescribeFileSystems",
                "nas:DescribeMountTargets",
                "nas:AddTags",
                "nas:DescribeTags",
                "nas:RemoveTags",
                "nas:CreateFileSystem",
                "nas:DeleteFileSystem",
                "nas:ModifyFileSystem",
                "nas:CreateMountTarget",
                "nas:DeleteMountTarget",
                "nas:ModifyMountTarget",
                "nas:TagResources",
                "nas:SetDirQuota",
                "nas:EnableRecycleBin",
                "nas:GetRecycleBinAttribute"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "oss:PutBucket",
                "oss:GetObjectTagging",
                "oss:ListBuckets",
                "oss:PutBucketTags",
                "oss:GetBucketTags",
                "oss:PutBucketEncryption",
                "oss:GetBucketInfo"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        }
    ]
}
  1. 为RAM用户添加权限。有关如何为RAM用户授权的具体步骤,请参见为RAM用户授权
  2. 为RAM用户创建AK。有关如何为子账户创建AK,请参见获取AccessKey
  3. 使用AK在自建Kubernetes集群中创建名为alibaba-addon-secret的Secret资源,步骤二中安装事件中心相关组件时将自动引用此AK访问对应的云服务资源。
kubectl -n kube-system create secret generic alibaba-addon-secret --from-literal='access-key-id=<your access key id>' --from-literal='access-key-secret=<your access key secret>'

您需要将上述代码中和替换为您获取的AK信息。

步骤二 组件安装与升级

CSI组件安装步骤如下所示:

  1. 登录容器服务控制台

2)在控制台左侧导航栏中,单击集群
3)在集群列表页面中,单击目标注册集群页面右侧的详情
4)在集群详情页签,点击运维管理下的组件管理
5)找到csi-provisionercsi-plugin并点击安装。
image.png

步骤三 使用CSI存储插件

如何使用云盘存储卷,请参考云盘存储卷
如何使用NAS存储卷,请参考NAS存储卷
如何使用OSS存储卷,请参考OSS存储卷

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【云原生】阿里云Kubernetes(ACK)版本限制简介
【云原生】阿里云Kubernetes(ACK)版本限制简介
206 0
阿里云国际版Windows系统组件损坏导致系统激活失败
本文www.123clouds.com介绍阿里云国际版Windows系统组件损坏导致系统激活失败的处理办法。
56 0
终于读完了阿里云p9专家分享云原生Kubernetes全栈架构师实战文档
Kubernetes(简称K8s)发布至今已经被越来越多的公司所接纳,其受欢迎程度更是超过了人们的想象,已逐渐成为很多公司的标配,尤为重要的是掌握Kubernetes几乎成为所有互联网技术人员必备的一项技能。 Kubernetes的诞生象征着下一代云计算的时代已经来临,它的出现让很多应用和架构逐步实现了统一化、标准化、简单化,降低了公司因为架构设计不合理带来的问题,而且也大大减少了运维成本,使用Kubernetes可以轻轻松松管理上千台服务器、上万个容器节点。
108 0
《阿里云 Kubernetes+Kubeflow – 加速深度学习实验的利器》电子版地址
阿里云 Kubernetes+Kubeflow – 加速深度学习实验的利器
31 0
使用阿里云相关组件总结
总结我个人使用过的阿里组件
91 0
阿里云函数计算组件感知线上“异动”:让发布更安全
从我做Serverless工具开始,就经常会遇到有人问这样一个问题:如何保证Serverless业务部署更新的一致性。
86 0
阿里云PAI Studio Python脚本组件使用Quick Start
PAI-Studio提供自定义Python脚本的功能,您可以使用该组件运行自定义的Python函数,并且支持自定义安装依赖包。本文为您介绍该组件的配置详情,包括自定义输入输出桩数量、脚本设置及执行配置。本文通过使用Python脚本读取ODPS上游表,演示Python脚本组件的使用。
21365 0
阿里云物联网平台IOT Studio组件数据源展示数据分析服务接口数据
本测试,通过物联网平台iot studio组件实现展示数据分析的服务接口
956 0
基于阿里云IoT组件搭建车联网基础平台
IoT在汽车行业企业中的应用多为车联网,车联网的搭建往往需要软件、硬件、通信等多方面的技术基础设施。阿里云IoT组件可以快速帮助企业解决相关平台搭建问题,帮助企业将精力更多的聚焦到业务本身的开发上去。
2518 0
+关注
文章
问答
来源圈子
更多
容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理。容器服务 Kubernetes 版简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
Elastic与阿里云合作宣传信息白皮书
立即下载
阿里云&信通院《Serverless数据库技术研究报告》
立即下载
降本增效,阿里云数据治理Workshop上海站
立即下载