创建华为云 CCE 集群
华为云 CCE 是一种托管的 Kubernetes 产品/服务,可进一步简化基于容器的应用程序部署和管理,您可以在 CCE 中方便的创建 Kubernetes 集群、部署您的容器化应用,以及方便的管理和维护。有关华为云 CCE 的更多信息,请参考 官方文档 。
通过使用本指南,可在您的华为账户中快速启动 CCE Kubernetes 集群。
注意事项
-
在平台删除本集群时,节点使用的磁盘也会一并删除,但是对于用户创建的容器,平台不会自动删除容器中 PV 关联的磁盘中的数据,您需参考常见问题手动删除。
-
删除集群时 VPC 和子网不会被删除。
前期准备
安装插件
安装前,您需要在 global 集群的插件页签栏,一键安装 华为云 CCE 集群管理组件 。
创建 IAM 用户
如果您是管理员,并在华为云购买了多种资源,例如弹性云服务器、云硬盘、裸金属服务器等,您需要将资源分配给企业中不同的员工或者应用程序使用,平台将使用授权的 IAM 用户在 CCE 中创建集群并接入管理。
-
参考官方文档 创建 IAM 用户 ,部分参数配置您须参考如下描述:
-
访问方式:您须勾选编程访问,以保证平台使用 API 等方式访问云服务。
-
凭证类型:您须勾选访问密钥,以便生成 Access Key ID/Secret Access Key,它包含访问密钥 ID(AK)和秘密访问密钥(SK)两部分,是您在华为云的长期身份凭证。
-
-
创建用户完成后即可下载本次创建的所有用户的 访问密钥(AK/SK) 。
-
在本平台 创建云凭证 。
为 IAM 用户授权
若管理员在创建 IAM 用户时,没有将其加入任何用户组,新创建的 IAM 用户没有任何权限,管理员或 IAM 用户自身可以在 IAM 控制台为其授予权限。授权后,用户即可根据权限使用帐号中的云服务资源,参考 官方文档 ,请根据不同的授权方式,参考授权项进行授权:
| 方式 | 说明 |
|---|---|
| 继承所选用户组的策略 | 将 IAM 用户加入用户组,用户将拥有所选用户组的所有权限。更多请参考 创建用户组并授权 ,其中,用户权限列表请参考 授权项 。 |
| 直接给用户授权(适用于企业项目授权) | 直接给 IAM 用户授予云服务权限。该授权方式仅在您开通企业项目后支持,如需开通请参考:开通 企业项目 ,单击下一步,并参考 授权项 为用户添加权限。 |
(可选)进行网络规划并创建 VPC 和子网
-
参考官方文档 VPC 网络 并提前进行网络规划。
-
您需要建立一个 VPC 来启动 CCE 集群。VPC 使您能够将 CCE 资源启动到自定义的虚拟网络中。您可以手动创建 1 个 VPC 和 1 个子网,并在创建集群时使用。如未创建,平台自动创建 1 个 VPC 和 1 个子网。请参考官方文档 创建 VPC 和子网 。
创建集群 - 基本信息
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击 创建集群 右侧
> 创建 HuaweiCloud CCE 集群。
| 参数 | 说明 |
|---|---|
| 云凭证 | 选择已创建的云凭证,或 创建云凭证 并使用。 |
| 区域 | 选择云凭证下支持的项目,详情请参考 官方文档 。 |
创建集群 - CCE 集群设置
| 参数 | 说明 |
|---|---|
| 企业项目 | 企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。若您开通了企业项目则需配置此项,选择已创建的企业项目,或参考 官方文档 开通并创建企业项目。 |
| 集群规模 | 集群支持管理的最大节点数量,请根据业务场景选择。创建完成后不支持修改。 |
| 高可用 | 若开启,控制节点将尽可能随机分布在不同可用区以提高容灾能力,当集群规模选择为 1000 节点、2000 节点时,默认为高可用且不支持关闭。 |
| 绑定公网地址 | 若开启,平台会自动为您创建并绑定一个公网地址,并使用该地址接入平台; 若关闭,集群将仅能通过内网地址访问,请确保平台可以访问 CCE 集群的 API Server 地址。 |
| 公有云网络 | - 平台新建:平台将为您自动创建 VPC 和子网并绑定,并使用该地址接入平台。 - 使用已有:选择在公有云中已经创建的 VPC 和子网,详细信息请参考 VPC 网络 官方文档,并创建 控制节点子网、容器网段,创建后不支持修改,建议根据官方文档的 网段规划建议 小节规划网络。 |
| Service 网段 | 供类型为 ClusterIP 的 Kubernetes Service 使用的 IP 地址段,不可与 控制节点子网、容器网段 重叠。 |
添加节点池
节点池为一类节点的集合,例如:高性能且按需计费的节点池。您可以通过添加多种不同类型的节点,以满足不同应用场景下的需求。
-
添加一个或多个节点池。
参数 说明 节点规格 支持的虚拟机实例类型,更多节点规格信息请参考 实例规格 。 密钥对 登录节点所需的密钥对私钥文件,选择本账号在指定项目 ID 下的密钥对,更多信息请参考 创建密钥对 。 系统盘/数据盘 填写系统盘和数据盘容量,当前仅支持使用通用 SSD 类型。 Kubernetes 标签 为节点池添加标签,标签是附加到 Kubernetes 对象上的键值对,用于指定对用户有意义且相关的标识属性,可高效的查询和标记相关资源。 污点 污点是节点的一个属性,污点可以让节点拒绝运行一类容器组,甚至驱逐容器组。 节点子网 计算节点使用的子网。 -
单击 创建,可查看集群创建进度。
相关操作
您可以在列表页面单击集群右侧的
或在详情页面单击右上角的 操作,按需更新集群下的节点等资源配置,或删除不再使用的集群。
| 操作 | 说明 |
|---|---|
| 更新 | 在 更新公有云集群配置 中更新已创建的部分集群配置,更新的配置将在 CCE 集群中同时生效。 |
| 删除 | 删除集群时,将会同时释放 CCE 节点中的资源,请在删除前,确保已绑定该集群的项目中的应用已经备份或迁移。 |
授权项
| 服务名称 | 功能权限 | 授权项 |
|---|---|---|
| 弹性云服务ECS | 查询云服务器详情 | ecs:cloudServers:get |
| 查询云服务器密钥对 | ecs:serverKeypairs:get | |
| 查询云服务器规格 | ecs:flavors:get | |
| 查询云服务器详情 | ecs:servers:get | |
| 删除云服务器 | ecs:servers:delete | |
| 修改弹性云服务器 | ecs:cloudServers:updateServer | |
| 修改弹性云服务器 | ecs:cloudServers:put | |
| 删除SSH密钥 | ecs:serverKeypairs:delete | |
| 挂载云服务器磁盘 | ecs:serverVolumeAttachments:create | |
| 创建云服务器 | ecs:servers:create | |
| 删除云服务器 | ecs:cloudServers:deleteServers | |
| 修改云服务器 | ecs:servers:update | |
| 删除云服务器 | ecs:cloudServers:delete | |
| 创建云服务器 | ecs:cloudServers:createServers | |
| 创建云服务器 | ecs:cloudServers:create | |
| 创建和导入SSH密钥 | ecs:serverKeypairs:create | |
| 变更云服务器规格 | ecs:cloudServers:resize | |
| 查询云服务器详情 | ecs:cloudServers:showServer | |
| 查询SSH密钥列表 | ecs:serverKeypairs:list | |
| 查询可用区列表 | ecs:availabilityZones:list | |
| 虚拟私有云 | 查询路由表详情 | vpc:routeTables:get |
| 查询虚拟私有云路由详情 | vpc:routes:get | |
| 查询虚拟私有云详情 | vpc:vpcs:get | |
| 查询弹性公网IP详情 | vpc:publicIps:get | |
| 创建路由器 | vpc:routers:create | |
| 更新弹性公网IP | vpc:publicIps:update | |
| 创建安全组规则 | vpc:securityGroupRules:create | |
| 删除虚拟私有云路由 | vpc:routes:delete | |
| 创建安全组 | vpc:securityGroups:create | |
| 删除虚拟私有云 | vpc:vpcs:delete | |
| 更新子网 | vpc:subnets:update | |
| 更新路由表 | vpc:routeTables:update | |
| 删除子网 | vpc:subnets:delete | |
| 创建虚拟私有云 | vpc:vpcs:create | |
| 删除安全组规则 | vpc:securityGroupRules:delete | |
| 创建弹性公网IP | vpc:publicIps:create | |
| 更新虚拟私有云 | vpc:vpcs:update | |
| 删除路由器 | vpc:routers:delete | |
| 创建虚拟私有云路由 | vpc:routes:create | |
| 创建子网 | vpc:subnets:create | |
| 删除安全组 | vpc:securityGroups:delete | |
| 删除弹性公网IP | vpc:publicIps:delete | |
| 查询虚拟私有云列表 | vpc:vpcs:list | |
| 查询子网列表或详情 | vpc:subnets:get | |
| 查询路由器列表或详情 | vpc:routers:get | |
| 查询弹性公网IP | vpc:publicIps:list | |
| NAT网关 | 查询SNAT规则详情 | nat:snatRules:get |
| 更新SNAT规则 | nat:snatRules:update | |
| 删除SNAT规则 | nat:snatRules:delete | |
| 更新NAT网关 | nat:natGateways:update | |
| 创建SNAT规则 | nat:snatRules:create | |
| 创建NAT网关 | nat:natGateways:create | |
| 删除NAT网关 | nat:natGateways:delete | |
| 查询NAT网关列表 | nat:natGateways:list | |
| 查询SNAT规则列表 | nat:snatRules:list | |
| 弹性公网IP | 创建全域弹性公网IP | eip:globalEips:create |
| 删除全域弹性公网IP | eip:globalEips:delete | |
| 查询全域弹性公网IP详情 | eip:globalEips:get | |
| 项目管理服务 | 查询租户下的项目 | projectmanConfig:project:query |
| 统一认证服务 | 查询租户项目 | iam:projects:listProjects |
| 企业项目管理服务 | 查看企业项目列表 | eps:enterpriseProjects:list |
| 容器引擎 | 查询节点详情 | cce:node:get |
| 获取集群信息 | cce:cluster:get | |
| 获取节点池 | cce:nodepool:get | |
| 删除节点或批量删除节点 | cce:node:delete | |
| 移除节点 | cce:node:remove | |
| 更新集群 | cce:cluster:update | |
| 删除集群 | cce:cluster:delete | |
| 更新节点 | cce:node:update | |
| 添加节点 | cce:node:create | |
| 创建集群 | cce:cluster:create | |
| 更新节点池信息 | cce:nodepool:update | |
| 变更集群规格 | cce:cluster:resize | |
| 删除节点池 | cce:nodepool:delete | |
| 创建节点池 | cce:nodepool:create | |
| 查询节点列表 | cce:node:list | |
| 列出所有集群 | cce:cluster:list | |
| 列出集群的所有节点池 | cce:nodepool:list | |
常见问题
如何手动删除 PV 关联的磁盘?
您可以在 云硬盘 EVS 中,根据集群 ID 标签 CCE-Cluster-ID、集群名称标签CCE-Cluster-Name 和命名空间标签 CCE-Namespace 来确定对应容器挂载 PV 的后端存储并删除。