• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

H3C CAS-云容器引擎配置指导-5W101

手册下载

H3C CAS-云容器引擎配置指导-5W101-整本手册.pdf 1 | 普通用户等级   (2.33 MB)

  • 发布时间:2021/6/29 10:01:08
  • 浏览量:
  • 下载量:

H3C CAS云计算管理平台

云容器引擎配置指导

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

资料版本:5W101-20210625

 

Copyright © 2021 新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文档中的信息可能变动,恕不另行通知。



1 简介

云容器引擎提供了云上高可用、可扩展的Kubernetes集群的搭建,整合了计算、网络、存储等。通过云容器引擎您可以一键式创建Kubernetes集群,无需自行搭建DockerKubernetes集群,配合故障恢复、自动扩容等能力,使得应用的整个生命周期都可以在云容器引擎内高效完成,简化了用户对集群的管理和对应用的运维。

云容器引擎主要由两部分功能组成:集群和工作负载。

1.1  集群

集群(Cluster)是计算、存储和网络资源的集合,Kubernetes利用这些资源运行各种基于容器的应用。集群中各节点区分为控制节点和工作节点两种,控制节点是Cluster的大脑,它的主要职责是调度,即决定将应用调度在哪里运行。工作节点的职责是运行容器应用(Docker)。工作节点由控制节点管理,工作节点负责监控并汇报容器应用的状态,同时根据控制节点的要求管理容器应用的生命周期。

图1-1 集群架构图

 

1.2  集群管理能力

云容器引擎还提供了例如命名空间管理、配置信息管理、Service配置、后端存储配置、自动扩容等功能,全面覆盖Kubernetes集群的日常维护和管理工作,如下图。

Kubernetes的最小调度单位是Pod,一个Pod中存在一个或多个容器,因此,对于Kubernetes的管理本质上是对容器的管理。

图1-2 Kubernetes能力集

 

1. 服务Service

ServiceKubernetes中工作负载提供服务的入口,是一个应用访问另一个应用的方式。Service代表一组Pod,由于Pod IP是随机的,且可能会因重启改变,因此不应该直接访问Pod IP。而集群IPService在集群中的具体实现,该IP地址一经创建便不会改变,Kubernetes负责建立和维护ServicePod的映射关系,因此用户只需要访问ServiceIP,无论后端Pod如何变化,对用户都不会有任何影响。

Service提供了以下访问容器服务的方式:

·     集群外访问:

¡     负载均衡(LoadBalancer):将各节点IP和端口注册到负载均衡中,请求访问时,通过负载均衡选择合适的节点,然后通过Service端口和容器端口访问对应容器。

¡     节点访问(NodePort):请求通过节点IP、节点端口、Service端口和容器端口访问对应容器。

·     集群内访问(ClusterIP):通过集群IPService端口和容器端口访问对应容器。

图1-3 Service架构图

 

2. 存储

存储卷PV(Persistent Volume)、存储卷声明PVC(Persistent Volume Claim)Kubernetes的存储池管理方案,用于为集群提供存储空间。

·     PV:后端存储的一块存储空间,云容器引擎的后端存储可以是主机共享存储上的存储卷,也可以是在集群工作节点上划分的一块存储空间。

·     PVC:对PV的申请说明,在PVC中指定存储资源的容量大小和访问模式(比如只读)等信息,部署应用时选择该PVCKubernetes即会自动为应用挂载符合条件的PV

3. 配置信息

配置项(ConfigMap)和密钥(Secret)组成了Kubernetes的配置系统,将配置与容器分离,使配置信息不随容器的销毁或重启而消失或改变,容器创建后可直接加载使用,以实现最大化的可移植性;同时,通过统一的配置中心,也可以集中式的对配置信息进行管理维护。

·     配置项:用于定义容器的一些固定配置信息,如日志存储路径、Pod间依赖关系等。

·     密钥:用于保存敏感数据,如密钥、证书等。

4. 命名空间Namespace

用于实现应用间的逻辑隔离(节点和存储除外),不同命名空间的应用默认不可以互相访问。

5. 自动扩容

CPU、内存的使用率达到设置的阀值时,集群节点会自动进行扩容,共同分担访问压力,直至达到所设置的最大节点数。

1.3  工作负载

用于展示与管理Kubernetes集群中的工作负载,支持应用中无状态容器、有状态容器、守护进程集、定时任务、普通任务、容器组的管理维护。旨在为用户提供全面的Kubernetes能力集可视化界面,降低容器管理的技术门槛,提供自动化&一键式管理容器的能力。

工作负载由PodsController组成,PodController都是Kubernetes中的概念。

图1-4 工作负载架构图

 

·     PodPodKubernetes集群中可运行和部署应用或服务的最小单元,是最基本的执行单元。它封装了一组(一个或多个)容器(即应用),同一Pod中的容器共享存储卷和网络栈。

·     Controller:控制器。Kubernetes通常不会直接创建Pod,而是通过Controller来管理PodController中定义了Pod的部署特性,比如有几个副本、在什么样的节点上运行等。为了满足不同的业务场景,Kubernetes提供了多种Controller,包括DeploymentReplicaSetDaemonSetStatefuleSetJob等。

¡     无状态Deployment是最常用的Controller,定义一组完全相同的Pod,如Pod名称、副本数、端口等,Deployment控制器会保证集群中的Pod与定义一致,即故障时可以自动恢复。

¡     有状态StatefuleSet能够保证Pod的顺序和唯一性,与Deployment一样基于一组完全相同的容器定义,但不同的是,StatefulSet为每个Pod维护一个具有黏性的身份标志,使他们不随重启改变。

¡     守护进程集DaemonSet用于每个节点最多只运行一个Pod副本的场景,确保全部(或者某些)节点上运行一个Pod的副本。当有节点加入集群时,可以自动的向该节点调度一个Pod副本。当有节点从集群移除时,节点上Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod

¡     普通任务Job用于运行一个或多个Pod,并等待一定数量的Pod成功结束。当Pod成功完成时,Job会进行跟踪,当成功完成的Pod达到指定数量时,Job就成功结束。如果该Pod失败了,Job会重新创建一个Pod

¡     定时任务CronJob也是Job的定时调度版本,用于运行定时、重复任务,例如定时通知、定时备份等场景。

2 配置前提

·     已完成CAS安装。详细操作请参见《H3C CAS云计算管理平台 安装指导》。

·     若需要搭建双机热备,建议在配置前完成CVM双机热备搭建。详细操作请参见《H3C CAS-CVM双机热备配置指导》。

·     已注册企业版/企业增强版License+容器License。详细操作请参见《H3C CAS本地授权 License使用指南》和《H3C 软件产品远程授权 License使用指南》。

3 环境准备

3.1  云容器引擎节点准备

云容器引擎节点支持物理主机和虚拟机,需要满足如下要求。本文档以虚拟机为例进行介绍。

表3-1 云容器引擎节点最小要求

参数

规格

CPU

16

内存

32G

磁盘

500G

 

3.2  IP地址准备

安装云容器引擎单节点前,请联系相关人员为管理节点规划IP地址等信息。管理节点需准备的IP地址信息包括:

·     管理网IP:必选,准备IP地址、掩码信息、网关。

·     IP:即虚拟IP地址,必选,包括管理网VIP与集群网VIP

表3-2 IP地址说明

网络

介绍

管理网络

用户访问和管理云容器引擎时使用的网络,也是云容器引擎与CAS通信的网络。云容器引擎集群部署环境下需要对管理网络配置虚IP

集群网络

云容器引擎集群中各节点互相通信时使用的网络。云容器引擎集群部署环境下需要对集群网络配置虚IP

 

说明

IP网段10.100.0.0/1610.240.0.0/12为系统所占用,在进行IP地址规划时需要避开这两个网段。

 

3.3  软件准备

表3-3 软件列表

软件包

说明

KaaS-{version}.iso(如:KaaS-E0720-M7.iso

云容器引擎镜像文件

Kaas-K8S15.tar.gz

Kubernetes集群节点虚拟机模板

 

4 配置流程

(1)     安装云容器引擎

a.     准备云容器引擎节点。

b.     安装云容器引擎节点。

c.     部署云容器引擎节点。

(2)     配置云容器引擎

(3)     创建Kubernetes集群

5 安装云容器引擎

说明

若云容器引擎使用集群部署,需要创建多个虚拟机,并为每个虚拟机都安装云容器引擎。

 

5.1  准备云容器引擎节点

云容器引擎节点可以是物理主机或虚拟机,本文档以虚拟机为例进行介绍。

注意

·     若使用物理主机,服务器的IP需与CVM管理网在同一网段。

·     若使用虚拟机,必须配置管理网。否则将无法正常访问云容器引擎页面。CVM与云容器引擎之间是通过管理网通信的,若云容器引擎只有业务网IP地址,没有管理网IP地址,CVM上云容器引擎能配置成功,但是进入页面会报错。

 

(1)     登录CAS云计算管理平台。

(2)     创建虚拟机。

图5-1 增加虚拟机

 

(3)     为虚拟机挂载云容器引擎镜像文件“KaaS-{version}.iso如:KaaS-E0720-M7.iso

图5-2 挂载镜像文件

 

(4)     单击<确定>按钮完成虚拟机的创建。

5.2  安装云容器引擎节点

5.2.1  选择节点角色

(1)     启动虚拟机,进入虚拟机控制台。

(2)     云容器引擎镜像自启动进入“INSTALLATION SUMMARY界面

图5-3 安装首页

 

(3)     单击<SOFTWARE SELETION>按钮,进入软件选择页面,选择“H3C CloudOS Node”。

图5-4 软件选择

 

(4)     单击<Done>按钮,完成配置,返回INSTALLATION SUMMARY界面

图5-5 安装首页

 

5.2.2  配置网络和主机名

(1)     单击<NETWORK & HOSTNAME>按钮。进入配置网络与主机名页面,单击右下角的<Configure…>按钮,弹出网卡配置窗口。

图5-6 网络与主机名

 

(2)     在网卡配置窗口,选择“IPv4 Settings”选项卡,在Method下拉菜单中选择Manual”选项,单击<Add>按钮,填写规划好的IP地址,配置IPv4地址、掩码、网关,单击<Save>按钮。

说明

·     Connection name不建议更改。

·     管理网卡和集群网卡需要使用同一个网卡,且必须配置网关,否则会导致集群部署失败。

 

图5-7 配置网卡

 

(3)     Etherneteth0)置为“ON状态

图5-8 网络连接配置

 

(4)     Host name文本框中配置服务器的主机名单击<Apply>按钮。修改后可在右侧的Current host name栏中查看目前的主机名。

说明

·     集群模式下各控制节点的主机名不能相同。

·     主机名应由小写字母或数字组成,必须以小写字母开头,可以包含括号中的英文符号(-.),且不能使用“controllermastersworkermasternew_nodesetcdnodesnew_masters”关键字。

 

(5)     单击左上角的<Done>按钮,完成网络和主机名配置,返回INSTALLATION SUMMARY界面

图5-9 安装首页

 

5.2.3  安装过程

以上均配置完成后,即可开始安装。

(1)     单击<Begin Installation>按钮,开始安装。

图5-10 安装中

 

(2)     安装完成,系统自动重启。重启完成后的界面如下图所示

图5-11 安装完成

 

(3)     修改容器网络(可选)

系统默认占用了两个网段作为平台集群内部使用地址,分别为10.240.0.0/12(缺省容器网段)、10.100.0.0/16(缺省Kubernetes服务网段),若用户已有的网络与这两个地址段冲突,可参考本步骤修改系统容器网络。

说明

修改容器网段和Kubernetes服务网段说明:

