前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Kubernetes之前必须要弄清楚的5个问题

使用Kubernetes之前必须要弄清楚的5个问题

作者头像
极客运维圈
发布2020-09-30 11:05:05
1.3K0
发布2020-09-30 11:05:05
举报
文章被收录于专栏:乔边故事乔边故事

kubernetes从2014年6月份面世以来,一直处于一种高速的发展模式,是目前最火的开源技术,没有之一。截至2020年9月27日,已经v1.20.0-alpha.1版本了,基本保持着每年3个版本的发布速度,可见其火爆程度。

由于Kubernetes大火,再加上一些大厂的推广,现在使用kubernetes成为了一种“潮流”,不论小厂还是大厂都在往这方面靠。大厂就不说了,人家技术底蕴深厚,人才储备充足,资金力量雄厚,他们想干嘛就干嘛。但是对于大部分中小企业来说,kubernetes并不是那么好用的。

以下是从运维的角度来分析的。

(1)、Kubernetes的学习成本高

要使用Kubernetes肯定得先学习它,要学Kubernetes又得先学容器,要学容器又得先学linux,反正这就是一环套一环。如果是长期从事这方面职业的学习时间可能快点,但是对于不经常使用或者门外汉来说就难了。 我们先看Kubernetes的架构,如下:

kubernetes的架构并不复杂,安装部署也很简单,但是我们要用好它必须得学习它们的原理,只有深入了解它们的原理才能算入门了。然后还需要去学习各种名词以及它们的意思,比如:

  1. deployment是干什么的,用在哪些方面?
  2. service和ingress的作用是什么,在集群中起到什么作用?
  3. pod,replicaset,deployment,service,endpoints它们之间是如何联系的等等

然后你还得具备一定的网络知识,如下:

  • 集群外网络:传统的物理网络,你要保证所以物理主机能够互相连接,这一般有专门的网络工程师负责
  • 集群内网络:集群内的网络是软件定义的网络,你需要去学习这些软件的使用方式,不同软件之间的异同,如何选择

除了网络还有存储,对于存储方面需要考虑以下几个问题:

  • 需不需要使用存储。kubernetes中主要是运行无状态应用,对于这些应用到底需不需要存储
  • 用什么存储。到底是用网络存储还是用本地存储?是购买还是自建,它们的区别还有运维成本如何等

上面仅仅是简单说明了一下需要了解组件,了解一些名词,注意网络和存储等。但是在实际工作中涉及的周边产品非常多。

  1. 监控。在传统运维中我们常用zabbix等这些监控工具,在Kubernetes中也不是不可以使用,只是代价太大。那么我们就不得不学习新的监控工具,比如prometheus,它又是一门新的技术,是需要花时间成本的。
  2. 日志。Kubernetes中的pod日志如果没有做持久化也会随着pod的消失而消失的,那么我们就要考虑如何将这些日志保存起来,是直接持久化到本地还是远端,怎么去收集。这时候又会引入新的工具,比如elasticsarch、filebeat等。

上面这些都是普通使用需要学习的东西,实际在工作中还有很多的需求,比如要二次开发,你得去学习源码相关的知识,如果你不会go语言,你还得去学习go语言。这样算下来的学习成本是相当高的。

(2)、是不是适合kubernetes

就算前期的学习方面没问题,我们也不得不考虑一个问题:企业真的需要Kubernetes吗? 假如你的公司就3-5个应用,现在传统部署运行的好好的,你需要Kubernetes吗?我们不能为了用Kubernetes而用kubernetes,我们要考虑用Kubernetes会给公司带来多少效益?我们切换的代价有多大?其他技术人员接受Kubernetes的时间会有多长?公司目前的技术储备,人才储备能够很好的维护这部分系统吗? 这些都是我们要考虑的一个问题,毕竟公司的目标的挣钱,虽然它不在乎你下面的人是怎么做的,但是它在乎你下面的人能不能稳定的让它挣钱。

(3)、kubernetes维护成本大

上面其实已经说了技术广,那么随之而来的就是维护成本大。在中小企业中运维就2-3个人,但是要维护的技术栈却非常多,这就要求运维人员每个人都要懂、要会,这样的技术人才本身就少,所以就会造成公司运维人员技术实力良莠不齐,在本身繁重复杂的情况下再火上浇油。

(4)、kubernetes的推行难度高

推行Kubernetes并不是运维说上就上,还需要开发、测试等的配合才行。首先得给开发以及测试培训kubernetes相关知识,比如kubernetes的基本概念,如何查看日志,如何部署等。然后还要统计整理是否需要改代码等。这还是在相当配合的情况下,如果不配合的情况下就没办法搞了。所以要推Kubernetes,平级推的难度系统⭐⭐⭐⭐⭐,由上而下要好一些,这就要求你如何去打动上级实施推广kubernetes。

(5)、使用Kubernetes的资金成本如何

圈里传的一句话是“容器节约资源”。实际上节约资源并不代表节约成本,所以你需要去考虑使用Kubernetes会花多少钱。在中小企业中钱是一个敏感数字,在同样的使命下,如果价格太昂贵,那么是否还有必要推行下去? 在考虑 Kubernetes 是否适合你的项目或组织时,我说了自己的一些看法,但是这不妨碍kubernetes是一个非常优秀的项目,而且我个人是非常热爱这个项目的。我们目前在使用它,在这个过程中的感受是不是我们会用,是让别人能够轻松使用。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 极客运维圈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • (1)、Kubernetes的学习成本高
  • (2)、是不是适合kubernetes
  • (3)、kubernetes维护成本大
  • (4)、kubernetes的推行难度高
  • (5)、使用Kubernetes的资金成本如何
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档