You need to enable JavaScript to run this app.
导航
自建/跨云 Kubernetes 集群弹性使用 VCI 方案
最近更新时间:2024.11.22 15:20:25首次发布时间:2023.10.26 16:05:10

弹性容器实例(VCI)为云下自建的 Kubernetes 集群或第三方云的 Kubernetes 集群,提供一种弹性使用火山容器资源的快速路径。本文主要描述自建/跨云 Kubernetes 集群使用 VCI 方式,弹性调度上云的方案。

方案介绍

通过云上注册和托管虚拟节点的方式,将 Kubernetes 集群中业务工作负载依赖的资源弹性调度上云,从而将线下集群的计算资源容量充分扩展。

VCI 提供的虚拟节点(Virtual Node),对标原生 Kubernetes 节点,兼容原生 Kubernetes 节点 API 及调度语义。当有需求调度 Pod 到虚拟节点时,虚拟节点会自动创建并全方位管理底层的 VCI 实例资源。

说明

邀测·申请试用】:虚拟节点相关功能目前处于 邀测 阶段。如果需要使用,请提交申请。

约束限制

基于公有云的安全性和虚拟节点本身带来的限制,VCI 目前还不支持 Kubernetes 中 HostPath、DaemonSet 等功能。详细说明及功能替代方案,请参见 VCI 的 Kubernetes 限制

操作步骤

  1. 打通网络链路。
    您需要根据您的实际业务网络状态,自行打通自建/跨云 Kubernetes 集群控制面和火山引擎私有网络(VPC)之间的网络连接链路。更多信息,可参考私有网络文档:私网访问方案介绍公网访问方案介绍
  2. 准备环境。
    获取您自建 Kubernetes 集群的 KubeConfig 文件。

    说明

    需通过具有 admin 权限的账号获取。

  3. 创建虚拟节点,并将虚拟节点标准化部署到自建/跨云 Kubernetes 集群。
  4. 进行调度工作负载前的准备工作。
    自建 Kubernetes 集群中的部分系统组件(例如 DaemonSet 类型组件)需要配置对所注册虚拟节点的节点反亲和性,避免 DaemonSet 类型的系统组件调度到虚拟节点。
  5. 调度工作负载,将 VCI Pod 调度到自建/跨云 Kubernetes 集群中的虚拟节点上,有如下两种方法:
    • VCI 标准化使用方法:
      1. 在自建/跨云 Kubernetes 集群中部署 vci-admission 组件。详情请参见 volcengine-vci-admission
      2. 使用 VCI 相关功能 Annotation:vke.volcengine.com/burst-to-vci: enforce 直接调度 VCI Pod 到您的虚拟节点。详情请参见 创建实例
    • 原生 Kubernetes Pod 调度方法:
      使用原生 Kubernetes 调度能力,将 Pod 调度到指定的虚拟节点上。详情请参见 Kubernetes 官方文档
  6. (可选)删除虚拟节点。
    当不需要使用虚拟节点时,可调用 DeleteVirtualNode 删除虚拟节点。