QCon广州站Web 3.0 专题上线,关注基础设施及相关技术,戳此了解 了解详情
写点什么

Kubernetes 是否已经跨过鸿沟?

  • 2018 年 3 月 20 日
  • 本文字数:1390 字

    阅读完需:约 5 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Ian Crosby Container Solutions 的高级工程师,在本年的 QCon 伦敦会议上,他尝试回答了 Kubernetes 是否已经跨越了鸿沟,从早期采用者阶段(early adopters)步入了早期大众(early majority)阶段。

基于现实中实际参与的来自多个组织的样例,他认为Kubernetes 确实已经接近主流采用阶段了,因为企业级领域所面临的遗留挑战(即高度安全的环境、支持Windows、对有状态负载更好的支持以及与遗留软件和混合云的集成)正在被社区所解决。正如Crosby 所说,“问题不在于Kubernetes 是否能够跨过鸿沟,而在于何时跨过鸿沟”。

理想的使用场景就像 Fashiontrade ,这是一个 100% 基于云且微服务驱动的系统,在这里 Kubernetes 提供了多项收益,包括以较低的成本减少运维的工作负荷(通过原生提供容错、自动扩展和服务发现功能来实现),Crosby 随着时间的推移意识到,这样的场景只是例外并不是常态。

在其他的场景中,我们最初可能会觉得某个系统非常适合 Kubernetes,但是特定的问题会因为平台当前的成熟度而浮现,这会给技术的采用带来风险。Crosby 引用了 student.com 的例子,这是一个完全基于云的系统,为了支持其目标市场,该系统运行在两个不同的 AWS region 上,即新加坡和北京。起初,这看上去似乎就是在每个 region 运行一个集群,然后将这两个集群使用联邦(federation)的方式联合起来就可以了。但是,在中国无法访问来自Google 的传入流量,所以在AWS 北京region 中安装Kubernetes 就是一个挑战了,因为有些组件甚至无法下载。

要修正这个安装问题需要搭建镜像,以便于下载组件,并在北京region 中通过Terraform 和Ansible 脚本来自定义Kubernetes 部署。另外,社区围绕Kubernetes 最流行安装工具之一 kops 添加了一个 readme 文件,介绍如何在 AWS China 进行安装,这也凸显了在企业中采用开源软件具有一定的先瞻性是很重要的。

跨多个亚洲云region 部署和运行Kubernetes(来自:Ian Crosby)

第三个也是最具有挑战性的现实样例是Ericsson 迁移至Kubernetes 原生模型,它们要交付一个直接由客户端自己运行的应用。借助 Helm charts (这是一个开源的包管理解决方案,能够通过一个简单的命令行安装和更新 Kubernetes 原生应用)的帮助,Ericsson 能够打包他们的软件,并让客户端使用一个命令行毫无痛苦地进行升级。再加上 Kubernetes 原生的滚动部署能够让客户端实现零停机和透明升级。这大幅减少了客户端运行旧版本软件的数量(并且减少了对旧版本的支持),这也给他们带来了从 Kubernetes 的运维特性中受益的机会。

按照 Crosby 的说法,这是一个交付企业级软件的新模式,借助该模式能够为客户端提供所有权并且能够快速升级,这是 Kubernetes 带来潜在改变的实际例证。

如果是完全从头采用 Kubernetes 的话,作为开始,Crosby 推荐首先从 CI/CD 管道中使用容器,然后在开发和测试环境中,将 Kubernetes 集群作为底层的基础设施,并将 Kubernetes 用到一个非关键性的生产级产品中,在这个过程中增加对它的熟悉程度。每个人都准备就绪之后,特定的挑战也都已经得以解决,再将其推进到更重要的系统中,在生产环境中使用也就水到渠成了。

相关演讲视频将会在未来几个月中,发布到InfoQ 网站上。

查看英文原文: Has Kubernetes Crossed the Chasm? Ian Crosby Shares His Thoughts at QCon

2018 年 3 月 20 日 19:002282

评论

发布
暂无评论
发现更多内容

Flink源码分析之Flink是如何kafka读取数据的

shengjk1

flink flink 消费 kafka flink源码分析 flink消费kafka源码解析

食堂就餐卡管理系统

孙志平

食堂就餐卡系统设计

饶军

食堂就餐卡系统架构设计

Karl

架构师训练营第一周作业

小树林

SpringBatch系列之并发并行能力

稻草鸟人

Spring Boot SpringBatch 批量

程序员陪娃系列——数学启蒙趣事

孙苏勇

程序员 陪伴

愚蠢写作术(3):如何把读者带入迷宫深处

史方远

学习 读书笔记 个人成长 写作

SpringBoot基本特性以及自动化配置-SPI机制

攀岩鱼

Java 微服务 Spring Boot SpringCloud

架构方法学习总结

飞雪

dnsmasq-域名访问及解析缓存

一周思进

ARTS打卡 week 2

猫吃小怪兽

ARTS 打卡计划

LeetCode 769. Max Chunks To Make Sorted

liu_liu

LeetCode

架构师训练营-每周学习总结1

水边

极客大学架构师训练营

Flink源码分析之-如何保存 offset

shengjk1

架构师如何做架构总结

Karl

食堂就餐卡系统设计

刘志刚

因为 MongoDB 没入门,我丢了一份实习工作

沉默王二

mongodb

不可不知的 7 个 JDK 命令

武培轩

Java 程序员 jdk 后端 JVM

Flink源码分析之FlinkConsumer是如何保证一个partition对应一个thread的

shengjk1

flink flink 消费 kafka 实时计算 flink源码分析

架构师训练营第一周学习总结

刘志刚

Flink源码分析之Flink 自定义source、sink 是如何起作用的

shengjk1

flink flink源码 flink源码分析 flink自定义source flink自定义sink

食堂就餐卡系统设计

飞雪

架构师训练营-命题作业1

水边

极客大学架构师训练营

Flink源码分析之Flink startupMode是如何起作用的

shengjk1

flink flink 消费 kafak 实时计算 flink源码 flink源码分析

架构师训练营第一周作业

芒夏

极客大学架构师训练营

ARTS-WEEK2

一周思进

ARTS 打卡计划

人人都是产品经理

二鱼先生

产品经理 个人品牌 职场成长 产品思维

Element-UI实战系列:Tree组件的几种使用场景

brave heart

vue.js 大前端 Elemen

极客时间-架构师培训-1期作业

Damon

每周学习总结-架构师培训一期

Damon

“芯”有灵“蜥” 走进 Intel MeetUp

“芯”有灵“蜥” 走进 Intel MeetUp

Kubernetes是否已经跨过鸿沟?_DevOps_Manuel Pais_InfoQ精选文章