·     修改10.240.0.0/12(缺省容器网段):hosts.cloudos.tmpl文件中修改openshift_portal_net参数。

·     修改10.100.0.0/16(缺省Kubernetes服务网段):在hosts.cloudos.tmpl文件中修改osm_cluster_network_cidr参数

 

示例:对系统所使用的Service Cluster IP网段10.100.0.0/16进行修改,修改为10.101.0.0/16

a.     在所有节点上修改文件:/opt/openshift/openshift-ansible/inventory/hosts.cloudos.tmpl

b.     搜索openshift_portal_net=10.100.0.0/16并修改为openshift_portal_net=10.101.0.0/16

 

c.     修改完成后保存退出。

5.3  部署云容器引擎节点

(1)     启动浏览器,在地址栏中输入http://<云容器引擎IP地址>:9091打开“GoMatrix”安装部署页面。

图5-12 登录GoMatrix安装部署页面

 

(2)     输入缺省的用户名和密码:admin/Passw0rd@_,单击<登录>按钮进入GoMatrix首页,即部署页面。

图5-13 安装部署服务首页

 

(3)     在部署页面单击<部署>按钮,进入基础配置页面。根据规划配置集群网虚IP、管理网虚IPNTP服务地址。

单机部署场景也需要配置虚IP,集群网虚IP和管理网虚IP可以使用同一个IP,但不能与云容器引擎节点IP重复。

表5-1 参数说明

网络

介绍

集群网虚IP

云容器引擎集群网络的虚服务地址,用于云容器引擎集群节点之间内部通信,可不对外开放访问。

管理网虚IP

云容器引擎管理网络的虚服务地址,用于登录云容器引擎管理页面。

NTP服务地址

缺省为主节点的管理IP地址,如果需要指定外部NTP服务器,则这里需填写外部NTP服务器地址。

 

图5-14 基础配置

 

(4)     配置完成后,单击<下一步>按钮,进入节点配置页面。

¡     集群部署:填写已完成安装的云容器引擎节点的IP、用户名与密码,单击<添加>按钮,将节点加入集群。推荐添加节点后的数量为35。配置完成后单击<下一步>按钮。

¡     若单机部署,直接单击<下一步>按钮。本文以单机部署为例。

图5-15 增加集群节点

 

(5)     云容器引擎无需配置etcd磁盘,单击<下一步>按钮。

 

(6)     单击<部署>按钮,开始部署,等待部署完成。

图5-16 开始部署

 

图5-17 部署中

 

图5-18 部署完成

 

说明

云容器引擎部署完毕后,请勿变更CAS CVMIP地址。

 

6 配置云容器引擎

云容器引擎安装完成后,需要在CAS云计算管理平台上配置云容器引擎,才能正常使用云容器引擎功能。

6.1  开启容器

开启容器并正确配置了“基础容器IP”后,CAS云计算管理平台上才会出现云容器引擎功能的菜单项。

注意

云容器引擎加入CVM环境后,请勿再配置到其他CVM环境,否则将导致云容器引擎功能不可用。

 

(1)     登录CAS云计算管理平台。

(2)     选择顶部“系统”页签,单击左侧导航树[参数配置]菜单项,进入参数配置页面。

(3)     选择“容器配置”页签,进入容器配置页面。

图6-1 容器配置页面

 

(4)     单击<修改>按钮,开启容器,配置“基础容器IP”,即云容器引擎管理网IP,若是集群部署,则填写云容器引擎管理网虚IP

图6-2 配置“基础容器IP

 

(5)     设置完成后,单击<保存>按钮保存配置。

图6-3 配置完成

 

6.2  配置计算资源

6.2.1  增加主机池

集群需要运行在主机池中,新搭建的管理系统中默认没有任何主机池,所以增加容器集群前,需要先在云资源中手动增加主机池。

(1)     选择顶部“云资源”页签,进入云资源概要页面。

(2)     单击<增加主机池>按钮,在弹出的对话框中输入主机池名称。

(3)     单击<确定>按钮完成操作。

