在上一篇博文中(https://yq.aliyun.com/articles/647119),我们展示了如何手动执行yaml文件给Kubernetes集群添加虚拟节点,然而,手动执行的方式用户体验并不友好,也无法以组件的方式持续升级和管理。现在我们已经可以通过Helm的方式,让ack-virtual-node的部署和管理变得更加简单。首先,让我们简单回顾一下虚拟节点Virtual Node是如何运行的。

虚拟节点Virtual Node

虚拟节点来源于社区virtual kubelet技术,其实现了kubernetes与弹性容器实例ECI的无缝连接,让kubernetes集群轻松获得极大的弹性能力,而不必受限于集群的节点容量,其“虚拟”则体现在节点容量的“无限”。

在混合集群中,真实节点上的pod与虚拟节点上的pod互联互通。但虚拟节点创建的pod是按需付费,收费规则请参考:https://help.aliyun.com/document_detail/89142.html。pod规格配置支持0.25c至64c,请参考:https://help.aliyun.com/document_detail/89138.html

安装ack-virtual-node插件

首先登录容器服务控制台,创建托管版kubernetes集群。在应用目录页面选择ack-virtual-node。
https://cs.console.aliyun.com/#/k8s/catalog/detail/incubator_ack-virtual-node

配置虚拟节点参数,包括Region,AK信息,vswitchId和securityGroupId需要和Kubernetes集群配置相同(可在集群信息页面查看网络配置信息)

安装Helm插件

安装成功后,在节点页面可以看到添加了一个节点virtual-kubelet

通过kubectl命令,我们可以查看节点和helm部署状态,后续也可以通过helm对ack-virtual-node进行升级和管理。

基于虚拟节点创建pod

创建如下nginx pod,设置正确的nodeSelector和tolerations,确保pod会被调度到虚拟节点上。

  1. apiVersion: v1
  2. kind: Pod
  3. metadata:
  4. name: nginx
  5. spec:
  6. containers:
  7. - image: nginx
  8. imagePullPolicy: Always
  9. name: nginx
  10. nodeSelector:
  11. type: virtual-kubelet
  12. tolerations:
  13. - key: virtual-kubelet.io/provider
  14. operator: Exists

使用场景

虚拟节点和Serverless Kubernetes都是基于弹性容器实例ECI构建,都属于Serverless Container产品形态,主要适用于多种Serverless workload场景,可以极大的降低运维成本,降低用户的总体计算成本,提高计算效率。欢迎用户使用。


本文作者:贤维

原文链接

本文为云栖社区原创内容,未经允许不得转载。

ACK容器服务发布virtual node addon,快速部署虚拟节点提升集群弹性能力的更多相关文章

  1. 基于Docker快速搭建多节点Hadoop集群--已验证

    Docker最核心的特性之一,就是能够将任何应用包括Hadoop打包到Docker镜像中.这篇教程介绍了利用Docker在单机上快速搭建多节点 Hadoop集群的详细步骤.作者在发现目前的Hadoop ...

  2. 在 Linux 部署多节点 Kubernetes 集群与 KubeSphere 容器平台

    KubeSphere 是在 Kubernetes 之上构建的以应用为中心的企业级容器平台,所有供为用户提供简单易用的操作界面以及向导式操作方式.同时,KubeSphere Installer 提供了 ...

  3. 使用kubeadm快速部署一套K8S集群

    一.Kubernetes概述 1.1 Kubernetes是什么 Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8S. K8S用于容器化应用程序的 ...

  4. 仅需60秒,使用k3sup快速部署高可用K3s集群

    作者简介 Dmitriy Akulov,连续创业者,16岁时搭建了开源CDN公共服务jsDelivr的v1版本.目前是边缘托管平台appfleet创始人. 原文链接: https://ma.ttias ...

  5. 快速部署 Kubeadm 1.13 集群(ETCD)

    软件环境清单 kubeadm.x86_64  Version :1.13.1-0 kubelet.x86_64 Version : 1.13-1-0 kubectl.x86_64 Version : ...

  6. kubespray -- 快速部署高可用k8s集群 + 扩容节点 scale.yaml

    主机 系统版本      配置       ip Mater.Node,ansible CentOS 7.2                                             4 ...

  7. ACK容器服务虚拟节点使用阿里云日志服务来收集业务容器日志

    按照这篇博文的介绍,可以在ACK集群上通过Helm的方式部署虚拟节点,提升集群的弹性能力.现在,通过虚拟节点部署的ECI弹性容器实例也支持将stdout输出.日志文件同步到阿里云日志服务(SLS)进行 ...

  8. 运行一个nodejs服务,先发布为deployment,然后创建service,让集群外可以访问

    问题来源 海口-老男人 17:42:43 就是我要运行一个nodejs服务,先发布为deployment,然后创建service,让集群外可以访问 旧报纸 17:43:35 也就是 你的需求为 一个a ...

  9. Just 5分钟!使用k3s部署轻量Kubernetes集群快速教程

    大小仅有40MB的k3s为想要节省开销进行开发和测试的企业提供了一个很好的选择.本文将用一种极为简洁的方式,教你在5分钟之内使用k3s部署轻量Kubernetes集群. Kubernetes已经改变了 ...

随机推荐

  1. hadoop 轻松时刻 hdfs漫画

    hadoop漫画:

  2. Hadoop IO 特性详解(1)【数据完整性】

    本文结合hadoop : the definitive guide精心而作,包含作者的心血,希望可以帮助大家理解一点hdfs的皮毛,足矣.(charles@xingbod.cn) hadoop本身自带 ...

  3. LA3902 Networlk

    Network Consider a tree network with n nodes where the internal nodes correspond to servers and the ...

  4. Puppet基础应用

    Puppet简介 IT基础设施自动化管理工具,作者:Luck Kanies,官方站点:www.puppetlabs.com 管理设施的整个生命周期: provisioning.configuratio ...

  5. Python学习(一) 安装,环境搭建,IDE

    第一篇废话太多了,我的博客最主要的是给自己看的,大家觉得还凑合也可以看看,能说自己想法的就更好了,因为一个人的思想是有局限性的.集思广益,自己的认知才不会被禁锢. 注:其他的系统没装,在Windows ...

  6. Ubuntu18.04 修改IP地址、查看网关、防火墙

    1. Ubuntu18.04 修改IP地址 修改 sudo vim /etc/netplan/50-cloud-init.yaml文件 # This file is generated from in ...

  7. 【NOJ2024】入栈序列和出栈序列

    入栈序列和出栈序列 时间限制(普通/Java):1000MS/3000MS         运行内存限制:65536KByte 总提交:293          测试通过:68 比赛描述 给出入栈序列 ...

  8. 【模板】Vector存图 + SPFA

    最近愉快地决定要由边集数组转向Vector存图,顺便开始图论集训 老惯例,以题写模板 P1339 [USACO09OCT]热浪Heat Wave 题目描述 The good folks in Texa ...

  9. vue里调用moment.js

    1.首先安装moment npm install moment --save 2.在main.js里引入 import moment from 'moment'//导入文件      Vue.prot ...

  10. 公司mysql问题三

    数据库连接不上,解决方案: # 加在绿框?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC