跳到主要内容

第 3 章 云计算入门

概述和学习目标

本章对云计算格局进行了全面的探讨。我们踏上了云计算历史的旅程,从其概念起源到对现代IT行业的变革性影响。深入研究各种类型的云服务,我们揭开了基础设施即服务 (IaaS),平台即服务 (PaaS) 和软件即服务 (SaaS) 之间的区别。此外,本章还阐明了云部署模型的复杂性,包括公共云、私有云、混合云和社区云。在本章结束时,您将对云的演变,其多样化的服务模型以及为特定业务需求选择正确的部署模型时的战略考虑有了深入的了解。

在本章结束时,您应该能够:

  • 讨论云及其主要服务的含义和重要性
  • 解释不同的云部署模型
  • 熟悉在通用云服务中部署应用程序的功能和步骤
  • 熟悉跨流行云平台部署广泛使用的服务所需的特性和程序

云是什么?

将天空想象成一个无边无际的广阔空间,在那里你可以存储你的数字梦想,从任何地方访问它们,并无限地扩展你的野心。本质上,这就是云的魔力。

云不是天空中难以捉摸的堡垒; 它是一个虚拟空间,一个数字游乐场,数据可以找到它的家。云无需在您的个人设备上ho积信息,而是允许您将其卸载到功能强大的服务器上,这些服务器隐喻地漂浮在这个数字天空中。这些服务器不与物理位置绑定; 它们分散在全球范围内,形成了无缝运行的网络。

想象一下,你有一个文件宝箱-文件,照片,视频。传统上,无论你走到哪里,你都会带着这个箱子。有了云,你只需把你的宝藏扔到天空。它们安全地存储在这个虚拟领域中,您可以随时随地访问。你不再被数据的重量所负担; 它毫不费力地漂浮在上面,等待你的命令。

除了存储之外,云还支持协作和创新。可以将其视为共享画布,多个艺术家 (或合作者) 可以同时绘画。无论您是企业、开发人员还是个人,云都提供了一个没有物理约束束缚的增长平台。需要更多空间吗?这就像扩大天空一样容易。

云不仅仅是一个技术奇迹; 这是一场革命。它使企业能够专注于其专业知识,而将基础架构的繁重工作留给了云提供商。它促进创新,使开发人员可以实现远大梦想,而不必担心潜在的复杂性。

因此,下次您毫不费力地上传照片,共享文档或流式传输视频时,请记住-您正在利用云的无限可能性,天空不是极限的地方; 这是你数字旅程的起点。

你为什么要费心?

灵活扩展成功

想象一下,你是一个在电子商务平台上工作的软件开发人员。在重大销售活动期间,随着客户争相购买,您的应用程序会遇到流量激增的情况。如果没有云基础架构,您将受到最初设置的服务器容量的限制。如果流量超出预期,该网站可能会崩溃,导致销售损失和客户沮丧。现在,进入云。使用云服务,您可以根据需求动态扩展资源。在销售期间,系统可以自动分配额外的服务器功率来处理增加的负载。这种弹性可确保您的应用程序保持响应和可用,避免潜在的收入损失。对于产品经理而言,了解这种灵活性意味着能够在高峰时期保证无缝的客户体验,从而提高产品的可靠性和客户满意度。

快速原型制作和创新

作为产品经理,您的任务是为软件产品启动新功能。传统上,这可能涉及采购和配置物理服务器的漫长过程。但是,在云时代,开发人员可以利用基础架构作为代码 (IaC) 来即时配置资源。

借助云服务,开发人员可以在没有物理基础架构约束的情况下快速原型化和测试新功能。产品经理受益于加速的开发周期,使他们能够更快地将创新功能推向市场。此外,云平台通常提供各种预构建服务,例如数据库和机器学习工具,使开发人员能够集成高级功能而无需从头开始。了解云的优势使产品经理能够就功能时间表,资源分配以及最终产品的上市时间做出明智的决策。在这两种情况下,对云技术的扎实掌握使软件开发人员和产品经理能够应对挑战,优化性能并推动各自角色的创新。如果您想了解更多关于云技术的信息,我们建议您云基础设施技术简介 (LFS151x),免费在edX上审计。

云的简史

