COS-CSI 说明

最近更新时间:2024-08-28 16:51:01

我的收藏

简介

组件介绍

Kubernetes-csi-tencentcloud COS 插件实现 CSI 的接口,可帮助您在容器集群中使用腾讯云对象存储 COS。

部署在集群内的 Kubernetes 对象

Kubernetes 对象名称
类型
默认占用资源
所属 Namespaces
csi-coslauncher
DaemonSet
-
kube-system
csi-cosplugin
DaemonSet
-
kube-system

使用场景

对象存储(Cloud Object Storage,COS)是腾讯云提供的一种存储海量文件的分布式存储服务,用户可通过网络随时存储和查看数据。腾讯云 COS 使所有用户都能使用具备高扩展性、低成本、可靠和安全的数据存储服务。
通过 COS-CSI 扩展组件,您可以快速的在容器集群中通过标准原生 Kubernetes 以 COSFS 的形式使用 COS,详情请参见 COSFS 工具介绍

限制条件

支持 Kubernetes 1.10 以上版本的集群。
Kubernetes 1.12 版本的集群需要增加 kubelet 配置:--feature-gates=KubeletPluginsWatcher=false
COSFS 本身限制,详情请参见 COSFS 局限性
在 TKE 中使用 COS,需要在集群内安装该扩展组件,将占用一定的系统资源。

cos-csi 权限

权限说明

该组件权限是当前功能实现的最小权限依赖。
需要挂载主机 /var/lib/kubelet 相关目录到容器来完成 volume 的 mount/umount,所以需要开启特权级容器。

权限场景

功能
涉及对象
涉及操作权限
支持 lite 方式下的 cos 桶挂载
PersistentVolume
get/watch/list/update
pod
get/create/delete/update
在 lite 挂载方式下存储相关 cos 配置
configmap
get/create/delete/update

权限定义

kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: csi-cos-tencentcloud
rules:
- apiGroups: [""]
resources: ["events", "persistentvolumes"]
verbs: ["get", "watch", "update", "list"]
- apiGroups: [""]
resources: ["pods", "configmaps"]
verbs: ["get", "create", "delete", "update"]

使用方法

安装 COS 扩展组件

1. 登录 容器服务控制台,在左侧导航栏中选择集群
2. 在集群列表中,单击目标集群 ID,进入集群详情页。
3. 选择左侧菜单栏中的组件管理,在组件管理页面单击新建
4. 新建组件管理页面中勾选 COS。
5. 单击完成即可创建组件。

使用对象存储 COS

您可在 TKE 集群中为工作负载挂载对象存储,详情请参见 使用对象存储 COS