您可以通过容器服务控制台非常方便地创建加密计算托管集群。

前提条件

您需要开通容器服务和访问控制(RAM)服务。

登录容器服务管理控制台RAM管理控制台开通相应的服务。

说明

您在使用集群过程中,请注意以下限制:

  • 用户账户需有100元的余额并通过实名认证,否则无法创建按量付费的ECS实例和负载均衡。
  • 随集群一同创建的负载均衡实例只支持按量付费的方式。
  • Kubernetes集群仅支持专有网络VPC。
  • 每个账号默认可以创建的云资源有一定的配额,如果超过配额创建集群会失败。请在创建集群前确认您的配额。如果您需要提高配额,请提交工单申请。
    • 每个账号默认最多可以创建50个集群(所有地域下),每个集群中最多可以添加100个节点。如果您需要创建更多的集群或者节点,请提交工单申请。
      注意 每个账户初始默认状况下VPC路由条目不超过48条,意味着您的Kubernetes集群的网络模式是Flannel时,集群的节点数最大不能超过48个(网络模式是Terway则不受该影响)。如集群需要更多节点数,您需要先对目标VPC提交工单,申请提高配额 。
    • 每个账号默认最多可以创建100个安全组。
    • 每个账号默认最多可以创建60个按量付费的负载均衡实例。
    • 每个账号默认最多可以创建20个EIP。
  • 创建加密计算Kubernetes集群时,以下界面参数需要按照表中的要求配置,否则创建的集群将无法支持运行Intel SGX应用。
    参数 配置
    可用区 目前只有神龙实例ecs.ebmhfg5.2xlarge支持加密计算集群,请确保所选可用区有神龙实例。
    容器运行时 Docker 18.09.2
    实例规格 神龙裸金属服务器(神龙)的ecs.ebmhfg5.2xlarge规格
    操作系统类型 AliyunLinux 2.xxxx
    网络插件 Flannel
    自定义镜像 不使用自定义镜像,否则无法保证提供加密计算服务。

