您可以通过容器服务控制台非常方便地创建安全沙箱集群。

前提条件

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

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

说明
  • 用户账户需有100元的余额并通过实名认证,否则无法创建按量付费的ECS实例和负载均衡。
  • 随集群一同创建的负载均衡实例只支持按量付费的方式。
  • Kubernetes集群仅支持专有网络VPC。
  • 每个账号默认可以创建的云资源有一定的配额,如果超过配额创建集群会失败。请在创建集群前确认您的配额。如果您需要提高配额,请提交工单申请。
    • 每个账号默认最多可以创建5个集群(所有地域下),每个集群中最多可以添加40个节点。如果您需要创建更多的集群或者节点,请提交工单申请。
      说明 Kubernetes集群中,VPC默认路由条目不超过48条,意味着Kubernetes集群使用VPC时,默认节点上限是48个,如果需要更大的节点数,需要您先对目标VPC开工单,提高VPC路由条目,再对容器服务提交工单。
    • 每个账号默认最多可以创建100个安全组。
    • 每个账号默认最多可以创建60个按量付费的负载均衡实例。
    • 每个账号默认最多可以创建20个EIP。
  • 创建安全沙箱Kubernetes集群时,以下界面参数需要按照表中的要求配置,否则创建的集群将无法使用安全沙箱的场景。
    参数 配置
    可用区 目前只有神龙实例支持安全沙箱容器,请确保所选可用区有神龙实例。
    kubernetes版本 1.14.6-aliyun.1或更高版本。
    容器运行时 安全沙箱
    Worker实例 新增实例
    节点类型 包年包月
    实例规格 神龙裸金属服务器(神龙)
    挂载数据盘 请至少挂载一块不小于200GiB的数据盘,建议1T+。
    操作系统类型 Linux
    网络插件 Terway

