管理数百个Kubernetes集群需要什么?
运行和管理数百个Kubernetes集群需要什么?这就是本文分享的内容。下面,我们一起来看。 |
要点:
- 部署一个具备生产就绪所需所有依赖关系的Kubernetes集群需要数天时间。
如果不自动化这个过程,管理Kubernetes集群的浮动是非常困难的。
在多个集群提供商之间管理Kubernetes集群的浮动更加困难。
升级Kubernetes集群需要进行密集测试,以确保更改不会破坏任何功能。这不是像通常建议的那样按下“升级”按钮就够了。
管理一个Kubernetes集群很难,管理全球数百个Kubernetes集群又如何呢?
数百个Kubernetes集群,包含多个节点、服务、应用程序和负载均衡器。这就是我们在Qovery所做的:管理全球数百个Kubernetes生产集群,帮助16000多名开发者在AWS上部署应用。
运行和管理数百个Kubernetes集群需要什么?这就是本文分享的内容。
一些背景
有了Qovery,每个用户都可以在几秒钟内开始在AWS上部署应用程序。目标是将AWS转变为流畅的开发者体验。通常,我们的用户来自Heroku,希望跳入AWS。他们希望拥有Heroku的简单性和AWS的灵活性。这就是使用Qovery的意义所在。
为了在这条道路上取得成功,Qovery使用EKS(AWS托管的Kubernetes)来运行和扩展无状态应用程序。每个用户至少有一个或多个Kubernetes集群。Qovery的承诺是让Kubernetes集群生产就绪,这意味着Kubernetes的部署、运行和管理都由我们来完成。负责管理集群的软件称为Qovery Engine,它是开源的。
部署生产就绪的Kubernetes集群
为了在AWS上自动部署Kubernetes,我们创建了一个开源部署引擎,一个用Rust编写的应用程序。基本上,它为Kubernetes、ingress、auto scaler、Loki、S3初始化虚拟私有云(VPC),以存储Kubernetes日志,最后是Kubernetes。Qovery引擎使用Terraform、Helm和AWS API。在AWS上,从零到生产就绪的Kubernetes集群需要30分钟,而不是几周。
首次在AWS帐户上使用Qovery时,会设置一个VPC和一个EKS集群。完全设置后,Qovery Engine将安装并连接到Qovery控制平面,以接收应用程序部署指令。
运行Kubernetes
由于Qovery依赖AWS(EKS)提供的托管Kubernetes,因此运行和管理Kubernetes变得简单(无需管理etcd、主节点和网络覆盖)。AWS通过管理负责整个集群完整性的主节点,确保集群始终处于运行状态。
Qovery的附加值是简化应用程序部署,确保这些应用程序正确运行。如果出现问题,这些应用程序和集群本身的所有信息都会实时报告给用户。这是由Qovery Engine和Qovery Agent处理的。
让Kubernetes保持最新
Kubernetes每10周发布一个新版本。以这种速度,跟上时代是一项挑战。尤其是在发生重大变化时。在生产环境中进行升级之前,必须在临时集群上测试升级,但需要相当长的时间。
对我们来说也是如此。在Qovery,有一个专门的团队负责管理用户Kubernetes集群的升级。好消息是,一旦做了一次,它对每个集群的效果(几乎)都是一样的。
出于安全原因,Qovery Engine连接到Qovery控制平面,并提取集群更新指令。Qovery Engine负责所有Kubernetes worker节点上的滚动更新,更新版本和相关依赖关系(Loki、ingresses等)。Qovery Engine保证集群完全可运行,并准备好接收新的应用部署。
收尾
在本文中,我们已经看到了由数百个Kubernetes集群组成的浮动是如何由Qovery Engine管理的,Qovery Engine是一个用Rust编写的开源库。部署、运行和更新Kubernetes集群需要花费大量时间,并且需要自动化以保证其正常运行时间。
管理数百个Kubernetes集群需要什么?相关推荐
- 在阿里巴巴,我们如何先于用户发现和定位 Kubernetes 集群问题?
作者:彭南光(光南) 本文整理自阿里云高级研发工程师彭南光(光南) 在 KubeCon China 2021 大会的演讲实录,分享了阿里巴巴是如何通过自研通用链路探测+定向巡检工具 KubeProbe ...
- 中通快递关键业务和复杂架构挑战下的 Kubernetes 集群服务暴露实践
本文是上海站 Meetup 讲师王文虎根据其分享内容整理的文章. KubeSphere 社区的小伙伴们,大家好.我是中通快递容器云平台的研发工程师王文虎,主要负责中通快递容器云平台开发.应用容器化推广 ...
- Kubernetes集群配置免费的泛域名证书支持https
前言 kubernetes 集群默认安装的证书是自签发证书,浏览器访问会发出安全提醒. 本文记录了利用 dnspod . cert-manager .let's encrytp 等开源组件,实现泛域名 ...
- 美团点评Kubernetes集群管理实践
背景 作为国内领先的生活服务平台,美团点评很多业务都具有非常显著.规律的"高峰"和"低谷"特征.尤其遇到节假日或促销活动,流量还会在短时间内出现爆发式的增长.这 ...
- K9s之Kubernetes集群管理交互工具实践
文章目录: 0x01 基础简介 0x02 安装实践 安装流程 配置示例 0x02 命令实践 命令参数 简单使用 0x01 基础简介 K9s - Kubernetes CLI To Manage You ...
- 管理大规模容器集群能力包括_阿里巴巴大规模神龙裸金属 Kubernetes 集群运维实践...
导读:值得阿里巴巴技术人骄傲的是 2019 年阿里巴巴 双11 核心系统 100% 以云原生的方式上云,完美支撑了 54.4w 峰值流量以及 2684 亿的成交量.背后承载海量交易的计算力就是来源于容 ...
- 云原生第4课:Kubernetes 集群管理
本篇文章来自<华为云云原生王者之路训练营>黄金系列课程第4课,由华为云Kubernetes容器平台技术专家Alan主讲,详细介绍Kubernetes集群和Kubernetes节点的生命周期 ...
- 4、kubernetes 集群管理工具 kubectl
文章目录 kubectl概述 K8s kubectl 命令自动补全 kubectl的常用子命令(command) kubernetes资源对象类型(type) kubectl 常用命令总结 kubec ...
- 阿里云上万个 Kubernetes 集群大规模管理实践
点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 汤志敏,阿里 ...
最新文章
- WinPcap笔记(10):从堆文件中读取数据包
- rhel6.1 kvm安装virtio驱动
- memcache未授权访问漏洞
- Linux 学习手记(5):使用Vim文本编辑器
- kaldi 语音识别
- hidden field implements session
- 20171018 在小程序页面去获取用户的OpenID
- 布隆过滤器实现原理及源码解析
- 计算机视觉 相机成像原理,计算机视觉之相机成像原理与坐标系转换
- 如何自动翻译字幕文件(机翻)
- 「上海院子」打造不可复制的国宅风华
- SQL基础系列(七)——CASE表达式
- 让word从第二页开始标记页脚
- 学生DW静态网页设计——天津旅游(11页) HTML+CSS+JavaScript dreamweaver作业静态HTML网页设计模板
- pwnable.kr---blackjack
- LED透明屏多少钱一平方?—实用LED透明屏价格表参考
- 【ASML】EUV光刻技术PPT
- IDEA出现java: 错误: 不支持发行版本 15
- Chrome谷歌浏览器离线安装方法
- Zeno:一种小型人形机器人
热门文章
- 这个B站up主太硬核了!纯手工打造AI小电视:硬件自己焊接,驱动代码全手写...
- 在深度学习的路上,哪些框架或学习平台值得推荐?
- 本、硕、博的区别,只用两组图就解释清楚了
- locust压测工具:测试信息输出与分布式模式
- 美多商城之商品(准备商品数据 )、Dockers容器和FastDFS存储
- 自然语言处理(NLP)之英文单词词性还原
- 简单邮件传送协议SMTP
- 机器学习中的precision, recall, accuracy, F值,ROC曲线
- 2005年下半年 网络工程师 上下午试卷【附带答案】
- Nginx配置文件nginx.conf中文详解(总结)