在技术发展的广阔环境中,云是一项高耸的成就,重塑了我们存储,访问和处理信息的方式。我们穿越云历史的旅程将我们从卑微的起点带到了我们今天穿越的广阔数字前沿。


先兆与先驱 (1950-1990年代)

云的根源可以追溯到20世纪50年代,当时大型计算机为集中式计算奠定了基础。然而,直到20世纪90年代,这个词 云计算 开始形成 (要了解更多信息,请查看TechTarget的 “云计算的历史解释”)。像Salesforce和Amazon Web Services (AWS) 这样的早期先驱开始尝试将计算能力和存储作为服务提供的概念。


虚拟化的诞生 (早期21世纪00年代)

虚拟化成为云崛起的关键催化剂。像VMware这样的技术允许多个虚拟机在单个物理服务器上运行,从而优化了资源利用率。这标志着范式的转变,使硬件的使用更有效,并为我们与云关联的可扩展基础架构奠定了基础。


公共云提供商的崛起 (中21世纪00年代)

亚马逊网络服务 (AWS):

  • 2006: AWS推出了弹性计算云 (EC2),这被认为是第一个主要的公共云计算产品,标志着AWS进入了云世界。
  • 2007: AWS推出了简单存储服务 (S3),并在接下来的几年中推出了其他服务,巩固了其作为云计算先驱的地位。

谷歌云平台 (GCP):

  • 2008: Google App Engine发布,为开发人员提供了一个构建和部署web应用程序的平台。这可以被认为是GCP的初始入口点。
  • 2012: 作为Google Cloud Platform正式推出,提供更广泛的云服务,例如计算引擎,云存储和BigQuery。

微软Azure:

  • 2008: 微软宣布了Red Dog项目,该项目后来被称为Windows Azure。这标志着该平台的初步发展。
  • 2010: 作为Windows Azure正式推出,提供基于云的计算、存储和网络服务。后来更名为Microsoft Azure 2014年。

AWS被认为是云计算领域 (2006) 的先行者,开创了公共云平台概念。谷歌紧随应用程序引擎的2008年,但正式推出了更广泛的GCP 2012年。微软以Project Red Dog 2008年进入现场,正式推出Azure 2010年。

值得注意的是,云计算作为一个概念在这些特定平台之前就已经存在。然而,这三大公司在塑造现代云格局和加速其广泛采用方面发挥了至关重要的作用。

在此期间,风景非常活跃。许多其他较小的提供商也存在并争夺市场份额,提供专业服务或迎合特定的利基市场。同样重要的是要记住,在这段时间里,“云计算” 的定义仍在演变。如今,其中一些提供商可能没有被归类为严格的云提供商,但它们在为现代云生态系统奠定基础方面发挥了至关重要的作用。


平台即服务 (PaaS) 和软件即服务 (SaaS) 时代 (21世纪00年代后期-21世纪10年代早期)

随着 平台作为服务 (PaaS)软件作为服务 (SaaS)。PaaS平台如Google App Engine、Cloud Foundry、AWS Beanstalk等,为开发人员提供了构建和部署应用程序的工具,而无需管理底层基础架构。同时,Dropbox和Salesforce等SaaS产品体现了直接通过云交付软件的潜力。


混合云和多云战略 (目前)

在当今时代,组织采用混合和多云战略。 混合云 将本地基础架构与云服务相结合,提供灵活性和合规性。同时, 多云战略 涉及使用来自多个云提供商的服务,减轻供应商锁定并优化成本。随着云计算进入成熟阶段,企业将继续调整其方法以满足各种需求。


创新和未来视野

云的旅程远未结束。创新如 无服务器计算, 边缘计算,以及人工智能的进步继续塑造其轨迹。随着数字格局的扩展,云仍然处于最前沿,使企业能够扩展,创新和重新定义可能性。

在短短几十年中,云已经从概念概念转变为我们数字生活中不可或缺的一部分。它的历史证明了人类的独创性,展示了我们将雄心勃勃的梦想变成有形的,变革的现实的能力。当我们展望未来时,云的故事不断展开,预示着创新和相互关联的可能性的持续传奇。

云的类型

接下来,让我们看一下不同类型的云。


1.基础设施即服务 (IaaS):

  • 它是什么: 想象你在盖房子。IaaS就像租用土地和基本公用事业 (电,水等)。您可以自由地按照自己的方式设计和建造房屋。
  • 对于开发人员: 借助云中的IaaS,开发人员可以获得基本工具 (服务器,存储和网络) 来创建和管理自己的数字 “房屋” (应用程序)。就像拥有自己的数字建筑工地一样。

**2.平台即服务 (PaaS): **

  • 它是什么: 现在,把PaaS想象成雇佣一家建筑公司来建造你的房子。你不必担心购买土地或管理建筑工人的细节; 你只要告诉公司你想要什么,剩下的由他们来处理。
  • 对于开发人员: 在云中,PaaS允许开发人员只专注于构建和改进他们的应用程序。他们不需要费心 “构造” 细节,如服务器; 他们只是专注于创建一个伟大的 “房子” (应用程序)。

3.软件即服务 (SaaS):** **

  • 它是什么: SaaS就像租一间家具齐全的房子,而不是建造一间。你搬进来,你需要的一切都已经在那里了 -- 家具、电器、一切。
  • 对于开发人员: 在云中,SaaS提供了完全开发的应用程序,开发人员和用户可以立即使用它们,而不必担心构建或维护任何东西。这就像搬进现成的 “数字房子”。让我们看一些其他概念。

4.功能即服务 (FaaS):** **

  • 它是什么: FaaS就像房地产市场中合作空间的概念,自由职业者,企业家,小型团队根据需要访问设备齐全的办公室,而无需承诺长期租赁。你只需出现,使用办公桌或办公室,所有的维护、公用事业和互联网服务都得到处理。此设置使您可以专注于工作,而无需管理办公空间。
  • 对于开发人员: 在云中,FaaS允许开发人员无需管理服务器即可部署应用程序。云提供商动态管理机器资源的分配。此模型允许开发人员专注于应用程序功能,根据使用情况扩展应用程序,并且仅支付应用程序在执行过程中消耗的资源。

请记住,这些只是描绘云类型的方法。对于开发人员来说,云就像一个巨大的工具箱,为构建数字“房屋” (应用程序) 提供了不同的工具和方式。

云部署模型

接下来,让我们深入研究不同的云部署模型:

  • 公共云在公共云领域,计算资源由第三方云服务提供商提供,并且可以通过internet向公众访问。最突出的例子是前三大提供商 -- 亚马逊网络服务 (AWS) 、谷歌云平台 (GCP) 和微软Azure,世卫组织提供全面的公共云平台,提供各种服务,如虚拟机、数据库和人工智能功能。其他著名的参与者是阿里云、IBM云、Oracle云基础设施 (OCI) 和提供类似功能的DigitalOcean。
  • 私有云与公共云的开放性相比,私有云是仅由单个组织使用的专有环境。这些可以在本地托管,也可以由第三方提供商托管。有许多工具,例如OpenStack,Hyper-V,XenServer,KVM或VMware的vSphere,它们可以使组织在自己的数据中心内建立私有云。确保对资源进行细致的控制和定制。
  • 混合云混合云融合了公共云和私有云的功能,从而实现了它们之间的数据和应用程序共享。这种方法提供了更大的灵活性和多样化的部署选择。Azure混合云、VMware Cloud Foundation和CloudHesive是主要的例子,它们将本地服务器与公共云服务无缝集成,提供统一的管理体验。
  • 社区云社区云在多个组织之间共享,具有共同的关注点,例如法规遵从性。这些组织在云中进行协作以实现其集体目标。例如,一个地区内的政府机构可能会选择遵守管理数据存储和安全性的特定法规的社区云。
  • 多云多云战略涉及利用来自多个云提供商的服务来避免供应商锁定、增强冗余和优化成本。例如,组织可能会使用AWS进行机器学习,使用Azure进行集成服务,使用Google Cloud进行数据分析,从而创建多样化的云生态系统。

这些部署模型根据组织的特定需求为组织提供了多种选择,考虑范围从可扩展性和控制到合规性和冗余。

主要云服务