操作步骤

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,选择集群 > 集群
  3. 在弹出的选择集群模板页面,选择标准托管集群,并单击创建
  4. 完成集群配置。
    1. 完成集群基础选项配置。
      配置项 描述
      集群名称 填写集群的名称。
      说明 集群名称应包含1~63个字符,可包含数字、汉字、英文字符或连字符(-)。
      Kubernetes版本 选择1.14.6-aliyun.1或更高版本。
      容器运行时 必须选择安全沙箱
      地域 选择集群所在的地域。
      资源组 将鼠标悬浮于页面上方的账号全部资源,选择集群所在的资源组。这里显示选择的资源组。
      专有网络 设置集群的网络。
      说明 Kubernetes集群仅支持专有网络。您可以在已有VPC列表中选择所需的VPC。如果没有您需要的专有网络,可以通过单击创建专有网络进行创建,请参见创建专有网络
      虚拟交换机 设置虚拟交换机。
      说明 您可以在已有虚拟交换机列表中,根据可用区选择1-3个交换机 。如果没有您需要的交换机,可以通过单击创建虚拟交换机进行创建,请参见创建交换机
      网络插件 安全沙箱集群的网络类型目前仅支持Terway。具体请参见如何使用Terway网络插件

      指定Terway网络插件需要为Pod选择可用的VSwitch,这些VSwitch的网段掩码必须小于或等于19,例如172.17.128.0/19;当集群创建Pod时,会为Pod从选定的那些VSwitch网段中分配IP。

      Pod虚拟交换机 您需要为Pod分配IP的虚拟交换机。每个Pod虚拟交换机分别对应一个Worker实例的虚拟交换机。
      Service CIDR 您需要指定Service CIDR,网段不能与VPC及VPC内已有Kubernetes集群使用的网段重复,创建成功后不能修改。而且Service地址段也不能和Pod地址段重复,有关Kubernetes网络地址段规划的信息,请参见VPC下Kubernetes的网络地址段规划
      配置SNAT 设置是否为专有网络配置SNAT网关。
      说明
      • 如果您使用的VPC中当前已有NAT网关,容器服务会使用已有的NAT网关。
      • 如果VPC中没有NAT网关,系统会默认自动为您创建一个NAT网关。如果您不希望系统自动创建NAT网关,可以取消勾选页面下方的为专有网络配置SNAT。此时您需要自行配置NAT网关实现VPC安全访问公网环境,或者手动配置SNAT,否则VPC内实例将不能正常访问公网,会导致集群创建失败。
      公网访问 设置是否开放使用EIP暴露API Server
      说明
      API Server提供了各类资源对象(Pod,Service等)的增删改查及watch等HTTP Rest接口。
      • 如果选择开放,会创建一个EIP,并挂载到内网SLB上。此时,Master节点的6443端口(对应API Server)暴露出来,用户可以在外网通过kubeconfig连接或操作集群。
      • 如果选择不开放,则不会创建EIP,用户只能在VPC内部用kubeconfig连接并操作集群。
      RDS白名单 设置RDS白名单。将节点IP添加到RDS实例的白名单中。
      说明 允许白名单RDS访问Kubernetes集群,RDS必须在当前集群的VPC内。
      自定义安全组 设置安全组。单击请选择安全组,在弹出的页面选中目标安全组,单击确定
      详细内容请参见安全组概述
      说明 当前只有白名单用户可使用该功能。提交工单申请使用。
    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个字符,且只能使用大小写字母和数字,不能为空。
      集群删除保护 设置是否启用集群删除保护。为防止通过控制台或API误释放集群。
  5. 单击下一步:Worker配置,完成Worker节点配置。
    说明 安全沙箱集群中,Worker节点仅支持神龙工作节点。
    1. 完成Work节点基础选项配置。
      配置项 描述
      Worker实例 只支持新增实例,暂不支持添加已有实例。
      付费类型 神龙实例付费模式只支持包年包月,不支持按量付费。
      购买时长 选择包年包月时,需设置购买时长。目前支持选择1、2、3、6和12个月。
      自动续费 选择包年包月时,需设置是否自动续费
      实例规格 目前机型仅支持神龙裸金属服务器(神龙)
      已选规格 已选的实例规格。只能选择一个规格。
      数量 新增Worker实例的数量。
      系统盘 支持SSD云盘和高效云盘。
      说明 支持选中开启云盘备份备份云盘数据。
      挂载数据盘 支持SSD云盘、高效云盘和普通云盘。挂载数据盘时,支持云盘加密和云盘备份。
      注意 挂载的数据盘用于存储节点上所有容器的根文件系统。因此,请至少挂载一块不小于200 GiB的数据盘,建议1T以上。
      操作系统 安全沙箱集群仅支持Linux系统。
      登录方式
      • 设置密钥。

        您需要在创建集群的时候选择密钥对登录方式,单击新建密钥对,跳转到ECS云服务器控制台,创建密钥对,参见创建SSH密钥对。密钥对创建完毕后,设置该密钥对作为登录集群的凭据。

      • 设置密码。
        • 登录密码:设置节点的登录密码。
        • 确认密码:确认设置的节点登录密码。
      密钥对
    2. 设置高级选项。
      配置项 描述
      实例保护 设置是否启用实例保护。
      说明 为防止通过控制台或API误释放集群节点,默认启用实例保护。
      实例自定义数据 请参见生成实例自定义数据
      自定义镜像 不要选择自定义镜像。安全沙箱集群不支持使用自定义镜像。
      自定义节点名称 是否开启自定义节点名称
      节点名称由前缀 + 节点IP地址子串 + 后缀三部分组成:
      • 前缀和后缀均可由.分隔的一个或多个部分构成,每个部分可以使用小写字母、数字和-,且首尾必须为小写字母和数字。
      • IP地址段长度指截取节点IP地址末尾的位数,取值范围5-12。

      例如:节点IP地址为192.168.0.55,指定前缀为aliyun.com,IP地址段长度为5,后缀为test,则节点名称为aliyun.com00055test。

      CPU Policy 设置CPU policy。
      • none:默认策略,表示启用现有的默认CPU亲和方案。
      • static:允许为节点上具有某些资源特征的Pod赋予增强的CPU亲和性和独占性。
      污点(Taints) 为集群内所有Worker节点添加污点。
  6. 单击下一步:组件配置,完成组件配置。
    配置项 描述
    Ingress 设置是否安装Ingress组件。默认勾选安装Ingress组件,请参见Ingress 支持
    说明 如果您勾选创建Ingress Dashboard,则需要同步安装日志服务组件。
    存储插件 设置存储插件,支持Flexvolume和CSI。Kubernetes集群通过Pod可自动绑定阿里云云盘、NAS、OSS存储服务。请参见存储管理-Flexvolume存储管理-CSI
    云监控插件 设置是否启用云监控插件。您可以选择在ECS节点上安装云监控插件,从而在云监控控制台查看所创建ECS实例的监控信息。
    日志服务 设置是否启用日志服务,您可使用已有Project或新建一个Project。

    勾选使用日志服务,会在集群中自动配置日志服务插件。创建应用时,您可通过简单配置,快速使用日志服务,详情参见使用日志服务进行Kubernetes日志采集

    工作流引擎 设置是否使用AGS。
    • 如果勾选AGS,则创建集群时系统自动安装AGS工作流插件。
    • 如果不勾选,则需要手动安装AGS工作流插件,请参见AGS命令行帮助
    可选组件 在系统组件之外,还可以选择安装容器服务提供的其他组件。
  7. 单击创建集群,在弹出的当前配置确认页面,单击创建,启动部署。
    说明 一个包含多节点的Kubernetes集群的创建时间一般约为十分钟。

执行结果

  • 集群创建成功后,您可以在容器服务管理控制台的Kubernetes 集群列表页面查看所创建的集群。集群列表
  • 您可以单击集群操作列的查看日志,进入集群日志信息页面查看集群的日志信息。 您也可以在集群日志信息页面中,单击资源栈事件查看更详细的信息。集群日志详情
  • 集群列表页面中,找到刚创建的集群,单击操作列中的管理,查看集群的基本信息和连接信息。集群基本信息
    其中:
    • API Server公网连接端点:Kubernetes的API Server对公网提供服务的地址和端口,可以通过此服务在用户终端使用kubectl等工具管理集群。
    • API Service内网连接端点:Kubernetes的API server对集群内部提供服务的地址和端口,此IP为负载均衡的地址。
    • Pod网络CIDR:Kubernetes的Pod CIDR定义集群内Pod的网段范围。
    • Service CIDR:Kubernetes的Service CIDR定义集群内暴露服务的网段范围。
    • 测试域名:为集群中的服务提供测试用的访问域名。服务访问域名后缀是<cluster_id>.<region_id>.alicontainer.com
    • kube-proxy代理模式:Kubernetes service的服务发现和负载均衡需要通过服务代理进行配置,支持iptables和IPVS两种模式。
    • 节点Pod数量:单个节点可运行Pod数量的上限,默认值为128。
  • 您可以通过kubectl连接Kubernetes集群,执行kubectl get node查看集群的节点信息。集群结果