操作步骤

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击页面右上角的创建集群
  4. 在弹出的选择集群模板页面,在标准托管集群区域选择加密计算集群,并单击创建
  5. Kubernetes托管版页面,完成集群配置。
    1. 完成集群基础选项配置。
      配置项 描述
      集群名称
      填写集群的名称。
      说明 集群名称应包含1~63个字符,可包含数字、汉字、英文字符或短划线(-)。
      集群规格

      选择集群规格,支持标准版Pro版

      地域

      选择集群所在的地域。

      资源组
      将鼠标悬浮于页面上方的账号全部资源,选择集群所在的资源组。这里显示选择的资源组。资源组
      Kubernetes版本

      选择Kubernetes版本。

      加密计算集群 勾选开启
      容器运行时 容器运行时仅支持Docker。
      专有网络
      设置集群的网络,您可以选择普通VPC和共享VPC。
      • 共享VPC:VPC的所有者账号(资源所有者)可以将其账号下的VPC内的交换机资源共享给其组织内的其他账号使用。
      • 普通VPC:不具备共享功能的VPC。
      说明 Kubernetes集群仅支持专有网络。您可以在已有VPC列表中选择所需的VPC。如果没有您需要的专有网络,可以通过单击创建专有网络进行创建,请参见创建专有网络
      虚拟交换机

      设置虚拟交换机。

      您可以在已有虚拟交换机列表中,根据可用区选择1~3个交换机。如果没有您需要的交换机,可以通过单击创建虚拟交换机进行创建,请参见创建交换机

      网络插件 加密计算仅支持Flannel
      Pod网络CIDR

      网络插件选择Flannel时,需要配置Pod网络CIDR

      Pod网络CIDR指定Flannel网络插件需要配置Pod网络CIDR,网段不能和VPC及VPC已有Kubernetes集群使用的网段重复,创建成功后不能修改。而且Service地址段不能和Pod地址段重复,有关Kubernetes网络地址段规划的信息,请参见VPC下Kubernetes的网络地址段规划

      Service CIDR

      设置Service CIDR。您需要指定Service CIDR,网段不能与VPC及VPC内已有Kubernetes集群使用的网段重复,创建成功后不能修改。而且Service地址段也不能和Pod地址段重复,有关Kubernetes网络地址段规划的信息,请参见VPC下Kubernetes的网络地址段规划

      节点IP数量
      如果您选择的网络模式为Flannel,您需设置节点IP数量
      说明 节点IP数量是指可分配给一个节点的IP数量,建议保持默认值。
      配置SNAT

      创建集群时,默认不开通公网。如果您选择的VPC不具备公网访问能力,选中为专有网络配置SNAT后,ACK将为您创建NAT网关并自动配置SNAT规则。

      公网访问

      设置是否开放使用EIP暴露API Server

      RDS白名单
      设置RDS白名单。将节点IP添加到RDS实例的白名单中。
      说明 允许白名单RDS访问Kubernetes集群,RDS必须在当前集群的VPC内。
      安全组

      支持选择自动创建普通安全组自动创建企业级安全组选择已有安全组。有关安全组的详细内容,请参见安全组概述

      Secret落盘加密 根据需要选择是否勾选选择KMS密钥
    2. 完成集群高级选项配置。
      配置项 描述
      kube-proxy代理模式
      支持iptables和IPVS两种模式。
      • iptables:成熟稳定的kube-proxy代理模式,Kubernetes service的服务发现和负载均衡使用iptables规则配置,但性能一般,受规模影响较大,适用于集群存在少量的Service。
      • IPVS:高性能的kube-proxy代理模式,Kubernetes service的服务发现和负载均衡使用Linux ipvs模块进行配置,适用于集群存在大量的service,对负载均衡有高性能要求的场景。
      标签
      为集群绑定标签。输入键和对应的值,单击添加
      说明
      • 是必需的,而是可选的,可以不填写。
      • 不能是aliyun、http://、https://开头的字符串,不区分大小写,最多64个字符。
      • 不能是http:// 或https://,可以为空,不区分大小写,最多128个字符。
      • 同一个资源,标签键不能重复,相同标签键(Key)的标签会被覆盖。
      • 如果一个资源已经绑定了20个标签,已有标签和新建标签会失效,您需要解绑部分标签后才能再绑定新的标签。
      集群本地域名
      设置是否配置集群本地域名。
      说明 默认域名为cluster.local,可自定义域名。域名由两段组成,每段不超过63个字符,且只能使用大小写字母和数字,不能为空。
      自定义证书SAN

      在集群API Server服务端证书的SAN(Subject Alternative Name)字段中添加自定义的IP或域名,以实现对客户端的访问控制。

      服务账户令牌卷投影

      开启服务账户令牌卷投影功能以降低在Pod中使用Service Account遇到的安全性问题,可使得kubelet支持基于Pod粒度的Token签发,并且支持Token audience和过期时间的配置。详情请参见部署服务账户令牌卷投影

      集群删除保护

      设置是否启用集群删除保护。为防止通过控制台或API误释放集群。

  6. 单击下一步:Worker配置,完成Worker节点配置。
    1. 选择Worker实例。
      说明 加密计算场景下, Worker节点仅支持神龙工作节点,选择神龙型号为ecs.ebmhfg5.2xlarge。
      • 如果您选择新增实例,需要进行以下配置。
        配置项 描述
        付费类型
        容器服务Kubernetes版支持按量付费包年包月两种节点付费类型。选择包年包月时,需设置以下参数。
        • 购买时长:目前支持选择1、2、3、6个月和1~5年。
        • 自动续费:设置是否自动续费。
        支持按量付费包年包月两种节点付费类型。
        实例规格 目前机型仅支持神龙裸金属服务器(神龙),且该机型的ecs.ebmhfg5.2xlarge实例规格支持运行Intel SGX应用。
        已选规格 已选的实例规格,可以选一个或多个规格。
        数量

        新增Worker实例(ECS实例)的数量。

        系统盘
        支持ESSD云盘SSD云盘高效云盘
        说明 支持选中开启云盘备份以备份云盘数据。
        挂载数据盘

        支持ESSD云盘SSD云盘高效云盘。挂载数据盘时,支持云盘加密开启云盘备份

        操作系统 仅支持AliyunLinux 2.xxxx。
        登录方式
        密钥对
      • 如果您选择添加已有实例,则至少添加两个以上的Worker实例。您需要配置购买时长自动续费操作系统登录方式密钥对,配置描述参见上文。
    2. 设置高级选项。
      配置项 描述
      实例保护
      设置是否启用实例保护。
      说明 为防止通过控制台或API误释放集群节点,默认启用实例保护。
      实例自定义数据 自定义脚本,在节点初始化之后会执行该脚本。
      说明 Windows支持bat和powershell两种格式,在Base64编码前,第一行为[bat]或者 [powershell]。Linux支持shell脚本,更多的格式请参见cloud-init生成实例自定义数据

      如果您使用的自定义脚本长度大于1 KB,建议您将脚本上传到OSS,通过OSS内网端点拉取脚本执行。

      自定义镜像
      注意 不使用自定义镜像,否则无法保证提供加密计算服务。
      自定义节点名称

      是否开启自定义节点名称

      节点名称由前缀 + 节点IP地址子串 + 后缀三部分组成:
      • 前缀和后缀均可由.分隔的一个或多个部分构成,每个部分可以使用小写字母、数字和短划线(-),且首尾必须为小写字母和数字。
      • IP地址段长度指截取节点IP地址末尾的位数,取值范围5~12。
      CPU Policy
      设置CPU policy。
      • none:默认策略,表示启用现有的默认CPU亲和方案。
      • static:允许为节点上具有某些资源特征的Pod赋予增强的CPU亲和性和独占性。
      污点(Taints)

      为集群内所有Worker节点添加污点。

  7. 单击下一步:组件配置,完成组件配置。
    配置项 描述
    Ingress

    设置是否安装Ingress组件。默认选中安装Ingress组件,请参见配置Ingress

    说明 如果您勾选创建Ingress Dashboard,则需要同步安装日志服务组件。
    云监控插件 设置是否启用云监控插件。您可以选择在ECS节点上安装云监控插件,从而在云监控控制台查看所创建ECS实例的监控信息。
    日志服务

    设置是否启用日志服务,您可使用已有Project或新建一个Project。

    默认选中使用日志服务。创建应用时,您可通过简单配置,快速使用日志服务,详情参见使用日志服务进行Kubernetes日志采集

    工作流引擎
    设置是否使用AGS。
    • 如果选中AGS,则创建集群时系统自动安装AGS工作流插件。
    • 如果不选中,则需要手动安装AGS工作流插件,请参见AGS命令行帮助
  8. 单击下一步:确认配置,确认配置信息并选中服务协议
  9. 单击创建集群,启动部署。
    您还可以看到集群创建的日志信息。
    说明 一个包含多节点的Kubernetes集群的创建时间一般约为十分钟。

