分布式容器云平台的注册集群已集成弹性容器实例(ECI)的虚拟节点,实现与云上弹性算力的衔接。用户可以在自建集群中创建虚拟节点,并使用云上弹性算力运行Pod。
前提条件
已创建注册集群;
用户IDC集群或者三方Kubernetes集群连通性正常;
集群使用Underlay网络模式,容器Pod IP集群外可访问;
依赖集群标准kube-proxy configmap;
功能优势
使用虚拟节点有如下优势:
全托管免运维;
弹性高效;
低成本;
安全隔离;
使用限制
网络插件限制:ECI默认通过云上VPC路由联通网络,不支持自定义CNI插件;
可用区不能重复创建,可用区内按需弹性;
参考 弹性容器实例 的功能限制 自建Kubernetes集群对接ECI,不支持Kubernetes中的Daemonset、HostPath等功能;
使用流程
参考使用流程 指定ECS和ECI的资源分配 。
创建虚拟节点
登录分布式容器云平台,在左侧导航栏选择 集群资源 -> 集群管理,选中需要操作的集群名称,点击进入集群详情;
点击左侧菜单节点 -> 节点,在节点列表页面,点击创建虚拟节点,进入创建虚拟节点页面;
选择可用区,如有需要添加标签和污点,确定创建;
在节点列表页面,查看虚拟节点信息,,虚拟节点的类型显示为virtual-kubelet,并且标有 "virtual-kubelet.io/provider=cube-eci:NoSchedule"污点;
在分布式容器云平台创建的虚拟节点,在弹性容器实例(ECI)中也能查看,由弹性容器实例 按使用情况计费;
每个可用区不可重复创建虚拟节点,可用区内根据Pod所需资源按量创建;
安装cubevk-profile插件
Pod调度到虚拟节点依赖cubevk-profile插件。
在分布式容器云平台控制台,进入所需操作的集群页面,可以在创建工作负载时选择安装,或者去插件 -> 插件市场,找到cubevk-profile插件安装;
Pod调度到虚拟节点上
创建工作负载;
选择Pod调度到虚拟节点的调度策略:
不启用:只会调度到标准Node;
本地优先调度:优先调度到标准Node,标准Node资源不足时允许调度到虚拟节点;
强制调度:只会调度到虚拟节点;
创建成功后,Pod正常running状态,可在节点->节点进入虚拟节点详情页,查看Pod状态:
也可在弹性容器实例控制台查看实例状态: