DevOps:软件架构师行动指南2.1 概述

第2章 云 即 平 台

我们对云计算的重新定义包含了我们已经做的一切。

……计算机行业是唯一一个比女性时装更容易受时尚驱动的行业了。

……我们将发布云计算公告,因为如果橙色成为新宠,我们就会制作橙色的罩衫。我可不会和这个对着干。

——Larry Ellison

2.1 概述


描述云时,常用电网进行类比。当要使用电时,你将设备插到标准电路上并打开开关。你要为所使用的电付费。大多数情况下,你不用关心各个电力公司是如何发电和传输电力的。但停电时,就无法对此保持无视。此时你会意识到电力的使用之下有着复杂的机制,即便你对导致停电的具体机制仍然一无所知。

美国国家技术与标准研究所(National Institute of Standards and Technology,NIST)给出了一个关于云的描述,其使用了下面这些元素:

按需自助服务。用户可以单方面供给计算能力,如服务器时间和网络存储,而无需与服务供应商进行人工交互。

广泛的网络接入。能力通过网络提供并借助标准机制进行访问,该机制由异构的瘦或胖客户平台推广使用(例如,移动电话、平板电脑、笔记本和工作站)。

资源池化。服务供应商的计算资源被汇聚起来通过多租户模式提供给多个用户,不同的物理资源和虚拟资源按照用户的需要动态地进行分配和重新分配。还有位置独立性,因为客户通常无法控制或者也不知道所提供资源的确切位置,但能够在更高的抽象层次指定位置(如国家、省或者数据中心)。这些资源包括存储器、处理器、内存以及网络带宽。

快速弹性。能力能够弹性地提供和释放,在一些情况下是自动的,使规模快速地向外和向内扩展以适应需求。对用户而言,能够供给的能力常常似乎是无限的,并且可以在任何时间分配任意数量。

可计量的服务。云系统能够利用计量能力来自动控制和优化资源的使用,该计量能力依据服务的类型进行了某种程度的抽象。资源使用能够被监控、控制,并可以被报告,因此,为服务的供应商和用户提供了透明度。

从运维和DevOps的角度,这些特性中最为重要的是按需自助服务和可计量的服务。即使云提供了似乎能够任意取用的无限资源,但你仍旧要为使用付费。如我们将要讨论的,其他特性也很重要,但不像按需自助服务和按使用付费这样占主导地位。

美国国家技术与标准研究所的特性描述隐含了云服务的供应商和用户之间的区别。本书的视角主要是云服务的用户。如果你的组织运营了自己的数据中心,那么这种区分可能会存在一些模糊之处,但即使在这类组织中,通常也不会认为数据中心的管理在DevOps的范畴中。

如表2-1所示,美国国家技术与标准研究所还对来自于云供应商的不同类型的服务进行了归类。美国国家技术与标准研究所定义了3种类型的服务,这些服务都能够应用于DevOps。

软件即服务(Software as a Service,SaaS)。用户能够使用运行在云基础设施上的供应商应用。各种客户端设备通过像Web浏览器这样的瘦客户端接口(如,基于网页的电子邮件)或者应用接口来访问应用程序。除了有限的与用户相关的应用配置设置外,用户不用管理或控制底层的云基础设施,包括网络、服务器、操作系统、存储,甚至单独的应用程序功能。

表2-1 云服务模型

服务模型 示例

SaaS:软件即服务 电子邮件、在线游戏、客户关系管理、虚拟桌面等

PaaS:平台即服务 Web服务器、数据库、应用服务器、开发工具等

IaaS:基础设施即服务 虚拟机、存储器、负载均衡器、网络等

 

平台即服务(Platform as a Service,PaaS)。?用户能够向云基础设施中部署自建的或采购的应用程序,这些应用程序使用了供应商支持的编程语言、库、服务和工具来创建。用户不能管理或控制底层的云基础设施,包括网络、服务器、操作系统或存储器,但能够控制所部署的应用,并可能对应用托管环境进行配置设置。

基础设施即服务(Infrastructure as a Service,IaaS)。用户能够配置处理器、存储器、网络以及其他基础计算资源,这里用户能够部署和运行任意软件,可能包括操作系统和应用程序。用户不能管理和控制底层的云基础设施,但能够控制操作系统、存储器,以及部署的应用,并可能对网络模块的选择有一些控制(如主机防火墙)。

我们首先探讨了云涉及的机制,接下来我们探讨这些机制对DevOps的影响。

时间: 2024-09-20 06:27:53

DevOps:软件架构师行动指南2.1 概述的相关文章

《DevOps:软件架构师行动指南.》导读

本节书摘来自华章出版社<DevOps:软件架构师行动指南.>一书中作者伦恩·拜斯(Len Bass) [澳]   英戈·韦伯(Ingo Weber)    著 朱黎明(Liming Zhu)   前言   多年以来,我们一直在探索研究运维中的问题.自然而然地,我们也一直在追踪DevOps运动.它正在沿着Gartner成熟度曲线向上发展.这种现象有着坚实的业务原因.我们能够找到从信息技术经理视角对DevOps的探讨(例如小说<凤凰项目:一个IT运维的传奇故事>),也能找到从项目经理视

DevOps:软件架构师行动指南1.1 概述

第一部分 背 景 这一部分为本书的后续章节提供了必要的背景知识.DevOps是一项运动,它设想在开发组和运维组之间没有冲突.DevOps的出现与云发展成为大小型组织的基本平台是同时发生的.第一部分有3章. 在第1章中,我们将定义DevOps,并且讨论DevOps的各种驱动力.DevOps是一个包罗万象的术语,它可以涵盖多个含义,包括让开发人员和运维人员互相沟通:允许开发团队自动化地部署到生产环境:当在生产环境中发现错误时,让开发团队成为第一个响应者.在这一章中,我们将梳理出各种关注点,并且关于D

DevOps:软件架构师行动指南3.1 概述

第3章 运 维 在DevOps社区有一些核心思想家,他们知道IT管理是怎么回事,也意识到在DevOps情境下使用ITIL.也有一些人实际上是很宽松地把握这一点的-- --Rob England,http://www.itskeptic.org/devops-and-itil 3.1 概述 正像DevOps不只是简单包含开发那样,它也不只是简单包含运维.然而,要想理解DevOps,先理解这样一个情境是非常重要的--开发和运维的那些人是从哪里来的.在本章,我们将展示由IT运维组执行的活动.有多少活动

DevOps:软件架构师行动指南1.7 障碍

1.7 障碍 如果DevOps解决了开发中长期存在的问题并有如此明显的好处,为什么不是所有的组织都采用DevOps实践呢?本节将探讨采用DevOps时遇到的障碍. 1.7.1 文化及组织类型 在讨论DevOps时,文化很重要.在跨组织以及同一个组织中的不同群体之间,与DevOps相关的文化问题都会影响它的形式与采用.文化不仅取决于你的角色,而且取决于你所在组织的类型. DevOps的目标之一是缩短新功能或新产品投向市场的时间.在采用DevOps实践时,组织要考虑的一个问题是缩短面市时间所带来的收

DevOps:软件架构师行动指南1.2 为什么是DevOps

1.2 为什么是DevOps 从很多方面来讲,DevOps是对缓慢发布的问题做出的响应.发布投放到市场的时间越长,从中获得的功能或质量提升的收益就越低.理想情况下,我们希望持续发布.常常用术语持续交付或持续部署来表示.我们在第5章和第6章讨论这两个术语的细微差别.在本书中,我们使用术语持续部署,或部署.我们开始时先描述一个正式发布过程,然后深入探讨缓慢发布的一些原因. 1.2.1 发布过程 向客户发布新系统或现存系统的新版本是软件开发周期中最敏感的步骤.不论系统或版本是对外发布.直接由客户使用还

DevOps:软件架构师行动指南DevOps:软件架构师行动指南2.3 独特的云特性对DevOps的影响

2.3 独特的云特性对DevOps的影响 云影响DevOps的3个独特特性是简单地创建和切换环境的能力:轻松创建虚拟机的能力,以及数据库的管理.我们首先讨论环境. 2.3.1 环境 在我们的上下文中,环境是足够执行软件系统的一组计算资源,包括所有支持软件.数据集.网络通信,以及执行软件系统所需定义的外部实体. 这个定义的关键点是:除了明确定义的外部实体外,环境是自包含的.一个环境通常独立于其他环境.在第5章中,我们会看到一些环境,例如开发.集成.用户测试,以及生产环境.在第12章的案例研究中,环

DevOps:软件架构师行动指南1.9 更多阅读材料

1.9 更多阅读材料 通过下列资源可以阅读有关DevOps的不同定义: Gartner技术成熟度曲线[Gartner]把DevOps归为处于上升期:http://www.gartner.com/DisplayDocument?doc_cd=249070. AgileAdmins从敏捷角度解释了DevOps:http://theagileadmin.com/what-is-devops/. 从下面列出的最近调查及业界报告中,可以找到更多的内容: XebiaLabs对与DevOps相关的主题做了广泛

DevOps:软件架构师行动指南2.2 云的特性

2.2 云的特性 云最根本的推动者是构筑在成千上万通过因特网访问的主机之上的虚拟化技术.我们首先探讨以IaaS为中心的特性,即虚拟化和IP管理,接着是PaaS提供的一些特性.然后,我们探讨一些普遍的问题,例如数以万计的主机所带来的后果,以及云是如何支持弹性的. 2.2.1 虚拟化 在云计算中,虚拟机(Virtual Machine,VM)是物理机的模拟.一个虚拟机镜像就是一个文件,其中包含了可引导的操作系统和在其上安装的软件.虚拟机镜像提供了启动虚拟机(或者更准确一些,虚拟机实例)所需的信息.本

DevOps:软件架构师行动指南1.4 DevOps与敏捷

1.4 DevOps与敏捷 DevOps的一个特征是强调DevOps实践与敏捷实践的关系.本节将把DevOps实践覆盖在IBM规范敏捷交付上.我们的重点不是解释规范敏捷交付,而是说明DevOps中增加的内容.如果想了解规范敏捷交付,可参阅<Disciplined Agile Delivery: A Practitioner's Approach>一书.如图1-2所示,规范敏捷交付包含3个阶段--开始.构造和转换.在DevOps的语境中,我们把转换解释为部署. DevOps实践影响所有这三个阶段