DaemonSet概述
DaemonSet可以保证全部(某些)节点上运行一个pod,适用于在每个节点上部署集群存储、日志收集等守护进程。本模块提供了基于Kubernetes原生的DaemonSet的创建、配置、删除等生命周期的管理指南。
创建DaemonSet
您可以通过以下步骤在容器服务控制台通过镜像创建一个DaemonSet:
- 登录容器服务控制台。
- 在左侧导航栏中,选择集群,进入集群管理页面。
- 选择需要新建DaemonSet的集群,进入该集群操作页面。
- 选择工作负载 > DaemonSet,进入DaemonSet列表页。
- 单击页面左上角新建,根据实际需求完成配置,单击创建,即可新建DaemonSet。
以下为创建过程中的配置详情:
基本信息配置
- 名称:用户自定义DaemonSet的名称,不超过63个字符,只能包含小写字母、数字、和“-”,并且必须以小写字母开头,小写字母或数字结尾。
- 地域:选择您部署DaemonSet所在的地域。
- 部署集群:选择DaemonSet运行的集群。
- 命名空间:选择DaemonSet所在集群的命名空间。
- 描述:创建DaemonSet的相关信息,用户自定义填写。
部署配置
存储卷
目前支持使用主机路径、本地路径、金山云云硬盘、文件存储、已有PVC等存储类型。

- 类型:包含主机路径、本地路径、金山云云硬盘、文件存储、已有PVC、使用ConfigMap/Secret。
- 存储卷名称:存储卷的名称。
- 资源名称:选择相应存储资源的名称。
- 其他信息:指定容器要挂载的路径。
备注:
使用本地硬盘时,若不指定源路径,则默认分配临时路径(对应k8s存储中EmpytDir)。
当使用云硬盘作为存储卷时,存储卷的名称为云硬盘的id,不可修改。
容器配置
设置运行的容器信息:

- 名称:容器的名称,不超过63个字符,只能包含小写字母、数字、和“-”,并且必须以小写字母开头,小写字母或数字结尾。
- 镜像:点击选择镜像,从镜像仓库中选择;或输入镜像仓库地址。
- 镜像版本:镜像的tag。
- 资源限制:设定容器所使用的CPU和内存资源的限制。
- 环境变量:在容器中添加环境变量,一般用于通过环境变量设置参数,目前仅支持手动添加。
- 实例数量:一个实例由相关的一个或多个容器构成,用户自定义实例数量。
镜像访问凭证
目前支持从私有镜像仓库拉取镜像时,为容器配置镜像访问凭证(对应yaml中的imagePullSecret)。

- 初始状态下提供默认选项ksyunregistrykey,可以匹配金山云镜像仓库中的私有镜像。
- 若您使用的镜像来自第三方私有镜像仓库,可以通过添加镜像访问凭证 > 使用新的访问凭证 > 设置访问凭证信息,设置新的访问凭证的名称,以及第三方仓库的域名、用户名、密码,即完成添加第三方私有镜像仓库访问凭证。
访问设置
- 取消开启关联Service:不提供任何从前端服务访问到容器的入口。
- 公网访问:通过金山云公网负载均衡暴露服务,可以直接被公网访问。
- VPC内网访问:通过金山云私网负载均衡暴露服务,可以被同一VPC下其他集群或者云服务器访问。
- 集群内访问:通过集群的内部IP暴露服务,服务只能在集群内部访问。
- 主机端口访问:通过任意一个节点的ip:nodeport,可以从集群外访问。
配置完成后,点击创建,返回DaemonSet列表页面,查询DaemonSet的状态。
DaemonSet基本操作
更新DaemonSet
进入DaemonSet列表页面,点击更新,进入更新DaemonSet页面,用户可以根据业务需要更新DaemonSet的配置。
更新策略:
- 滚动更新:对实例进行逐个更新,这种方式可以让您不中断业务实现对服务的更新,您可自定义滚动更新的参数。
- Ondelete:更新模板后,只有手动删除了旧的pod才会创建新的pod。
删除DaemonSet
进入DaemonSet列表页面,点击删除,执行删除DaemonSet的操作。
