运行Kubernetes的人已经花费太多时间在操作上,企业正在考虑为Kubernetes编写自动化工具。


尽管IT部门的大部分职位都会增加,但职业顾问说,计算机操作员预计会减少。这个角色涉及运行Shell脚本,FTPing文件以及处理异常,但由于诸如cron之类的工具可以实现自动删除操作,导致做同样工作的人越来越少。

事实证明确实如此。如今,运行Kubernetes的人太多,他们花了太多时间进行路由操作。现在,这些工作急需被自动化。

一直以来,谷歌都需要为其不断增长的云服务雇用系统管理员和可靠性的工程师,而根本无法雇用足够的员工。问题是要吸引足够多的人,他们还要足够聪明,有能力成为系统管理员,然后搬到硅谷。因此,Google还是决定建立一个通用框架来管理运行任何应用程序的虚拟机集群。虽然Kubernetes有时被描述为全栈系统,但实际上可能需要干预和管理,例如,随着工作负载的变化而应对扩展。

有关 Kubernetes 操作的专业知识,专家总结为“有状态应用程序的三重奏”——集群管理、负载平衡和复制。这些功能通常与对高可用性的需求相关。根据专家的说法,三种工作大大增加了管理应用程序的工作量。这就是人们增加操作员或编写自动化工具来管理基础架构的关键所在。

Kubernetes 项目为操作员描述了五个级别,有时称为成熟度,这些大致对应于操作员的技能水平。一级能够进行工具的基本安装,包括为运行该应用程序的资源提供资源或与集群协商。第二级提供补丁和次要版本的无缝升级,而第三级包括备份和故障恢复。在第四级,可在处理警报,日志处理和工作量分析,而在第五级,可解决Kuberenetes无法解决的一些扩展问题,以及诸如调优配置或调度的高级主题。工作量。

一旦存在特定工具(例如Redis,CouchDb或Kafka)的自动化操作工具,也会有人将其放在github中分享。创建自动化操作工具可能需要一个人/年,但却能为一个集群节省半个人/年。设想如果部署超过一千家公司和一千个集群呢?

如果你有一个内部应用程序需要关注三重奏(集群、负载平衡和复制),则会导致持续的维护成本。如果你遇到了谷歌那样的规模问题,并且不想聘请软件可靠性工程师团队来完成可以在某种程度上进行编程的工作,那么编写自己的自动化操作工具很有必要。

自动化操作工具由两部分组成:用于执行命令的代码(在Go上编写,Ansible或更简单的工作,在Helm上编写)以及自定义资源定义(CRD)。CRD将操作员代码映射回kubectl命令。这使得调用操作员的功能时需要创建一个YAML文件,并通过kubectl-apply将其传递给Kubernetes。

再说一次,团队中的某人必须了解Ansible或Helm,该代码可能需要存储在版本控制中,并作为软件开发工件进行管理。为了使其不仅仅是一个单点故障,团队将希望第二或第三位程序员应熟练使用Go或Ansible。