让我们来看看一些主要的云服务。

  • 计算服务
    计算服务就像云的引擎,提供运行应用程序和处理数据的能力。把它们想象成软件背后的虚拟大脑。虚拟机 (vm) 充当通用计算环境,而容器 (例如由Google Kubernetes Engine (GKE),Azure Kubernetes Service (AKS) 或Rancher管理的容器),提供一种轻量级且可扩展的方式来打包和部署应用程序。
  • 存储服务
    将存储服务视为云的内存。对象存储,例如Amazon S3,Azure Blob存储或wasabi,就像一个庞大的数字仓库,您可以在其中存储和检索任何类型的数据。块存储 (例如Google Cloud持久磁盘) 提供了更传统的存储选项,而文件存储服务 (例如AWS Elastic file System (EFS)) 或者Azure文件存储将数据组织在文件结构中,以便于访问。
  • 数据库服务
    数据库服务充当大脑的存储库,存储和管理结构化数据。对于关系数据库,AWS RDS、Azure sql数据库或DigitalOcean托管数据库等服务提供了可扩展且高效的解决方案。如果您正在使用非结构化或半结构化数据,则MongoDB Atlas或Google Cloud Firestore等NoSQL数据库可提供灵活性。
  • 网络服务
    网络服务是云的连接器,可以在不同组件之间进行通信。虚拟网络,如AWS VPC、Azure虚拟网络、Oracle Cloud Infrastructure (OCI) 的虚拟云网络 (VCN) 或DigitalOcean的虚拟私有云 (VPC) 充当您的应用程序的数字基础设施。Cloudflare或Akamai等内容交付网络 (CDN) 通过将其缓存到更接近用户的位置来加快内容交付。
  • 安全和身份服务
    这些服务就像云的守护者,确保您的数据和资源得到保护。身份和访问管理 (IAM) 服务,如AWS IAM或Azure Active Directory管理谁有权访问什么。AWS KMS或Azure Key Vault等加密服务通过保护敏感信息增加了额外的安全层。
  • 机器学习和人工智能服务
    对于渴望在不成为AI专家的情况下为其应用程序添加智能的开发人员来说,机器学习和AI服务就像拥有个人AI助手一样。像谷歌AI平台或Azure机器学习这样的平台提供工具和框架。自然语言处理 (NLP) 服务,如AWS理解或谷歌云自然语言API,使分析和理解人类语言变得容易。
  • 无服务器计算
    无服务器计算类似于外包平凡的任务,使开发人员可以专注于编写代码。AWS Lambda或Azure Functions等功能即服务 (FaaS) 产品使您能够响应事件运行代码,而不必担心管理服务器。这就像拥有自己的编码精灵-只需编写功能,其余的由云负责。
  • 物联网服务
    如果您的软件涉及连接和管理物联网设备,那么物联网服务就像数字乐团的指挥。AWS IoT或Azure IoT Hub等平台可帮助您无缝连接、监控和管理IoT设备。对于边缘计算,在处理过程更接近数据源的情况下,Google Cloud IoT edge或Azure IoT Edge等服务提供了分布式解决方案。
  • DevOps和CI/CD服务
    DevOps和CI/CD服务是平稳高效的软件开发生命周期的促进者。诸如Jenkins或GitLab CI之类的连续集成工具可以自动执行代码更改的测试和集成。Kubernetes或Docker Swarm等容器编排工具有助于管理和部署容器化应用程序,确保不同环境的一致性。
  • 分析和大数据服务
    分析和大数据服务就像有一个数据科学家随叫随到。AWS EMR或Azure HDInsight等平台使处理和分析大型数据集变得容易。对于数据仓库,您需要快速存储和查询大量数据,Google BigQuery或Snowflake等服务提供了可扩展的解决方案。

在云生态系统中,这些服务无缝地协同工作,使开发人员能够专注于构建创新的应用程序,而不会被基础架构管理所困扰。服务的选择取决于项目的特定需求,无论您是在设计强大的数据库、实施机器学习还是为可扩展的应用程序编排容器。

实验室3.创建谷歌云计算机引擎

asset-v1-LinuxFoundationX+LFS162x+1T2024+type@asset+block@Chapter_3_Lab_-_Create_Google_Cloud_Compute_Engine.pdf

第3章总结

本章概述了云计算,将其定义为通过internet交付各种服务。它涵盖了关键服务模型,如基础设施即服务 (IaaS) 、平台即服务 (PaaS) 和软件即服务 (SaaS),以及部署模型,如公共、私有、和混合云。本章重点介绍了主要的云服务,例如计算服务,存储服务,网络服务等。