爆款:K8S原生应用管理平台

  • 本文的内容仅限于技术探讨,不能作为指导生产环境的素材;
  • 鼓励读者购买红帽培训获得更多系统性的培训。

一、如何在K8S集群上部署应用?

首先,需要说明的是:Openshift是K8S集群,但K8S集群不是Openshift集群。K8S集群是Openshift集群的真子集。

在K8S集群上部署应用,有几种方式:

1.通过docker image方式部署

2.通过模板方式部署

3.在Openshift上,我们还可以基于S2I方式部署应用。

在K8S上除了需要部署应用,很多时候还要部署应用集群,对集群进行扩缩容等。这时候,我们大多是调整应用dc。嗯,听起来有一定技术含量。

那么,有没有一种方式,可以专门与K8S API集群对接,实现K8S原生应用的管理?

二、Operator

有,Operator就是。

Operator是一种打包、部署和管理Kubernetes原生应用程序的方法。 Kubernetes应用程序是一个部署在Kubernetes上并使用Kubernetes API和kubectl工具进行管理的应用程序。

Operator是为了解决一个问题而存在的一个思路。什么问题?就是我们在管理应用时,会遇到无状态和有状态的应用。管理无状态的应用是相对来说比较简单的,但是有状态的应用则比较复杂。

Operator的理念是希望注入领域知识,用软件管理复杂的应用。例如对于有状态应用来说,每一个东西都不一样,都可能需要你有专业的知识去处理。对于不同的数据库服务,扩容缩容以及备份等方式各有区别。能不能利用K8S便捷的特性去把这些复杂的东西简单化呢?这就是Operator想做的事情。

Operator本质上是针对特定的场景去做有状态服务,或者说针对拥有复杂应用的应用场景去简化其运维管理的工具。

听起来不错,但问题的关键点在于:

1.Operator的生态如何,到底能管多少个应用。2. Operator是开源,还是闭源厂商按照License或者支持的软件数量去收费?

Operator Framework是一个开源项目,由CoreOS发起的。2018年初CoreOS被红帽收购。Operator目前在Openshift上是TP的状态。相信很快就会正式GA。

Operator Framework提供开发人员和运行时Kubernetes工具,其框架包括三大架构:

它使开发人员能够基于他们的专业知识构建操作员,而无需了解Kubernetes API的复杂性。

管理在Kubernetes集群中运行的所有Operator(及其相关服务)的生命周期的安装,更新和管理。

Operator Metering:为提供专业服务的Operator启用使用情况报告。

三、Operator的生态

我们看一下目前Operator社区支持的应用,目前有45个,并且数量在持续增加中:

https://commons.openshift.org/sig/operators.html?from=timeline&isappinstalled=0

除了红帽列出的官方认证的应用种类,其实社区很多应用都在和operator对接,甚至如weblogic。这些都可以部署到Openshift上:

https://github.com/oracle/weblogic-kubernetes-operator

四、实验展现:couchbase

我自己的Openshift3.11实验环境中,部署了Operator组件:

我们先注册Opertor的订阅(实际上就是部署对应应用的Operator)

我们订阅Couchbase:

看到了吧,源在coreos:

创建Couchbase的订阅:

接下来,创建Couchbase Operator:

接下来,通过Operator部署couchbase集群:

查看运行状态:查看资源使用情况:

五、总结

一个软件,不开放就没有生态,没有生态就没有前途。

Operator能否“火”起来,主要取决于其在开源社区的普及程度。Ansible目前这么普及,在于其在开源社区的受重视程度和影响力。

从目前来看,红帽正在积极推动这个社区的发展。而很多软件提供商/开源软件项目也致力于与Operator对接。如Weblogic、Tensorflow等。

从目前看,我个人看到Operator这个开源项目。

原文发布于微信公众号 - 大魏分享(david-share)

原文发表时间:2018-11-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯大数据的专栏

Hermes与开源的Solr、ElasticSearch的不同

谈到Hermes的索引技术,相信很多同学都会想到Solr、ElasticSearch。Solr、ElasticSearch真可谓是大名鼎鼎,是两个顶级项目,最...

38650
来自专栏即时通讯技术

优秀后端架构师必会知识:史上最全MySQL大表优化方案总结

本文原作者“ manong”,原创发表于segmentfault,原文链接:segmentfault.com/a/1190000006158186

16530
来自专栏数据和云

罗海雄:仅仅使用AWR做报告? 性能优化还未入门(含PPT)

编辑手记:祝贺罗海雄老师加入Oracle ACE社区,他是数据库SQL开发和性能优化专家,也是ITPUB论坛的资深版主,我们整理了罗老师一篇AWR裸数据分析的文...

12020
来自专栏PHP在线

MYSQL数据库设计的一些小技巧[整理] 有感

选表类型: mysql的myisam表适合读操作大,写操作少;表级锁表 innodb表正好相反;行级锁表 互联网服务,不算支付性的服务外,互动产品,新闻系统等等...

31040
来自专栏杨建荣的学习笔记

一个复杂的数据需求的创新优化(r12笔记第96天))

今天处理了一个蛮有意思的案例,正如我给开发同学所说的那样,方案有很多,但是我们需要明确需求之后,找到一个最合适的需求。 业务同学反馈,数据库中有...

34460
来自专栏数据和云

【MySQL 5.7.17】从主从复制到Group Replication

时值双十二之际,MySQL官方献上了大礼,Group Replication(后文简称GR)终于正式宣布GA,组合在MySQL 5.7.17版本内部发布出来。 ...

38080
来自专栏技术博客

Entity Framework简介

很久很久之前就想来好好的学习一下EF,一直也是各种理由导致一直也没有好好的开始,现在下定决心了,不管怎样一定要把这先走一遍,并且把自己学到的相关EF的知识进行记...

17010
来自专栏杨建荣的学习笔记

一次性能突发情况的紧急修复(r9笔记第18天)

昨天中午的时候,接到开发同学的电话,说有一个在线数据迁移,碰到了一些问题,希望我能够帮忙看看是哪里的原因。 从电话里的反馈得知,他们在做业务数迁移,会把数据库1...

33150
来自专栏CSDN技术头条

那些高级运维工程师,都是怎么给公司省机器的?

随着项目用户量的快速增长,前期可能由于应用程序设计、数据库设计及架构不当,大多项目会在用户量百万、日志/流水等表过千万、乃至过亿时,出现写入卡顿、查询缓慢、各种...

12320
来自专栏逸鹏说道

我是如何在SQLServer中处理每天四亿三千万记录的

首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛...

408130

扫码关注云+社区

领取腾讯云代金券