小心了!Kubernetes自动化操作工具将让你失去工作的更多相关文章

  1. [Kubernetes]如何让集群为我们工作?

    前一段时间倒腾k8s的时候,写了一系列的博客,有很多人不理解那样做的意义是什么,为什么要那样做,这篇文章就尝试解释一下,在实际环境中,是如何让集群为我们工作的. 因为只研究了一个月左右的时间,认识难免 ...

  2. gulp——用自动化构建工具增强你的工作流程

    想要使用gulp,就要了解gulp,就像追自己的爱豆,你要知道爱豆的喜好.兴趣 简单的了解你的新爱豆———安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 ...

  3. Kubernetes网络插件Flannel的三种工作模式

    跨主机通信的一个解决方案是Flannel,由CoreOS推出,支持3种实现:UDP.VXLAN.host-gw 一.UDP模式(性能差) 核心就是通过TUN设备flannel0实现(TUN设备是工作在 ...

  4. kubernetes 降本增效标准指南| 资源利用率提升工具大全

    背景 公有云的发展为业务的稳定性.可拓展性.便利性带来了极大帮助.这种用租代替买.并且提供完善的技术支持和保障的服务,理应为业务带来降本增效的效果.但实际上业务上云并不意味着成本一定较少,还需适配云上 ...

  5. Kubernetes理论基础

    Kubernetes理论基础 Kubernetes定义 ​ kubernetes是Google开源的容器集群管理系统,2014年6月开源.在Docker技术之上,为容器应用提供资源调度.部署运行.服务 ...

  6. Kubernetes client-go

    Github地址:https://github.com/kubernetes/client-go 访问kubernetes集群有几下几种方式: 方式 特点 支持者 Kubernetes dashboa ...

  7. Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31

    作者 | 徐迪.李传云.黄珂.汪萌海.张晓宇.何淋波 .陈有坤.李鹏审核 | 陈俊 上游重要进展 1. Kubernetes v1.17 版本发布 功能稳定性是第一要务.v1.17 包含 22 个增强 ...

  8. [转帖]Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31

    Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31 https://www.kubernetes.org.cn/6252.html 2019-12-13 11:59 ali ...

  9. kubernetes 1.9 安装部署

    参考地址:https://github.com/gjmzj/kubeasz 引言 提供快速部署高可用k8s集群的工具,基于二进制方式部署和利用ansible-playbook实现自动化,既提供一键安装 ...

随机推荐

  1. JAVA的synchronized写法

    使用关键字synchronized的写法比较多,常用的有如下几种,代码如下: public class MyService { synchronized public static void test ...

  2. shiro:自定义remle(二)

    SpringMVC+SpringMVC+Mybatis项目 1:导入相关依赖 <dependencies> <!--测试依赖--> <dependency> < ...

  3. Java中接口的概念

    接口的特点: A:接口用关键字interface表示 interface 接口名 {} B:类实现接口用 implements 表示 class 类名 implements 接口名 {} C:接口不能 ...

  4. 异常处理的方式二:throws+异常类型

    package com.yhqtv.demo01Exception; import java.io.File; import java.io.FileInputStream; import java. ...

  5. springboot+dubbo简单分布式RPC调用demo

    使用springboot+dubbo搭建RPC入门案例 本文背景简述: 最近在学习公司的一套RPC框架,初步接触的时候感觉挺复杂的.但是知道其原理肯定是和dubbo很相似的,毕竟都是RPC框架嘛,只是 ...

  6. 防cc攻击利器之Httpgrard

    一.httpgrard介绍 HttpGuard是基于openresty,以lua脚本语言开发的防cc攻击软件.而openresty是集成了高性能web服务器Nginx,以及一系列的Nginx模块,这其 ...

  7. Web 之 Cookie

    Cookie Cookie实际上是一小段的文本信息.客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie.客户端浏览器会把Cookie保存起来.当浏 ...

  8. Python3 字符串格式化(%操作符)

    格式符 格式符为真实值预留位置,并控制显示的格式.格式符可以包含有一个类型码,用以控制显示的类型,如下: %s    字符串 (采用str()的显示) %r    字符串 (采用repr()的显示) ...

  9. 字符串translate方式实现

    在爬取百度图片的时候,发现百度图片做了反爬虫处理,在网上找到当前还能跑通的教程实例:python3多线程下载百度图片搜索结果. 在分析代码的过程中,发现作者对爬取的objURL的解码是通过字符串的tr ...

  10. 是时候实现 SOC 2.0 了

    本文讲的是是时候实现 SOC 2.0 了,SOC,安全运营中心,为取得其最佳效果,以及真正最小化网络风险,需要全员就位,让安全成为每个人的责任. 早在几年前,企业就开始创建SOC来集中化威胁与漏洞的监 ...