在不影响现有业务的前提下,将运行中的Kubernetes集群纳管进入系统,为现有的Kubernetes集群增加系统特色的基础设施整合、容器应用服务、运维管理工具、企业分配控制等功能。对已有的Kubernetes集群,降低操作门槛,增强运维管理功能。
系统支持纳管外部已有的Kubernetes集群1.23~1.28版本。
以系统管理员登录平台。
创建托管集群的步骤如下。
1.在左侧导航栏中选择集群。
2.单击页面右上角的创建托管集群。
3.填写集群基础设置信息。
表1 集群的基础设置
参数 |
配置说明 |
配置示例 |
---|---|---|
集群名称 |
集群的名称,用于页面展示,可包括中文、英文、数字和特殊字符等。设置后不可修改。 |
开发的集群 |
集群编码 |
集群的名称编码,设置主机集群名称后,会自动生成该名称的编码,也可手动修改。只能包含小写字母数字。 |
k8s2 |
系统数据存储路径 |
打开日志收集功能后,请为日志数据分配存储空间,此处设置的路径为日志文件的存储路径。 |
/var/lib/miaoyun |
集群监控 |
此开关来控制是否纳管纳管集群监控数据,默认打开。 打开后,可自定义监控数据保留天数。 |
- |
添加节点选择器 |
由键值对组成,标签来源为需要纳管集群主机的主机标签。通过节点选择器来选择监控数据存放的节点。 |
- |
访问入口设置 |
此开关来控制IngressController功能,默认为关闭。开启时将会在集群中每个节点上部署IngressController,默认占用所有节点的80和443端口。 |
- |
Windows计算节点支持 |
开关开启时,集群网络模型只支持Flannel网络。 |
- |
Pod GPU调度 |
允许应用使用此集群的GPU资源,对集群内的GPU资源集中管理和调度,Pod GPU调度功能开启前需确保服务器有显卡资源,编辑Pod GPU调度前,请先确认所有GPU实例处于空闲状态。 可选以下其中一种GPU资源切分插件类型: •Nvidia 需选择以下其中一种分割类型: oTimeSlicing Timeslicing模式通过在时间上分片,将GPU的计算资源在不同任务之间轮流分配,即每个任务在一定时间内使用GPU资源,之后切换到下一个任务。 配置该模式文件信息,其中默认配置文件名称为default-time-slicing-config-xxxx,单击新增配置项,当MIG策略为none时,资源行默认值为nvidia.com/gpu。 oMIG Mig(Multi-Instance GPU)模式通过将GPU划分为多个独立的计算实例,每个实例拥有自己的资源(如计算单元、内存等),以支持多任务并行运行。 MIG策略包括single和mixed两种模式。 •single,该策略下集群节点所有GPU上仅支持单一类型的MIG设备,且GPU必须属于同一型号。 •mixed,该策略下集群节点所有GPU上支持混合MIG设备类型。 配置该模式文件信息,其中使用默认配置文件时,名称为default-mig-parted-config;使用自定义配置文件时,名称为gpu-configmap-xxx,单击新增配置项,资源行默认值为nvidia.com/gpu。 •hami 需设置以下配置参数: o分割数:一张显卡的GPU资源指定分割的份数,每份为一个vGPU,默认为10份。 o默认显存大小:一份vGPU资源默认分配的显存大小,默认为5000MiB。 o默认任务算力:表示默认为每个任务预留的百分比算力,为整数类型,范围为0~100,默认为0。若设置为0,则代表任务可能会被分配到任一满足显存需求的GPU中,若设置为100,代表该任务独享整张显卡。 |
- |
虚拟机调度 |
启用后,将在Kubernetes集群中部署KubeVirt相关组件。可以使用KubeVirt来部署KVM虚拟机,启用Kubernetes支持虚拟化的能力。 |
默认关闭 |
服务治理 |
开启时将会在集群中部署Istio相关组件, 并会占用所有节点的80和443端口。 |
- |
日志中心 |
开启关闭此开关可控制是否也纳管集群的日志数据,默认关闭,开启时,纳管集群的管理节点须符合一定的配置要求,参考kubernetes管理节点配置。 |
- |
镜像缓存加速 |
启用后,将在Kubernetes集群中部署镜像缓存加速相关组件,支持从中心镜像仓库缓存镜像到本地集群镜像仓库中,以实现镜像拉取加速。 可自定义缓存容量和缓存路径。 |
20G,/data/mirror |
资源许可 |
启用后,创建Pod、Workload、Service、Job等需要特权模式、主机网络、主机端口时必须审核后才能创建。 |
- |
节点本地DNS缓存 |
启用后,将在Kubernetes集群中部署NodeLocal DNSCache相关组件以提高集群内DNS解析性能。需设置本地监听IP地址。 |
本地侦听IP地址:127.0.0.1 |
operator |
应用中间件,启用后,将在Kubernetes集群中部署对应operator相关组件,可以使用operator来部署相关应用。可选择要使用的operator包括Elasticsearch、Kafka、MongoDB、MySQL、RabbitMQ和Redis。 |
- |
资源调度策略 |
启用后,将根据定义的插件和策略调度集群资源。需选择所需调度插件,并进行相关设置。 •目标负载调度:根据节点预期CPU利用率进行调度,该插件将尽量把Pod调度到资源利用率接近此目标值的节点。还可在高级设置中配置容器权重乘数、默认资源预留和目标CPU利用率。 •真实负载感知调度:结合节点Pod资源请求值、限制值和节点实际负载指标评估节点风险,优先将Pod调度到风险更小的节点。还可在高级设置中配置平滑度量窗口数、指标权重和内存。 •负载动态感知:在默认调度器上,考虑了节点负载动态波动的幅度变化,负载利用率波动越小,Pod将优先被调度到该节点。还可在高级设置中配置安全方差(乘数)和安全方差(根幂)。 |
- |
部署审核 |
根据设置的漏洞数对模板部署应用或本地镜像部署应用前进行合规审核,不通过审核的镜像或模板无法创建应用。还需设置合规检查出现次数、镜像扫描漏洞危险级别及出现次数。 |
- |
成本计量 |
启用后,将允许Kubernetes集群关联计量配置。成本计量将展示在左侧导航栏中。 |
- |
4.激活托管集群。
▪复制生成的命令到需要被纳管的集群master主机上执行,此主机必须安装有kubectl,且具有kubectl管理员权限。
▪指定安装证书所依赖的镜像,默认情况下使用busybox镜像,如若没有此镜像,需指定一个可以被拉取的镜像。