6.2.2  增加容器集群

增加集群时,容器集群开关默认不开启,需要手动开启。开启后才能在该集群创建Kubernetes集群,并在该集群运行容器。

(1)     选择顶部“云资源”页签,单击左侧导航树[计算/<主机池>]菜单项,进入主机池概要信息页面。

(2)     单击<增加集群>按钮,弹出增加集群对话框。配置集群名称,选择“容器集群”开关为“是”;其他参数根据实际情况进行配置,关于参数的详细介绍,请参见《H3C CAS CVM联机帮助》

图6-4 增加集群

 

(3)     参数设置完成后,单击<确定>按钮完成操作。

6.2.3  增加主机

完成主机池和容器集群的添加后,需要将物理主机添加到容器集群中,创建Kubernetes集群时,系统才能自动在该容器集群中创建Kubernetes集群的控制节点虚拟机和工作节点虚拟机。

(1)     进入已创建的集群页面,单击<增加主机>按钮,弹出增加主机对话框。

(2)     在弹出的增加主机对话框中输入虚拟化内核平台主机的“IP地址”、“用户名”和“密码”。

(3)     参数设置完成后,单击<确定>按钮完成操作。

6.3  配置存储资源

Kubernetes集群的控制节点虚拟机和工作节点虚拟机都需要使用共享存储,所以还需要为容器集群内的主机配置共享存储。

关于配置共享存储详细的操作步骤请参见《H3C CAS CVM联机帮助》的[系统快速入门/配置云资源/配置存储池]章节。

6.4  导入虚拟机模板

Kubernetes集群的控制节点和工作节点是通过虚拟机模板“Kaas-K8S15”创建的,在创建Kubernetes集群前,请先导入该虚拟机模板。

注意

请勿修改模板名称,否则会导致Kubernetes集群节点创建失败。

 

(1)     选择顶部“云资源”页签,单击左侧导航树[虚拟机模板]菜单项,进入虚拟机模板列表页面。

(2)     单击<导入虚拟机模板>按钮,进入导入虚拟机模板页面。

图6-5 导入虚拟机模板

 

(3)     选择模板存储位置,单击<下一步>按钮。

(4)     单击虚线框区域,在弹出的对话框中选择模板文件“Kaas-K8S15.tar.gz”,或者直接将模板文件拖拽到虚线框中,单击<开始上传>按钮上传虚拟机模板。

图6-6 上传文件

 

(5)     待上传完成后,为虚拟机模板选择网络策略模板和所有者。

图6-7 网络信息

 

(6)     单击<确定>按钮,导入完成。

图6-8 导入完成

 

7 使用指导

配置完成后,即可通过CAS云计算管理平台创建、管理Kubernetes集群,管理集群中的Pod容器。

7.1  创建Kubernetes集群

(1)     选择顶部“云容器引擎”页签,单击左侧导航树[集群]菜单项,进入集群管理页面。

图7-1 申请集群

 

(2)     单击<申请集群>按钮,进入申请集群页面,

a.     首先配置集群信息。

图7-2 配置集群信息

 

b.     配置控制节点。

-     节点数:建议配置3个控制节点,以实现集群的高可用。

-     选择集群:选择开启了“容器集群”的集群。

-     选择存储:需选择“共享文件系统”类型的存储。

-     其他参数根据实际情况进行配置,关于参数的详细介绍,请参见《H3C CAS CVM联机帮助》

图7-3 配置控制节点

 

c.     配置工作节点

-     节点数:根据实际情况进行选择,最小为1

-     选择集群:选择开启了“容器集群”的集群。

-     选择存储:需选择“共享文件系统”类型的存储。

-     其他参数根据实际情况进行配置,关于参数的详细介绍,请参见《H3C CAS CVM联机帮助》

图7-4 配置工作节点和节点认证信息

 

d.     配置认证信息。配置控制节点和工作节点的root密码。

(3)     单击<确定>按钮完成操作,等待集群创建完成。

图7-5 集群创建中

 

注意

