
精灵云(www.ghostcloud.cn)联合创始人,20年编程经验,全栈工程师,曾任索贝数码及赛门铁克架构师架构师,精通分布式系统开发,2013年开始研究LXC和Docker相关技术,目前主要从事容器云平台研发工作。
作者:精灵云高级工程师 | 陈龙 1前言最近工作需要需要接触RTC(IBM Rational Team Concert),目标是提取RTC 的各种类型的workitems 中的各种信息。网上这类例子很少,个别例子都是java的接口,但是我只是取数据,使用java太复杂了。突然在网上看rtc有python的接口叫做rtcclient。网址:https://pypi.python.org/pypi/rtcclient/0.6.0。研究了几天,踩了很多坑。下面就分享我使用python rtcclient模块的一些心得。 2安装rtcclient。Ps:我使用的linux为Centos7,自带python版本为2.7。2.1安装pip。| yum install python-pip -y 如果出现No pachage python-pip available. 这时候需要更新你的扩展包,输入以下命令:| yum -y install epel-release 这个时候再回去装pip就可以啦。2.2安装rtcclient| pip install rtcclient 2.3测试import 可以import 表示rtcclient 安装成功了。 3读取RTC中的workitems。3.1连接rtc url 为rtc ccm的uri,如果你使用jazz 的admin用户登录,可以在变更管理的主页看到,如下图: 由于个别jazz的url配置问题,如果以上代码不能成功连接rtc。需要在连接rtc的时候指定ends_with_jazz=False.| myclient = RTCClient(url,user,password,ends_with_jazz=False) 3.2获取项目区域所有的workitems| print myclient.getWorkitems("your project area name") 3.3query特定的workitem类型获取的workitem中最长见的就是任务和缺项,见如下代码: dc:type=”task” 就是代表查找类型为“任务”的workitem。那缺陷是什么呢?客户在变更管理的”管理项目区域”配置的“工作项” 区域查看,如下图: 这里可以看到缺陷的标识为defect。所以可以使用dc:type=”defect” 查询。这里需要提的是Return_prop是可选的,但是我强烈建议加上,因为如果不选,rtcclient会去拿workitem所有的属性,这会相当的耗费时间。下面的一章会详细讲解workitem的属性。 4Workitem的属性上面说到dc:type 就是workitem的一个属性,获取特定的workitem后可以使用如下代码直接打印出其值: 那workitem还有其他的什么属性呢,可以用如下代码获得:| print workitem.field_alias.values() 下面是我的一个任务类型的workitem的所有属性: 再次强调,在query workitem的时候,请指定你想要获取的属性,不然以上全部都会获取。如果全部获取,200个workitem的获取时间在1个小时左右。如果只获取单个属性,几秒就可以完成query。
Docker Remote API是一个取代远程命令行界面(rcli)的REST API。我们使用命令行工具cURL来处理url相关操作。cURL可以发送请求、获取以及发送数据、检索信息。通过Docker Remote API,我们可以实现Docker操作的图形化执行方式,对于不熟悉命令行管理Docker的使用者来说,也可以轻松的管理远程机器上的Docker。 Centos7虚拟机配置docker remote api开放端口 方法1: 方法2: 关闭防火墙(为了别的电脑可以访问端口): 测试: 测试事例参考:http://blog.csdn.net/ztsinghua/article/details/51657296 API列表参考:https://docs.docker.com/engine/api/v1.22/#2-endpoints go语言代码获取容器信息 安装gocurl 如果你想下面代码在你的电脑上运行,只需修改方面里面的url和端口为自己虚拟机的IP和端口即可。 代码只实现从虚拟机获取容器信息,其他方法正在学习中。 输出内容:**Ghostcloud精灵云 Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,致力于为企业提供互联网化、私有云管理平台、大数据业务基础架构等服务,帮助客户降低成本、提升效率、简化运维及产品部署,提升系统可靠性和安全性。目前在金融、制造、能源、政务等领域有超过50家的客户。 双软认证企业菁蓉杯2016创业大赛冠军通过全国高新技术企业认定通过ITSS云计算服务能力标准认证2017德勤-成都高新创新创业明日之星入围2017年云计算领域“奥斯卡”云鼎奖荣获2017中国云计算500强|PaaS平台服务商创富中国2016年度总决赛最受媒体欢迎企业天府(四川)联合股权交易中心双创企业板挂牌企业全球首批CNCF官方认证Kubernetes核心服务提供商阿里2016云栖大会CACSC全球总决赛「十大优秀企业」**
美国国家标准技术局(NIST)发布了一项有关应用容器技术安全问题的公告。该公告对之前的两个公告内容进行了总结,包括镜像、注册表、编配器、容器、主机操作系统和硬件方面的漏洞,以及相应的应对措施。 NIST的计算机安全研究中心(CSRC)负责监管NIST的数字和信息相关的项目和出版物。该公告对之前的两份有关应用容器安全的出版物进行了总结,它先是对应用容器的现状进行了总结,然后列出了影响容器安全的因素,最后提出改进应用容器安全的应对措施。 容器的可移植性和不可变性会导致两个地方出现安全问题。容器提供了比应用压缩包更高级别的抽象,用于发布和部署应用程序。它们具有跨环境和机器的可移植性,相同的容器镜像可以被用在开发环境、测试环境和生产环境。这对于应用的可移植性和持续交付来说虽然有一定的好处,但也带来了安全问题。安全工具和流程并不能保证容器所运行环境绝对安全,因为特定的环境可能包含很多安全漏洞。 容器使用了不可变模型,每当一个新版本的容器发布,旧的容器就会被销毁,新容器会代替旧容器执行任务。如果基础镜像发生变更(比如一个操作系统镜像),应用开发者就必须为相应的应用生成新的镜像。将安全漏洞补丁和缺陷修复推到生产环境变成了开发人员的责任,而不是运维人员。但实际上,运维团队应该在这方面拥有更多的经验,所以说这也是一个潜在的问题。 NIST发布的指南列出了六个需要应用安全措施的地方,包括镜像、注册表、编配器、容器、主机操作系统和硬件。镜像漏洞有可能是操作系统漏洞、配置问题、木马、未被信任的镜像、明文存储的秘钥。镜像是基于基础镜像构建而成的,在很多情况下,应用开发者并不知道底层镜像会存在问题。不安全的连接、过时的镜像和不完备的认证授权机制给镜像注册带来了风险。如果没有做好网络流量控制,任由无限制的访问,那么用于管理容器生命周期的编配器也会出现问题。大部分编配器并不支持多用户模式,从安全方面来看,默认的设置一般无法保证最佳的安全性。 容器里也可能包含了恶意代码,它们有可能会“冲出”容器,对同一主机上的其他容器或对主机本身造成威胁。容器内部未加控制的网络访问和不安全的容器运行时配置(在高级别权限模式下运行)也会带来隐患,因为容器有可能受到来自其他方面的影响,比如应用级别的漏洞。每一个主机操作系统都有一个“攻击面”,攻击者通过这个攻击面对操作系统发起攻击。主机一旦受到攻击,主机上的容器也难逃厄运。共享内核的容器会加大攻击面。 应对措施需要从最底层开始——也就是硬件,然后往上达到容器运行时,当然也会触及镜像、注册表和编配器。之前关于容器安全的研究也提到了类似的内容。 **Ghostcloud精灵云 Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,致力于为企业提供互联网化、私有云管理平台、大数据业务基础架构等服务,帮助客户降低成本、提升效率、简化运维及产品部署,提升系统可靠性和安全性。目前在金融、制造、能源、政务等领域有超过50家的客户。 双软认证企业菁蓉杯2016创业大赛冠军通过全国高新技术企业认定通过ITSS云计算服务能力标准认证2017德勤-成都高新创新创业明日之星入围2017年云计算领域“奥斯卡”云鼎奖荣获2017中国云计算500强|PaaS平台服务商创富中国2016年度总决赛最受媒体欢迎企业天府(四川)联合股权交易中心双创企业板挂牌企业全球首批CNCF官方认证Kubernetes核心服务提供商阿里2016云栖大会CACSC全球总决赛「十大优秀企业」**本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文链接 http://www.linuxidc.com/Linux/2017-12/149235.htm作者:Hrishikesh Barua ,译者 薛命灯
11月25日,由精灵云科技和PNP联合主办的主题为“2017Kubernetes Meetup新计算,新纪元”的容器编排技术大会在PNP北京总部圆满举办,活动主要围绕全球顶级开源项目Kubernetes的特性解析、系统架构、案例实践等话题,进行深度分享和交流。尽管这天是周六,本次活动仍然受到了行业内外的专业人士热捧,现场聚集了上百位参会者,来自各大公司的技术骨干、个人开发者、科研专家等来到了现场。这次技术沙龙,从容器云技术整体框架到数据平台的使用等方面展开了探讨分享,解答了许多实际工作中遇到的问题。 四位大咖对容器云技术做了不同视角的精彩分享 来自北京桔子互动科技有限公司创始人&CEO李佳芮,分享的主题是《基于docker构建微信脸盲机器人》,结合了微信、机器人和容器云技术等最前沿技术的话题,为本次活动赢来一个活力满满的开场,优质内容的分享更是获得了参会者的一致认可。 精灵云高级架构师何津带来的演讲主题是《Kubernetes的企业化实践》,从理论到实践,以及讲到了精灵云科技在容器云技术研发的历程,精灵云科技从作为早期的阿里云Docker服务商到目前国内技术和服务领先的企业级容器云管理平台,都离不开对容器云技术的深耕研发,以及用开放的态度拥抱技术。 第三位分享嘉宾是来自当当网的数字业务事业部技术总监李志伟。他的分享也是干货满满,对当前存在的技术需求和问题提出了非常具有建设性的观点。 本次活动以日志易的技术总监杜卫普的分享作为压轴,他带来的话题是《海量数据驱动下的智能运维》,同样也精彩纷呈,赢来阵阵掌声。 面对现场观众提到“对于企业来说,使用精灵云的技术平台带来的价值”的问题时,精灵云科技的CEO晏东讲到,现在很多企业,用云服务会出现较多问题,比如应对访问洪峰比较困难、IT架构陈旧、运维人力成本巨大等。所以精灵云科技产品从设计之初,就采取尽可能简单、一站式的方式,让用户能够一键式的使用云服务资源。而基于精灵云科技的整体容器云技术能力,从中小型型到大型企业的整个过程中,我们是可以随着企业成长路径持续提供服务的,这也保证了企业使用云服务的连贯和稳定性。 拥抱大时代 精灵云科技深耕容器云技术 在科技如此快速更迭的时代,我们希望企业的云计算能力、企业IT架构和整体的处理能力能够更加的遂心应手。容器云技术是我们的载体,也因此我们对于这项技术的理解和掌握,变得尤为重要。而在企业级容器云技术研发领域,精灵云科技作为行业的先驱和领军者,组建这样的技术沙龙是职责所在,因为推动整个行业的技术进步,需要各个领域的专业人士积极沟通及互动。 精灵云科技作为CNCF官方授权的主办方,将会持续举办“Kubernetes Meetup”,下一站于12月7日在西安举办的技术大会已经在紧锣密鼓的准备着,期待更多人参与其中。而本次北京站活动的精彩视频,也将在IT大咖说网站上独家呈现,欢迎关注哟。
继上月在成都举办“Kubernetes Meetup ”活动获得巨大反响后,Ghostcloud精灵云这次把舞台搬到了北京。将继续与技术发烧友以及各行业的精英一起,围绕全球顶级开源项目Kubernetes的特性解析、系统架构、案例实践等话题,进行分享交流。 值得一提的是,除了继续由CNCF官方授权以外,本次北京站的活动,精灵云还多了一个超级大牌的盟友——全球最大孵化器Plug and Play(简称PNP)。 PNP是一家专注于帮助创业团队快速成长的科技企业孵化加速器,作为科技孵化器的鼻祖之一,至今已为2000多家创业型公司服务过,包括Dropbox、PayPal、Lending Club等市值超百亿美元的企业。它还是全球最大搜索引擎Google公司的天使轮投资人。 此外,PNP每年超过200笔的早期项目投资,300多家知名企业会员,200多家世界顶级风险投资合作机构,每年超过100场的项目投融资路演,40多家世界顶级科研院校,在全球30多个国家拥有分支机构。 与成都站的主题更侧重于技术层面有所区别的是,北京站的分享更多了一些容器编排技术在行业落地的实际案例,这无疑将让到场的企业参会人员得到更多的借鉴和启示。 话不多说,先透露下本次“Kubernetes Meetup ”北京站的几位重量级讲演嘉宾以及他们各自分享的主题。 主题1 《kubernetes容器云在互联网企业的实践》 李志伟当当网数字业务事业部技术总监曾担任17k小说网的技术总监,主导17k技术平台向kubernetes容器云以及微服务架构改造工作。历任搜狐游戏技术中心高级经理, IT168技术总监。2016年加入当当网,负责当当读书产品整体技术工作,致力于推广Kubernetes在研发实践中的应用。 主题2 《基于docker构建微信脸盲机器人》 李佳芮北京桔子互动科技有限公司创始人&CEO聊天机器人开发者,热衷于参与开源项目,并运营了几乎覆盖全球的微信聊天机器人开发者的开发者社群。桔子互动致力于通过智能对话代替传统网页,为用户提供定制化智能服务。 主题3、《海量数据驱动下的智能运维》 杜卫普日志易技术总监十六年运维、安全领域经验,曾任职务Symantec 高级工程师,负责过多家中大型银行、银河证券、移动、中石化等项目,深入了解防火墙、防病毒、漏洞扫描等多种安全产品。 主题4 《Kubernetes的企业化实践》 何津精灵云高级架构师曾任华为技术有限公司技术支援经理、服务交付经理,12年软件服务与集成经验,4年海外工作经历,全球化团队管理,拥有极强的产品规划与交付能力,负责印度格局市场管理交付,负责中国移动、Vodafone、 TATA、 ET等全球Top10运营商整体解决方案交付和支撑。 2017年11月25日 14:00- 17:00北京市海淀区-中关村智造大厦G座-PNP中国总部我们将在此虚位以待全世界的技术爱好者及更多志同道合的朋友 关于Ghostcloud精灵云Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,运用至企业IT系统全生命周期的开发、测试、运维及发布流程中。Ghostcloud精灵云致力于为多领域企业提供互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,提升系统的可靠性和安全性。Ghostcloud精灵云有超过50+家的企业级客户(金融,制造,政务,能源,大型国企)。 获得殊荣:全球首批CNCF官方认证的Kubernetes核心服务提供商荣膺“2017德勤-成都高新创新创业明日之星”奖项阿里2016云栖大会CACSC全球总决赛 “十大优秀企业”创富中国2016年度总决赛最受媒体欢迎企业通过双软认证,成为双软企业 关于PNPPNP(Plug and Play)是一家专注于帮助创业团队快速成长的科技企业孵化加速器,作为科技孵化器的鼻祖之一,Plug and Play至今已为2000多家创业型公司服务过,包括Dropbox、PayPal、Lending Club等市值超百亿美元的企业。它还是全球最大搜索引擎Google公司的天使轮投资人。 关于CNCFCNCF(Cloud Native Computing Foundation)是成立于2015年的非营利组织,是 Linux 基金会旗下专注于下一代云计算方案的基金会。CNCF致力于统一云计算的接口和相关标准,维护和集成开源技术,并支持编排容器化微服务架构应用。其会员包括Ghostcloud精灵云、Google、阿里云、腾讯云、Intel、IBM、华为、Docker、Twitter、Red Hat、思科等全球知名科技公司。
在微软创始人比尔-盖茨几乎霸占了福布斯富豪榜榜首22年以后,这个宝座终于又易主了。 当地时间上周五,亚马逊报收1105.58美元创历史新高。创始人兼首席执行官杰夫·贝索斯身家达到938亿美元,打败比尔·盖茨,继今年7月下旬成为“半日首富”(短暂超越比尔-盖茨4小时随即又被迅速反超)之后,再度登顶。 贝索斯并非什么生面孔,但这次他不负众望再次登顶,凭借的却不仅仅是亚马逊的传统强项电子商务。亚马逊三季度收益的增长主要得益于今年7月的美版“双11”和高速发展的云端服务。 其中,亚马逊的主要营收来源云服务AWS为该公司贡献颇丰。 AWS为用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,能够帮助企业降低IT投入成本和维护成本。 2006年第一个上线公有云服务AWS的亚马逊独占鳌头,是目前全球最大的云计算厂商。截至2017年二季度,AWS占有全球云计算市场份额上升至34%,位居次席的是微软的Azure,其市场份额不到AWS的三分之一。 目前,亚马逊、微软、谷歌以及英特尔四大科技巨头都将自己芯片放在云计算业务上。 这四家公司也都已发布了强劲的季度财报,凸显出企业计算正从公司自有数据中心向云计算转型的强劲势头。 而中国方面,Ghostcloud精灵云作为云计算2.0服务提供商的佼佼者,一直以来都致力于为企业提供专业与便捷的系统解决方案,更让企业上云变得简单、快捷及低成本。 超越贝索斯也许并不那么容易,但要从蓬勃发展的云计算大潮中分一杯羹,第一步其实很简单,进来吧:传送门》》》》
上周 冯唐的一篇 《如何避免成为一个油腻的中年猥琐男》 一文激起千层浪 但我可以肯定的告诉你 10月28日成都举行的这场 由Ghostcloud精灵云主办的 顶级云计算技术分享交流会 「Kubernetes Meetup2017」中 这样的男人是基本不存在的 他们中的有些人 或许 横向尺寸变大了 或许 不再是球场上横冲直撞的愣头青 或许 也渐渐开始追忆从前 但他们的身体里面 仍然保留着太多年少时的品质 譬如充满好奇 譬如眼里有光 譬如激素吱吱作响 比如热爱姑娘、万物生长 Ghostcloud精灵云的技术总监 张行才 无疑是冯唐这篇帖子的最好反例 当他站在台上 没有顾盼睥睨的气势 也没有三寸不烂的辩才 但就在他不是那么行云流水的讲述里 洋溢出一种对技术的执着 以及除了代码还是代码的心无旁骛 于是 他猝不及防地 成为了全场瞩目的焦点 不仅分享结束后成为被提问最多的人 甚至有位提问者一站起来就说 才老师,我有九个问题 (壮士,你是来踢馆的吗) 会后还被众多美女争抢着合影 所以 今天的活动 Kubernetes和Docker什么的 并不是重点 重点是 只要有理想 只要坚持 就会闪闪发光 就永远不会油腻 这就是真正的技术大咖 给我们的启示
10月28日,一场主题为“新计算,新纪元”的顶级技术分享交流会「KubernetesMeetup2017」在成都隆重举行,各个行业的精英一共近200人参与了这次会议。 这次活动是由美国CNCF基金会独家官方授权,成都精灵云科技有限公司主办、天府软件园和长虹集团协办、成都市云计算产业联盟以及IT大咖说提供支持的。 Kubernetes(简称K8s) 作为目前最受青睐的应用容器引擎Docker 生态圈中的重要一员,至今已在金融行业(如高盛)、互联网及传统行业(如维基,三星,travix、长虹集团)等公司纷纷落地。 Ghostcloud精灵云是CNCF全球首批官方认证的K8s服务提供商中,除华为之外唯一上榜的中国企业,更是西南地区唯一一家基于新一代虚拟化技术Docker的云计算服务商。 本次的“Kubernetes Meetup ”,也是西南本土云计算服务商首次主办如此高规格的K8s技术交流会,旨在为业界带来最新 Kubernetes 技术、行业应用案例展示与最佳实践,这对于 Kubernetes 从理论到落地推广,以及帮助更多企业从传统的IT转变为云原生都有着极为深远的意义。 在这次技术饕餮上,四川省大数据产业联合会暨成都市云计算产业联盟执行秘书长朱小军、长虹集团软件与服务中心高级架构师李伟等几位重量级嘉宾分别就云计算的趋势和政策,以及K8S的行业应用做了精彩论述。 四川省大数据产业联合会暨成都市云计算产业联盟执行秘书长 朱小军 长虹集团软件与服务中心高级架构师 李伟 Ghostcloud精灵云高级售前工程师 何津 而Ghostcloud精灵云自己的顶级大神——技术总监张行才关于K8s与产品结合的演讲,更是让现场的开发者、云计算用户及企业决策者们深感不虚此行。 Ghostcloud精灵云技术总监 张行才 会议当中,与会者还围绕容器编排工具K8s的特性解析、系统架构、案例实践等话题,进行了自由和热烈的探讨,也对Ghostcloud精灵云主办这样规模的技术分享会表示了赞赏 除了大师论道以外,技术的碰撞和交流无疑是这次活动最有价值的部分,台下的各路行业精英都踊跃地向台上的分享讲师提问。 最后到了长虹集团高级架构师李伟回答提问的环节,另一位分享嘉宾张行才还亲自提了一个问题,于是会场中也出现了有趣的大咖面对面画面。 一直以来,Ghostcloud精灵云都致力于做最新虚拟容器技术的布道者,依托用Docker虚拟化技术优势及对行业业务的丰富经验和深入理解,提供专业与便捷的系统解决方案,给企业带来更高效和简单的IT解决方案及IT系统,更让企业上云变得简单快捷及低成本。 接下来,Ghostcloud精灵云还将穿行北京、重庆、西安、贵阳等多个城市,为每一位技术爱好者和行业需求方带来干货技术分享及问题解决之道,继续自己的布道之旅。 而本次活动中几位嘉宾无私分享的技术干活,也将率先在IT大咖说中独家视频呈现。
据说技术宅的眼里只看得到两样东西。 一是代码;二是女神。 那福利来了,由CNCF独家官方授权的中国最权威技术分享交流会 「2017Kubernetes Meetup | 成都站」将成为技术宅们趋之若鹜的盛会。 Kubernetes Meetup | 成都站 —— 新计算,新纪元 10月28日 14:00-17:00 成都市高新区 天府软件园-C1-3楼会议厅 主办:Ghostcloud精灵云 协办:天府软件园 长虹集团软件与服务中心 会议支持:成都市云计算产业联盟 IT大咖说 行业两大巨头Docker和Kubernetes上周刚刚握手言欢,在这个容器生态系统的里程碑时刻,多位行业大咖的观点交流和碰撞,毫无疑问备受期待。 而出于私心,我也绝对不会告诉你,现场主持的电视台主播是一位大美女(小编脸上此时出现难以抑制的蜜汁微笑) 容器技术何去何从?云计算2.0能给各大行业带来什么红利? 除了一系列绕不开的精彩话题以外,还有三位极具分量的演讲嘉宾,他们将分别就云计算及容器技术的趋势、行业应用及产品结合展开精彩论述。 让小编给大家剧透一下下—— 演讲1:《云计算渐成燎原之势》朱小军 四川省大数据产业联合会副秘书长、执行秘书长 在计算机网络信息化集成领域拥有15年经验,具备CISO国家信息安全专业管理、国家信息化集成项目经理等专业资质。曾担任多个大型上市企业高管,自任职四川省大数据产业联合会及成都市云计算产业联盟以来,积极营造四川省云计算大数据生态圈,组织多次云计算、大数据论坛峰会及行业沙龙。 演讲2:《Kubernetes下API网关的微服务实践》李伟 长虹集团软件与服务中心 高级架构师 负责长虹各基础服务模块的架构设计与实现,以支撑长虹智能硬件、O2O 电商等业务。 对电商支付系统、大型网站架构均有深入研究和独到见解。 演讲3:《Kubernetes与EcOS的碰撞结合》张行才 成都精灵云科技有限公司 技术总监(合伙人) 曾任职微软(中国)有限公司,为企业提供应用架构和研发相关支持工作,现任职精灵云,负责EcOS/Kubernetes相关产品研发工作。同时是Kubernetes contributor和Kubernetes 认证管理员(CKA)。 此外,一起加入这次盛会的还有各大企业高管、渠道商、系统集成商等行业精英。 你还等什么?点击链接来报名吧》》》》 关于主办方:Ghostcloud精灵云 Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,运用至企业IT系统全生命周期的开发、测试、运维及发布流程中。 Ghostcloud精灵云致力于为多领域企业提供互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,提升系统的可靠性和安全性。 Ghostcloud精灵云有超过50+家的企业级客户(金融,制造,政务,能源,大型国企)。 获得殊荣: 全球首批CNCF官方认证的Kubernetes核心服务提供商荣膺“2017德勤-成都高新创新创业明日之星”奖项阿里2016云栖大会CACSC全球总决赛 “十大优秀企业”创富中国2016年度总决赛最受媒体欢迎企业通过双软认证,成为双软企业 点击链接来报名吧》》》》
随着时代的发展,云计算成为人尽皆知的新一代技术,其地位已上升至国家战略层面。作为云计算2.0时代的先驱,足以改变传统IT时代的最新虚拟化技术Docker和全球顶级开源项目Kubernetes被越来越多的企业认可和使用,我国云计算也迎来了“黄金窗口”期。 而对于Kubernetes,Ghostcloud精灵云具有毋庸置疑的发言权—— CNCF今年公布了全球首批官方认证的Kubernetes服务提供商名单,来自全球21家企业获此殊荣,中国上榜2家企业,分别是Ghostcloud精灵云和华为。 今年10月,这股技术热潮将深入内陆地区,由CNCF授权、Ghostcloud精灵云主办的“ Kubertenes Meetup ”大会将在成都、重庆、西安、贵阳等城市举办,随后席卷全国。 “ Kubertenes Meetup ”是由CNCF独家官方授权的中国最权威的技术分享交流会,与会者将围绕全球顶级开源项目Kubernetes的特性解析、系统架构、案例实践等话题,进行分享交流。 Kubertenes Meetup | 成都站: 主题:新计算,新纪元时间:10月28日 14:00-17:00地点:成都市高新区 天府软件园-C1-3楼报告厅主办:Ghostcloud精灵云协办:CNCF 天府软件园 作为本次活动的主办方,Ghostcloud精灵云邀请了多位云计算行业领军人物及技术专家,也想邀请你一起参加,报名入口:Kubernetes Meet Up 报名表 关于CNCFCNCF(Cloud Native Computing Foundation)是成立于2015年的非营利组织,是 Linux 基金会旗下专注于下一代云计算方案的基金会。CNCF致力于统一云计算的接口和相关标准,维护和集成开源技术,并支持编排容器化微服务架构应用。其会员包括Ghostcloud精灵云、Google、阿里云、腾讯云、Intel、IBM、华为、Docker、Twitter、Red Hat、思科等全球知名科技公司。 关于Ghostcloud精灵云Ghostcloud精灵云是国内首批从事容器虚拟化研发的企业,其产品企业级容器云PaaS/CaaS平台EcOS,与微服务/DevOps相融合,运用至企业IT系统全生命周期的开发、测试、运维及发布流程中。Ghostcloud精灵云致力于为多领域企业提供互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,提升系统的可靠性和安全性。Ghostcloud精灵云有超过50+家的企业级客户(金融,制造,政务,能源,大型国企)。 获得殊荣: 全球首批CNCF官方认证的Kubernetes核心服务提供商 荣膺“2017德勤-成都高新创新创业明日之星”奖项 阿里2016云栖大会CACSC全球总决赛 “十大优秀企业” 创富中国2016年度总决赛最受媒体欢迎企业 通过双软认证,成为双软企业 作为本次活动的主办方,Ghostcloud精灵云邀请了多位云计算行业领军人物及技术专家,也想邀请你一起参加,报名入口:Kubernetes Meet Up 报名表或者扫码下方二维码报名!
自从GitLab发布以开发者为中心的集成应用开发平台9.0版以来的六个月中,已累计下载达二百万次,之后该公司一直忙于对VMWare、Sony和Ticketmaster等客户公司近1000名用户做问卷调查,以了解开发人员发行最具企业价值的GitLab版本所需的功能。 现阶段的结果是:GitLab发布了具有世界各地开发人员所需求的具有新功能和性能的10.0版本。 GitLab官方发布:GitLab10.0版本提供了能够充分体现DevOps优势的功能,特别是基于CI / CD和Kubernetes的应用程序开发。该行业越来越多地采用云原生功能和利用Kubernetes的开源容器编排软件市场,这导致行业对自动化流程的需求越来越多。 而GitLab 10.0版本可以满足企业和团队对自动化流程这一需求。 云原生通过扩展的Kubernetes功能,在GitLab 10.0中得到提升。通过这种最新的集成,将应用部署到Kubernetes是一个无缝的过程,无论服务器运行在哪里,都可以利用GitLab CI快速配置、部署和利用集群。 作为Kubernetes和云原生软件开发工具的使命的一部分,GitLab还与Cloud Native Computing Foundation(CNCF)合作,在今年上半年,被CNCF认可为速度最快的十大开源项目之一,GitLab 10.0版本进一步提高了致力于帮助企业获得云原生应用开发公司的全部优势。 最新版本的GitLabs Auto DevOps与Kubernetes同时提供能简单有效的改进和增强CI/CD功能的方式,以实现安全、灵活连续传输管道的自动化。 其他新功能包括: Auto DevOps:此功能默认情况下自动配置软件开发生命周期,提供开箱即用的模板,以自动启用和配置构建测试代码质量,查看应用程序部署和监控 New UI:更新版本的用户界面提供了更简洁的导航,以及新的测试和监控功能。生产功能用于减少增强子组、部署板和普罗米修斯的生产周期时间,将文件存储在对象库中的能力,以及对于Slack以及JIRA增强集成的支持。 Expanded Kubernetes capabilities:GitLab CI / CD通过提供快速方式配置、部署和监视Kubernetes内的应用程序,无论GitLab是安装在群集内还是外部,都可以部署到Kubernetes。 Issue Boards:团队发布委员会允许更多的协作,在一个视图中,让多个项目中的团队能够在单个组中的所有项目中管理问题。 列表、标签和里程碑都在组级别的管理平台上进行管理,从而允许用户在宏观层面关注组抽象化。 10.0版本功能的目的在于在使开发人员的生活变得更轻松,同时加快工作流程,并让强大的技术更容易被使用。 在Auto DevOps的例子中,开发人员可能会同时进行多个项目,如果必须对每一个项目都设置工具是毫无意义的。在默认情况下,Auto DevOps进一步启用功能,完全删除配置步骤,并且不需要点击。 Auto DevOps的新功能使得资深开发人员可以节省时间,也留出更多的时间给他们上手。因为全行业有三分之二的团队都在自主使用GitLab,所以这些优势将会广泛的被发挥。通过为企业开发人员提供开发优质代码所需的工具,从而达到开发速度更快的目的。 关于Ghostcloud Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。 Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
“精灵学院”是由Ghostcloud全新打造的系列线上分享课程,由平均拥有10年以上从业经验的资深云计算专家开设,旨在打造业内最具优质的技术实践课程。课程围绕容器编排、微服务、DevOps、分布式开发等技术内容,结合多年实战经验,与成千上万的容器技术爱好者分享学习,共促进步。 本周三,我们成功地举行了第2次线上交流分享,200多位朋友共同参与,主讲老师谢斌针对企业的DevOps化,做了深度的解析,和视频+Demo的操作演示,通过精灵云的EcOS平台,展示了DevOps的基本流程。整场交流气氛轻松,很多朋友都参与交流,也提出了一些很有水平的问题。 这篇文章,我们总结了谢斌老师第2节课的所有重点内容,也梳理了交流中大家提到的问题和老师的回答,文章还有视频和Demo的回放链接,希望大家能从我们的交流活动中有所收获。 1、上期DevOps回顾: 现状:DevOps和敏捷开发一样,是蒸蒸日上的上升趋势; 临界点:当团队人数上升,管理难度增加到临界点,DevOps的作用就凸显出来; 执行力:如果拥有很强的执行力,DevOps的效果会非常明显; 流程:DevOps不是一套软件框架,而是一条需要时间和经验积累的流程; 大公司小公司:差别与痛点。 2、实现低成本的DevOps: 软件层面:开源的,经过验证的,经典的软件; 硬件层面:虚拟化,云,容器技术; 人员方面:分拆任务,各司其职,使用统一的管理工具和流程将大家整合起来。 3、DevOps的本质: 任务驱动:通过任务卡形式,将任务管理拆分优化,明确目标,增强驱动力; 角色:每个人都对自己的事情负责,角色的工作边界变得重合; 将责任心流程化:每一个需要你的地方,你都要去负责,要为总目标负责,让每一个人关心与自己相关的其他团队的工作; 小公司:每一个团队都像一个小公司一样,不光是你手下做的这一块,其他部分也要操心。 4、DevOps失败的原因: 上下的思想不统一,执行力不够; 研究不彻底; 培训不足; 覆盖范围不足; 忽视流程; 目标不明确,任务不清晰。 5、演示Demo:通过EcOS容器云管理平台,演示了DevOps的基本流程,包括操作指南和所用到的工具链讲解,Demo视频可以由此链接进入直播间观看:https://m.qlchat.com/topic/370000067566974.htm?pro_cl=link&authDataKey=260000464019732 活动现场的提问回答 Q1:我所在的公司一直以来都是基于Windows的,怎么切入DevOps呢?A:Windows可以基于虚拟机来切,效果差不多,只是速度上稍慢。 Q2:DevOps的流程的建立,有哪些需要特别注意的点?A:流程的建立是一个持续的、不断改进的过程,刚开始可能着重于容易执行,用起来舒服,等大家习惯了以后,再逐渐加东西。 Q3:在Jenkins里用哪个插件可以动态传参,而不必建那么多类似的Job?A:Jenkins使用很灵活,插件也很多,要具体看看需求。起步阶段能用、效率高就行,后续的慢慢完善。 Q4:请推荐一本DevOps相关的书呗~A:书的话可以看看《The DevOps 2.0 Toolkit_Automating the Continuous Deployment Pipeline with Containerized Microservices_Viktor Farcic》,所有的东西基本都在这一本书上,DevOps发起人写的。 Q5:请问切换到DevOps究竟需要多大的成本呢?A:DevOps切换是一个渐进的过程,初步框架建立可能就2个人,2周时间吧。 Q6:DevOps和SRE有怎样的区别?A:区别肯定是有的,每个公司的DevOps都是不一样的,都需要根据自身进行定制。但SRE也算的DevOps的执行吧,只是Google的DevOps。 Q7:精灵云有开源项目吗?A:精灵云现在还没有开源项目,不过已经为K8s的源码做了很多贡献。 Q8:刚才演示的平台,可以再讲一些应用场景吗? A:平台应用场景很多,基本覆盖了需要上云的所有平台,大家可以联系精灵云的销售人员获得更详细的资料,可添加微信:Ghostcloud2016 课件分享《针对企业的DevOps改进和实践》的PPT课件,可以点击此链接下载:https://jinshuju.net/f/lpfYcS 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言:当越来越多的组织和团队通过将信息技术和运维技术相结合来推动其数字业务的创新的时候,作为基础设施和运维团队的领导者,应更加关注以下10个关键技术趋势来支持这些创新。本文将从战略、战术和组织这三个层面来介绍这10大影响基础设施和运维的关键技术。这类趋势与社会和商业密切相关,并将直接影响IT在未来五年内如何为业务提供服务的能力。IT领导者必须了解这些趋势以及IT运维的层级效应。 战略层面趋势1:逐渐取消数据中心Gartner预计,到2020年基础设施即服务(IaaS)和平台即服务(PaaS)云提供商销售的计算能力将比销售并部署到企业数据中心的计算能力还要多。虽然大多数企业(规模非常小的除外)将继续拥有内部(或托管)数据中心,然而,随着大多数计算能力转移到IaaS供应商,企业和供应商都需要着重于管理和利用本地和非本地混合部署,云端和非云端混合架构。趋势2:架构互联架构互联承诺能够建立满足软件定义、动态和分布式要求的数据中心。为能够通过一个API接口拥有实时监控、管理和分配工作负载,或快速提供局域网(LAN)和广域网(WAN)的服务能力提供了可能性。趋势3:容器、微服务和应用程序流容器(例如Docker)和微服务是推动云计算发展的新型应用平台。容器提供了一种实现每个过程隔离的便捷方式,非常适合用来开发微服务。其中应用程序被构建为一组小型服务,作为单独的进程运行,并通过轻量级网络的机制进行通信。微服务可以独立部署和管理,一旦实现,可以在容器内部运行,这使得微服务与底层操作系统(OS)几乎没有直接的相互影响。 战术层面趋势4:业务驱动的ITGartner最近的调查显示,高达29%的IT支出来自业务部门而非传统IT部门,并且在未来几年内这个比例还将会增加。一般来说,这种业务驱动的IT是摆脱传统慢节奏IT流程的一种手段。现在,业务驱动的IT旨在为技术熟练的商业人士提供一种尽可能轻松地进入或适应新市场的同时而又可以快速实施新想法的手段。如今,精明的IT领导者认识到了业务驱动的IT对企业的真正价值,IT的作用应该是与关键的业务利益相关者建立联系,从而使核心IT意识到新项目,以及对整体运作造成潜在长期的影响。趋势5:数据中心即服务IT领导者需要创建一个数据中心即服务(DCaaS)模式,IT和数据中心的作用是以适当的速度从正确的供应商以可接受的价格获得符合需求的服务。IT成为了服务的代表而不仅仅是硬件的提供者。IT领导者可以通过根据客户的业务需求拆分应用组合的方式,启用DCaaS。一旦拆分,就可以通过传统的内部部署方法,或根据IaaS、PaaS、SaaS来做出如何提供该服务的决定。基于这些业务需求的一些服务可能始终都在内部,但是许多其他服务最终将向其他地方迁移,从而提高IT的灵活性,同时减少自身的物理足迹。趋势6:搁置容量(Stranded Capacity)搁置容量指的是那些我们已经购买了但是并没有真正使用的大量存在于常见的数据中心及云计算中的资源。IT领导者应该知道自己不仅要关注容器的正常运行时间和可用性,还要注意容量、利用率和密度。解决这个问题就可以延长现有数据中心的使用寿命,并减少供应商的运维支出。趋势7:物联网物联网将改变未来数据中心的设计和管理,并且将随着大量设备定期不断地把数据流传输到世界各地的企业、政府部门和机构发展。物联网应该任用一个专门负责制定物联网和数据中心的长期战略的物联网架构师。 组织层面趋势8:远程设备管理远程站点或办公室这类组织的增长趋势是集中管理远程资产的需求所在。企业着重于关注微数据中心支持区域或远程站点以及边缘计算环境对地理位置特定计算需求(如物联网)的新兴角色这一点更加重要。业务部门快速采用物联网解决方案,引入了一种新型的资产连接传感器。这种传感器可能需要具有固件更新或周期性电源更换的特性,这就需要注意资产跟踪和管理系统中新的细节和提高控制水平。趋势9:微型和边缘计算环境微型和边缘计算的执行需要依赖于在较近边缘服务器进行高速响应的实时应用程序。通信延迟从原来的几百毫秒缩短到几毫秒。它将用户设备上的一些密集型计算处理转移到边缘服务器,并使应用程序处理更少地依赖于设备的能力。趋势10:IT中的新角色随着IT技术以新的趋势逐步发展,基础设施和运维行业将需要一些新的职位。第一个是负责监控和管理多个云服务提供商的IT云代理商。还需要负责了解多个物联网系统对数据中心的潜在影响的物联网架构师。架构师将会与业务部门合作,使用通用协议和数据结构,来确保闭环的物联网解决方案与中心物联网架构兼容。也需要一个可以将一个团队整合的专家,负责确保和整合新的举措(如云,边缘计算,物联网等)。 作者介绍:David Cappuccio :Gartner副总裁兼杰出分析师, Gartner基础设施团队的研究主管,主要负责企业数据中心战略制定和趋势研究等工作,拥有超过45年技术领域经验,其中包括金融服务、IT运维、市场研究和管理咨询。 原文链接:http://sdtimes.com/10-technology-trends-infrastructure-operations/ 译者简介: Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
我们无数次听到这类的抱怨:管理层不会去做、代码太过混乱、项目太大、有太多的监管障碍。由此种种,对于许多企业来说,在持续集成/持续部署的道路已步履蹒跚,但不得不说,仍有一部分企业做到了。 以Michiel Rook在2016 年的DevOps大会上的演讲为例,一起来看看关于持续部署的发展之旅。他们的项目被称为“San Diego Project”,但他们公司内部却被称为“大泥球”,因为它的代码库相当地混乱。 下图是实施持续部署前的状态: 该项目的压力很大。皆来源于它纯手动发布,脆弱的测试,频繁的宕机以及问题不断。这个项目团队大约由16人组成,但他们对修改现有代码并没有什么信心。 他们知道需要做什么,所以他们设定了以下目标: 减少问题 减少周期时间 提高生产效率 提高积极性 他们采取的方法是:整体修改,建立一个代理并添加一个服务,然后不断地增加服务,直到这个整体被取代。 他们以如下原则来指导这次持续部署之旅: 应用strangler模式 使用API的第一个方法 为每个domain设置一个服务 迁移单个页面 建立负载平衡器后的服务 访问遗留数据库 实施持续部署 运用docker 开发前端作为服务 从持续集成开始:开发和构建/测试,每次都产生一个工件。持续交付:从构建/测试到验收再到生产; 进入生产阶段是一个手动的过程,但代码是可部署的。最后,当整个流程实现自动化时,就达到持续部署的目标了。 关于持续部署的优点有以下几点: 小步推进 早期反馈 减少循环时间 风险减低 实验室环境 Michiel的项目落地后,他总结了几个实现持续部署的关键方面,如下: 直接提交到Master。没有分支。我们都不希望延迟集成,且滥用版本控制功能分离。另外,分支上的所有内容都会增加冲突和延迟集成的风险。 每一次提交都要投入生产。 使用配对编码进行代码审查。这需要约束,但所有的开发人员都需要成对进行,混合搭配有经验的开发人员。 严把质量关。确保大量测试和代码覆盖率。 功能切换和A/B Test。确保一部分开发人员可以看到版本信息,一部分人不能看到,并促进A / B测试。但一定要把人员数量保持在一个合理的范围内。 Dashboards。显示是部署的关键,通过它我们可以获取很多信息,比如KPI、构建时间、页面加载时间、访问者数量、A/B Test结果,等等。 DevOps。心态是一种文化;dev和ops之间并无太多隔阂。团队内部都拥有所有权,但这并不意味着每个人都知道所有事。 自动化可重复的事。如果同样的事你需要做两次,那说明你已经浪费了时间。 连续测试。使用单元测试和冒烟测试来查看服务是否存在,并持续监控。探索性的测试很重要,因为你将继续测试最关键的路径。 管道作为代码。自动化流水线。最后,部署起来是这样的: 反馈 –及时的反馈很重要,因为DevOps是在此基础之上建立的。举个例子,Michiel这个项目上有一个闪烁的红光,这表示失败。所以不管什么时候,及时反馈都是工作中的第一要事。 Michiel的项目时间跨度有一年之久。最终,他们将每个服务的构建时间减少到不到10分钟,显著改善了页面加载时间,同时他们自己也增加了自信心和加快了速度等。明白了团队需要接受和改变的重要性的真理。同时,他们还了解到,与业务优先级一致是关键,确保拥有一定工作经验的员工亦是至关重要,限制功能切换同样至关紧要。 总的来说,Michiel和他的团队实现了持续部署。在他的演讲结束时,Michiel也提到了他的无奈,想要取代的遗留系统仍在服务中。所以持续部署这条路还很长,但值得去做。 推荐阅读:如何为微服务选择正确的数据库为什么你的DevOps会失败? 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
微服务成为基础设施建设重点的原因在于它提供了服务分离、数据自主存储、小型化开发、测试可设置等优势,这有助于新应用程序更快地上市或迭代更新。此外,容器和容器编排工具也增加了对微服务的使用频率。微服务的核心摒弃了传统架构,这使得它在服务之间共享一个单一的数据库。相比于传统的服务架构,微服务架构的每个微服务单元都具有独立、自主、专用的数据存储单元。以一个电子商务解决方案为例,如图所示,该方案采用的服务包括:应用服务器、内容缓存、会话存储、产品目录、搜索发现、订单处理、订单跟踪和数据分析等等。现代电子商务解决方案不是使用大型单个数据库来存储所有的操作和交易数据,而是使用类似于图1所示的微服务架构,其中每个服务都有自己的数据库。 如何为微服务选择数据存储方式“如何选择正确的数据存储方式”是设计微服务时最重要的问题之一。选择正确数据存储方式的第一步是确定微服务数据的性质。数据性质大致可以分为以下几类:1. 短暂数据:缓存服务器就是短暂数据存储的一个很好的例子,它是一个临时数据存储,其目的是通过实时提供信息来改善用户体验。 微服务通常被调整为高性能,并且操作读取频繁,它没有耐久性要求,因为它不存储数据的主副本,但它又仍然必须保持高度可用,因为出现故障可能会导致用户体验不佳,从而影响收益。另外,故障也可能会导致“缓存冲突”问题,因为数据库爬网速度较慢,它们无法处理高频的访问,反而这可能导致完全可以避免的故障出现。2. 瞬态数据:日志、消息和信号等数据通常以高容量和高速率实现传输。数据摄取服务通常在将其传递到适当的目的地之前处理该信息。 像这样的数据存储方式就需要支持高速写入。同时,支持时间序列数据和JSON的内置功能也是一个额外的好处。对瞬态数据的耐久性要求会高于短暂数据,而低于交易数据。3. 操作数据:从用户会话收集的信息(如用户个人资料,购物车内容等)被视为操作数据。微服务器为用户提供更好的体验并进行实时反馈。即使存储在数据库中的数据不是永久的,但架构也必须最大程度地保留数据以实现业务连续性。这样就对于操作数据的持久性、一致性和可用性要求很高。一般而言,操作数据被放在特定的数据模型中,如JSON、图形、关系、键值等4. 交易数据:从类似于付款处理和订单处理的交易收集到数据必须作为永久记录,存储在能够支持强ACID控制的数据库中。在图1所示的电子商务应用中,我们可以对微服务及其各自的数据存储方式进行分类,如下表所示: 一致性和耐用性的可调度 为了达到优化微服务以获得高性能和数据耐久性要求,务必要确认所选数据库能够为当前数据类别提供适当的可调参数。对于高性能而言,纯内存的数据库是理想的选择。对于数据耐久性而言,让数据复制以及磁盘闪存耐久是最好的解决办法。例如,电子商务示例中的缓存服务器必须针对低延迟、高速读取操作进行优化。基于数据的性质,数据库不需要承受耐久性考验。另一方面,订单跟踪微服务重点是保持数据清晰和一致。 下表显示了如何基于对数据的原则性、一致性、隔离性和耐久性的要求来配置和调整每个微服务器的数据存储方式。 最后但也同样重要的是评估数据库可用的部署方法和编排选项,以确保能够让所有微服务在同一种环境中被部署和管理。以下是要查找的一些关键标准:1. 作为容器的可用性:由于微服务大多都部署为由编排工具所管理的容器,所以当使用数据库作为容器时,可以获得很好的运营效率。2. 云端/本地化选择:数据库是否可用于云端或本地,微服务器部署在哪里? 可用于两个部署选项的数据库为此提供了更大的灵活性。3. 锁定供应商:组织有时会切换编排工具,因此确保数据库支持所有流行的编排工具对锁定供应商非常有帮助。 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
DevOps的目标非常明确:使应用软件高效迭代,可靠,质量更好。这个目标非常理想,几乎所有人都不会对此产生异议。许多人都说,他们已经开始了DevOps的实践,正遵循一些常见的框架,比如“CALMS”。然而,能得到非常满意结果的并不多,我们在与200多名DevOps专业人士交谈后,做了以下的数据统计,希望你能从中得出一些结论:• 68%的人表示,DevOps中所需的多种工具之间缺乏连接性;• 52%的人表示,他们的大部分测试仍然是手动的,速度缓慢;• 38%的人表示,他们混合了传统和现代应用,使得环境变得非常混乱,这给应用部署策略和工具链等方面制造了很多麻烦;• 27%的人仍然在努力消除孤立的团队,追求所预期的协作;• 23%的人对自助服务基础设施的访问仍然受限;• 以及一些其他的问题:找不到正确的DevOps思路,难以管理多种服务和环境的复杂性,缺乏预算和紧迫性,以及执行领导层的支持有限……通过这些数据统计,我们能得出一些更深入的结论来:挑战#1:DevOps工具链中缺少连接许多DevOps工具会用于自动执行不同的任务,如CI,基础设施配置,测试,部署,配置管理,发布管理等,虽然这些组织开始采用DevOps,但他们往往不能一起工作。 举一个典型的例子,某团队使用Capistrano进行部署,当需要部署新版本的应用程序时,或者当应用配置需更改时,研发人员仍然会通过JIRA tickets 与Test and Ops团队进行通信。运行Capistrano脚本所需的所有信息都可以在JIRA tickets 中使用,在运行之前,研发人员手动将其复制到脚本中,这个过程通常需要几个小时,需要仔细管理。而所需的配置其实被手动传输两次:先输入到JIRA,再将其复制到Capistrano。这是一个简单的例子,但这个问题存在于整个工具链中。当DevOps工具链中的工具无法协作并且依赖于手动的时候,持续交付将变得非常困难。挑战#2:缺乏测试自动化尽管所有的焦点都集中在TDD上,但大多数组织仍然在与自动化测试进行斗争。如果测试是手动的,那么几乎不可能执行整个测试套件,这将成为持续交付的障碍。团队试图通过运行一组核心的测试来处理这一问题,并定期运行完整的测试套件。但这意味着在你的软件交付工作流程中可能忽视很多bug,而且查找和修复的成本要高得多。 测试自动化是DevOps采用过程的重要组成部分,因此需要成为首要任务。挑战3:布朗菲尔德环境典型的IT组合在本质上是跨越了数十年的技术、云平台供应商、实验室、数据中心的私有云和公共云。创建跨越这些方面的工作流程是非常有挑战性的,因为相当一部分工具只能使用在特定的架构和技术上。这导致了工具链的蔓延,因为每个团队都希望使用最符合自己需求的工具链。Docker的兴起鼓励许多组织开发基于微服务架构进行。这也增加了DevOps自动化的复杂性,因为应用程序现在需要数百个异构微服务的部署管道。挑战#4:文化问题开发人员开发了稳定优质的软件,然后由运维部门部署和运维。尽管所有这些团队都希望能够携手共同合作,但他们往往会有利益冲突。开发人员可以快速迭代,QA团队确保没有软件错误,两个团队通常由SecOps和基础设施运维部门协调,他们被激励以确保生产不会中断。但成本中心的压力越来越大,这导致了一种反对变革的文化,因为变革引发了风险,破坏了事物的稳定,这意味着需要更多的资金和资源来控制影响。开发人员也受到开发问题的困扰,大部分时间都花在之前的内容维护上,而不是创新新事物。大多数组织试图让所有团队参与SDLC的所有阶段,但这种方法仍然依赖于手动协作。自动化是开发和运维合作的最佳方式。但是正如我们刚刚分析的那样,这种不太健康的自动化本身会降低你的速度并引入风险和错误。 我们需要更多关于DevOps理解和思考 一套完整的DevOps框架会包括文化、自动化、测试和共享。DevOps运动的雏形其实是一种文化运动,即使在今天,大多数的实现仍集中在文化上。虽然文化是任何DevOps架构的重要组成部分,但想改变一个组织的文化是最困难的事情,因为文化会在时间的沉淀中形成。Ops团队不讨厌改变,他们试图快速改变生产过程,但他们更需要运维的稳定性。把它们和开发人员一起放在一起,可能有助于使工作环境变得更加友好,但它并没有解决根本原因,Dev团队和Ops团队还有很长的路要走。 “精灵学院”第二次分享交流会如约而至,9月6日晚我们继续聊聊《针对企业的DevOps改进和实践(下)》,欢迎各位朋友前来交流分享。
容器技术将应用程序及其依赖关系与操作系统进行分离,不像虚拟机那样要打包整个操作系统,这样一来,就能节约更多的系统资源,同时容器在下载、升级、部署和迭代的时候也更高效。因此,在IT技术界中,容器技术的发展之势可谓是如日中天,就连Google,微软和亚马逊等这类世界知名公司也开始使用这项技术。 容器技术的发展不免也引起了各类容器编排工具的激烈竞争。Kubernetes,作为Google开源的容器编排工具,已率先成为领先的解决方案,能成就它主要有三个原因: 云原生架构设计:能支持和部署下一代应用程序; 开源的社区文化:保证了快速创新,避免厂商锁定; 可移植性:可在任何地方部署,无论是在云端、本地,还是虚拟机中,等等。 下图表示Kubernetes在云原生部署: Kubernetes能部署和管理容器化应用程序,其中包括NGINX,MySQL,Apache等。同时它能为容器提供调度,弹性伸缩,复制,监控及其他容器管理功能。 一旦你确定了容器编排平台,接下来就是部署Kubernetes。之前有提到,Kubernetes是一套轻便且灵巧的解决方案。这是因为Kubernetes使用同样的镜像和配置,在笔记本电脑,云端或本地的工作方式完全相同。而部署Kubernetes大致有以下三种形式: 1、 Kubernetes-as-a-Service这些解决方案能够在各种基础设施中部署kubernetes:比如公有云或者本地私有化。Kubernetes集群选择这种方法有以下几个优点: 通过KaaS供应商升级,监控和支持 混合云或多云环境下轻松扩充 多个集群也能良好的展现 高可用的多主机Kubernetes集群,能根据负载进行自动伸缩 常见的企业集成,如SSO /隔离命名空间; 以及拥有通过Helm chart部署应用程序的能力 集群联合,在多个云或数据中心之间提供无缝的混合环境 2、托管基础设施Google云平台和微软Azure分别通过GKE(Google Container Engine)和ACS(Azure Container Service)提供Kubernetes 。在公有云中使用容器技术可以快速启动,但这样一来,数据将驻留在网络和防火墙之外。 Google的GKE领导着其他公有云供应商。谷歌一直在使用一个叫Borg的集群管理器来管理内部的容器项目,有超过十年的经验(来源:TheNextPlatform)。相比之下,微软的ACS则是一个相对年轻的产品,在今年2月份才推出对Kubernetes的支持。但是,ACS相当灵活:用户可自行选择容器编排平台(Kubernetes,Docker Swarm,DCOS),并且除了Linux之外,还可以在Windows上能部署容器化应用程序。如下图所示,GKE和ACS在公有云平台上, Kubernetes的服务和基础设施由托管提供商部署和管理。 3、本地部署Minikube是本地部署Kubernetes最流行的方式。它支持各种虚拟机管理,包括VirtualBox,VMware Fusion,KVM和xhyve以及OS,包括OSX,Windows和Linux。 如上所示,用户使用Minikube CLI和Kubectl进行部署,这是Kubernetes的原生CLL。Minikube CLI可用于启动,停止,删除,获取状态,并在虚拟机上执行其他操作。一旦Minikube虚拟机启动,Kubectl CLI就会在Kubernetes集群上执行操作。以下命令启动现有的Minikube虚拟机并创建NGINX Kubernetes部署: 总结综上,Kubernetes-as-a-service,Kubernetes托管基础设施,Minikube便是部署Kubernetes的三种方式。最后,如果你希望Kubernetes发挥最大的工作效能,还需要一款性能强劲,高效稳定的容器云平台,由Ghostcloud研发的EcOS平台便是一个很不错的选择,它可以让Kubernetes的优势展现得淋漓尽致。 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言最近,CoreOS更新了其基于Kubernetes的容器管理和编排平台,提供了新的监控功能,同时也支持微软 Azure。 今年6月, CoreOS对外发布了其Tectonic平台的1.7版本,首次支持Kubernetes框架;并于8月17日再次发布了更新,使得Kubernetes框架可直接支持微软Azure云计算平台。Kubernetes是Google的开源项目,并于2015年7月成为Linux基金会旗下云原生计算基金会(CNCF)所管理的项目。与其他容器技术一样, 最早仅支持Linux操作系统,得益于类似CoreOS这样组织的努力,提供了越来越多的平台支持,使得用户拥有更加广泛的选择。值得一提的是,微软自己的Azure容器服务(ACS)在今年二月份也增加了对Kubernetes的支持。为了本次Tectonic 平台的顺利更新,CoreOS邀请了微软开发者加入共同开发和优化,从底层编码保证了Kubernetes在Azure上顺利运行。最新版本的Tectonic 1.7.1平台,帮助并增强了客户对混合云的管理力度,极大的避免了服务商技术垄断并降低了成本。 另一方面,虽然CoreOS正在为微软 Azure提供一个稳定的、生产环境就绪的Tectonic版本,但客户依然无法在Azure上通过Tectonic 1.7运行不同操作系统的容器。相比Docker容器已经可以运行在Windows 或Linux的不同操作系统,Tectonic 1.7的重点还是在Linux的容器上,暂时不支持在Azure上运行的基于Windows的容器 。 同时,由于采用了Kubernetes技术,Tectonic平台实现容器的多云部署,比如将同一套web与数据库应用部署亚马逊云和微软云上,形成跨云的应用集群。但目前,由于同一集群内的应用通常对网络性能带来的延迟非常敏感,因此该能力的应用情况还有待观察,短时间内对 客户来说并不是很有吸引力。尽管Tectonic目前还有一些不足,但该平台的前景依然被看好。CoreOS 正在一些具备技术挑战的行业进行深度合作,提供更好的功能与性能,比如通过使用通用API和统一配置来实现云之间的移动工作负载,并预计未来将面向Tectonic的客户提供云联合。CoreOS Tectonic 1.7版本的主要更新如下:**• 支持容器化Linux运行在最新版本的微软Azure云平台上• 将Kubernetes版本升级至1.7.1• 限制更新控制器实现对所有可用版本的选择• 集成了最新版本的普罗米修斯组件实现监控与主动警报功能• 为容器流量提供控制改进和安全性的网络策略功能的预览• 修复安装程序错误** 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言EcOS平台是Ghostcloud推出的企业级容器云PaaS/CaaS平台,平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。如今已累计超过1000家企业试用,获得上万名注册用户,累计运行容器型公有主机10万个,容器部署超50万次。 就在上月,Ghostcloud精灵云曾对外宣布旗下企业级容器云平台EcOS(Enterprise Container Operation System)已内置自研容器调度框架Newben和开源引擎Kubernetes,率先实现了“自研+开源”双容器调度引擎的融合。这就意味着EcOS是以“一个平台+两套编排系统”存在的PaaS/CaaS平台,分别命名为EcOS-Newben和EcOS-Kubernetes。而此次平台的更新主要来自EcOS-Newben平台的更新,目前已经更新到3.0版本。新版本的EcOS-Newben做了以下4点重要功能更新: ** 支持主控节点的高可用; 优化了主机terminal,新增root密码验证; 新增容器磁盘IO限速; 新增了浏览器上传镜像到仓库;** 接下来就分别看下EcOS-Newben 3.0中各项更新的详细介绍。 支持主控节点的高可用EcOS完全摒弃了单一主控节点,单一主控节点意味着平台不可以容忍系统服务出错。最新版本的EcOS全面支持主控节点的高可用。支持高可用,需要安装三个主控节点,且最多只能有一台主控节点的服务出现异常情况,例如:程序奔溃、网络中断、机器重启等。新版本的EcOS会根据当前情况判断是否需要重新选举master,来管理所有node的调度和监控。etcd,mongodb,redis都有自己的内部机制来保证服务的高可用,其他系统服务的高可用机制如图: 由server监控相同宿主机的其他关键服务,如果server出现异常或server监控的关键服务出现异常,就选举新的master。优化了主机terminal,新增root密码验证上一版本中的terminal在字体大小和间距上都不足够的人性化,我们用了大量的时间优化主机terminal的样式,使界面更加友好。 考虑到主机terminal所拥有的root权限,虽然方便了用户但也带来了安全隐患。于是在新版本的EcOS中我们新增了root密码验证,避免在用户密码丢失以后,所有主机权限被窃取。 新增容器磁盘IO限速EcOS的应用管理中,除了可以设置容器的CPU和MEM等基本信息之外,我们在本次更新中新增了容器磁盘IO设置。限制容器磁盘IO,就避免了相同宿主机上的高IO容器影响到主机和其他容器的健康运行。在创建服务时,我们可以通过向导设置磁盘IO,或者在创建应用栈时在compose yaml文件中设置磁盘IO。磁盘IO的限制单位是MB/s,设置后,主机上的所有磁盘在容器里的读写速度都有上限。 新增浏览器上传镜像到仓库在老版本的EcOS中,虽然我们可以通过dockerfile,或以提取镜像的方式添加创建镜像到EcOS中的私有仓库,但不够方便。因此,我们新增了浏览器上传到镜像仓库的功能。上传镜像到EcOS平台私有仓库后,就可以使用新上传的镜像创建服务。上传时,用户选择需要上传的镜像包,点击“确定”进行上传。上传完成后,镜像包的镜像名称显示为初始名称。由于要上传镜像到仓库就必须修改镜像名称,也就是ecos仓库的镜像名称,用户可以根据自己的要求,更改上传到仓库的具体名称。如下图所示: 结语本次版本的更新让EcOS在使用上更加贴近用户,提升了用户使用体验。同时,对主控节点的高可用支持,也意味着平台在响应高可用的时间和效率上得到了更大地提升。EcOS平台会在后续根据客户的反馈不断进行优化,目前平台的试用是完全免费的,用户可前往精灵云官网申请试用,同时可订阅邮件了解Ghostcloud Enterprise的更多信息。
前言本文着重介绍了微服务架构的某些细节,微服务其实也适用于Node.js应用程序。本文还介绍了如何利用容器和编排来实现Node.js的微服务化。 如今,大家都在谈论调度,微服务,Docker,以及Kubernetes如何改变编排领域。那么,在生产中部署Node.js应用程序意味着什么?有哪些是值得关注的? Node.js微服务化 为了理解为什么每个人都想谈论微服务,我们需要了解应用程序开发的前身——The Monolith。 单体应用如果你的应用程序是单体应用形式的,那么系统的所有代码都在一个代码库中运行,并生成一个入口。一个简单的npm start就可以启动应用程序,Monolith的核心是保持一切在一起运行。 它仍然是应用程序敏捷开发的好选择,但这样做的缺点是当你想要经常发布时,你将不得不重新部署整体,而无法通过仅更换组件来完成部署的更新。 微服务开发应用程序的另一种方法是将你的代码库分解成较小的块。每个块都是一个服务。所有这些服务将一起为最终用户提供与单块相同的功能。 启动应用程序不仅仅是简单的npm start,你需要独立启动每个服务。当你将你的整体拆分成更小的块或你的应用程序是由不同的服务组成,这就是微服务架构。 至于上行方式,微服务器允许你经常发布,并仅重新部署系统的更改部分。但还存在一个问题,就是如何编排。有效的编排可以使整个流程变得完整而高效。 非单体应用的编排问题如果你的Node.js应用程序正在使用非单体方法,将多个服务组合到单个应用程序中,则需要一种编排方式。Docker的优势就在这里凸显了!使用容器,你可以隔离每个进程(= service = npm start)并给每个进程自己的事件循环。 Node上的事件循环所有的Magic 节点都发生在Node的事件循环中。Node正在使用事件驱动的范例来执行事件循环中的所有Magic节点。 在计算机编程中,事件驱动编程是一种编程范例,程序的流程由诸如用户动作,传感器输出或来自其他程序/线程的消息等事件决定。事件驱动的编程是用于图形用户界面和其他应用程序中的主要范例,其中以执行响应输入的某些动作为中心。 一旦检测到事件,就有一个中心机制来侦听事件并调用一个回调函数。这是Node的事件循环的基本原理。 这里有一些伪代码来演示Node的事件循环如何: Node的事件循环是单线程事件循环。这可能会导致性能问题。例如,当你处于负载状态或负载大量CPU工作时,如何使我们的Node应用程序更具性能?这时候就需要微服务和容器来进行抢救了! 集中化每个服务在生产中运行微服务的第一步是集中化每个服务。以此Express.JS为例: 要在一个孤立的过程中运行它,我们需要一个Dockerfile来容纳程序: 这时容器最大的好处是你可以通过启动更多容器并在集群周围进行调度来扩展服务和Node的事件循环的方式。例如,如果你的API部分负载较重,则可以扩展该部分并更有效地利用资源。如果压力正常,你可以缩小。 解决方案正如我们之前所说的那样,将整体拆分成面向服务的体系结构的好处是,每个服务都可以有一个隔离的事件循环。因为每个Node进程都在容器中运行隔离! 当你希望在IT架构的改造中成功使用Node.js,以下四个阶段可以为你提供思路: **编码你的服务并提交更改;建立并测试你的服务;配置你的基础架构;在生产中部署,运行和维护你的服务。** 原文链接:https://dzone.com/articles/kubernetes-orchestrate-your-nodejs-microservices 推荐阅读:如何拆分你的微服务架构?你不得不知的推进DevOps实践的四大趋势为什么微软应该通过收购Docker来与Kubernetes竞争 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
现如今,构建、部署和运行应用程序的方式发生了结构性的转变。云基础设施在IT组织中引发了一场革命。企业也意识到可循环式地持续反馈机制的重要性,它建立了一个需要尽快发布软件更新的需求,并同时带来了一种协作文化,在这个文化中,每个人都是一个团队,而不仅仅是其中的一员。 这主要是得益于DevOps的发展。DevOps这个词本身来源于“开发”和“运维”,其意义是消除开发人员和运维工程师之间的障碍,让着两者之间能更好的配合。与此同时,它还把自动化作为软件交付和可衡量的主要方式。 软件领域的宏观趋势,带来了DevOps被广泛运用。我们总结了四个最主要的趋势,这四大趋势正在改变企业的开发习惯和团队行为。 趋势一:软件定义混合云 趋势二:网络规模化 趋势三:现代应用架构(微服务、功能) 趋势四:容器化 1、软件定义混合云 在过去几年中,数据中心经历了以云计算主导的大规模转型。 在DevOps之前,建立数据中心的门槛相当高。企业往往在简单的事情上都显得力不从心,比如,企业要扩展基础设施,通常需要几个月时间来获得新机器并进行机器配置的工作。更新所有机器则是一个更大的痛,因为运维团队必须手动运行修补程序和更新每台机器。 所以那时的亚马逊很容易以虚拟机的形式获得按需计算。现在几乎所有的公有云和私有云都有自身的API,允许IT部门快速变更,将SLA从几周缩短到几秒钟,用于更多任务,如机器配置和网络设置和网络化。除了云原生工具和API外,Terraform,Ansible,Chef和Puppet等多种工具也支持基础架构代码。因此,几乎整个数据中心都可以进行编码,同时在响应更新的时候都能自动配置和部署。 随着传统手动化向“代码化”转移,DevOps鼓励运维团队通过学习脚本技术自给自足,从而能自己编写脚本。 2、网络规模要求 每个企业都是一个软件组织。像亚马逊,Netflix和Uber这样的公司打破了传统的商业模式,让SaaS成为提供软件的方式。这样做的结果是,应用程序从记录系统转变为应用系统,即现在的APP应用和自助服务类网站。 由于直接与系统产生了互动,因此软件类供应商具备以下属性: l 7*24h可用 l 支持大规模的并发工作流 l 具备经济而高效的需求管理能力,通过扩大和缩小规模做到按需管理 l 系统由用户参与评判,要求质量更高 l 具备负载平衡,防火墙和安全的基础设施,避免被黑 l 频繁更新连续反馈回路,以降低风险,同时加快创新 这些特性为开发和运维团队带来了更多的工作,通过锁定步骤来进行工作对于他们而言至关重要,因为能帮助他们避免错误发布或不太完美的部署。随着发布频率的增加,软件交付过程中的任务都需要更加频繁地执行。这就使得提高效率变得很有必要,并且进一步激起了人们对DevOps的兴趣。 3、现代应用架构 向应用系统的转移迫使团队寻求创新型的方法来处理大规模集群,以便更加灵活地构建和发布软件,同时也能有效地管理COGS。这样,微服务这一应用架构就出现了。微服务架构将应用分解成可独立开发和部署的更小单元。通过将相关的单元组合成工作流来实现应用的业务逻辑。其优势便是能提高速度,灵活性,质量和可用性,以及成本效益。 微服务会影响组织的结构,因为每个解耦的微服务单元都是独立开发的。所以取代了旧的三合一模式,新的结构由独立工作的小型跨职能团队组成。 在过去,大多数应用程序由3-5层组成,这些层经常是一起部署和管理的。通过微服务的思路,相同大小的应用程序可以分为150多个微服务小单元,每个都是独立部署和管理的。理论上讲,每个团队都可以选择自己的堆栈,从编程语言到部署工具。不难想象这为运维增加了不少的额外负担。 很难想象企业在没有DevOps的情况下是如何采用微服务的,还要实现适当的自动化。要解决这些问题,微服务无疑是DevOps的又一大推动力。 4、容器化 虽然容器化思路已存在了相当长的一段时间了,但真正火起来还是得益于docker这家公司,在短短4年的时间里,容器采用从可忽略到无处不在。Docker提供了应用程序运行时与虚拟机上的主机OS之间的所需要的解耦,这让容器在云端变得更轻量化和便携。从而企业多云化,以应对应用的灾难恢复或云爆发等场景。而Docker让这些场景下的问题变得更加易于处理。 当企业探索这些新领域时,便为开发和运维团队创建了新的需求,也同时增加了软件交付工作流程的复杂性。企业拥抱DevOps和自动化, 以应对这种增加的复杂性,并在跨职能团队之间创造协同工作的可能性。 DevOps的未来如何发展? 虽然DevOps正被广泛采用,但要改变某些企业领导者根深蒂固的陈旧思维及行为是不容易的。此外,DevOps工具链目前相对还不太成熟,特别是一些针对特定任务的脚本和自动化工具。由于开始的重点是鼓励开发和运维思维方式的转变,他们现在仍需要成熟的工具,来避免手动切换和过多的自定义脚本造成的低效率。 推荐阅读: 关于实现DevOps的这四个关键因素,一起来听听他们怎么说… “精灵学院”正式开课!老司机带你领略容器编排的魅力 DevOps和云计算之间不得不说的那些事儿~ 关于Ghostcloud Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。 Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言虽然DevOps并不遵循运用在老式开发进程中很严格的工作规则,但它仍然有自己的一套规则。本文列出了实现DevOps治理的4个重要因素,遵循这4要素基本能保证在实现DevOps中远离不必要的混乱局面。 今年6月,Puppet发布的《2017年DevOps现状调查报告》中显示,27%的受访者在DevOps型团队中工作,而三年前这个数字才16%,这个数字的提升不仅代表了DevOps可以带来实际效果的共识,也印证了越来越多的组织从传统工作方式到基于DevOps的新工作流程转变,并逐渐成为一种必然的趋势。DevOps正在成为一套为人所熟知的实践方法集和文化价值观,它可以帮助任何规模的组织缩短软件发布周期,提升软件质量、安全以及快速获取产品开发反馈的能力。通过Puppet过去六年的调研反馈,证明了DevOps可以带来更高的IT服务效能,而高效能的IT组织也实现了在生产力、盈利能力和市场份额方面的增长。除了财务业绩的增长之外,对所有组织而言,无论他们的使命是什么,DevOps都能帮助他们实现自己的目标。 DevOps治理问题重重然而,对于那些曾经在工作中使用ITIL和COBIT等框架的IT组织来说,要想切换到DevOps似乎看上去很难,用某位DevOps工程师的话来说,“简直就是一团糟”。这种说法并不是没有一点道理的。Quali公司今年早些时候对2000多名IT行业高管进行了一项调查,该调查由企业管理咨询公司EMA进行数据分析,结果显示:新的应用程序环境缺乏中央治理和自动化。EMA 的混合云和基础设施管理研究总监Torsten Volk 在宣布调查结果时曾表示:“这样的问题便导致了每个开发人员都在使用他们更偏好的DevOps工具,而这些工具通常是不够完善的。”Quali的CMO Shashi Kiran在DevOps治理中也发现了类似的问题。 因此,放任开发人员去选择使用他们个人喜欢的工具和开源代码而不进行足够的监督,可能随着项目规模的扩大就会带来太多的问题和变动。 尽管DevOps避开了在老式开发进程的严格分工,但有效的DevOps仍然需要规则。组织需要具备一定程度的DevOps治理,以确保团队整个能够发挥DevOps在效率上的优势,同时避免意外问题的产生。 接下来我们就一起来看看这些管理者们对DevOps治理中的4要素都有哪些观点。自上而下和自下而上的DevOps治理管理DevOps环境跟传统的自上而下的IT管理不一样。相反地,DevOps的管理具体指的是为团队建立好参数,以便他们拥有适当的自由度来追求他们认为有效的解决方案。这意味着允许他们从目标范围内的工具群中选择使用他们更偏好的工具,也意味着让他们在组织设置的自动化中工作以确保规模扩大后形成有效的标准化工作。 标准化标准化对于DevOps的有效性而言是至关重要的,应根据每个组织的需求和目标来制定标准,所以不同组织的标准都是不一样的。 自动化自动化是确保DevOps团队时刻“在路上”并保持可视性的另一个非常关键的方式。888888888888888888888 Diego Lo Giudice曾在2016年《Use DevOps And Supply Chain Principles To Automate Application Delivery Governance》的报告中写道:传统的管理实践依赖于手动控制,因为大多数流程是手动的。自动化过程消除了易变性,降低了成本,并使剩余的手动过程更加可见。在Puppet和DevOps Research and Assessment (DORA)发布的《2017年DevOps现状报告》中也强调了自动化是DevOps成功的关键因素。该报告还指出,高绩效人员在配置管理,测试,部署和更改审批流程比其他团队拥有更多自动化,于是,他们便拥有了更多的创新时间和更快的反馈周期。然而,尽管自动化在测试、验证和发布的过程十分重要,但通过Quali的调查后发现,自动化目前仍然是成功实现DevOps的十大主要障碍之一。 文化Quali调查还显示,实现有效DevOps治理的另一个障碍是建立正确的协作文化。如果想要有效地运行DevOps,组织必须建立起协作和信任。 写在最后:针对企业的DevOps改进和实践有哪些呢? 8月9人日晚7点,将由Ghostcloud资深DevOps专家为大家讲解《针对企业的DevOps改进和实践》等课程。全新的“精灵学院”正式开课,我们只做这个夏天最具实践价值的课程,欢迎大家报名参加~ 只要你来到我们的“精灵云”微信的公众平台,就可以顺利参与报名哦,欢迎移步到那里去! 或者,欢迎微信扫码图中二维码,参与课程报名!
前言:本文将帮助您确定多云环境是否适合您的应用,并为您选择正确的云模型提供一些建议。 当你的企业在建立自己的云架构时,你需要考虑许多因素:需要什么功能?哪家供应商更可靠?私有云还是混合云?资源如何分配…… 今天,我们就来聊聊这个问题:如何管理好你的混合云? 公有云和私有云分别有着自己的优势,私有云对数据的安全性和服务质量进行最有效的把控,企业选择私有云是基于自身信息化建设的考虑,主要驱动力包括降低软硬件成本、实现应用系统快速部署、构建安全自主可控的基础架构环境等。在公有云上运行大数据工作负载比在私有云服务器上运行要便宜得多,同时公有云可以弹性伸缩,非常灵活。 因此,公有云与私有云的混合使用被越来越多的企业采纳,被称为混合云。它赋予公司对于云资源使用情况极高的控制力,合理地分配云资源,成为企业上云的必修课。 混合云的优点和缺点在很大程度上取决于你正在考虑的混合云环境的类型。因此,我们来看看三种不同类型的云配置:联合云应用,选择云应用和单云应用: 1、联合云应用这是当单个应用程序使用两个或更多云供应商提供并行功能时,给定的应用程序或其服务可以在任何或所有受支持的云供应商上运行,如下所示: 任何一个云供应商上都能运行App1或App2,如果需要,可以在它们之间进行负载平衡。每个应用程序必须设计为在多个云供应商上运行。如果一个供应商不可用,另一个供应商可以接管处理对应用程序的请求。这种方法的主要优点在于应用程序是有弹性的。如果一个云供应商遇到问题,应用程序工作负载可以轻松快速地重新路由到其他云供应商。但是,它也有缺点,例如,支持应用的每个开发和运营团队都必须了解多个云供应商的运作情况,每个应用程序都必须在多个云供应商上进行测试和维护。当应用程序被设计为跨多个云供应商工作时,应用程序往往会更加复杂,可能导致错误的增加。 2、选择云应用当你的公司与多个云供应商保持关系时,但任何给定的应用程序都完全在一个供应商上运行,如下所示: 你可以看到每个应用程序仅托管在单个云供应商上,但不同的应用程序可能托管在不同的云供应商上。在这种情况下,给定的组件仅在该单一供应商的云中运行。每个团队都可以利用其特定云供应商独特的更深入的功能。应用程序本身可以使用云供应商特定的最佳做法进行设计,构建和优化。然而,在这种架构中,公司必须与每个受支持的云供应商保持多个供应商关系和协议。而且,如果单个应用的某一部分不可用,那么该应用程序将会严重中断。 3、单云应用这是最简单的设计,其中单个云供应商用于公司内的所有云需求,如下所示: 在这种架构下,该公司将标准化在一个单一的云供应商。它允许所有开发和运营团队专注于该供应商的功能。知识可以轻松地在团队之间共享,多个团队可以利用一套最佳实践。所有应用程序都可以利用供应商的全部功能。该解决方案可能是最简单的管理和控制所有选项,但限制了开发团队的灵活性,也提高了灾难发生的风险。 那么,你应该使用哪个云模型?恐怕还是要取决于公司的实际需求。 从应用的角度来看,使用多个云供应商来运行应用程序,其成本和复杂性都远远超过对混合云的维护。 公有云和私有云各司其职,不同的云模型有着自己的优势,因此云管理平台成为了企业的宠儿。云管理平台,能够对企业的混合云和IT基础架构进行有效地管理,可将企业自有主机和公有云主机统一管理,并将企业应用所需资源按需分配在不同主机上,轻松实现应用在混合云上的实现。 Ghostcloud以最新容器技术Docker为基础,为适应不同行业客户需求,推出了企业级容器云PaaS/CaaS平台EcOS。EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业提供容器云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。 虽然中国的企业,大部分混合云仍处于早期产品阶段,但是混合云管理平台、容器技术等越来越受到关注。相信在不久的将来,新的技术将驱动企业在云计算方面有一个质的提升。
“精灵学院”是由Ghostcloud全新打造的系列线上课程,由平均拥有10年以上从业经验的资深云计算专家开设,旨在打造业内最具优质的技术实践课程。课程围绕容器编排、微服务、DevOps、分布式开发等技术内容,结合多年实战经验,与成千上万的容器技术爱好者分享学习,共促进步。 大多数公司都知道,想要在这个瞬息万变的时代提升自己的竞争力,就不得不面临企业转型的局面,DevOps和云计算是被公认的两种转型途径。这两者之间看似没什么联系,但并不排斥,DevOps涉及到的是流程和流程的改进,而云计算则是涉及技术和服务的改进。了解云计算和DevOps如何协同工作,是帮助企业实现转型的关键。 不同的企业定义DevOps的方式不同。本文的目的不是讲述哪个定义是正确的或是错误的,而是将两者都呈现出来,以便关注云计算对DevOps的好处。 DevOps的定义通常分为两个方面: 1、 开发和运维之间更友好。在使用这个定义的企业中,IT运维是单独存在的,但是对开发人员来说是非常友好的。例如,DevOps在基础设施的配备中为开发人员提供了自助目录,也为新代码的部署提供了技术支持的通道。 2、 DevOps强调独立的综合型团队。在使用这个定义的企业中,开发人员承担运维的责任,反之亦然。 另外,云计算的定义就更多了,其中最基本定义是:它是一个系统,一个允许基础设施(如虚拟机或路由器)供应的系统。这样一来,基础设施就可以被定义为代码或模板,因此,在没有云技术的情况下,创建可重复的流程是不可能的。 云技术和服务的美妙之处在于无论企业如何定义这些流程,它们都能完美补充DevOps过程。换句话说,不管那个领域的转型,云计算都能有所帮助。 一方面,云计算对DevOps有促进作用。云计算允许开发人员更好地控制组件,让等待时间更短。这种特定于应用程序的基础设施让开发人员很容易有更多的组件。通过云工具和服务来自动化构建代码、管理和配置流程,加快了研发的过程,消除了部分人为错误,建立了可重复性。另一方面,云计算有实现这一定义的能力,那便是创建用于配置基础设施的自助服务方法(使用AWS服务目录)。不用等待IT运维为他们提供资源,这些开发人员就能够迅速的进入下一阶段的工作,如此一来,新产品推向市场的速度更快,这种情况下,云计算消除了长队列,使开发人员够快速搭建开发环境。 最后DevOps作为一个单独的团队,实际上是这些方法的融合,在这些方法中,开发人员和运维人员一起使用云计算作为通用语言。通过这种方式,两个团队能够一起工作,因为每个人都同时在学习新的定义和方法。开发人员和运维人员对云计算都感到满意,因为开发经常讲解关于代码方面的操作,并且运维可以向开发传授有关基础设施和安全方面的知识。他们这样愉快的交流,从而形成强大的团队凝聚力。 结语无论如何定义,云计算对于DevOps的重要性来说都是不言而喻的。云计算推动IT转型,通过使用具和自动化技术,帮助企业缩减了工作流程,简化并嵌入DevOps流程,提高了效率,从而实现了真正意义上的变革。 当然,DevOps,作为过程改进,也还是需要一个文化的支撑,云计算在这里就可以发挥作用。云计算对新流程进行编码和自动化有很大的帮助。比如,如果有一种新的方式,开发人员装配所需要的组件来交付服务(代码、配置、库、管道定义等等),先进的自动化工具就可以简化这一过程,让这一过程更加清晰并且可重复。 而针对企业的DevOps改进和实践有哪些呢?8月9人日晚7点,将由Ghostcloud资深DevOps专家为大家讲解《针对企业的DevOps改进和实践》等课程。全新的“精灵学院”正式开课,我们只做这个夏天最具实践价值的课程,欢迎大家报名参加~ 原文链接https://www.forbes.com/sites/forbestechcouncil/2017/07/21/the-relationship-between-the-cloud-and-devops/#75c2b2222957 推荐阅读如何拆分你的微服务架构?容器服务在公有云上的发展与思考史上最完整版DevOps介绍 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言距离SQL Server 2016发布的一年多以后,微软在本周推出了Microsoft SQL Server 2017的第一个发行版本。新版本对主要的新功能进行了一些较小的更新,其中最重要的新功能是支持适用于Linux系统(RHEL、SUSE Enterprise Linux和Ubuntu)以及运行在Windows、Linux和MacOS上的容器,其中包括在可用性组群中实现高可用,并集成本地Linux集群工具(如Pacemaker)。 RC1使用域凭证和TLS(Transportation Layer Security)加密方案(1.0,1.1或1.2),将客户端应用程序发送的数据加密到SQL Server,并在Windows或Linux客户端新增支持Microsoft AD身份验证系统,实现了在Linux上对SQL Server的访问。而机器学习也是本次更新的一个重点。SQL Server 2017可以使用R或Python运行数据库内分析,而不需要提取和转换数据来处理数据。 RC1对R与Python具有高度可扩展性为了在SQL Server 2017中增加对R AI和机器学习工作负载的支持,微软内部构建了一个可扩展性模型。该模型实现了在R环境和SQL之间进行快速数据交换时,可以使用SQL server执行R的运行,这意味着你可以执行R脚本作为代码的一部分,并通过扩展性可以使得启用Python的其他工作变少。R与Python可以在这个可拓展模型中同时启用不仅证明了它的灵活性,对微软来说,这也意味着他们摆脱了R与Python这两者之间的霸权争议。不仅如此,RC1还为Windows Server上的R添加了本机计分和外部库管理服务。 SQL Server 2017支持自适应查询处理功能SQL Server 2017是微软在Azure中首先构建起功能,然后将其带入内部的服务器产品的一个很好的示例。除了与Azure SQL数据库相同的图形数据功能外,SQL Server 2017还可以为Azure数据库性能的改进开发了自适应查询处理功能,并通过监视以前运行的好坏来优化查询的运行方式。这有助于提升我们在执行并行查询和并发查询时对资源的使用效率,优化器可以根据正在进行的执行统计调整其行为,而不是仅仅是想预测会发生什么。因此,用户将能够运行更大的查询和更多的并发查询。 最初,查询处理有三种处理模式,其中两种是批处理模式,一种用于交错执行。如今新版本的SQL Server具有自适应优化的基础设施,未来的版本将可能扩展到整个数据库引擎。 SQL Server 2017 已“生产就绪”RC1已接近最终版本,现处于发现严重bug的阶段。据悉,微软已经开始“Early Adoption Program”,找到几个客户来帮助测试新版本,且可以在生产中使用并在功能上能获得微软的支持。 当初,一家叫dv01的财务分析公司研发过一款基于Python、Amazon RDS PostgreSQL和Redshift数据仓库的SaaS应用工具,并用于债券、贷款相关方面的报告和分析。他们遇到了一些性能和规模上的问题,一些查询的时间超过了30秒的超时限制,导致了工程师花更多的时间来调整数据库查询。后来,他们转移到了SQL Server 2016,性能和数据库分析都有了比较好的改善:查询时间下降到1-2秒,且数据存储量减少了2到3倍,还对内存和磁盘上的数据进行了加密。随着其他系统在Linux上运行,以及大多数工程师都使用Mac,他们又经过几个月的测试,最终将40个生产数据库迁移到SQL Server 2017 CTP2并运行在Docker里。 以上便是微软将SQL Server引入到Linux的一种应用场景,除此之外,由于许多容器和私有云技术都建立在Linux基础设施上,微软也想要在公有云或者私有云市场,将SQL Server发展成现代IT生态系统的一部分。所以,在本次新的更新中,SQL Server毫不犹豫对Docker进行了支持,用户不仅可以在Docker中运行SQL Server,也可以使用SQL Server并将其部署在由Kubernetes管理的容器服务当中。“对于生产使用,我们认为客户可以在Docker容器中使用SQL Server的Linux映像,但需要谨慎使用。”据项目经理 Tony Petrossian透露,由于容器化SQL Server的Windows支持在RC1中还不是很深入,加上容器中运行的工作负载很多,所以并不建议人们使用他们的500TB数据库并使用容器,在Windows端,仍然建议将其用于开发测试而不是生产。即使是传统的Windows Server客户,容器支持也同样受益。随着IT技术的发展,同行业的开发者们对更利于自己工作的方法和技术都会很感兴趣,比如容器和SQL Server。既然这种技术能在Linux上操作,那么为什么不能同样操作于Windows呢?如果将容器与虚拟化的早期阶段进行了比较,会发现早前大家都觉得没人会因为性能等原因而选择在虚机中运行数据库,但随着时间推移,这种想法被证明是错误的,由始至终大家都选择了在数据库中运行虚机。容器的发展也是类似的,大家对容器存在很多疑问,包括性能如何、容器如何存储等等,但所有的这些问题都已经被解决或处于改进过程中。所有我认为容器将会和虚拟机一样有一个类似的发展途径,且发展更快。如今,随着这个新版本的发布,SQL Server日后将不再脱离IT基础架构的转变。 原文地址:https://thenewstack.io/sql-server-2017-brings-microsofts-database-linux-container-worlds/ 推荐阅读:如何拆分你的微服务架构?透过云计算、工业大数据对智能制造的一点思考Kubernetes1.7正式发布,优化了可扩展性,安全增强和网络通信策略 译者简介: Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
如今,市场环境纷繁复杂,瞬息万变,现代企业为了更好地生存,需要有极强的适应能力。快速而轻松地迎接改变,成为了一个优质企业的特征之一,同时企业还要求技术团队构建更科学的架构,搭建成本更低的平台,这就使得这些团队越来越倾向于使用微服务架构来应对以上要求。 微服务的做法有利于软件组件和数据的分散化,将一个整体分解成更小、更容易改变的部分,分散仅帮助团队加快工程进度,而不会牺牲系统的安全性。要想让这种架构工作得很好,需要改变工作方式。 微服务架构的设计,其实是为了使团队能够在执行工作的人之间分配决策权力,向更多成员直接推行决策权,允许他们以更自由的方式生产。微服务架构使用正确的话,将产生更好和更快的变化。但是如果你的架构错误,那么一系列坏的决定可能会降低转化率,甚至会损害你的业务。 我们讲决策权分配,即是说微服务架构的拆分实际上就是在寻求正确的权力下放战略。这是一个进化过程,需要不断地进行分析和调整。而如何正确的拆分微服务架构,我认为可以重点从以下三个方面考虑: 1、我们应该做哪些决定? 设计微服务系统不仅仅是改变组件大小,架构中涉及创建和更改服务的所有领域都有一定的作用。在这里总结了以下九个方面,作为拆分微服务架构时所做决定的参考: • 生命周期: 什么时候创建或停止服务?我们什么时候需要将它们分开?• 服务实现:我们应该在每个服务中使用哪些工具、语言和架构?• 系统架构: 服务如何引导他人?开发人员如何了解?• 数据架构:服务之间如何共享数据?• 变更过程: 什么时候可以改变服务?部署和QA的工具和过程?• 团队管理:谁在哪个团队服务?每个团队负责什么?团队成员做了什么?• 人事管理:人员如何被雇用和解雇?员工如何激励和奖励?• 安全管理:我们如何降低安全事故的风险?需要做些什么来改善整个系统的安全性?• 采购过程:可以购买什么软件?使用开源软件需要哪些保护? 2、涉及到哪些人? 不得不承认,一个员工做出的一些决定对他们的公司来说可能是非常有影响力的。一个很典型的现象是,公司试图对内部的决策者增加控制,以便将风险降至最低,从而导致决策权集中化。例如,在过去的几年中,苹果以拥有一个高度集中的设计团队而闻名,少数的人做出产品设计的大部分决策。 集中发生是因为正确的人需要做出最重要的决定。通常,“正确的人”是具有天赋,专业知识和经验的组合,使我们能够相信他们做出最好的决定,我们可以称这些人为我们的“明星决策者”。但实际上,公司的“明星决策者”数量有限,大多数团队只有几颗“明星”。 微服务改变了这种少数人行使决策权的现象,同时更容易应对错误的决策。如果一个团队在微服务工作时作出错误的决定,其错误的波及范围会很小,容错率变高。当系统的更改变得便宜和容易时,团队可以快速改进先前的决策,使他们能够更快地获得最佳决策。 3、谁拥有哪一部分?决策基于选择,而选择又基于领域知识。决策不应该立即执行,它需要一个过程,需要高度专业的技能或知识来实现。 管理专家亨利•明茨伯格(Henry Mintzberg)为我们提供了一个很好的模式,其中概述了决策过程的步骤: 研究与信息采集 生成选择 做出选择 授权的选择 执行和实施 所有这一切的关键,是在采用决策分权化时,不需要绝对。每个步骤都可以独立集中或分散化,在平衡效率和安全性时,可以获得更大的灵活性。如今,集中选择与非集中选择相结合,也是现在很多大公司常见的模式。 当人们谈论微服务架构时,权力下放过程的选择、授权和执行部分相互协作、快速、规模化地移动,这些都降低了变化来临时对整体系统产生的负面影响。它是提高变革速度的有效途径,但不要忘记,你的成员特点、团队协调,以及所有的系统、工具和工作环境同样重要。 你必须了解如何做出决策,如何改进流程,这才是迎接变化的好方法。 原文链接:https://thenewstack.io/decentralizing-microservices-organization/ 推荐阅读:在这个“云”先行的时代,企业如何系统管理云服务商完美融合Kubernetes,Ghostcloud企业级容器云平台EcOS率先实现双容器调度据说一个成功的研发团队应具备这9大属性 作者简介:罗尼•米特拉:API学院设计总监,他是作者,主持人和设计师,特别关注软件和人员沟通的方式,出版了《Microservice Architecture》一书。 译者简介:Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言2017中国大数据应用大会于7月13-14日在成都召开,会上大咖云集,干货良多,Ghostcloud也有幸参与了此次大会。Ghostcloud致力于做最专业的容器云PaaS管理平台和提供最佳行业解决方案,而这次大会围绕“大数据、大智能、大健康”的主题内容也引发了我们对大数据和智能制造相关行业的思考,在此与各位同仁分享,不吝赐教。 智能制造的发展历史和趋势智能制造的概念来源于人工智能的研究,并在全球范围内不断实验和创新。20世纪90年代初,美国就开始了新技术的执行政策,其关键技术包括信息技术和新的制造工艺,日本和欧盟也随后启动了相关的先进制造合作研究项目和核心制造技术的研究项目。我国的智能制造进程也在紧跟国际步伐,尤其是以2014年底“中国制造2025”这一概念被首次提出之后发展最为突出,国务院在2015年5月正式印发的《中国制造2025》中明确指出:到2025年,深入推进工业云应用试点示范工作,基本建立智能制造支撑体系,推动重点产业初步实现智能转型。 图为李杰教授的演讲现场 智能制造的价值在于实现整个制造业价值链的智能化和创新,是信息化与工业化深度融合的进一步提升,其融合了四大重点技术,分别是信息技术、先进制造技术、自动化技术和人工智能技术。我们可以这么来理解,智能制造最终要打造的已经不再仅仅是智能产品那么简单,而是贯穿整个制造生产线并最终着眼于智能管理和智能决策。 工业大数据的核心技术是数据技术、平台技术和工艺技术的集合当我们思考云计算、大数据对智能制造的影响,便不得不提到工业大数据。李杰教授花了15年时间撰写《工业大数据》,书中提到无论是德国工业4.0、美国工业互联网还是《中国制造2025》,各国制造业创新战略的实施基础都是工业大数据的搜集和特征分析,及以此为未来制造系统搭建的无忧环境。工业大数据的核心技术包含了三大类,第一类是数据技术(Data Technology)。顾名思义,每个国家的各领域的数据来源不尽相同,数据的价值也不一样。据说美国一节高铁车厢的数据价值高达1000美元,如果按照1000节车厢的高铁数据库计算,仅数据的购买就会花去近100万美元的高昂费用。所以在美国工业数据很昂贵,而如何提高数据技术精确地摒弃无用的坏数据是最关键的技术前提。第二类核心技术是平台技术(Platform Technology)。蓬勃发展的云计算包含其中,数据技术是前提,但数据本需要一个可靠的支撑平台,支撑着数据方面的五层次功能需求,包括网络化、数据到信息化内容转变、虚拟网络化内容管理、对问题的识别及决策以及装备的重组。行业的转型和高速发展,意味着各项指标的效率提升,我们讲云计算平台,分为三个层面,即大家所熟知的SaaS、PaaS和IaaS。每个平台所承载的业务需求和价值是不同的,大体如图所示: 云计算平台和相关平台业务需求示意图第三类核心技术是数据的分析软件和使用工艺(Analytics Technology),这类技术的核心是数据的应用工艺,涉及机器学习和智能化,对应智能制造便体现在智能管理和决策。机器学习与智能数据分析的常用方法这里不再赘述。 大数据助力智能制造,传统企业在路上在本次大会上,我们看到了以四川长虹为代表的传统制造企业正走在智能制造的路上。 图为长虹软件与服务中心总经理刘东的演讲现场四川长虹集团是Ghostcloud精灵云的重要合作伙伴,历经几十年的发展,长虹已发展为涵盖多媒体、数字营销等综合家电产业,以及金融产业、智能产业等新兴产业在内的综合性集团。长虹于2016年春节发布会上对外发布了长虹物联运营支撑平台UP,正式开启了从商业智能到消费者智能的智能制造之旅。而承载用户、设备、商品、订单、营销等20余项应用能力的PaaS平台中心正是基于Hadoop、Docker、Kubernetes等新兴云计算技术相结合而成。未来,对长虹而言将围绕UP平台打造一个智能化家庭,将涵盖智能教育、智能能源管理、智能多媒体管理、智能健康管理、智能厨卫管理等产品,并以硬件+软件+内容+服务的生态产品形式呈现给消费者。而UP平台也会服务于来自智能终端、电商零售、售后服务以及长虹会员的大量数据,并最终形成智能化推荐系统、智能分析系统以及智能对话系统等智能化产品。 图为EcOS的应用架构Hadoop是由Apache开发的分布式系统基础架构,为海量数据提供了计算。Docker是开源的应用容器引擎技术,可实现容器内应用打包和可移植性,而不受Linux或者虚拟化系统的限制。Ghostcloud精灵云是国内第一批从事容器虚拟化研发的企业,也是西南区唯一一家基于Docker的云计算服务提供商,其自主研发的企业级容器云PaaS/CaaS平台EcOS,为长虹UP平台的实现提供了最可靠的技术支撑。目前,EcOS平台内置自研容器调度引擎框架Newben,并全方位适配Kubernetes,率先实现了双调度引擎的融合,可满大多数企业的需求。 结语以Ghostcloud精灵云为代表的新兴云计算企业,具备新计算技术的研发和传播能力,也正处于智能制造的大环境之下,在传统企业IT技术改革的进程中正扮演着越来越重要的角色。我们期待将自身丰富的落地实施经验应用至更多的正迈向智能制造的企业,与行业共同努力,为下一代制造业做出更多贡献,并最终实现对落后制造现状的改变。 参考资料:http://www.gkzhan.com/news/Detail/85748.html《工业大数据》,李杰著 关于“2017中国大数据应用大会”“2017中国大数据应用大会”由中国大数据专家委员会、中国电子信息产业集团有限公司、成都市人民政府、联合国教科文组织世界工程组织联合会(WFEO)、中国电子学会共同主办,四川省经济和信息化委员会、成都市经济和信息化委员会、成都市博览局大力支持,于2017年7月13日-14日在成都世纪城国际会议中心举行。本届大会以“大数据、大智能”为主题,将邀请全球知名大数据、云计算、人工智能等领域主管领导、专家学者、产业领袖、应用主管,以及各行业广大用户共聚成都,共同探讨和推动大数据、云计算与智能技术的深入融合,共同探讨和分享大数据技术应用的实践价值。 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言在购买软件和服务的时候,企业似乎从来就没有更多的选择。随着云平台提供的服务范围越来越广泛,企业发现要集合式地管理不同服务商变得越来越困难。 据Gartner的分析师透露,技术服务商面临的挑战,来自云端市场的管理和数字化业务服务商的扩散,这二者将威胁到服务商绩效的一致性,同时会增加相应的风险。于是,Gartner提出了有效地管理服务供应商的六个关键步骤。 三种典型的服务商管理方法一些企业的管理者倾向于直接购买软件和服务,这是有风险的行为,为什么这么说? 据Gartner分析认为,企业如果想在快速变化的大环境下保持竞争力,会越来越需要新兴服务商的帮助。企业开始以不同的方式寻求云服务,关注的是数字化商业的同时,开始关注产品和服务的不同方式。技术也正在适应企业的变化。因此企业就有必要直面管理一系列服务商带来的挑战。什么是新兴服务商?新兴服务商是一个新的定义,它们为企业带来了很多创新。但是,如何成功管理这些新兴的服务商,以及他们如何与大型企业合作的传统服务商一起协同工作,这是一个需要解决的问题。 首先,Gartner对服务商分了四大类,从广义上看包含如下四种:战术服务商:提供持续支持或服务的服务商,针对这一类服务商,企业希望他能提供可靠的连续性服务。传统服务商:企业长期依赖的服务商,但是企业会打算在不久的将来过渡。 战略服务商:与项目广泛的企业紧密合作,来实现关键业务目标的服务商。 新兴服务商:规模较小的云计算公司,随着时间的推移,这些厂商可能会成为战略或战术服务商。 管理这些不同的供应商需要采用不同的方法,尽管企业之间采取的策略往往大相径庭。 SaaS解决方案供应商交付链 这里提供三种典型的服务商管理方法。第一,集中化管理,其中包括合同,绩效,财务,风险和关系管理在内的一切,由服务管理和采购专业人员集中处理的。这保证了控制和一致性,但难免有些不灵活。第二,分散化管理,服务商管理通常由单个业务部门和IT部门负责处理,这样做的好处是当问题产生时可以更敏捷的反应,却可以有更宽松和更不一致的控制第三,混合式管理,服务商管理功能分布在整个企业中,根据他们最适合的地方。在这种情况下,某些功能(如合同管理)可以集中处理,而其他功能(如性能管理)由个别部门或IT部门执行。如今,由于需要一种适合处理云服务商快速变化的生态系统的模式,越来越多的企业开始转向这种混合式管理。 IT服务商管理的成熟度框架 控制成本是服务商管理的关键, “下一代”管理战略服务商的方法是加强实现更多的业务目标。当然,公司不应该过于依赖服务商,把所有的风险和成本都推给他们,如果客户的成本与公司的声誉相比,如果面对客户的服务下降的话,那节约的成本显得微不足道。 很多错误的服务商管理方式正在挤压服务商,企业让他们承担了所有的风险,这样一来,客户就会以不按合同办事而扣除一部分费用,他们赚的钱少了,就意味着会偷工减料,从而来保证自己的利润,一旦开始,后期的问题便向滚雪球一样,越来越大。最好的关系就是,理解供应商确实需要盈利,这样他们就能在你需要他的时候更加负责一点。 管理服务商的前提是认清自己 服务商管理中最大的一个教训是:企业要先将自己的公司管理的井然有序,并在选服务应商或决定管理计划之前充分了解企业的运作方式及目标。 而企业只需要在“他们如何提供服务、业务支持以及技术服务”上对服务商进行把控。只有这样,企业方才会明白对外部IT服务的许可协议包含了怎样的限制内容。 做到这个前提之后,企业还应该明白过于严格的规定技术可能是个错误,与服务提供商签订严格的合同可能会将公司与过时技术相提并论。 举个例子,数据库技术变化是快速的,像微软,Oracle等每年都会发布新产品,如果你买了个三年的软件许可证,微软将会为你安装下一个版本的数据库软件SQL Server。但如果你的服务合同在过去一直被非常严格地定义为不会是绿色版的,而变为支持合同签订当天的技术,这必然会导致企业的落伍。 有效管理服务商的六个步骤 首先,用方法来管理供应商是很重要。 理想情况下,服务提供商的合同有更多细节和规定,那么服务提供商的合同应该定期来更新。建议合同进行 “周期性每年审查”,“企业的战略和运营要求是否在变化”,以及这些变化如何满足等来调整合同。 随着软件和IaaS的数量持续增长,面向用户的应用和服务需要更快地建立,企业需要更灵活地管理这些合作伙伴,并认清敏捷性和结果往往比成本更为重要。意味着要快速获得最小价值的产品,让客户快速迭代改进它并解决问题,这只能通过投标来做到。如果其他公司发展的很快,你没有紧随其步,那么你将很快被遗忘。 因此,Gartner提供了一套有效管理服务商的技巧: 创立中央管理委员会,由有权与供应商签订合同的高管组成,委员会可以建立管理策略和流程,以及修改服务商的标准。 确定服务商管理的目标,以及实现这些目标的活动,和监督者。与此同时,企业应制定政策和规范来指导这些活动的开展,并制定风险和绩效管理等办法。 与服务商建立风险评估、评测机制,开工流程,风险监控,问题和升级管理,合同和绩效管理等相关的内容和流程。 选择使用集中式,分散式或混合方式来处理服务商管理。 需要定义的领域包括业务和技术需求,谁有权指导服务商的工作,以及哪些服务商将从事哪些工作。企业还应该建立一个收费的流程,将成本分配给每个服务的业务单位,以及监视、分析和预测供应商交付服务的监视、分析和预测平台。 服务商管理的常见风险源于治理角色和策略定义的不明确,以及缺乏高级管理层的支持。更紧密地将供应商管理计划的目标与业务任务声明进行更紧密的一致来实现,而治理应该与更大多数的企业方法相一致。同时,每个支持领域的代表 ,比如人力资源,法律,财务,风险,安全都应该被给予服务商管理政策的投入。 推荐阅读 【重磅】完美融合Kubernetes,企业级容器云平台EcOS率先实现双容器调度【行业】容器服务在公有云上的发展与思考据说一个成功的研发团队应具备这9大属性 原文链接:http://www.zdnet.com/article/how-to-manage-vendors-in-a-cloud-first-world/ 关于译者Ghostcloud Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
前言 在刚结束的伦敦DevOps企业峰会上,迪士尼公司的系统工程总监Jason Cox分享了公司背后的组织架构以及迪士尼公司的DevOps转型之路。 DevOps企业峰会:娱乐大厂迪士尼的DevOps转型之路 作为一家拥有94年历史的娱乐大厂,迪士尼公司一直都将技术作为推动其娱乐产业发展的关键,但作为一家公众眼中的大型企业,公司内部如何能协作共进才是影响其规模扩张的重要因素。 挑战 如今,迪士尼公司在全球已拥有20万名员工,庞大的员工规模给公司带来了几乎无法克服的技术问题,想要协同增长必然会面临三大挑战: 挑战一:规模扩张 当数十台服务器突然间变成数以千计的服务器,这种数字化业务的扩张为开发团队带去了更多“救火”工作。 挑战二:响应速度 如今迪士尼的业务扩张势必带来用户的高效反馈需求,但被繁重的工作流程阻碍了开发团队,导致团队无法跟上业务需求。 挑战三:稳定性 服务器的稳定性问题根深蒂固,研发团队迫切需要弄清楚如何使系统配置自动化并受到良好控制。 问题 如何应对规模扩张、响应速度和稳定性带来的这三大挑战,对迪士尼公司来讲是一个需要认真反思的过程。体量和规模的庞大导致公司内部的流程和制度冗杂,这种对IT的阻碍需要从根本上思考应对之策。 DevOps企业峰会:娱乐大厂迪士尼的DevOps转型之路 首当其冲的阻碍便来自迪士尼公司的组织结构。迪士尼公司的架构中,动画工作室,消费者产品和互动,公园和支持以及媒体网络这四个不同的大型部门在技术上是相互独立的,甚至连它们的CTO都是相互独立。因而在迪士尼公司里,每个业务部门都有CTO,每个部门的自动化程度都不同。 对迪士尼公司来说,快速增长其实意味着跨公司的变化,这些不同的部门必须找到一种在文化和技术上相互交流的方式。所以他们开始了DevOps转型。 DevOps DevOps 是开发和运营的结合,通常指企业规模下的敏捷软件开发。通常在以技术驱动型的大型企业实施DevOps模式是以改善这两个业务部门之间的沟通和协作为最终目标。 DevOps企业峰会:娱乐大厂迪士尼的DevOps转型之路 迪士尼公司便是如此。对迪士尼来说,采取DevOps的原则并将其应用于业务的各个部分,这不仅仅是一个技术变革,而是一个文化的变化。 举个例子,迪士尼的“玩具总动员”疯狂游戏屋很吸引消费者,光这个项目就使用了上百台服务器,过去员工每晚都要在闭园后花8个小时的时间手动更新每个服务器,现在只需要一个人便可以在30分钟内更新完整个舰队。 而另一方面,对运营来说,开发的同事开始更多地了解运营情况,以及如何与公司其他部门合作,这便使得他们能够持续提供服务。 DevOps企业峰会:娱乐大厂迪士尼的DevOps转型之路 再看另一个例子。迪士尼公司仅仅在美国就有220家迪斯尼商店,每个商店都有很多个销售设备。最终,迪士尼通过对销售点的配置管理和汇集,保证了每个店铺、每个员工都能够对图像验证保持一致性和精准识别。 DevOps并不仅仅只是简化了某些当前的操作,它还帮助了迪士尼的IT人员为未来的系统做好准备。比如,迪士尼星球大战公园的新功能即将开放,工程师们现在每天在实验室环境中进行多次构建和测试引擎。 DevOps还帮助迪士尼公司上云,包括ABC云端托管和迪斯尼电影的APP。在使用了公有云和容器之后,他们可以减少一半的成本同时还能获得更多的电影。 DevOps转型之路 如何引导DevOps的转变是如今每个企业都在考虑的问题,而对迪士尼公司来说,之所以能成功开展DevOps并带来今天的变化,有三个关键点: 1.合作 合作意味着必须打破孤岛,给团队形成一个共同的目标。 2.好奇心 如果你有一个新的想法,需要不断试验它,别放弃对想法的好奇与思考。 3.勇气 永远赤城,敢于挑战,不怕失败,即使失败也不要责怪。 不仅如此,对企业的领导者来讲,实施DevOps还需要应对领导力挑战,比如指挥与控制的策略,新的领导层如何引导新方向,以及意见相左者之间的偏见等。 因此,对迪士尼而言,只要把注意力集中在企业范围内,且未来的技术比现在的技术更好,然后建立起社区,那么科技必将继续推动企业的成功。
前言给大家报道一个最新重磅消息:最新版Ghostcloud企业级容器云平台EcOS(Enterprise Container Operation System)已完美支持容器市场最主流的调度引擎Kubernetes,并于今日正式上线啦!内置自研容器调度框架Newben和开源引擎Kubernetes,意味着EcOS平台率先实现了双容器调度引擎的融合。(新平台EcOS-Kubernetes现已开放试用申请,请至文末扫码申请。)EcOS平台是Ghostcloud推出的企业级容器云PaaS/CaaS平台,平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。如今已累计超过500家企业试用,获得上万名用户,累计运行容器型公有主机10万个,部署超50万次。 全新的EcOS-Kubernetes平台实现了对容器进行集群化跨主机的调度,以插件管理的方式来灵活控制相应功能,引入租户概念加强了对权限的控制,定制化安全云防线解决了Docker的安全风险。在全新版本中,Ghostcloud进行了技术上的创新,也成就了产品的创新 **本次EcOS-Kubernetes平台更新上线了如下主要功能点: 支持Kubernetes内核深度定制 支持Kubernetes和Docker的一键式部署 全新的插件式系统,实现功能模块的自由扩展 支持应用的模块化管理和应用自动构建 支持动态伸缩和高可用 支持可视化日志系统 具备实时监控告警系统,并支持可视化 新增多租户和用户计费功能 支持负载均衡 定制化安全方案,支持网络导流、多子网隔离、网络审计/防火墙和安全组等**接下来我们具体看下每一个功能点的详细情况。 Kubernetes内核深度定制基于Kubernetes内核深度定制,EcOS-Kubernetes平台集群包括了MASTER、ETCD、NODE三个角色。 MASTER角色:作为集群的主控节点,运行集群中三个程序的集合,分别为:1) kube-apiserver: 配置包含pod,service,replication controllers和其他api的数据,创建一个服务就会有对应的pod产生;2) kube-controller-manager: 提供一系列的控制器来结合apiserver来检测集群共享状态;3) kube-scheduler: 保证集群稳定性。 ETCD角色:充当着一个类似数据库的角色,里面存储了整个集群最重要的信息; NODE角色:主要运行了kubelet(与集群中的master进行通信),kube-proxy(反映每个节点上的Kubernetes服务的网络代理) Kubernetes和Docker的一键式部署Kubernetes和Docker的部署在日常工作环境的部署异常麻烦, 如果集群规模过大, 部署时间会变得漫长而不可控。,并且在出了问题之后需要大量的时间来调试。 EcOS-Kubernetes平台只需要输入简单的2-3个参数,即可实现无人值守的一键式安装。 即便是数千节点的安装, 也能保证高效有序的轻松进行。 插件式系统管理在一个系统中,当某一个功能出现问题的时候,整个功能都糅合到一起不易修改也不易去测试,EcOS-Kubernetes采用插件方式来管理应用,就能很好的解决这个问题。EcOS-Kubernetes平台提供了一套全新的插件系统来实现功能模块的自由扩展, 简单的插件激活和添加可以让用户轻松管理自己的云平台,甚至可以自定义自己的插件, 来实现功能的定制。哪个功能出问题就去找相关的插件去修改测试,也可以结合权限控制来配置不同用户使用相关插件的功能。 应用的模块化管理和应用自动构建传统服务平台的微服务化的迁移所需要的时间是漫长而困难的, 中间充满了各种未知的问题。对比传统的容器管理平台, EcOS-Kubernetes对于系统之外的应用,例如:MySQL, REDIS等采用模板化管理应用。EcOS-Kubernetes支持超多主流服务, 实现简单而快速的部署和一键式服务搭建和实施,包括Spring Cloud, MySQL, Elastisearch, RabbitMQ等等复杂集群环境,这些在Ghostcloud的应用市场中直接就可以部署。你所需要的只是配置一些简单的参数,即可自动构建起来应用,并且生成支持导出的yaml文件。 动态伸缩/高可用/负载均衡动态伸缩:在阈值达到设定的百分比之后,系统会自动增加pod的数量来均衡我们服务的压力,当阈值降低之后会删除掉相应的pod来达到业务量突然增多之后服务的正常运行,如下图所示,: 在此,我配置最小副本为1,最大为3,阈值是80%,确定之后即配置成功,这时在后台进行加压操作,后台查看pod数量就可直观的看到pod的增减情况。 高可用:一个node上运行着企业业务应用并存储着相关数据,当这台主机因为人为事故、不可抗因素等突然down机以后,此节点上的数据会自动迁移到另一个节点上,保证数据不会丢失。 在node上尝试删除副本前后对比,可以看到,node4被删除成功,并且node3上面多了存在node4上面的6个副本。 负载均衡:通过Kubernetes自身的负载均衡模块, EcOS-Kubernetes可以实现对大型服务的负载均衡。简单配置几个参数之后,EcOS-Kubernetes能够帮助用户在很短的时间内, 拥有和阿里、 AWS、微软等一线厂商一样的高负载伸缩能力。 安全云防线/多租户/用户计费EcOS-Kubernetes首次引入了多租户和用户计费功能,方便用户管理,与此同时,平台还提供了定制化安全方案,原生支持诸如网络导流、多子网隔离、网络审计/防火墙和安全组等等专业的安全模块,从根本上解决了Docker平台本身的一些安全风险。多租户:多租户对金融行业和IDC最为重要,一方面实现了为不同用户所使用的资源进行逻辑性隔离与划分,另一方面实现了对用户按所使用的资源进行跟踪。 在此界面可以添加、编辑、删除一个租户,并且在一个用户加入到多个租户的管理员时,可以随时切换工作空间: 计费功能:EcOS-Kubernetes平台上对于计费的项目大致为CPU,MEMORY,本地磁盘,网络磁盘等,不同的项目计费规则也不同,都是可调整的,以下是计费功能的大致情况: 可视化日志管理系统和实时监控告警系统日志是很重要的一个代码回溯凭证,同时也是安全审计实现的核心手段。在使用任何服务的时候,中间出了异常,如果没有日志我们想要追溯错误根源简直无法下手。EcOS-Kubernetes平台使用ELK(ElasticSearch,LogStash,Kibana)服务来收集日志,并有可视化的界面可以查看。ELK(ElasticSearch+LogStash+Kibana)是目前流行的一体化日志方案,提供日志收集、处理、存储、搜索、展示等全方位功能。其中LogStash Client可一直监视制定文件,将其中更新的内容发给LogStash Server ,然后通过LogStash输出,所以运行一个LogStash容器就可以监控用户所有的想监控的容器应用。 监控,实质是监测主机上CPU, Memory,FileSystem的使用情况,想要获取资源使用情况,在主机上直接ps命令查看只能得到大概的使用情况,且只能是查看,若是资源使用将满的时候是无法得知的。在此前提下,EcOS-Kubernetes平台集成了实时监控服务,可以检测集群节点主机的资源使用情况,并有非常直观明了的可视化界面。在EcOS-Kubernetes上做好相关配置后,当监控到问题时便可及时通知到相关的人员。 结语本次EcOS平台全面支持Kubernetes,也预示着精灵云已成为国内率先实现双调度引擎融合的企业,不仅如此,Ghostcloud的EcOS平台已在生产环境在线连续运行超过20000小时,具有相当高的稳定性,而本次安全云防线的上线,也象征着精灵云的容器云平台具备高水平的安全性能,为金融、军工、医疗、教育、互联网等全领域的落地实施打下了非常坚实的基础! 如何试用EcOS-Kubernetes平台如今,EcOS-Kubernetes平台的公测版本已上线,并接受免费试用申请,扫描下方二维码进行企业真实信息验证方可参与试用。
Kubernetes 1.7已经发布本文Ghostcloud将为大家深度分析新版本的可扩展性和安全性以及一系列新特性。 Kubernetes 1.7包括了4个稳定特性7个公测版和19个内测版有来自谷歌、CoreOS、Mirantis、Red Hat、微软等公司的370余人参与了这个新版本的发布。 一般情况下内测版本中的特性不会被默认开启它们不会被官方社区认为是“生产就绪”了的产品功能但用户可以选择使用它们。公测版的功能则是经过大量用户测试的默认开启在后面的版本中它们可能会有改变。 4个稳定的特性意味着这部分产品内容已经被证明准备就绪禁得住考验并将在许多后续版本中沿用 1、用于限制容器网络流量的网络策略API2、用于负载平衡器的源IP处理3、StorageOS卷插件4、云存储指标 改进的可扩展性旨在扩大Kubernetes的范围和功能不会使核心项目扩大包括以下内容 自定义资源定义1.7版本中CRDs处于测试阶段第三方资源正在迁移到一个新的API组自定义资源定义将支持扩展机制而第三方资源将被完全弃用。CRDs将允许Kubernetes API的扩展为用户提供核心的Kubernetes组件功能。可扩展外部访问控制此内测功能使管理员和集成商可以定义自己的可扩展策略和安全检查以便将内容加入他们的Kubernetes集群中。API聚合在公测版中它允许社区成员编写自己的API服务器。可以在单独的聚合服务器中开发和测试新的API安全增强功能包括节点授权插件以限制kubelet访问和客户端/服务器传输层安全TLS证书转换。 新版本的kubernetes在安全增强上增加了以下功能网络策略API该通信网络通过网络插件实现允许用户设置和制定执行规则管理哪些pod可以相互通信。加密隐私此内测功能允许存储在etcd密钥值存储中的敏感数据在数据存储层进行加密。这不仅仅是加密磁盘上的数据允许API服务器在将数据传递给etcd之前对数据加密。限制节点访问API这个新的授权模式和许可插件旨在将节点对敏感信息的访问限制在仅在该特定节点运行的端口上在集群中无法访问全局的加密文件。 此外还有其他更新点 DaemonSet更新这个公测特性增加了自动更新的选项1.7版本增加了回滚和历史的功能。StatefulSets 的自动更新在测试版中状态设置可以自动进行使用包括滚动更新在内的一系列更新策略。支持“突发模式”它可以根据需要快速无序地按比例调整或扩缩。网络策略已稳定提升为稳定状态此功能允许标签选择pod并定义规则来指定允许的网络流量而不是接受来自任何来源的流量。本地持久存储正式对本地存储进行 alpha 支持允许用户从StorageClass请求其Pods在具有本地连接的存储节点上执行。与hostPath相比 该方法将是一种更可靠的存储本地持久数据的模型。 推荐阅读 为什么微软应该通过收购Docker来与Kubernetes竞争 IT专家们谈OpenStack和K8s的未来 关于译者Ghostcloud: Ghostcloud中文名精灵云坐落于成都天府软件园是成都高新区重点扶持企业国内首批从事容器虚拟化研发的企业是西南地区唯一一家基于Docker的云计算服务商为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。 Ghostcloud因容器技术而生以最新容器技术Docker为基础为适应不同行业客户需求全自主研发了一套调度引擎框架Newben且全方位适配Kubernetes主流开源调度引擎也是国内率先实现双调度引擎的企业是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaSCaaS平台命名为EcOSEnterpriseContainer Operation System。Ghostcloud将EcOS平台与微服务DevOps相融合运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务帮助企业级客户降低成本、提升效率、简化运维及产品部署并提升系统的可靠性和安全性。
前言:Kubernetes在2014年由Google公司启动。实际上,在容器技术变成热门之前,Google就已经运行了Kubernetes十多年了,只是那个时候并不叫Kubernetes。Kubernetes基于Google的Borg技术,一直用于Google自己的网络服务并提供支持。 众所周知,Apache Mesos早在2009年就首次进入市场,而Kubernetes在容器调度引擎方面起步比较晚。一开始它也不是以容器角色的进入市场的,而是一项技术,直到后来有市场需求,它才以调度引擎的角色出现。 Kubernetes的主导地位已由市场见证 尽管Kubernetes脱离测试版还只是一个很短的时间,但现在市场上确实有很多企业已拥抱Kubernetes,而不是Apache Mesos,Docker Swarm或Cloud Foundry。随着收购Deis,微软进一步验证了容器调度引擎,于今年4月初加强了对Kubernetes的投资。至此,Kubernetes的服务特性正式走上了正轨。 这究竟是炒作还是真正的市场需求,可以通过市场趋势来判别。如下图所示,Kubernetes的地位逐年上升,已占据市场主导地位。 kubernetes与其他容器编排的对比 而下图展示了Kubernetes, Swarm,Cloud Foundry和Apache Mesos受欢迎程度的情况,经调查显示,求职者对Kubernetes的兴趣程度已经远超其他且逐年升高。 求职者兴趣趋势 Kubernetes的主导地位确实是市场驱使,并不是炒作。接下我们来探讨Kubernetes如何在企业中运用。 应用Kubernetes前需要了解的基本问题: Kubernetes由几个架构组件组成,包括pods,labels, replication controllers 和services。 Pods是管理一个或多个紧密耦合容器的短暂单元。 replication controllers从pod模板创建新的pod“replicas”,以确保已配置数量的pod正常运行。 services提供一种低消耗的方式,并使用由标签驱使的选择器将请求路由到集群中的一组逻辑后端。如果你想用Kubernetes来管理容器集群,你还需要了解以下几个基本问题: 上云还是不上云?你可以在公有云或者本地机房运行Kubernetes。而Google、AWS和Microsoft都有Kubernetes服务。所以,公有云的优势你也应该好好考虑,比如使用公有云不必购买和配置服务器。 是否需要选择DevOps?考虑到Kubernetes是开发和运维的一部分,首先你必须确定是否适合DevOps流程和工具集。大多数情况下,如果你正在运行容器,并使用新的应用程序,或者正在集成现有的应用,那么它将确实是DevOps的一部分。 网络培训,而不是招聘?从上图可以看出,Kubernetes是一项热门技术。但是,企业内部需要对Kubernetes有深入研究和学习人员,才能真正创建与使用Kubernetes的容器编排系统。那么,你从哪里得到这些人呢?这是一个与投入产出相关的决定,你需要考虑培训员工的费用或从外聘用顾问的成本。无论哪一种选择都是耗资巨大的。Kubernetes or not?你需要认清它的真正价值 就上面而言,理解到关技术后,决策才仅仅开始了一半。要真正考虑使用Kubernetes的价值,还应该考虑到过渡成本和建立及维护容器和容器集群管理所需人员的成本。 总结来看Kubernetes的价值体现在以下几点 Kubernetes允许基于容器的应用通过容器集群在容器管理器中来进行扩展,这些容器可以被调度,编排和管理。这与不使用集群管理器相比,将运维成本降低一半。 真正了解DevOps的价值。使用容器和容器集群管理的DevOps的效率超过约20%。这是由于能够重用容器,并在基于容器的应用中驱动更好的架构实践。 Kubernetes可以作为本机服务在公有云上运行,因此不需要购买硬件或软件来托管Kubernetes。结语Kubernetes是成功的,因为它比市面上其他容器集群管理能更好地解决问题。至少,市场的选择可以很好的说明这个问题。 所以,如果打算使用Kubernetes,你就必须考虑到对运维和团队的影响。换句话说,你需要了解如何让技术和商业更好的结合,并从企业的角度认真思考这个问题。 推荐阅读:【行业】容器服务在公有云上的发展与思考据说一个成功的研发团队应具备这9大属性【译闻】为什么微软应该通过收购Docker来与Kubernetes竞争 原文链接:https://www.cloudtp.com/doppler/defending-value-of-kubernetes-in-cloud/ 关于译者GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(Enterprise Container Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。
每一个研发团队都有其独特的文化和风格,但有一些过程、态度和价值观,是所有成功团队共有的,Ghostcloud结合自身经验,总结了以下9大属性。 1、自动化是关键研发过程中,很多工作步骤枯燥耗时,具有较强的重复性或规律性,研发人员往往考虑会将这部分内容用自动化代替,如此一来,团队就可以把更多时间投入在核心工作和更有创造性的任务上。例如,在发布工具库中有大量的脚本,这些脚本可以自动完成,这样研发人员也不会遗漏琐碎的部分,节省大量时间和精力。 2、协作工具必不可少充分利用协作工具,进行节点记录、事件分配、工作交接等,对于促进协作和确保每个人都能跟上项目的最新进展是至关重要的。标签、里程碑、共享平台这些工具确保了每个成员知道什么时候该做什么,交接工作也井然有序。因为分布式团队,不能保证随时走到同事的办公桌前检查一些东西。因此每个人都可以使用协作工具轻松访问相关文档,随时引用。 3、使用集成平台在同一个环境中拥有所有的软件研发工具,是一件很爽的事。当工作交接时API发生变化,维护及管理的复杂性,都可以被优化,使整个研发过程更加顺畅。以前我们认为两种产品是单独的产品,需要建立渠道进行交流。但如果有了一个内置的解决方案,它集成了一些由孤立研发团队研发出来的独立产品,那所得到的集成就不仅仅是更加顺畅了,我们将它视为一个研发环境。 4、技术文档要全面细致梳理细致的过程文档和操作指南是一个分布式团队应有的行为方式。每个人各司其职的同时,需要相互联接。如果一个问题经常出现,有详尽的解决方案文档可以随时查阅,不必等待其他成员来回答问题,这大大提高了协作效率。可能很多初创的小团队并不在意这个行为,遇到问题可以喊一声:“亲,这个问题怎么解决?”但随着团队的发展,队伍壮大,可能会有20个人问同一个人某个问题,那就完全没有效率了。 5、做好版本控制使用版本控制的做法,对源代码更新和修改,是一个很好的习惯,它改变了只有高级团队成员才能进行代码管理的现状。使用版本控制去管理源代码意味着,即使是最初级的人,发现了可以优化的地方,也能毫不犹豫地提出建议。写一个合并请求,清楚地勾勒出他的提议的优点,这使得提出改变的建议变得不那么困难,在发生错误时可以轻松回滚,大家拥有更多学习和分享的机会。 6、成员贡献要易化通过开放的研发平台,每个团队成员都可以发现、贡献并从其他团队成员的工作中学习。你不应该把你的代码看作是你的产品,应该把它看作是公司里其他人的资源。如果你问一个研发人员他们是如何学习编程的,大多数人都会提到“我读过的代码,是由比我更有经验的人写的。”通过让研发人员获得尽可能多的代码,使他们成为更好的程序员。 7、集中精力在项目开发上努力改善现有的工作平台或工具,会让工作变得容易,这些付出的时间,有着很高的回报率,所谓磨刀不误砍柴工。即使有些事情没有被安排在这个版本中,如果你认为你可以在几个小时内完成,它会在未来节省你更多时间,那就去做吧。 8、建立代码审查协作机制团队中的每个人都可以自由地审查对方的代码,或者要求进行审查,特别是如果有人比你在某个领域更有经验,那他对这段代码的优化可能会有质的提升。真正有助于协作的是让每个人都可以自由地互相质疑对方的代码:“这是最好的方法吗?”得到的结果将是不断的优化。 9、鼓励创造性思维让研发者保持创造性思维,让产品经理不要过于刻板和执念,这会带来更好的产品,也让研发者更快乐。”好的创意可能帮助你建立一些新功能,这些功能不仅可以按照客户想要的方式解决一些特殊问题,甚至可能解决一些每个人都会遇到的问题。 以上,就是一个优秀的研发团队应该有的属性,相信每一个研发工程师都向往这样的团队吧,其实,这样的团队远在天边,近在眼前。Ghostcloud研发团队拥有以上所有属性,并且,我们现在正在招募工程师哦! Ghostcloud现有售前工程师(成都)、售前工程师(北京)、中级测试工程师、高级软件开发工程师、研发实习生等大量岗位需求,欢迎广大有志青年加入我们的研发团队,详情请登录拉勾网了解。 简历投递地址:HR@ghostcloud.cn 工作地点:四川省成都市高新区天府软件园D7 咨询电话:028-65785728 关于GhostcloudGhostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(Enterprise Container Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。 推荐阅读:为什么微软应该通过收购Docker来与Kubernetes竞争?Docker用以提高Linux内核安全性的三大热点技术Jenkins与持续交付的若干问题
前言 Docker自今年4月Dockercon以来,都在对外宣称一件事:Docker已正式布局企业级服务,要利用已有的资源实现自身盈利需求。虽然Docker自有其扩展的优势,但从市场的另一端来看,Google在这方面则表现更强势。Kubernetes有Google的强大靠山,而Docker也不会孤军奋战,目前看来,Docker和微软的结合有可能给容器市场带来更多活力:Docker需要盈利,微软则需要Docker来与Google竞争。 目前看来,Kubnernetes的胜利姿态最终傲视了容器编排这场战争,除非遭受一场重大灾难,否则不会出现Kubnernetes被替代的局面。Mesos在集群管理方面仍具优势,所以在Docker容器集群管理中有其一席之地,而Kubernetes作为社区宠儿,一跃成为管理容器的默认工具。 然而,Docker仍然有一些Kubernetes没有的:比如对Windows的长期支持。尽管Kubernetes现在也支持Windows Server了,但仅仅也只是开始。更重要的是,微软有理由全力以赴收购Docker,因为它与Google是竞争关系。一年之前,就有传言称微软想以40亿美元的价格收购Docker,显然因为估值的关系并未让交易成功。 如今,随着市场的发展,流行趋势转向了容器编排,Docker公司正在努力通过这一趋势达到盈利目的,同时这也是Windows Server和微软双重下注的完美时间。 为什么微软应该通过收购Docker来与Kubernetes竞争 敌人的敌人就是朋友 容器从早期开发人员的玩具变成了企业至关重要的基础设施,这一过程相当迅速。这样一来,容器管理工具的重要性日益增加。Google的Kubernetes迅速崛起成为容器编排领域的主导。最近451 Research通过对企业容器部署现状进行调查,调查结果表明:71%的企业都在使用Kubernetes。 有一家公司明显不在讨论行列,那便是AWS。但Linux基金会副总裁Chris AniszczykLinux透露了一个非常积极的现象:AWS最近也开始为Kubernetes和其他CNCF项目做出贡献。事实上,AWS从Kubernetes获益很多,但同时也可能会损失很多。因为Kubernetes-as-a-Service可能会将更多的工作负载转移到AWS上,但也将使他更容易离开。即便如今大多数企业的业务都是通过Kubernetes部署在AWS上,但介于上述的情况,也就不难理解为什么即使还可以从中获利,而AWS没有提供Kubernetes服务了。 将容器编排这一成功势头推向Kubernetes,Docker也只能怪自己。当然,行业并不会给Docker提供帮助,相反会更加关注Google的基础设施工具,从而促使Google运行了大规模容器,成为容器市场的最大玩家。 当然,尽管Docker的市场地位很尴尬,但Docker此时真正向社区开放,而没有偷偷贮藏技术,也就使得市面上出现了这款容器编排工具Docker Swarm。如果Docker不这么做,将很有可能在容器市场失去立足之地。 在Redmond小镇(微软总部)Docker Swarm依然被看好,如果通过了微软的收购,Docker在这里将会有一个持续的发展。 你想让容器运行在什么地方? 鉴于Linux的流行,很容易忽视Windows Server仍占领市场一半的份额。虽然Kubernetes在Linux 领域发展势头良好,Docker在 Windows领域也不弱,但Docker的目标仍然是巨大的企业市场。 在差异化方面,只有Docker的容器编排组件可以支持Windows,而微软提供给Docker的支持也是最多的。所以一位业内人士曾这样宣称,“如果我是Docker的CEO,我会紧紧地抱住微软的大腿。” 自从微软推出Azure以来,就一直对外宣称公有云+私有云的工作负载。而Docker Swarm正好可以完美补充。正如451 Research分析师Jay Lyman所说,使用像Kubernetes和Swarm这类工具的原因是为开发人员提供一个单一的开发层:“为了管理这种日益混乱的IT基础架构,并避免过去的错误,企业正在转向容器软件为跨云的应用部署提供单一平台,并提高企业实施效率。“ 一年前,Docker和微软重新合作,微软宣布在Windows Server 2016中纳入(并支持)商业的Docker Engine,除了微软和Docker对Docker数据中心的支持,还面向IT专业人士。由此可见,微软和Docker的下一个阶段工作便是完成收购。微软也将继续支持Kubernetes(因为Deis的收购证明),同时与Docker达成合作,让Docker在运行时获得内部跟踪,同时给Docker提供其CIO编排支持。 这样一来,微软和Docker将成功实现双赢。 推荐阅读: Jenkins与持续交付的若干问题 私有云真的比公有云便宜? 在Hadoop上运行Docker容器的六大陷阱 原文链接: http://www.techrepublic.com/article/why-microsoft-should-acquire-docker-to-better-compete-against-kubernetes/ 关于译者Ghostcloud Ghostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌。公司成立于2015年,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。精灵云作为国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,在国内Docker社区贡献排名前三。主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。
关于译者GhostcloudGhostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌。公司成立于2015年,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。精灵云作为国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,在国内Docker社区贡献排名前三。主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 今天我们和大家详细聊一聊一直非常受欢迎的开源工具——Jenkins。 We Like Jenkins! 众所周知,Jenkins在软件开发流程中非常有用,是一款很棒的工具,但Jenkins和其他CI服务器一样,在软件交付过程中也会或多或少出现一些问题。软件交付团队往往在部署Jenkins以及这类工具的时候会犯错,使得开发效率变低,削弱了团队的敏捷开发能力,同时也失去了使用最新技术创新所需的灵活性。 使用Jenkins会出现的若干问题 问题1:Jenkins的插件太多 插件不一定是坏事,当它们都使用正确时,确实是很好的资源。用户可以向其使用的工具中增加额外的功能,这当然是最好的。但Jenkins的插件并不能为平台提供核心功能以外的任何可拓展功能,相反,在大多数情况下,使用Jenkins插件,团队只能完成基础的开发工作。 例如,要Docker一个构建环境,你需要一个插件。你从GitHub下载,同样,你需要一个插件。你想PAM提供支持,你也需要一个插件。 但可以肯定的是,Jenkins的 1500个插件并不是每个人都需要。所以通过插件提供帮助,这很有意义,就比如PagerDuty或Azure Storage兼容性,有一部分用户可能并不需要这些功能。 但如果你想通过Jenkins插件来做任何事情,这都是欠妥的。因为这就意味着交付团队要花更多的时间来安装和配置插件,如此才能开始愉快的工作。然而还有一个更大问题,那就是大多数Jenkins的插件都由第三方编写的,质量不一样,而且在没有详细描述的情况下可能会不支持。 可见,构建基于第三方插件的软件交付链,并不是一个保证可用性或稳定性的好办法。 问题2:Jenkins不是为Docker而设计 早在2000年上半年,在设想容器和微服务作为软件部署的首选基础设施之前,CI服务器就已经存在。它确实是一种相对较老的技术,通常是DevOps的一部分。 因此,传统的CI服务器不能帮助团队使用像Docker容器这样的基础架构,他们只能通过大量插件与Docker进行不恰当的整合。然而事实上,大部分插件由第三方提供,并在与Docker相关的平台上使用。虽然Jenkins为Docker提供了14+个不同的插件,但其中六个是针对Docker的核心平台使用。 Jenkins与大多数其他CI服务器一样,都建立在裸机服务器和虚拟机时代。后来,在Docker的支持下才进行了处理。所以在这个倾向于Docker的大环境下,这并不是CI服务器运行的好方法。 问题3:Jenkins不能较好的支持微服务 Jenkins和大多数CI服务器一样出现在Docker之前,也出现在微服务流行之前。 有些人早在2000年的时候就在开展SOA工作, Jenkins在那时也首次被使用。而在二十世纪八十年代初,微服务的概念就已经存在。但直到Docker出现,微服务才开始真正实现。 看到这里,或许你能猜到Jenkins并不能很好支持微服务, 而事实上也是如此。因为Jenkins缺乏对集成和一次测试多个服务的支持,而这些都是微服务环境下的基本功能。 除非你计划多个流水线的开发,否则Jenkins在帮助开发下一代微服务应用程序方面做得并不是太好。 问题4:CI!=CD Jenkins和CI服务器最大的问题是,有时交付团队会将持续集成(CI)与持续交付(CD)混在一起。而事实上,这两者是不同的。CI是CD的一部分,但是要实现完整的CD,需要的不仅仅是CI服务器。 无论什么时候,CD都需要自动发布到当前使用环境中。这需要如“Steps”之类的工具来实现,将软件交付任务自动化到CI服务器的范围之外。CD这一过程需要工具和渠道,使软件交付团队达到无缝协作。 当建立一个CI服务器时,就马上考虑软件交付工作完成,这本身就是在犯一大错误。 改变Jenkins思路 为什么经验丰富的软件工程团队会犯这样的错误?这不是因为他们不了解,亦或是无法跟上最新的创新。问题在于团队被误导去尝试效仿大企业,并使用最有效的软件交付手段,想要做成和Google、Netflix一样。这些企业着力于利用开源工具链和大量基础设施,构建出非凡的敏捷软件交付通道。 然而,这些公司之所以能做到这些,绝不仅仅是因为他们的部署工具,而是他们的思路。这就像是你能使用像Google一样的工具,但你不能像它那样的高效。较小的企业并不能意识到这一点。只有当他们真正拥有正确的思路和过程时,才能克服Jenkins这类工具带来的局限性,并优化他们的软件交付流程。 没有工具链是完美的,但当你有这样思路时,同样可以实现软件交付完美(或至少与其相近的东西)。如果你的软件交付方式仍然围绕Jenkins建立,你无疑会错失做的更好的机会。要实现这些仍需要研发思路与过程的革新。 原文链接:https://thenewstack.io/many-problems-jenkins-continuous-delivery/
关于译者GhostcloudGhostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。在国内Docker社区贡献排名前三,主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 一份来自ServerPronto研究部门的调研称:私有云的价格只有公有云的1/3。 这种说法靠谱么?当然不靠谱,因为说起云服务器的价格,并不只看其售价,这不仅仅是成本问题,还要分析其利用率和实用性。 ServerPronto是一个专门的服务器托管公司,如果你分析其调研的数据,会发现以AWS为例的公有云,每月的成本为2700+美元,而私有云服务的价格仅为每月900美元。公共云托管和私有云托管之间的区别显而易见,公共云由多个租户使用,每个租户都租用了一部分云资源,这是Amazon Web Services(AWS)、微软Azure、Google云平台等服务提供的服务。而私有云是由单个租户使用的云资源。那么问题来了,在一个普通的企业数据中心,私有云服务器的利用率仅有5%-10%,这是普遍性问题。900美元/月的支出却只覆盖了你需求的一小部分,从资源利用率来讲,公有云会更有优势。私有云托管公司可能会回应:“这不是重点!即使我们浪费了大量的金钱、能源和材料来扩充数据中心,我们仍然会更便宜!”这时又会有新的挑战出现:企业不只是简单地从公共云中购买原始存储和计算。他们同时还享受到亚马逊Aurora、谷歌BigTable、微软Azure机器学习等服务,他们正在购买服务和便利。此外,在公共云上运行大数据工作负载比在私有云服务器上运行要便宜得多,因为这种计算需要有弹性的基础设施。公有云确实不便宜。但那些购买了昂贵的基础设施的企业在遇到新的问题和新的需求时拥有更快的响应速度和更大的容错空间。企业需要一个灵活的环境,需要能快速响应随时变化的数据需求。与此同时,企业还在寻找云服务的新玩法,比如可以按小时或分钟租用功能强大的服务,而不是为专门的技术去付出额外成本或签订长期合同。 需要说明的是,私有云的出现当然有其巨大的价值,它对数据、安全性和服务质量进行最有效的控制,企业选择私有云是基于自身信息化建设的考虑,主要驱动力包括降低软硬件成本、实现应用系统快速部署、应对业务负载突发性增长需求、构建安全可靠自主可控的基础架构环境等。公有云和私有云分别有着自己的优势,也不能面面俱到,因此,公有云与私有云的混合使用被越来越多的企业采纳,此模式赋予公司对于云资源使用情况的极高水平的控制能力,合理地分配云资源,成为企业上云的必修课,因此,容器技术,云管理平台,混合云(公有云+私有云)等新概念成为了企业的宠儿。容器技术,配合云管理平台,够对企业的混合云和IT基础架构进行有效地管理,可将企业自有主机和公有云主机统一管理,并将企业应用的容器按需分配在不同主机上,轻松实现应用在混合云上的实现。中国的企业,绝大多数在容器技术、云管理平台和混合云方面仍处于萌芽阶段,虚拟化工作负载仅达到30%至40%,大部分混合云仍处于早期产品阶段。但是,容器技术、云管理平台混合云等新技术越来越受到国内企业的关注。相信在不久的将来,新的技术将驱动企业在云计算方面有一个质的提升。
关于译者GhostcloudGhostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌。公司成立于2015年,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。精灵云作为国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,在国内Docker社区贡献排名前三。主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 尽管在Hadoop上集成了容器负载的潜在价值,目前任职于Cloudera的Daniel Templeton仍然建议在部署Docker容器之前,等待Hadoop 3.0版本引入安全问题和其他问题的注意事项。在上周于迈阿密召开的北美Apache大会上,Daniel在演讲中表示:“它的潜在价值确实很大,但Hadoop3.0发布前,它仍然解决不了你的问题。容器很酷,但你确实还无法使用它。” 作为Cloudera 的YARN项目中的一名软件工程师,Templeton曾深入了解过由Hadoop Linux Container Executor提供的Docker支持(下载),也曾经探讨过何时会出现更好的选择。他曾在探讨中坚持地认为是Docker应用在Hadoop之上,而不是Hadoop应用在Docker上。 “如果你也有一个Hadoop集群,你会和我一样,想在Docker容器里执行工作负载的。” 虽然Hadoop的YARN调度引擎目前支持Docker作为已提交应用的执行引擎,但当你在现有版本的Hadoop中执行它的时候,还是需要提前了解那些“坑”。 陷阱一:Docker容器中必须开放应用权限目前,当你在运行Docker容器时,需要指定一个用户运行它。如果你指定的是用户ID而不是用户名,假如这个用户ID不存在,它也会自动为你创建用户。这种重新映射在遇到大量image的时候是无法正常工作的,也就意味着用户必须事先指定,如若不然,你将无法访问任何内容,也不能启动脚本和记录日志,将完全处于宕掉的状态。 这个问题目前还没有一个很好的解决办法,如果你有好的想法,欢迎到YARN-4266上参与讨论(https://issues.apache.org/jira/browse/YARN-4266)。 陷阱二:Docker容器和运行环境之间不独立可移植性是Docker容器最主要的特性之一,但运行于Hadoop的时候Docker的可移植性却不怎么好。当你想访问HDFS或者当你需要反译令牌,又或者当你需要像MapReduce这样的框架,亦或你想做Spark的时候,你必须得拥有image中的代码文件才可以实现。因此Hadoop的版本必须升级。 升级Hadoop版本的补丁程序可以在YARN-5534上下载(下载地址:https://issues.apache.org/jira/browse/YARN-5534)。 该补丁程序允许安装被列为白名单的存储卷,且开放管理员权限。当你拥有管理员权限,不仅这些目录可以被允许安装到Docker容器中,而且可以指定要挂载的目录。但需要注意的是,千万不要挂载任何可能会搞砸的东西。 陷阱三:image太大就会报错当执行程序的时候,docker_run将隐含地从repo中拉出图像,虽然Spark和MapReduce都有10分钟的超时时间,但如果图像太大,网络下载时间超过了10分钟,程序就会报错。假如持续地重新提交程序,导致的最终结果将会是程序处在某个已经尝试过的节点上并运行。目前针对这种图像报错,YARN上对图像缓存暂无有效的解决方法。 陷阱四:不支持安全回收Docker会将访问了client_config中安全备份的.docker / config.json文件进行存储备份,这个应该众所周知。这意味着当你访问安全备份时,无论从哪个节点管理器登录,你都会受到用户主目录中.docker / config.json文件的约束。恐怕这种限制没人能接受。 陷阱五:网络只有最基本的支持众所周知,当应用Kubernetes、Mesos这类容器管理工具的时候,网络很容易就得到实现,CNS也能得到处理。但YARN却提供不了这样的网络管理服务。YARN没有内置的端口映射的概念,网络也没有真正的自动化管理。相反,如果你想请求访问网络,你只能通过所有节点管理器上的Docker来显式创建网络。 陷阱六:具备较大的安全隐患Docker在Hadoop上运行是有安全隐患的。为什么这么说?Docker中的一个特权容器可以窥探底层操作系统,访问斜线进程和设备。假如是以root权限运行在容器当中,那么在底层操作系统中很有机会执行非常可怕的操作。当这种情况发生的时候,YARN目前是无法指定到用户的。虽然可以通过将其关闭或限制到某一特定用户组的做法来控制它,但这个安全隐患的问题必须得到重视。 Hadoop 3.0虽然Hadoop2.8中存在Docker的修复程序,但仍然不够用。在本次更新版本中,Hadoop3.0新增功能点:•支持本地化的文件目录作为卷进行安装;•支持cgroups;•支持不同的网络选项;•支持文档; 据悉Hadoop3.0将很可能在年底发布,其主要功能Hbase擦除编码将得到改进,并将为用户提供1.5倍的存储空间。这意味着可以节省用户一半的硬盘成本,并对YARN和MapReduce的用户产生巨大的影响。 目前Hadoop3.0的项目一直与雅虎,Twitter和微软等主要用户合作,确保与现有系统的兼容性,并且不会出现任何痛苦的滚动升级。 原文:https://thenewstack.io/docker-hadoop-theres-good-bad-ugly/
关于译者Ghostcloud Ghostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。在国内Docker社区贡献排名前三,主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 编者按: 以下5本好书来自博主Ian Miell的推荐。这5本书的内容与IT技术没多大关系,主要关于如何和技术有效互动,以及如何让技术生产变得更加高效。博主Ian Miell,毕业于牛津大学,现就职于Barclays任OpenShift架构师,著有《Docker in practice》一书。 好书推荐NO.1——《The Goal》 简介: 和一般的商业书不同,《The Goal》是一本小说,讲述了某工厂的经理在面临工厂即将关闭的时候如何在3个月内成功扭转局面的故事。书中的主人公和妻子经历了人生最低谷的时期,他们听取了一位老友的指点,开始寻找事业中出现的问题。最终,在和他妻子的共同努力下,找到了如何在工作中扭转局面的方法。 本书于1984年,在Windows1.0版本发布前出版。即使过去了30年,本书如今仍然受到很多人的喜爱并被Jeff Bezos等人推荐。 点评: 而推荐这本书的理由有三: 首先,这是一部非常好的小说,即使对IT不感兴趣的非业内人士也会很喜欢阅读; 其次,这本书和21世纪的软件无关,它鼓励你从系统角度而不是从具体的某一点来思考你的工作。一直以来,持续提升技能的问题,交付流程的问题,不满意的员工和愤怒的伴侣等问题总是萦绕在我们身边,而解决这些问题的办法总是惊人的相似,通过本书便可得到你想要的答案。 最后,通过本书你还会领悟到,在这个不完美的世界中,要改善任何交付环境,只重点关注最大的问题和人为因素是非常有必要且关键的。 好书推荐NO.2——《The Checklist Manifesto》 简介: 本书作者Atul Gawande是一名外科医生和公共卫生研究员。他在本书中探讨了三个领域——医疗、建筑和航空。这三个领域有一个共同点,即对失败的容忍度几乎为0。像坍塌掉的建筑楼、跌落的飞机和发生医疗事故的医生绝对是大众最不愿看到的头条新闻。 在面对失败的时候,你会怎么做?也许你会首先想到一个很成熟的解决失败模型——“英雄”模型。然而当英雄不再,危机便伴随而来。本书便介绍了一个非常易懂用以解决失败的道理:实施越简单的流程越有助于管理当下的混乱。 于是我们看到,航空领域转变为使用计划清单和程序更人性化的训练模式。医疗领域里使用简单的清单也有助于减少失误(以及诉讼费用)。建筑领域亦然,标准化的程序和创造性保障了建筑物屹立稳固。 点评: 读完本书你会发现它加强了你在增长业务当中增强文档和流程的决心。 好书推荐NO.3——《The Practice of Management》 简介: 于1954年出版的旧书,该书探讨了那个时代的商业模式和所面临的长期而持久的挑战。 点评: 这本书会帮助那些需要开始思考人类组织以及价值挑战的人打开脑洞并拓宽思维的广度。透过这本书会发现它揭示了我们一直在关注的点:自动化本身是一个自带诱惑属性的历史性话题,当今对自动化的应用其实和60年前是一样多的。书中关于改革重要性的片段读起来很像当代檄文。 上个世纪的作者通过罗马军队和耶稣会士(曾经最古老的精英军团)就能了解到如何将管理培训如何应用工作中。如果你曾认为Google是第一家尝试去掉中间管理层的企业,我会告诉你在这本60年前的书中,早有了一篇介绍“福特尝试去掉经理层”的章节内容。 好书推荐NO.4——《The Art of Business Value》 简介: 这本书更多是关于工作实践的哲学,而很少与商业相关。作者Mark Schwartz作为所处领域的CIO,他解构了一些被称为资本“敏捷”的懒惰假设和说法。 在实际和实践当中,首先他分解了“商业价值”可能的含义,并表明这种被经常理想化的概念有着怎样的意义。还有一些名词也得到了类似的注解,比如谁才是资本敏捷中的“客户”?有收益是不是意味着商业成功?以及企业组织可以细微到什么程度。 点评: 本书会让你有勇气提出简单的问题,也让你有勇气不再理所当然的认为自己对如何工作的认识是扎实而不变的。 好书推荐NO.5——《Getting Things Done》 简介: 本书作者David Allen曾被《纽约时报》评选为最畅销作家,感兴趣的小伙伴可自行人肉之。本书虽然在技术方面的内容很少,但却很系统地介绍了如何人为地提高生活和工作中的效率,并给出了非常适用且合理的建议和指导,是一本在释放压力方面实践性很强的书籍。 点评: 本书的建议很中肯而且也很合理,有的甚至是在其他地方都无法读到的。如果你跟曾经的博主一样是一个压力很大、时间很少的SRE,你不妨试读这本书,也许你也会和博主一样,通过实践本书给到的建议和指导从而改变了自己的生活和工作。 PS,感兴趣的童鞋也可以关注下博主的新书《Docker in Practice》; PPS,如果读英文很费劲,推荐阅读Ghostcloud的创始人晏东的新书《Docker容器实战:原理、架构和应用》。 推荐阅读: 【译闻】史上最完整版DevOps介绍那些影响传统PaaS平台结构的容器编排工具基于Docker的DevOps实现Docker容器云在金融行业的应用
前言 容器和虚拟机之间有几分相近,也有很大区别,我们应该学会在正确的时间,正确地使用容器与虚拟机,以消除它们之间的混淆。本文就容器和虚拟机的使用和管理提供了一些建议。 众所周知,如果你只需要处理一种类型的容器,那么在云环境中管理容器就很简单。可一旦面对容器集群的管理,面对这种多样化技术,那必将伴随着一系列全新的管理挑战。成功管理的关键在于,你要在坠入陷阱之前敏锐地发现它。 最简单的容器使用场景是将现有的应用程序打包进Docker容器并分发:将所有应用程序的附属项都封装到Docker映像中,并添加单个文本文件(Dockerfile)来解释如何创建映像。 监控这些容器与监控服务器是一样的,该应用程序使用的进程和资源都可以在服务器上查看,没有必要确认服务器所有必需的组件,因为它们都封装在Docker映像中,并由Docker文件管理,包括正确的Java版本和Python库。 容器如何更改服务器的管理任务 将应用程序放在Docker容器中意味着你不需要在服务器上更新和修复代码,只需要更新Dockerfile并构建一个新的Docker映像即可。 通过从标准的虚拟化模型中除去一层软件,容器的性能会提高10%到20%。 容器的启动和停止是秒级的,这比虚拟机快得多。支持微服务的应用程序将使用更多的容器,其中大多数都更新频繁。该应用的每一个微服务都有自己的Docker映像,即微服务可以通过创建或停止容器来扩大或缩小应用的规模。 如何克服容器可移植性的障碍 由于你的应用程序依赖于容器之外的数据,所以你需要对存储进行安排。最常见的形式是容器集群上的本地存储,将存储插件添加到每个容器映像中,并对公有云存储AWS和Azure使用不同的存储服务。 Google 的Kubernetes集群管理工具在容器编排管理方面提供了比Azure或AWS更灵活、更稳定的性能。但Google、Azure和AWS提供的服务都有一个共同的缺陷,便是它们将数据一定程度上限制在了平台上,这使得应用程序的可移植性变得复杂。 云容器存储的另一个缺点是不一致的安全策略。跨平台应用和执行安全访问规则从来都不是件容易的工作。容器安全性的基础是用户/组目录和用于实施访问控制的身份管理系统。 选择容器还是虚拟机需要考虑的因素有哪些 容器和虚拟机之间的差异是:虚拟化发生在不同的位置。虚拟机使用监控管理程序将服务器划分到操作系统级别以下,因此虚拟机只共享硬件。容器的虚拟化发生在操作系统级别,因此容器共享操作系统和一些中间件。在虚拟机上运行应用程序更像是在裸机上运行它们,相反,在容器上运行的应用程序必须符合单一的软件平台。 虚拟机提供了裸机的灵活性,而容器只需要更少的资源来优化利用率 另一方面,由于在部署和重新部署应用程序和组件时,平台软件的复用率要低得多,所以容器的开销较虚拟机更少。每个服务器不仅可以运行更多的应用程序,而且容器可以让你更快地部署和重新部署虚拟机。 还有一个缺点值得重视:联合托管。当在容器中部署应用程序来共同托管所有应用程序的组件以加速网络连接,这被认为是最佳的实践方案。然而,联合托管使得故障的处理和资源的转移更加困难,这是混合云的两种常见情况。 在混合云环境中的监测方面,云管理平台已经显示了容器和虚拟机之间的区别。但面对安全性和合规性,要平衡容器和虚拟机之间的差异性可能还需要更长的时间。 关于译者Ghostcloud Ghostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。在国内Docker社区贡献排名前三,主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 本文为翻译文章,文章观点归原作者所有 原文链接:https://dzone.com/articles/mastering-the-art-of-container-management
以下内容摘自TNS的贡献者 Ritesh Modi的新书《DevOps with Windows Server 2016》。 如今,业内还并未对DevOps的定义达成共识。几乎每个行业机构和组织都制定了一套自己的DevOps实践。他们以为只要进行自动化、配置管理和敏捷开发,就算是真正意义上了解并实践了DevOps。 然而并没有那么简单。 DevOps与软件系统的发布机制是密切有关的。DevOps涉及到建立协作互通的开发团队,并朝着一个可预见的目标一起工作,也同时涉及到协作中的责任制和管理制度。它还涉及到实践过程中的集体性和服务心态。DevOps确保实现了团队组织中一种敏捷而灵活的传输机制。与大众观念相左的是,DevOps其实和工具、技术以及自动化无关。自动化实际扮演的是实现敏捷开发,减少了团队内部的合作并辅助更快交付的角色。 DevOps的定义 网上有很多关于DevOps的定义,但它们大多数并不够完整。为什么这么说? 首先,DevOps并不提供框架和方法,当它应用到团队和项目中的时候,它其实是DevOps和企业共同实现既定目标的一系列原理和实践经验。其次,这些原理和实践经验并不执行任何特殊的程序、工具和技术,甚至环境。最后,即便有的技术和流程本身确实可能对实现DevOps的目标和愿景比较适用 ,但事实上,DevOps能在应用实践这些工具、技术和流程的过程中提供指导。 任何直接面向用户并为用户提供产品和服务的企业都可以实践DevOps,作为本书的目标,我们将通过剖析企业的开发和运维团队了解到真正的DevOps。 所以,DevOps到底是什么?我认为: • DevOps是一系列原理和实践经验的总和。 • DevOps从一开始便将开发和运维团队放到同一个系统开发中。 • DevOps提供了一种快速、有效的方式,能不断地以端到端的传播形式向用户端传递价值,而且这种方式具备一致性和可行性。 • DevOps缩短业务上线时间,并保障了业务的市场竞争力。 如果你仔细揣摩过以上DevOps的定义,你就会发现它并未对任何特殊的流程、工具和技术有偏好,也并未规定任何特殊的方法和环境。 DevOps的实践 任何企业的DevOps实践,其最终目标都是确保相关人员(包括用户)的期望和需求能有效、快速地开展起来。 DevOps满足用户以下需求和期望: • 获得他们想要的功能; • 在任何需要时都能获得他们想要的功能; • 能更快地更新功能; • 发布的新版本的质量够高。 只有当企业能满足这些用户需求,用户的忠诚度才会高,反过来企业的市场竞争力便得到了提升,并最终增强企业的品牌和市场价值。DevOps对企业的顶线和底线带去直接影响,因而企业可以在创新和客户反馈上投入更多,从而持续改变其系统和服务,以保持和用户之间的黏性。 而任何企业在实践DevOps的过程中都会受其所处的行业和领域的影响,所以要把握住DevOps实践的核心原则和核心做法。 DevOps实践的核心原则: • 协作机制和沟通机制; • 响应变化的敏捷度; • 软件设计能力 • 快速试错 • 持续学习和创新; • 自动化流程和工具。 DevOps实践的核心做法: • 持续集成 • 配置管理 • 持续部署 • 持续发布 • 持续学习 虽然DevOps并不是新词,但近几年却受到越来越多的普及和关注。到目前为止,采取DevOps已是最高优先级,且越来越多的公司正在实践它。而DevOps的实践中又有着不同优先级的考虑:以成功实施持续部署和持续交付的优先级最高,以采用源代码控制和敏捷开发的优先级最低。 DevOps定义的解析 DevOps谈到的第一个问题是如何打破开发团队和运维团队之间的隔阂,以及如何实现多团队之间的亲密协作。DevOps打破了以往开发团队只负责写代码并提交代码给运维团队来进行部署,而运维团队不参与开发过程的观念。事实上,运维团队应该对产品的上线计划产生影响,也应该对即将发布的功能有更多关注,他们还应该持续向开发部门反馈运维上的任何问题以便在后续版本中予以修正。运维团队的工作实际上最终能为提升整体功能特性的系统设计产生影响。相对应地,开发团队应该辅助运维部门成功交付系统和解决问题。 DevOps的定义中还谈到了系统端到端的交付效率是快速、高效的,但并未谈到底有多高效。发布的效率取决于企业的行业、领域和细分用户等,有的企业以季度为交付周期,有的则按周计算交付周期。 这两种类型从DevOps的角度来看都是有效的,他们可以部署任何相关的流程和技术来实现其特定的目标。但DevOps不会决定该目标,企业应根据其整体项目和愿景来确定DevOps的最佳实施。 这个定义还谈到了端到端的交付。这意味着从系统的规划和交付到服务和运维都应该是DevOps实践的一部分。这些过程应该在应用程序开发生命周期中具备更大的灵活性、模块化和敏捷性。虽然企业可以自由地使用最好的进程,如瀑布、敏捷、看板等,但通常企业都倾向于通过基于迭代的交付方式来支持敏捷开发流程。这便意味着在更小的单元拥有更快的交付,与大体量交付相比是更好测试也更好管理。 DevOps谈到在不断地向终端客户提供软件系统的时候要保证一致性和可预测性,这意味着企业应该使用自动化向用户提供更新和功能升级。在不使用自动化的情况下,我们无法实现一致性和可预测性。为避免失误,自动化也应该要求是端对端,这也表明系统设计应该是模块化的,才可能保证更快交付的同时又能保持系统的可靠性、可用性和可扩展性。自动化测试便在这类交付中起着至关重要的作用。 结语 实施上述做法和原则的结果是企业可以满足其客户的期望和要求。相比竞争对手,这样的组织发展得更快,同时,也更能不断进行创新和改进,从而进一步提升产品和服务的质量。 本文为翻译文章,文章观点归原作者所有 原文链接:https://thenewstack.io/what-is-devops/ 关于作者Ritesh Modi 高级技术布道者,现就职于微软,负责保障开发者、创业者和企业的技术学习和实践。曾作为架构师就职于Accenture和eFORCE,热衷开源技术,是行业有名的领导者和作家,同时,他还是T-hub和IIIT Hyderabad创业孵化器的导师,微软认证培训师,并拥有超20种相关培训证书。 关于译者Ghostcloud Ghostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌,核心团队由来自EMC、Veritas、华为、IBM、Microsoft的核心技术主管和架构师组成。国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。在国内Docker社区贡献排名前三,主创团队曾参与Beego开源项目研发,并主导发布《Docker容器实战:原理、架构与应用》一书。Ghostcloud因容器技术而生,致力于为多个领域的“互联网+”转型企业提供服务,是一流的企业级容器云服务专家。 推荐阅读: 基于Docker的DevOps实现 法拉利与DevOps:比你想象中有更多类似 大话DevOps解决方案的变迁
编者按:2017年OpenStack峰会(5.8-5.11)正在如火如荼进行, OpenStack和K8s的“相爱相杀”正在陆续上演,K8s可谓抢尽本届峰会的风头,成了不折不扣的主角。虽然大多数美国分析师都认为可以通过大会讨论出未来方向和结果,但笔者认为真正的结果在企业用户心中。只有实际成功的案例才能真正说明二者微妙的关系,正所谓“黑猫白猫,能抓到老鼠的猫才是好猫”。 2017 OpenStack Summit大会正在如火如荼的进行,在会议开始之前,这三行问题就已引人关注: “OpenStack on Kubernetes? Kubernetes on OpenStack? How about Kubernetes on OpenStack on Kubernetes?” 以下是分组会议的话题清单,我们似乎可以从中看出些什么: Kubernetes和大规模OpenStack; 企业采用Kubernetes和容器; OpenDaylight Kubernetes和OpenStack Magnum集成; ESCaaS 4.0,OpenStack和Kubernetes的统一管理平台; 混合云Kubernetes。 没错,一个非常明确的重点:Kubernetes。 2017年,OpenStack在全球范围内的企业数据中心正获得越来越多的部署。OpenStack最初的存在是为了让私有云基础设施能够像公共云一样方便快捷地支持应用程序。回顾OpenStack这些年所遇到的需求和面临的挑战,似乎都通过使用Kubernetes得以解决。 相关组织做了一次问卷调查,调查数字表明,使用OpenStack的受访者中,84%的人很高兴讨论他们在什么行业,他们负责什么方面的工作,但很多人不热衷于回答问卷中最重要的一个问题:“你用什么容器或PaaS平台工具来管理你的应用程序?” 在少数回答了这个问题的人中,大约43%的人表示他们使用Kubernetes来管理他们的应用程序,而其他选项(包括Swarm和Mesos)都低于该数字。 为什么? 峰会这几天,所有人都在围绕这三大问题展开讨论: 1、Kubernetes真的能成为OpenStack的实际应用程序服务管理组件? 如果这个问题换成“OpenStack和Kubernetes在私有云部署中分别扮演什么角色?”那就可以简单地回答说,“OpenStack管理基础设施,Kubernetes管理容器,” OpenStack的文档指出:Magnum是一个OpenStack项目,它提供容器编排引擎来进行部署和管理。将Magnum与Kubernetes、Swarm或Mesos集成在一起,是一个非常好的思路。 认真的工程师必须提出这个问题:怎样的整合才是最可取的? 2、OpenStack名声大噪,却难以部署和管理吗? 据悉,OpenStack基金会在其4月调查报告中承认,用户的反馈集中在安装方面缺乏一致性,缺乏共同的生命周期管理工具,缺乏自动化部署系统,缺乏标准化升级过程,缺乏对BUG修复的关注,以及几乎所有工作流程中都有难以估量的步骤数量,这些都是OpenStack用户们强烈反馈的问题。 3、谁是OpenStack的领导者和推动者? 几年前,分析师们认为OpenStack重要性是显而易见的,否则惠普就不会投入如此多的资金来推动它。后来,当惠普退出时,一些分析师又宣布OpenStack将走向死亡。 但是很少有人注意到:获得惠普OpenStack业务的SUSE Linux可能更适合惠普向他的客户们提供这些服务。 大多数市场感知中存在着现实,在分析师眼中,该平台的方向即将明确,但对于大多数客户来说,由供应商和小团队供应商提供的案例才最具吸引力。 峰会热切进行中,OpenStack仍然是软件历史上最前所未有的集体努力者之一,相比之下,部分Linux的成功可能才是偶然的。
作者:精灵云 随着PaaS平台结构的演变,可以看到容器编排给企业在平台结构的选择上带来的冲击,可究竟该如何选择,我们需要透过现象看本质。 PaaS平台的演变 传统PaaS平台在云计算技术的发展中经历了几次演变,我们先来回顾下经典的云平台层次体系的结构。 传统云计算平台的分层结构 如图所示,在经典的PaaS平台结构中,应用运行在PaaS平台所提供的容器环境中,容器在虚拟机基础上完成了第二层次基础设施资源的划分,容器封装了应用正常运行所需的运行环境和系统。然而这类PaaS平台就如同一个“黑盒”,应用完全脱离了租户的控制,进入了完全被托管的状态,这使得开发人员和运维人员对应用和应用运行时的环境掌控力变弱,再加上传统PaaS通常在应用架构选择、支持的环境服务等方面有较强限制,导致此类云平台层次结构运力不足,尤其是在应用出现宕机后尤为凸显。因而在生产环境下又进化出了以IaaS+云平台的分层结构。 典型的IaaS+云平台 IaaS+云平台的层次结构保证了运维人员对底层环境的掌控,但IaaS层不具备贴近应用的资源调度策略,为了弥补了IaaS平台脱离应用的缺陷,出现了很多高效便捷的虚拟机DevOps工具,以虚拟机镜像为基础可以保证生产环境、测试环境、开发环境上的严格一致。目前基于IaaS的云生态环境已经具有相当高的成熟度。 当然,以上这两种经典的云平台分层结构依然还是目前传统云平台搭建意识里的主流,直到Docker的出现。 基于容器的云平台 Docker的出现为云平台带来了一个新的分层结构:基于容器的云平台。相比经典PaaS平台,基于容器的云平台结构更加开放,可直接基于虚拟机或物理机搭建。基于容器镜像的应用发布流程不仅能覆盖整个应用生命周期,还减少了经典PaaS平台对应用架构、支持的软件环境服务等方面的诸多限制,将更多控制力交还给开发和运维人员。 而影响传统平台PaaS结构的核心便是容器编排。 容器编排的演变 容器编排支持打包、部署、隔离、服务发现、扩容和滚动更新,已经在影响驱动成熟企业和初创公司采用容器上起到非常重要作用。 在基于容器的云平台中,运用Docker容器至应用的完整生命周期中时,最困难的便是运行微服务应用程序,即如何创建、管理和自动化临时容器集群。 解决这一挑战的第一个主要工具是Mesos及它的编排工具Marathon,成熟度最高时间最久。下一个得到认同的编排工具是Kubernetes(以下简称K8s),应用最广泛,社区支持度最高。之后Docker Swarm也加入了进来,使用覆盖率也很惊喜。当然,目前国内还出现了自研的容器编排Newben,开发者为Ghostcloud精灵云。 几种容器编排的对比 事实上,如今K8s因为它的可扩展性已经成为了企业主流。它支持广泛的编程语言、基础设施选项,并获得容器生态系统的巨大支持。它将应用层与基础设施层隔离开来,从而能够跨多个云供应商和基础设施设置,实现真正的可移植性。 容器编排K8s和Newben 本文重点介绍在网络、应用迁移、应用快照、模板、负载均衡、弹性伸缩、高可用、CI/CD集成、灰度发布和回滚、镜像集成、日志监控等方面同样优秀的两类容器编排工具Newben和K8s。Newben是Ghostcloud精灵云全自主研发的容器调度引擎,是目前国内唯一自研引擎。(关于Newben的介绍可阅读文章《全自主研发容器调度引擎——Newben》)K8s是目前最主流的容器编排。在此,我们简略地列出了Newben和K8s的部分功能特性,来展示这两种容器调度引擎在网络、应用迁移、负载均衡、弹性伸缩、调度规则等方面的优势。 l网络 K8s不支持内置虚拟网络,网络插件选择众多,学习成本更高,但从社区获得的支持也最多。Newben内置支持虚拟网络,支持多子网,支持公有云、主机托管环境、二层和三层网络以及控制网络访问安全。 l应用服务和应用栈 在创建应用服务方面,K8s需要多次执行命令工具的操作模式,Newben则采用向导式创建的方式,且支持应用服务分组创建应用栈。 l弹性伸缩 Newben和K8s均可以支持CPU的弹性伸缩。 l负载均衡 Newben和K8s均可实现负载均衡和高可用集群。 l调度规则 K8s的调度规则基于标签选择器,而Newben则同时基于标签选择和指定主机名。 结语 对企业而言,编排工具是容器应用成功的关键,最主流的PaaS解决方案已经拥抱容器,并有新的PaaS 建立在容器编排之上实现管理平台。企业可以选择面向IT运维,部署核心容器编排工具,或面向开发,使用PaaS平台。 推荐阅读: 1、企业为什么要使用基于Docker的PaaS/CaaS平台 2、Docker容器云在金融行业的应用 3、自研容器调度引擎Newben会成为“中国的K8s”?
2017全球云计算开源峰会于4月19-20日在北京国家会议中心举行,作为云计算开源技术的年度顶级“party”,现场大咖云集,共同探讨和分享开源技术在云计算领域的N种玩法。本次峰会从代码、社区和产业三大方向探讨云计算开源技术的实践和应用,作为企业级容器云服务方面的领导者,Ghostcloud精灵云也在本次峰会上分享了Docker在金融行业的应用,干货不绝,收获无数行业关注。同时,精灵云也带来了众多福利,改变世界的“盒子”在大会现场吸引了一大批参会者的围观,前来咨询和洽谈合作的朋友络绎不绝。 作为企业级容器云服务专家,Ghostcloud精灵云全自主研发基于Docker的PaaS/CaaS平台的EcOS系列产品已在金融、互联网、电信、大型制造业、IDC等行业领域有落地实施,为国有大型家电制造企业、新型金融机构、军工企业等的重要生产及研发系统提供了基于Docker的PaaS平台虚拟化服务。在本次云计算开源峰会的金融行业论坛上,精灵云CTO乔融做了题为《Docker在金融行业的应用》的主题分享,并和现场行业专业人士开展了热烈交流互动。 据悉,由精灵云提供的金融容器云建设解决方案是基于精灵云自研EcOS平台开展的。在具体的实施案例中,使用EcOS容器云平台对仓库和镜像进行加固,在内网和公网环境混合管理做安全隔离,借助平台自带的CI/CD流程,标准化研发流程;借助EcOS的资源调度框架,动态资源调配。通过商用Docker云平台,提升了IT部门的技术能力,更好的适应了未来业务发展需求,物理资源利用率提升,能够很好的应对突发的流量暴增,在有限资源下提升了系统并发量。 除了大会演讲干货以外,作为“企业级容器云服务专家”,精灵云凭借自研容器调度引擎Newben吸引了大量的参会者驻足详谈。截止2017年3月31日,精灵云平台上已累计使用用户数超30000人次,企业用户500余家,凭借在商业领域的出色表现,很多厂商在现场也对精灵云表示出了浓厚的兴趣。 (前来咨询和洽谈的行业从业者纷至沓来) 在为期两天的云计算开源技术展览上,精灵云开展的“改变世界的“盒子””主题抽奖活动吸引了众多参会者参与。其所在的B17号展位上摆满了送给开发者的福利,有书籍《Docker容器实践》,舒服的抱枕,漂亮的马克杯和众多小礼品,让参会现场的云计算从业者们满载而归。 (现场参加“改变世界的盒子”抽奖活动的盛况) 最后,如果想获得第一手的演讲资料,请大家关注精灵云的新闻动态吧!我们会在会后放送本次演讲的干货内容~
作者:精灵云 2017年4月19日-20日,“2017全球云计算开源峰会”开幕在即,精灵云作为企业级容器云服务专家已确认参展,并将在金融论坛做出精彩的报告演讲。 精灵云在B17号展位,恭候各位的大驾! 重要的事情说三遍: 4月19日-20日 北京国家会议中心 B17号展位 我们不见不散!!! 4月19日-20日 北京国家会议中心 B17号展位 我们不见不散!!! 4月19日-20日 北京国家会议中心 B17号展位 我们不见不散!!! 展会期间,精灵云B17展位还将开展有趣的小游戏——“改变世界的盒子”,欢迎大家踊跃互动,我们将送出上百份礼品: 一等奖:书籍《Docker容器实战——原理,架构与应用》; 二等奖:精灵云精美抱枕; 三等奖:精灵云精美马克杯; 参与奖:精美小件儿。 最后,为了感谢各路好友对精灵云多年来的大力支持,我们准备了10张“2017全球云计算开源峰会”的门票,免费送给大家。 请留言回复“您的企业名称+姓名+职位+手机号”,将获得门票1张,数量有限,先到先得,行动要快噢! 活动地址:北京国家会议中心 B17号展位 活动时间:4月19日-20日
作者:精灵云 由工业和信息化部指导、中国信息通信研究院主办、云计算开源产业联盟承办的”全球云计算开源峰会“将于2017年4月19日-20日在国家会议中心举行。本次峰会将聚焦虚拟化和OpenStack、容器、大数据、运维等开源技术和产业,以及开源治理等方面内容。 作为企业级容器云服务专家,精灵云受邀参加本次全球云计算开源峰会,除参展本次峰会外,还将在金融行业论坛做相关主题的演讲报告。 Ghostcloud精灵云成立于2015年,是成都高新区重点扶持企业,也是国内首批从事容器虚拟化研发的企业,拥有技术和著作专利12项,是ISO 9001和ISO 27001双认证企业,同时也是阿里云西南地区唯一Docker服务商和AWS的核心技术合作伙伴。 精灵云全自主研发基于Docker的PaaS/CaaS平台的系列产品,包括Ghostcloud企业级容器云平台EcOS、容器调度引擎Newben、DevOps/微服务企业咨询服务、镜像加速 (高速镜像仓库和私有仓库)、应用市场 (海量应用一键部署)等,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,使用户可以一键式的快速生成移动互联网后端应用和云计算基础应用。经过2年的发展,精灵云已拥有合作企业数十家,经历超50万次部署,部署过超10万个容器,在制造业、金融业、教育业、互联网等行业均有涉及。 以下是本次精灵云参会的详细信息,欢迎各位莅临现场指导。 精灵云详细参会信息 展位号:B17 演讲时间:2017年4月20日 15:30-15:50 演讲会场:金融行业论坛 演讲嘉宾:精灵云CTO 乔融 嘉宾简介: 精灵云CTO 乔融 重庆大学计算机硕士; 14年企业级软件研发经验; Symantec全球白金奖获得者; Docker以及DevOps方面的资深研究者; 曾供职于世界500强Symantec(Veritas),作为技术带头人负责NAS和NBU的核心模块研发; 曾供职于存储行业龙头企业EMC,以技术带头人身份负责数据存储保护一体机核心研发。
作者:精灵云 前言 早在十多年前国内外的一些大厂就开始投入研发和使用容器技术,比如Google,对他们来说,使用容器能够充分利用计算资源节省硬件成本。而这几年——众所周知——真正把容器技术发扬光大的是Docker。Docker的slogan“Build,Ship & Run anywhere”定位非常清晰,Docker的出现打破了传统运维模式里从打包到部署的过程中环境、语言、平台不一致的乱象,将这一整套开发运维模式标准化了,从而真正帮助企业实践了DevOps和微服务化。 但是,国内的大型企业面临技术转型的的时候,历史包袱太沉重,对Docker的接受和部署非常缓慢。同样地,多数的中小型企业也并未把Docker作为生产环境上部署和管理服务的标配,而选择继续使用传统的运维方案。造成这种现象的原因是什么呢?可能原因之一是企业从业人员对Docker的学习认知并不够。之二是目前市面上Docker的容器编排系统很多,常见的就有K8s,Mesos,Swarm,Rancher,Newben,编排系统的学习和认知成本也进一步提升了企业应用Docker的难度。 企业为什么要使用Docker 这个问题的本质是企业用Docker究竟能做什么,要回答这个问题,需要我们回归到Docker本身来分析。Docker本身只是提供了一个运行环境,除了把服务跑起来之外,要让多个服务容器协同起来工作,实际还需要一个容器编排系统。一般来说企业期望编排系统能帮助实现如下几个目的: 定义服务栈 提供一种机制,可以用配置文件来定义服务的网络端口,镜像及版本,在需要的时候通过配置可再现的创建出一整套服务。 服务发现、注册和注销 需要在创建服务后自动创建DNS记录用于访问相关容器,容器状态健康后注册SRV信息。 健康检查 可以精细化控制服务注册时机,以支持容器正常启动后的初始化完成后再注册服务,以对外提供稳定可用的服务。 自动扩容和缩容 实时监测容器CPU和内存使用情况,当容器平均性能指标超过阈值一段时间后启动自动扩容,创建更多容器以达到阈值要求,当没有主机资源运行新容器时,自动申请新主机。当一段时间负载持续低于阈值启动缩容优先删除新创建容器和主机,以释放资源和降低运营成本。 合理的调度 要求最大限度的榨取主机资源避免浪费,并可实现快速的创建容器,减少镜像拉取时间和磁盘空间浪费。 负载均衡和高可用使用Docker的三个阶段 根据我们的观察,根据企业规模和阶段性需求的不同,在使用Docker技术的时候分了三个阶段来进行。 阶段一:利用开源工具实现一定功能 由于一个Docker容器只是一个(或一组)进程的封装,一个容器需要绑定宿主机的端口来向宿主机之外的网络提供服务,为了避免端口冲突,对于需要暴露端口的容器,Docker会随机绑定一个宿主机端口,这个时候就需要服务发现来帮助不同机器上的服务来进行通信了。举例一个简单的方案:Docker-discover和Docker-register。 这个方案提供了一套系统的几个基本功能:应用发布,服务发现,负载均衡和进程守护。除了提供一致的运行环境使服务的发布和回滚比较可控,这套简单的系统在发布流程上还是像传统运维一样需要远程执行脚本,功能比较简单,适用于小企业,随着后端系统成长起来,很快就不够用了。 阶段二:开源容器编排工具 第二个阶段是选择开源容器编排框架来管理,常见的开源容器编排工具有Kubernetes,Swarm和Mesos 。市面上也有同时支持这三种开源容器编排引擎的容器管理打包方案,通常作为入门级容器管理平台使用。这种入门级的方案虽然是开源的,但技术上的文档明显欠缺,社区中的使用难题也很少有公司之外的contributor,当暴露一些难题的时候就很难解决,这点和Kubernetes有很大不同。 Kubernetes提供的是一个框架,要求使用者对他的组件有一定程度了解,使用之前需要不少配置工作,对Docker入门者来说,学习能力要求很高,不过好在社区有各种contributor,提供了很多帮助部署的installer。除了对学习能力有要求以外,对中小企业来说,对基础设施的投入肯定不如大企业,一般没有专人去熟悉Kubernetes这种大型开源项目。 当然,像Kubernetes这样的容器编排系统本身很复杂,体量很大,很多企业也出现过当丢包严重的时候问题排查起来很困难的局面,毕竟要深入到庞大的代码中定位问题本身就是件很不容易的事情。 虽然现在Kubernetes是容器调度主力军,但我们认为调度引擎是容器最核心的模块,在PaaS这个关键的云计算领域不应该由国外来主导,特别是在军工、政务、金融等领域,我们需要自主研发的调度引擎,只有这样我们才能掌握云计算基础架构的核心技术。于是就有了第三个阶段的使用建议:高定制化的容器云平台。基于Docker的PaaS/CaaS平台 为了适应国内的企业需求,出现了很多运用Docker开源调度框架的容器云平台,这些平台大都有一个特点:“服务本地化,核心开源化”。我们认为这并不是真正的本地化,真正的本地化应该是在满足不同领域不同企业的上云和转型需求的同时能随时响应定制化需求。基于这样的思想,被称为“中国的K8s”的容器调度引擎Newben应运而生。 Newben是精灵云全自主研发的容器调度引擎,也是目前国内唯一自研引擎,具备多项技术专利和著作专利,定制能力强、支撑功能丰富,能为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能。如下图所示,将Newben、K8s、Mesos和Swarm进行详细对比,会发现Newben事实上吸取了各开源调度引擎的长处,在网络、服务发现、负载均衡、弹性伸缩、高可用、CI/CD集成、镜像集成、日志监控等方面都有着非常大的优势。 (Newben和开源容器调度框架的对比) Ghostcloud EcOS平台是精灵云旗下的企业级容器云平台,内置自研容器调度引擎Newben,同时适配多种开源框架,如K8s、Swarm等。由Ghostcloud精灵云全自主研发的EcOS平台基于精灵云PaaS/CaaS云核心功能模块,能支持私有云和混合云部署,满足企业的容器云部署需求,为企业研发、运维及新业务上线部署提供了一整套解决方案和管理平台。不仅帮助企业大幅削减成本和提升效率,帮助传统企业加速所需业务互联网化进程,更能帮助互联网企业加快产品迭代,提高产品市场占有率。 (EcOS的平台架构) Ghostcloud EcOS的应用场景 Ghostcloud EcOS平台作为统一的平台, 可服务于多个解决方案,应用到政务、教育、金融、互联网、医疗等多个行业和领域。接下来我们以金融行业为例来说明。 (EcOS应用场景) 传统的金融行业受迫于银监会的要求(容器作为两项最核心技术之一被写入十三五规划)需要在企业内部推行云计算技术,同时互联网金融的爆发式增长,传统金融公司在技术上无法应对自如。蚂蚁金服和万达金融等大型互联网金融公司都在使用容器作为后台支撑平台,传统金融企业也需要类似的PaaS/CaaS平台,但是本身没有搭建和维护能力。面对这些需求,需要从几个方面解决: • 整合系统内部资源,推行基于容器的开发、测试、生产和运维一体的PaaS平台; • 推行DevOps,开发运维一体化,降低运维成本; • 推行敏捷和CI/CD,加快系统交付和部署; • 使用基于容器的弹性负载均衡系统,适配突发流量; • 加固开源容器系统,对镜像及镜像仓库进行私有化定制。 在具体的实施中,使用EcOS容器云平台,对仓库和镜像进行加固,在内网和公网环境混合管理做安全隔离,借助平台自带的CI/CD流程,标准化研发流程;借助EcOS的资源调度框架,动态资源调配。通过容器只暴露特定端口,提升了整个系统的安全性,系统开发速度和上线速度大幅度提升,团队整体响应速度也大幅度提升。通过商用Docker云平台,提升了IT部门的技术能力,更好的适应了未来业务发展需求,物理资源利用率提升,能够很好的应对突发的流量暴增,在有限资源下提升了系统并发量。结语 国内的企业需要在使用Docker进程中选择更本土化的容器编排系统,只有拥有核心可控的技术才能真正开展云计算基础设施建设。推荐选择能针对个性化需求做定制化解决方案的PaaS/CaaS容器云平台——Ghostcloud EcOS。
作者:精灵云 前言: 一个月以前,我们对外详细介绍了内置在精灵云EcOS(Enterprise Container Operation System,企业级容器云平台)中的全自研容器调度框架Newben ,文章刚发出,就有很多人向小GO询问Newben是否会开源的问题。在此,小GO引用精灵云创始人晏东对CSDN的专访回答作为给大家的统一答复:“Newben适用于所有以Docker作为虚拟化引擎的场景,目前主要面向中大型企业,不对外开放代码。”也就是说,Newben目前暂不开源,而是内置在精灵云EcOS平台当中,大家可前往精灵云官网试用体验。关于Newben的详细解答可参考文章:专访精灵云创始人晏东:详解自研容器调度引擎Newben) 三天前,精灵云的客服曾收到过如下一番对话。 Newben被用户比喻为了“中国的K8s”这点另我们倍感意外,然而问题也接踵而至:Newben能当得起“中国的K8s”这个称号吗? 于是,从Newben的设计和功能特性两个方面我们认真地进行了思考。 Newben是什么? 大家所熟知的容器调度引擎比如:K8s, Swarm, Mesos等都是开源的,它们可实现的功能和在功能实现的方式上都不尽相同。Docker从2012年开源后的5年里,精灵云核心创始团队在接触企业用户的时候,尤其是军工、政务、金融等领域的企业,发现开源的容器调度框架技术并不能完全满足他们的需求。为什么这么说?调度引擎是容器最核心的模块,在PaaS这个关键的云计算领域不应该由国外来主导,它应该是完全自主可控且安全的。于是在这样的背景下,Newben应运而生。 Newben是精灵云全自主研发的容器调度引擎,也是目前国内唯一自研引擎,具备多项技术专利和著作专利,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能。关于Newben的详细介绍可参考文章:《全自主研发容器调度引擎——Newben》,这里不再赘述。 (Newben的逻辑框架) 从Newben的逻辑框架图可以看出,最上层是高可用集群,中间接负载均衡器,底层接多个应用服务, Newben从设计之初就支持高可用,负载均衡和弹性伸缩,以及多服务挂载,这点和市面上开源的容器调度框架保持了一致。 Newben=“中国的K8s”? Kubernetes(K8s)是Google开源的容器集群管理系统,也是目前市面上最主流的容器调度管理系统,此外还有Mesos、Docker Swarm等。如下图所示,将Newben、K8s、Mesos和Swarm进行详细对比,会发现Newben事实上吸取了各开源调度引擎的长处,在网络、应用迁移、应用快照、模板、负载均衡、弹性伸缩、高可用、CI/CD集成、灰度发布和回滚、镜像集成、日志监控等方面对比开源技术都有着非常大的优势。 (Newben和开源容器调度框架的对比) 在此节选六大功能详细说明Newben的优势和特性: l可视化 从操作上来看, Newben将操作体验完全改良,所有操作均可视化,方便管理和维护的同时,可帮助用户实时检查错误避免失误。 l网络 Newben内置支持虚拟网络,支持多子网,支持公有云、主机托管环境、二层和三层网络以及控制网络访问安全。 l弹性伸缩 除了可以支持CPU的弹性伸缩之外,Newben还可支持内存的弹性伸缩,这让Newben可适应更多场景。 l应用服务和应用栈 在创建应用服务方面,Newben摒弃了K8s需要多次执行命令工具的操作模式,采用向导式创建的方式,简化了繁琐的配置工作,且支持应用服务分组创建应用栈,既保证了创建应用配置的流畅性也实现了应用服务之间的灵活访问控制。 l负载均衡 Newben可实现负载均衡和高可用集群,可通过向导方式创建并呈现负载均衡、高可用集群和应用服务之间的拓扑结构,更清晰直观。 l调度规则 Newben的调度规则基于标签选择和指定主机名,通过指定主机的调度规则,可以实现特殊硬件需求的定义,例如Mysql需要主机具备更快更安全的磁盘,负载均衡对外发布时需要指定具有特定外部网络的主机。Newben的调度规则基础决定了Newben可同时支持分散、聚集和主机唯一的调度策略。通过分散可以更好的分摊服务均衡性提高可用性,通过聚集可以最大限度的榨取主机资源避免浪费,同时,聚集策略也会优先的将容器创建在已经有实例运行的服务器上,可以快速的创建容器,减少镜像拉取时间和磁盘空间浪费。 总结 综上所述,不可否认的是拥有庞大代码贡献源的K8s仍然有其不可逾越的优势,也是目前容器技术应用中的主流。而Newben的设计也曾集合K8s所长,并在精灵云容器平台验证的过程中不断优化和完善。通过对比分析,Newben在K8s的长项,比如轻量化、容器调度规则、负载均衡、弹性伸缩和高可用等方面都可与其娉美,除了不开源,Newben也的确称得上“中国的K8s”这个称谓。 Newben的名字取自“牛犇”的谐音,意在构建一个稳定、牢固的容器调度引擎。如今在支撑过数万用户和数十万的容器调度考验后,Newben已经成为目前国内定制能力最强,支撑功能最丰富的容器调度框架。而Newben并未开源,现已全面内置在精灵云的EcOS平台上,大家可前往精灵云官网申请下载试用。(地址:www.ghostcloud.cn)
作者:精灵云 众所周知,传统开发模式已经面临了诸多难题。首先,在代码集成方面,因为没有合适粒度的代码合并,大规模的合并会有很大的风险,且传统开发模式中没有自动化测试,以至于测试周期特别长,人力成本高昂。其次,传统开发中的单体应用,通常都很庞大,单体应用把所有模块都包含在一个应用中,升级单个模块也需要对整个应用进行升级,所以升级和创新都很不方便,常见的比如银行系统就是如此。 同时,传统的开发模式中单独采用微服务的情况也会由于服务数量多而没有有效管理,在大批量的部署和测试的时候容易出现问题。除此之外,传统开发模式更面临着开发和测试的环境不一致,以及由于没有有效的升级方式导致业务停止的问题。 (如何一步步实现DevOps) 为了解决传统开发模式中的问题,目前一个比较流行和彻底的方案是:DevOps流程+微服务理论+使用容器和容器编排工具。在这里展示给大家的是一个理论上的基于容器的CI/CD流程,实际上,DevOps的前身就是CI/CD,实现了CI/CD后,再加上一些发布、部署等标准和管理就构成了DevOps。 (基于容器的CI/CD流程) 实现DevOps之自动化测试 那么如何来完整的实现DevOps呢?通常情况下,传统开发模式转向DevOps的第一步是解决自动化问题。要想持续的集成代码,没有自动化测试来保证快速地进行合并后的验证,风险是很高的,而且没有自动化测试,测试环境很有可能成为整个开发环节的瓶颈。只要是经常使用的测试用例,需要尽量自动化每一个操作。 自动化工具很多,对自动化工具和测试框架的选择是需要根据具体应用来决定的,这里只列举其中常用的一小部分——Jenkins、Python、Robot Framework、Shell Script、Selenium、Ansible和Docker Container Orchestration——这些都是我们面对客户需求的时候经常用到的。然而,不是每次集成都需要跑完所有的测试用例,因而对测试用例进行管理,可提高持续集成的效率。 (自动化测试) 如何来判断自动化测试用例和框架是否有效?常见的判断依据有三个,首先是自动化测试的覆盖率。如果通过率再高,覆盖率低,那么自动化测试就不是一个有效的,目前企业级比较认可的覆盖率是75%左右,再提高也比较困难。其次是看漏测率,有时候自动化用例本身也可能有Bug,前期阶段通过比较手动测试自动化测试的结果来判断自动化测试是否有效。最后,当产品发布后根据从客户来源的bug数目来判断自动化测试用例是否有效。另外,要稳定一套自动化用例,一般需要2个版本周期或者更长。 实现DevOps之持续集成和持续交付 持续集成一个主要的功能是让每个工程师的代码提交都不会影响到Mainline,以保证Mainline的可发布状态。实施持续集成时,需要注意的地方: 指定规则,提交代码时要一并提交新功能的测试用例。 集成的粒度和频度也很关键。一般一个小模块,不超过1周的时间。 (持续集成) 持续集成通过后,根据应用程序的特点,在经过系统集成测试、性能测试、稳定的自动化测试通过率以及管理层的批准后,才是可持续交付和部署的应用程序。 持续交付有两种方式,一种就是基于DevOps的自动持续发布,一种是多个功能一并发布。在持续交付的过程中需要注意三个问题: 1.部署到生产环境后也要有相应的测试; 2.使用Toggle控制功能是否生效; 3.要有回滚的手段(灰度发布)。 实现DevOps之微服务化 有了自动化测试、持续集成和持续交付三块,已经基本实现了DevOps的粗略流程,而为了提高DevOps的效率, 往往需要结合微服务。一个微服务理论上只做一件事,并能用任何语言编写。微服务是松耦合的,意味着一个应用的微服务可以被部署到不同机器上并通过resAPI/RPI来通信,当定义好微服务的API之后,每个team便能独立开发。因此,微服务更容易被测试和实现CI/CD。 (微服务的最佳实践) 在微服务的最佳实践中,首先不得不提容器。容器的轻量化让微服务启动很快,同时容器的跨平台性保证了微服务可以在不同的平台启动起来。第二种是使用代理服务器来访问微服务,现在最常见的方式是前端连接一个代理服务器,后端再连接运行同一个微服务的几个相同容器。一个大的应用会使用几十上百个微服务,和微服务不相关的库文件不建议放在容器中。实践微服务中,建议使用配置管理工具(ansible, puppet等)和容器服务编排工具(K8s,Swarm,EcOS等)。 (康威定律) 在开发微服务中康威定律起到了很大的作用。康威定律指出任何软件代码都是用来反映组织机构而产生的,如果要采用微服务的开发方法,就需要是把团队划分成多个小团队,由每个小团队负责一个或多个微服务。所以如果要转成DevOps和CI/CD的开发模式,就需要采用这种敏捷开发模式,一个团队7-8个人比较合适。 实现DevOps之容器技术 另外一个实现DevOps的重要手段是Docker容器技术。和传统的Hypervisor相比,Docker没有自己的操作系统,它使用宿主机的操作系统,而Hypervisor需要建立虚拟机,每个虚拟机需要装一个操作系统,因此Docker效率更高更节约资源。如果一台物理机可以操作20个虚拟机,便至少可以启动200个容器,且启动容器的时间是秒级。 Docker和Hypervisor的对比 使用容器编排工具可以实现对容器的健康检查、动态伸缩、灰度发布和蓝绿发布等功能。而我们提到的容器编排技术,比如K8s,Mesos和Swarm,都是开源的工具,这里我们把精灵云自研的容器编排工具EcOS和开源工具进行了简单对比。 (几种常见容器编排技术的比较) K8s是由谷歌发起的开源框架,最大的问题是太笨重,对使用者来说操作很复杂,学习周期很长。Swarm是Docker公司开发的工具,Docker本身不能支持的功能,Swarm也是无法支持的。如图所示,EcOS是精灵云自主开发的容器编排技术,最大的特点是结合了开源工具的优点,在应用编排上完全可视化。EcOS内置的自研调度框架Newben,在网络、应用迁移、负载均衡、弹性伸缩、调度规则等方面也比开源框架有比较大的优势,在支撑过数万用户和数十万的容器调度考验后,Newben是目前国内定制能力最强,支撑功能最丰富的调度框架。 实现DevOps之灰度发布 如果一个服务由多个相同的容器运行,灰度发布则先对其中的部分容器先进行升级,可混合让老版本和新版本的容器同时提供服务。如发现新服务没有什么问题,则可以把所有剩下的微服务再全部进行升级。 (灰度发布) 实现DevOps之版本控制 DevOps下版本控制的原则是始终在Mainline上进行新功能的开发,并经由持续集成的自动化测试对代码进行验证。当功能开发到一定阶段的时候,对可RC的代码创建分支,该分支上停止新功能的开发,只求稳定。当产品发布后,如发现问题,可出hotfix。根据时间点和具体需要,可把其他分支的hotfix merge到Mainline上。 (版本控制原理) Q&A Q1.微服务是一个抽象概念还是说有具体的工具来实现? A1:微服务是一种软件架构风格,它以专注于单一责任与功能的小型功能模块为基础,利用模块化的方式组合出复杂的大型应用程序。另一方面,也可以说微服务是一种编程思维,如果是想要开发出能在云上运行的微服务,可参考云原生的12因素法则。 Q2.请问传统的非常庞大的单体应用如何逐步改成微服务? A2:1)新的功能开发使用微服务方式。 2)把边缘模块换成微服务方式。 3)将前端和后端分离 4)抽出服务,逐步替换。这一步尤为复杂,需要由经验丰富的架构师来主导。 Q3.请问一下刚所说的75%覆盖率,是前后端全部的? A3:平均覆盖率为75%。 Q4.你们这边Devops应用在什么量级别? A4:Ghostcloud已经结合Jenkins和EcOS,完全实现了自动化的持续集成。但是目前还有一些手动的系统集成测试和性能测试。 Q5.您所说的企业级应用指的哪种类型的?包括一些复杂的saas应用吗?有没有一些实际的项目事例的自动化测试覆盖率供参考? A5:银行的管理系统,电商的平台,企业的云平台管理软件等,大型的由企业使用的软件都可以叫企业级应用。SaaS当然可以算是企业级应用。国外很多大公司的代码覆盖率都是这个70%~80%值,可以看一下这篇文章:http://www.bullseye.com/minimum.html Q6. web ui的自动化测试用的什么工具,比如input框如何search到? A6:web ui的测试工具很多,比如Robot Framework的Selenium. 对于input框这类元素,可使用xpath来定位。 Q7.负载均衡有啥好的方案 怎么自动发现应用拓扑(ip)变化. A7:我们目前使用的是HAProxy,并且正在开发Nginx的支持。自动发现使用的是ETCD+DNS+Wather的方式,当容器IP地址发生改变,可自动捕获,并更新代理服务器的配置文件。 Q8.之前我们在搭建paas平台时,花费了很多时间在环境搭建、定位环境问题上,请问对于平台的搭建维护,有什么好的建议? A8:建议试一下EcOS,一键部署。www.ghostcloud.cn Q9. traefik专门用来做微服务负载均衡 国内用得多吗? A9:大多数还是用的HAProxy和Nginx吧。 活动详情链接:https://m.qlchat.com/topic/230000369641573.htm?isGuide=Y 验证码:333
背景: 大家所熟知的Docker容器调度引擎包括,K8S, Swarm, Mesos和Rancher,这些调度引擎都是开源的国外引擎,各有各的特点。在同客户和圈内人士沟通中,很多人直言国内容器创业公司大多只是将各种开源组件集成在一起,同质化严重,没有核心竞争力。作为国内第一批的容器创业公司——Ghostcloud精灵云,深知国内需要在容器的诸多领域拥有真正完全可控,同时具有核心竞争力的产品。因此,容器云平台最核心的调度引擎迫切需要一个完全可控,自主的产品,在这种背景下Newbon应运而生。Newbon取自“牛犇”的谐音,意在构建一个稳定的,牢固的容器调度引擎。接下来就简单介绍一下Newbon的实现细节,并通过一系列视频进行功能展示。 组成: Newbon包含几个核心部分: l Api-Server : 为UI和第三方集成提供调用接口。 l Scheduler : 负责解释定义,收集数据和执行调度。 l DNS/ETCD : 负责服务注册,服务发现,订阅和容器主机访问。 l Executer :负责执行Server端下发命令。 l Monitor : 负责监控主机和容器的各种状态。 l Heapster : 负责健康检查。 l Calico+ : 经过二次开发的基于Calico的网络插件。 l Nginx : 七层负载均衡器。 l HAProxy : 四层/七层负载均衡器。 l Keepalive : 高可用组件。 典型逻辑结构: 下面是典型的逻辑结构图: 最上层是高可用集群,中间接负载均衡器,底层接多个应用服务,从这幅图就能看出,Newbon从设计之初就支持高可用,负载均衡和弹性伸缩,以及多服务挂载。 接下来我们重点介绍下Newbon中负责解释定义,收集数据和执行调度的核心组件Scheduler。 Scheduler功能包括: l 解释服务定义 l 选择合适的节点创建容器 l 监控节点和容器运行状态 l 服务注册和注销 l 自动扩容和缩容 l 灰度升级(Rolling Upgrade) 解释服务定义: 结合解释服务定义,下面是一个服务示例: 应用支持的扩展配置: 健康检查配置支持(TCP): 健康检查配置支持(Http): 服务配置: 调度配置: 高可用集群: 服务发现,服务注册和注销: 在容器调度引擎中,这三个过程可以说是最核心的地方。Newbon借鉴了多个调度引擎的优点,使用了ETCD和DNS并结合控制服务器来实现以下功能: · 创建服务后自动创建DNS记录用于访问相关容器: § A记录,通过域名访问单个容器和一组容器。 § SRV记录,记录容器提供的服务协议、端口、优先级和提供服务的IP列表。 · 容器状态健康后注册SRV信息: · 当容器停止或处于不健康状态时,会注销DNS A记录和SRV信息。 下面就是一个DNS纪录示例: 自动扩容和缩容: 这一部分主要通过以下方式实现: Agent monitor 模块实时监测容器cpu和内存使用情况: 定义性能指标阈值和容器运行上限和下限。 扩容: 当容器平均性能指标超过阈值一段时间(1分钟)后启动自动扩容,创建更多容器以达到 阀值要求的90%。 当没有主机资源运行新容器时,自动申请新主机(限公有云环境)。 缩容: 当一段时间(3分钟)负载持续低于阈值80%启动缩容。 优先删除新创建容器和主机,以释放资源和降低运营成本。 下面是一个扩容的示意图: 功能展示: 接下来我们将通过视频的方式给大家展示Newbon所支持的一系列功能,本期重点展示Newbon的自动扩展功能: https://v.qq.com/x/page/i03670gm0fh.html Q&A: Q: 既然已经有K8S, Swarm, Mesos, Rancher等调度引擎,为什么精灵云还要自主研发调度引擎Newbon呢? A: 调度引擎是容器云平台最核心的部分,开源固然可以快速上手,快速搭建系统,但是任何一个开源系统实际是由一个或多个公司主导的,因此在使用中经常会受制于国外。开源系统由于需求和贡献者多,因此会导致系统异常庞大,企业往往只需要使用20%功能,但是却要去维护80%的其他系统。因此,精灵云从一开始就选择自主研发调度框架,做到完全自主可控,为企业级用户提供更好的服务。 Q: Newbon 跟其他容器调度相比有何优势? A: Newbon吸取各调度引擎的长处,可以说是目前国内定制能力最强,支持功能丰富的调度框架,包括在网络、应用迁移、应用快照、模板、负载均衡、弹性伸缩、高可用、CI/CD集成、灰度发布和回滚、镜像集成、日志监控等方面都有着非常大的优势。 Q: Newbon稳定吗?有多少用户在使用? A: Newbon虽然是最近才对外公布,但实际是精灵云核心研发团队多年的积累。团队在内核和分布式领域有丰富的经验,主要来自于Veritas, EMC,微软和IBM,平均拥有10年以上分布式系统研发经验,曾负责华为存储软件的OEM工作。Veritas可以说是分布式领域的兵工厂,它的Veritas Cluster Server是最早的分布式中间件,K8S容器负责人Dawn Chen也曾就职于Veritas。因此,Newbon是集众家之所长,并且在精灵云的公有云上得到了充分的验证,支撑数万用户和数十万的容器调度。Newbon从EcOS 2.0开始内置,目前已经在多家中大型企业得到运用。
私有云有巨大的价值,它对数据、安全性和服务质量进行最有效的控制,企业选择私有云是基于自身信息化建设的考虑,主要驱动力包括降低软硬件成本、实现应用系统快速部署、应对业务负载突发性增长需求、构建安全可靠自主可控的基础架构环境等。
公有云和私有云分别有着自己的优势,也不能面面俱到,因此,公有云与私有云的混合使用被越来越多的企业采纳,此模式赋予公司对于云资源使用情况的极高水平的控制能力,合理地分配云资源,成为企业上云的必修课,因此,容器技术,云管理平台,混合云(公有云+私有云)等新概念成为了企业的宠儿。
容器技术,配合云管理平台,够对企业的混合云和IT基础架构进行有效地管理,可将企业自有主机和公有云主机统一管理,并将企业应用的容器按需分配在不同主机上,轻松实现应用在混合云上的实现。
如果要推荐的话,就推荐我们Ghostcloud吧,实实在在做技术深耕的Docker容器云平台,私有云混合云管理,支持K8s。