创建Kubernetes集群
本节以添加Kubernetes集群为例说明创建集群的步骤。
操作步骤
创建集群的步骤如下。
以系统管理员角色登录平台。
在左侧导航栏中选择集群。
单击页面右上角的创建新集群。
填写集群基础设置信息。
表1 集群的基础设置
参数 配置说明 配置示例 集群名称 集群的名称,用于页面展示,可包括中文、英文、数字和特殊字符等。设置后不可修改。 开发的集群 集群编码 集群的名称编码,设置主机集群名称后,会自动生成该名称的编码,也可手动修改。只能包含小写字母数字。 k8s1 高可用集群 设置集群是否为高可用集群,默认不开启。 - 高可用Kubernetes集群包含3个集群管理节点和至少1个集群计算节点,集群管理节点可同时作为集群计算节点。单管理节点故障时,集群仍然可用。
- 常规Kubernetes集群只包含1个集群管理节点和至少1个集群计算节点,集群管理节点可同时作为集群计算节点。
- 高可用集群Virtual IP地址 开启“高可用集群”时有该项设置,需与3台管理节点IP在同一网段,且不被占用。 - Virtual IP绑定网卡 开启“高可用集群”时有该项设置,3个集群管理节点的管理IP对应的网卡名称必须一致。 ens3 集群规格 可选“小规模(1~10个节点)”、“中规模(11~50个节点)”、“大规模(51~200个节点)”、“超大规模(200个节点以上)”。
选择不同的集群规模后,集群组件的资源要求会有差异,请根据实际情况选择。- 系统数据存储路径 打开日志收集功能后,请为日志数据分配存储空间,此处设置的路径为日志文件的存储路径。 /var/lib/miaoyun 设置基础设置中的高级设置。
表2 集群的高级设置
参数 配置说明 配置示例 节点最大Pod数量 设置集群中每个节点上允许运行Pod数量的最大值,默认为55,上限为1000。 55 监控设置 Kubernetes集群监控的相关设置,可设置监控数据的保留时间,默认保留15天,
可以通过“+”、“-”设置监控数据保留天数。15 访问入口设置 Kubernetes集群系统默认IngressController设置,可配置HTTP和HTTPS的端口,不开启服务治理功能时,默认为80和443,
自定义设置HTTP和HTTPS端口,端口范围在1-65536之间。默认80和443 ETCD相关配置 默认已配置ETCD数据存储路径和ETCD存储路径前缀,可自定义设置。 - 代理通信模式 启用后,将通过集群代理组件与管理平台核心组件进行通信,可用于内网集群访问外网管理平台的场景。 - 设置集群的网络信息。
网络设置中包括网络模型、节点网络和容器组网络等信息。Pod、Service和外部组件之间需要通过Kubernetes集群的网络进行通信,网络信息设置如表 3所示。
表3 集群的网络信息
参数 | 配置说明 | 配置示例 |
网络模型 | Kubernetes集群支持如下两种网络模型:
|
Calico |
节点路由规则 | 网络模型选择为Calico时,有该选项。节点有多网卡时,为使管理和业务网络流量分离,可通过此规则来设置业务网卡。
|
默认 |
网络安全策略 | 网络模型选择为Calico时,有该选项。开启网络安全策略后,默认项目间和项目内所有Pod相互隔。 | - |
容器组网络CIDR | 容器组网络是Pod之间相互通信使用的网络,为非必填项,如果不设置则使用自动创建的网络。 | 10.32.0.0/12 |
服务网络CIDR | 服务网络是Pod和Service之间相互通信使用的网络,为非必填项,如果不设置则使用自动创建的网络。 | 10.96.0.0/12 |
起始端口 | 主机端口范围为1-65535之间,并且起始端口必须小于结束端口。默认起始端口30000。 | 30001 |
结束端口 | 主机端口范围为1-65535之间,并且起始端口必须小于结束端口。默认结束端口32767。 | 32767 |
新增附加网络 | 网络类型MacVLAN |
|
网络类型IPVLAN |
|
|
网络类型Bridge |
|
设置集群的存储信息。
表4 集群的存储信息
参数 配置说明 配置示例 内置本地存储 支持本地存储目录的动态分配,通过创建本地存储类与一个或多个本地目录进行绑定,以支持动态PV申请。 - 存储类名称:存储类的名称,以小写字母开头,可以包含数字、小写字母和-。
- 本地目录:集群主机的一个目录,必须以/开头。可配置多个目录。
- 内置分布式Longhorn存储 集成Longhorn云原生分布式存储,启用后,将在Kubernetes集群中部署Longhorn相关组件,提供云原生分布式持久化存储。 - 分布式存储网络:可选择容器网络或网络设置时添加的附加网络。
- 存储类名称:存储类的名称,以小写字母开头,可以包含数字、小写字母和-。
- 是否允许扩容开关。
- 回收策略:包含删除或保留。
- 卷绑定模式:立即绑定和延迟绑定。
- 副本数:设置的副本数不要大于集群节点数。
- 扩展功能。
表5 集群的扩展功能
参数 配置说明 配置示例 支持Windows计算节点 开关开启时,集群网络模型只支持Flannel网络。 - Pod GPU调度 允许应用使用此集群的GPU资源,对集群内的GPU资源集中管理和调度,Pod GPU调度功能开启前需确保服务器有显卡资源。
开启后,还需设置以下三个参数:- 分割数:将一张显卡的GPU资源被分割的份数,每份为一个vGPU。
- 默认显存大小:一份vGPU资源默认分配的显存大小。
- 默认任务算力:表示默认为每个任务预留的百分比算力,为整数类型,范围为0~100,默认为0。若设置为0,则代表任务可能会被分配到任一满足显存需求的GPU中,若设置为100,代表该任务独享整张显卡。
- 虚拟机调度 启用后,将在Kubernetes集群中部署KubeVirt相关组件。可以使用KubeVirt来部署KVM虚拟机,启用Kubernetes支持虚拟化的能力。 默认关闭 虚拟机调度附加网络 开启虚拟机调度时,有该选项。 - 网络名称:附加网络名称以小写字母开头,可以包含数字、小写字母和-,且不能重名。
- 主机网卡名称:默认为默认路由对应的网卡,可以指自定义指定节点的某张网卡。
- IPAM元数据存储位置:
- Etcd:集群范围,IPAM数据存储在Etcd里。
- Legacy:集群范围,专为虚拟机的MacVTAP和Bridge网络设计,IPAM数据存储在数据库里。
- DNS配置路径:默认是/etc/resolv.conf。
- 网络段:可增加一个或者多个网络段,每个网络段包含子网地址、网关、IP段。
- 路由表:可增加一个或者多个路由条目,每条路由包含目标地址和网关。
- DHCP服务器地址:可指定DHCP Server使用的IP地址。
- 服务治理 启用后,将在Kubernetes集群中部署Istio相关组件,启用Service Mesh服务网格支持。开启后,将占用所有节点的80和443网络端口。 默认关闭。 日志中心 选择日志输出类型。 - 系统默认,集群将会启动Elasticsearch组件进行日志接收。可设置日志的保留天数;
- 自定义Elasticsearch,配置外部Elasticsearch, 接收平台采集到的日志;
- MYLI,选择日志输出到MYLI系统,MYLI系统通过Kafka来接收日志;
- 外部MYLI,选择日志输出到外部MYLI系统,MYLI系统通过Kafka来接收日志。
每日增量备份 需填写备份路径,例如/data/log。每天23点59分将日志全量备份到指定路径,备份文件默认存储48天。 同时归档到FTP 日志归档到指定FTP服务器指定用户指定路径下,包含地址、端口、用户名密码、归档路径,以及归档规则。 启用后,除配置过强制不收集的应用,将默认收集所有应用日志。 平台默认不收集所有应用日志,开启后,除配置过强制不收集的应用,将收集所有应用日志。 镜像缓存加速 启用后,将在Kubernetes集群中部署镜像缓存加速相关组件,支持从中心镜像仓库缓存镜像到本地集群镜像仓库中,以实现镜像拉取加速。
可自定义缓存容量和缓存路径20G,/data/mirror 资源许可 启用后,创建Pod、Workload、Service、Job等需要特权模式、主机网络、主机端口时必须审核后才能创建。 20G,/data/mirror 节点本地DNS缓存 启用后,将在Kubernetes集群中部署NodeLocal DNSCache相关组件以提高集群内DNS解析性能。需设置本地监听IP地址。 - 集群自动伸缩 当对接云主机时,该选项会出现。当启用后,将在Kubernetes集群中部署Cluster Autoscaler相关组件,以实现集群节点的按需扩缩容,默认启用自动扩容。 - 扩容:需进行扩容相关配置,包括关联云主机池、最小节点数和最大节点数。如需关联多个云主机池,单击**+添加关联云主机池**,并设置相关云主机池信息。
- 缩容:启用集群自动缩容,当启用后,节点CPU和内存利用率同时低于设定的资源利用阈值时,会被自动移除集群。默认缩容阈值为0.5,可按需自定义设置。
- Operator 应用中间件,启用后,将在Kubernetes集群中部署对应operator相关组件,可以使用operator来部署相关应用。可选择要使用的operator包括Elasticsearch、Kafka、MongoDB、MySQL、RabbitMQ和Redis。 - 资源调度策略 启用后,将根据定义的插件和策略调度集群资源。需选择所需调度插件,并进行相关设置。 - 目标负载调度:根据节点预期CPU利用率进行调度,该插件将尽量把Pod调度到资源利用率接近此目标值的节点。还可在高级设置中配置容器权重乘数、默认资源预留和目标CPU利用率。
- 真实负载感知调度:结合节点Pod资源请求值、限制值和节点实际负载指标评估节点风险,优先将Pod调度到风险更小的节点。还可在高级设置中配置平滑度量窗口数、指标权重和内存。
- 负载动态感知:在默认调度器上,考虑了节点负载动态波动的幅度变化,负载利用率波动越小,Pod将优先被调度到该节点。还可在高级设置中配置安全方差(乘数)和安全方差(根幂)。
- 部署审核 根据设置的漏洞数对模板部署应用或本地镜像部署应用前进行合规审核,不通过审核的镜像或模板无法创建应用。还需设置合规检查出现次数、镜像扫描漏洞危险级别及出现次数。 -
单击立即创建。
创建成功后,新创建的集群在集群列表中显示。