1
0
wiki/Tech/cloud-service/基础/基础架构即服务(IaaS).md
2024-06-19 17:56:04 +08:00

67 lines
6.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 基础架构即服务IaaS
description: 基础架构即服务IaaS
keywords:
- 基础架构即服务
- IaaS
tags:
- 技术/云计算
- 云计算/基础
author: 仲平
date: 2024-06-19
---
## IaaS 概述
基础架构即服务IaaS让您从本地 [IT 基础架构](Tech/cloud-service/基础/IT%20基础架构.md) 往轻松迈进了一步。这是一种即付即用的服务,由外部的第三方提供商根据您的需要,利用互联网(通过云)为您提供基础架构服务(如存储和虚拟化)。
**作为用户,您只需负责操作系统以及任何数据、应用、中间件和运行时,而提供商会给您访问和管理所需网络、服务器、虚拟化和存储的权限。**
**您无需维护或更新自己的本地数据中心,因为提供商会为您代劳。**此外您可以通过应用编程接口API或控制面板来访问和控制基础架构。
**IaaS 可以让您享受较大的灵活性:您可以仅购买所需的组件,然后根据需要进行扩展或缩减。**这样不仅开销低,而且无维护成本,从而使 IaaS 成为一种经济实惠的方案。
**IaaS 的一大用途就是快速、灵活地构建和拆解开发与测试环境。**您可以仅使用创建开发环境所需的基础架构,并在需要时进行扩展或缩编,完成后,您可以立即停用,这样就只需为所使用的内容付费。
**IaaS 的主要短板在于可能存在的提供商安全问题、多租户系统问题(提供商必须与多个客户端共享基础架构资源)以及服务可靠性。**但选择可靠且可信赖的提供商(具有可靠的历史和声誉)就可以避免这些问题。
## IaaS 与虚拟化、自动化和容器化的关系
IaaS 提供商可以免除在设置管理服务器方面的开销来简化开发人员体验。这通常依赖于虚拟化、容器和自动化所支持的云计算架构。对于开发人员来说,不必再考虑服务器管理工作,可以大刀阔斧地构建和部署应用。
通过虚拟化虚拟机VM来提供完整的环境这些环境充当具有其自身 CPU、内存、网络接口和存储的虚拟计算机系统。在 IaaS 中,这些是在数据中心的物理硬件系统上创建的。通过名为虚拟机监控程序的软件,用户可以将机器的资源与硬件分开并进行适当置备,以供虚拟机使用。
IT 自动化在每个 IaaS 产品的服务下工作,使底层虚拟机和其他基础架构能够无缝部署,并根据需要进行扩展和缩减以满足需求。跨系统或计算机组的多个任务和配置的自动化称为编排。
IaaS 产品还可以支持容器化,其中软件代码及其所有必要的组件(如库、框架和其他依赖项)均打包在自己的 Linux® 容器中,可以随时部署到计算环境(可以是 VM中。与虚拟机相比容器不包含自己的操作系统OS因此规模可能要小得多。
特定的 IaaS 解决方案可以帮助开发人员使用容器。其中一种解决方案是 Kubernetes这是一个开源容器编排平台可帮助大规模地管理分布式、容器化的应用。Kubernetes 负责自动化部署和管理容器。一些 IaaS 提供商可提供 Kubernetes 即服务。
## IaaS 与 DevOps 有什么共同点?
**DevOps 描述了一种在开发和运维交叉点的工作方式。**这种工作方式强调减少软件改进推进到部署所需要的时间以便用户更快地访问新应用。DevOps 方法要求开发团队和运维团队频繁沟通并作为队友进行协作。
**DevOps 时刻关注代码和动态基础架构使用的频繁变更,因此非常适合于 IaaS。**DevOps 强调在应用的整个生命周期中,确保日常运维任务自动化和环境的标准化。因此 DevOps 团队经常会使用微服务架构来构建软件,并通过 API 将这些服务彼此相连。这些都有助于团队更快地交付软件,专注于创建较小的功能,然后使用敏捷方法等策略将其整合在一起。
IaaS 通过减少维护服务器基础架构的需求,同时强调更简单的自动化开发人员体验,因此有助于支持 DevOps 工作流。
## IaaS 和 无服务器之间的区别
无服务器计算描述了一种云原生开发模型,其中服务器从应用开发中抽离出来,并且通常会与 IaaS 相关联。
无服务器依靠云提供商来管理基础架构和应用扩展。无服务器应用部署在容器中,这些容器在被调用时会自动按需启动。
在 IaaS 下,用户通常自行负责在需求旺盛时扩展服务器容量,并在不再需要该容量时缩减服务器容量。即使在应用闲置不用期间,运行该应用所需的云基础架构也要保持就绪。
无服务器架构则与之相反,应用仅在需要时启动。有事件触发应用代码运行时,公共云提供商才会为这一代码分配资源。该代码执行结束后,用户便不再付费。使用无服务器时,管理操作系统和文件系统、安全补丁、负载平衡、容量管理、扩展、日志和监控等例行任务都由云服务提供商分担。
## 在选择 IaaS 提供商时要考虑的事项
- **灵活性:**仅购买用例所需的组件,然后根据业务需要进行扩展或缩减。
- **经济性:**低开销、无维护成本使 IaaS 成为一种价格实惠的方案。您只需按实际用量和使用频次付费,就像支付水电费那样。
- **可控:**用户可以控制其基础架构。
- **安全性:**提供商是否值得信赖?是否有用于防范和管理任何安全威胁的资源?是否有记录在案的灾难恢复协议来确保业务连续性?
- **多租户系统:**由于 IaaS 提供商倾向于根据需要将基础架构资源分配给多个客户端,因此提供商需要确保客户无法访问彼此的数据。让多个客户使用提供商的基础架构也会造成失衡,称之为 " 相邻干扰 "(单个用户垄断特定资源会降低其他用户的效能),因此提供商需要谨慎规划资源分配。为此,要了解提供商将如何根据用户的负载进行扩展,这一点很重要。
- **服务:**什么是服务提供商的服务级别协议SLA是提供商承诺解决资源置备问题所付出的最短时间和最小精力吗
- **可靠性:**性能和速度在很大程度上要取决于提供商。任何软件或硬件问题最终都会影响到用户的运行时。