执行结果

  • 集群创建成功后,您可以在容器服务管理控制台的集群列表页面查看所创建的集群。集群列表
  • 您可以单击操作列的查看日志,进入集群日志信息页面查看集群的日志信息。 您也可以在集群日志信息页面中,单击资源栈事件查看更详细的信息。集群日志详情
  • 集群列表页面中,找到刚创建的集群,单击集群名称或者操作列中的详情,然后单击基本信息连接信息页签,查看集群的基本信息和连接信息。机密
    其中:
    • API Server公网连接端点:Kubernetes的API Server对公网提供服务的地址和端口,可以通过此服务在用户终端使用kubectl等工具管理集群。

      绑定EIP解绑EIP功能仅支持托管版Kubernetes集群。

      • 绑定EIP:您可以选择在已有EIP列表中绑定EIP或者新建EIP。

        绑定EIP操作为导致API Server短暂重启,请避免在此期间操作集群。

      • 解绑EIP:解绑EIP后您将无法通过公网访问API Server。

        解绑EIP操作会导致API Server短暂重启,请避免在此期间操作集群。

    • API Service内网连接端点:Kubernetes的API server对集群内部提供服务的地址和端口,此IP为负载均衡的地址。
    • 测试域名:为集群中的服务提供测试用的访问域名。服务访问域名后缀是<cluster_id>.<region_id>.alicontainer.com
      说明 单击重新绑定域名,您可以重新绑定访问域名。
  • 您可以通过kubectl连接Kubernetes集群,执行kubectl get node查看集群的节点信息。查看集群结果