Kubernetes集群创建完成后,系统会在所选CAS集群上自动创建相应数量的节点虚拟机。虚拟机名称请勿修改,否则会导致Kubernetes集群不可用。

 

7.2  管理Kubernetes集群

可通过CAS云计算管理平台对Kubernetes集群进行管理,包括:集群节点、命名空间、配置信息、集群服务、集群存储、自动扩容等。

详细的操作步骤和参数说明请参见《H3C CAS CVM联机帮助》的[云容器引擎/管理集群]章节。

7.3  管理工作负载

可通过CAS云计算管理平台查看Kubernetes本身的工作负载以及用户创建的工作负载。对于用户创建的工作负载,还支持启动、伸缩、停止、删除等操作。

详细的操作步骤和参数说明请参见《H3C CAS CVM联机帮助》的[云容器引擎/管理工作负载]章节。

7.4  恢复异常的控制节点

当集群中某一控制节点发生物理故障或操作人员误删除控制节点导致的节点异常时(其他两个控制节点需为“运行中”状态),可尝试执行本操作恢复该节点。

图7-6 控制节点异常

 

1. 创建新虚拟机

恢复节点前,用户需准备一台和异常节点虚拟机具有相同主机名称、节点IP和镜像的新虚拟机用于恢复。

(1)     进入异常节点虚拟机概要信息页面,查看并记录虚拟机名称(注意:不是“显示名称”)和IP地址。

图7-7 查看虚拟机名称和IP地址

 

(2)     进入虚拟机模板列表页面,在“KaaS-K8S15”模板的操作列,单击<部署虚拟机>按钮,进入部署虚拟机页面。

图7-8 通过“KaaS-K8S15”模板部署虚拟机

 

(3)     配置基本信息。配置操作系统为开启,其他规格配置不建议低于异常节点虚拟机。配置完成后单击<下一步>按钮。

图7-9 配置基本信息

 

(4)     选择主机。若选择集群,系统将自动在集群内选择一个资源最优的主机。选择完成后单击<下一步>按钮。

图7-10 选择主机

 

(5)     配置存储信息。选择一个共享存储池,选择磁盘格式。选择完成后单击<下一步>按钮。

图7-11 配置存储信息

 

(6)     配置网络信息。配置完成后单击<下一步>按钮。

a.     虚拟交换机、网络策略模板虚拟防火墙根据实际情况配置。

图7-12 配置网络信息

 

b.     配置网络参数。选择“手工分配”模式,“IP地址”和“子网掩码”需要与异常节点完全一致。

图7-13 配置网络参数

 

(7)     配置系统信息。“计算机名”需要与异常节点虚拟机名称完全一致;登录帐号请使用“root”,并为root帐号设置密码。

注意

若异常节点虚拟机名称过长,超过了“计算机名”长度限制,此时只能修改名称,待虚拟机创建完成后,再登录到虚拟机控制台,手动对其进行修改,具体操作请参见修改虚拟机名称

 

图7-14 配置系统信息

 

(8)     配置完成后单击<确定>按钮,系统开始创建虚拟机。

2. 恢复节点

(1)     进入异常节点所在Kubernetes集群节点管理页面,单击异常节点操作列的<恢复>按钮。

图7-15 单击<恢复>按钮

 

(2)     在弹出的恢复控制节点对话框中,输入新虚拟机的root ssh密码,然后单击<确定>按钮。

图7-16 恢复控制节点

 

(3)     开始恢复,恢复过程预计需要40分钟,请耐心等待。

图7-17 恢复中

 

8 附录

8.1  修改虚拟机名称

(1)     进入虚拟机控制台,使用root用户登录。

(2)     执行命令vi /etc/hostname编辑/etc/hostname文件。

图8-1 编辑/etc/hostname文件

 

(3)     修改虚拟机名称。

图8-2 修改前

 

图8-3 修改后

 

(4)     修改完成后,需要重启虚拟机,使修改生效。

图8-4 修改完成

 

新华三官网
联系我们