关于 GCP 服务

此概览介绍一些常用的 Google Cloud Platform (GCP) 服务。如需服务的完整列表,请参阅“产品和服务”页面

此概览介绍以下类型的服务:

计算和托管服务

GCP 可提供多种计算和托管方案供您选择,具体如下所示:

  • 利用无服务器环境。
  • 采用托管式应用平台。
  • 利用容器技术以获得高度灵活性。
  • 构建您自己的云端基础架构,以获得最大的控制力和灵活性。

您可以试想这样一个图谱:一端是您负起大部分资源管理职责,另一端是 Google 负起如下大部分职责:

计算和托管选项具有一系列运营要求

无服务器计算

Google Cloud Functions 是 GCP 的函数即服务 (FaaS) 产品,可为构建和连接云服务提供一种无服务器执行环境。借助 Cloud Functions,您可以编写简单的单一用途函数,并将这些函数关联到由云端基础架构和服务引发的事件。当受监控事件被引发时,您的 Cloud Functions 函数即会运行。代码在一种完全托管式环境中执行;您无需预配任何基础架构,也不必费心管理任何服务器。

在 GCP 上,Cloud Functions 函数以 JavaScript 编写,并在 Node.js v6.11.5 环境中执行。Cloud Functions 函数可以在任何标准 Node.js 运行时中运行,因此您可以轻松执行迁移和本地测试。

Cloud Functions 函数非常适用于涉及以下方面的使用场景:

  • 数据处理和 ETL 操作(用于视频转码和物联网流式数据等场景)。

  • 用于响应 HTTP 触发器的 Webhook。

  • 用于将松散耦合的逻辑编入应用的轻量级 API。

  • 移动后端功能。

应用平台

Google App Engine 是 GCP 的平台即服务 (PaaS) 产品。凭借 App Engine,Google 可为您处理大部分资源管理任务。例如,如果您的应用因网站流量增加而需要更多计算资源,Google 会自动调节系统,从而提供所需资源。如果系统软件需要安全更新,Google 也会自动为您完成相关处理。

在 App Engine 上构建应用时,您可以执行以下操作:

  • 以 App Engine 标准环境运行时为基础,采用标准环境支持的语言构建应用,包括:Python 2.7Java 8/Java 7PHP 5.5Go 1.8/1.6

  • 以 App Engine 柔性环境运行时为基础,采用 App Engine 柔性环境支持的语言构建应用,包括:Python 2.7/3.6Java 8Go 1.8Node.jsPHP 5.6, 7.NETRuby。或者通过自定义运行时,使用受支持语言的替代实现方案或其他任何语言。

  • 让 Google 为您管理应用的托管、调节、监控和基础架构。

  • 在本地机器上模拟 GCP 上的 App Engine 环境,以使用 App Engine SDK 执行开发和测试。

  • 轻松使用 App Engine 标准环境和柔性环境设计所支持的存储技术

    Google Cloud SQL 是一个 SQL 数据库,支持 MySQL 或 PostgreSQL。Google Cloud Datastore 是一种无架构 NoSQL 数据存储区。Google Cloud Storage 用于存储您的大型文件。

    在标准环境中,您还可以从各种第三方数据库中选择要与您的应用搭配使用的数据库,例如 Redis、MongoDB、Cassandra 和 Hadoop。

    在柔性环境中,您可以轻松使用您的语言支持的任何第三方数据库,前提是该数据库可从 Google App Engine 实例访问。

    在任一环境中,这些第三方数据库可以由 Compute Engine 托管、由其他云提供商托管、在本地托管或由第三方供应商管理。

  • 在标准环境中,使用 Cloud Endpoints 生成 API 和客户端库,以便用于简化其他应用对数据的访问。Endpoints 可让您更轻松地为网页客户端和移动客户端(如 Android 或 iOS)创建网络后端。

  • 在电子邮件和用户管理等活动中使用内置的托管式服务。

  • 使用 Cloud Security Scanner 来补充现有的安全设计和开发流程,以识别安全漏洞。

  • 使用 macOS 或 Microsoft Windows 上的 App Engine 启动器图形查询界面应用部署应用,或使用命令行部署。

  • 在标准环境中,从美国中部或西欧区域运行应用。

如需查看 App Engine 功能的完整列表和说明,请参阅 App Engine 文档

容器

借助基于容器的计算功能,您可以专注于应用代码,而无需部署和集成到托管环境中。Google Kubernetes Engine 是 GCP 的容器即服务 (CaaS) 产品,它以开源 Kubernetes 系统为基础构建而成,不仅可以提供 GCP 的公有云基础架构,还可让您灵活选择本地云或混合云

使用 Kubernetes Engine 构建应用时,您可以执行以下操作:

  • 创建和管理一组运行 Kubernetes 的 Compute Engine 实例(称为集群)。Kubernetes Engine 使用 Compute Engine 实例作为集群中的节点。每个节点运行 Docker 运行时,一个用于监控节点运行状况的 Kubernetes 节点代理和一个简单网络代理。

  • 创建一个简单 JSON 配置文件来声明 Docker 容器的要求。

  • 使用 Google Container Registry 提供安全、私有的 Docker 映像存储空间。您可以将映像推送到您的注册表,然后利用 HTTP 端点将映像拉取到任何 Compute Engine 实例或您自己的硬件。

  • 创建单容器和多容器 Pod。每个 Pod 代表一个逻辑主机,其中可包含一个或多个容器。Pod 中的各容器通过共享资源(例如网络资源)协同工作。一组 Pod 结合使用,可以构成整个应用、一个微服务或多层应用中的一层。

  • 创建和管理副本控制器,以用于根据模板创建和删除 Pod 副本。副本控制器有助于确保您的应用具备可靠运行和适当调节所需的资源。

  • 创建和管理服务。服务会创建一个抽象层,以用于将前端客户端与提供后端函数的 pod 分离开来。通过这种方式,客户端可以安心地工作,而不用随时在意哪个时刻创建和删除了哪些 Pod。

  • 创建外部网络负载平衡器。

虚拟机

Google Compute Engine 是 GCP 的非托管式计算服务。您可以将 Compute Engine 视为一个提供基础设施即服务 (IaaS) 的产品,因为该系统会提供一个强大的计算基础架构,但您需要选择和配置要使用的平台组件。使用 Compute Engine 时,您要负责系统的配置、管理和监控工作。Google 将负责确保资源的可用性和可靠性,让您可以随时使用,但您可以自由预配和管理这些资源。这种分工的好处在于,您可以完全控制系统并获得无限的灵活性。

在 Compute Engine 上构建应用时,您可以执行以下操作:

  • 使用虚拟机(称为实例)来构建应用,具体方法与使用自己的硬件基础架构大致相同。您可以选择各种实例类型,以根据自己的需求和预算自定义配置。

  • 选择用于部署资源的全球性区域和地区,从而控制数据的存储和使用位置。

  • 选择您喜欢的操作系统、开发堆栈、语言、框架、服务和其他软件技术。

  • 基于公共或私有映像创建实例。

  • 使用 GCP 存储技术或您喜欢的任何第三方技术。

  • 使用 Google Cloud Launcher 快速部署预配置的软件包。例如,只需点击几下即可部署 LAMP 或 MEAN 堆栈。

  • 创建实例组,以更轻松地同时管理多个实例。

  • 对实例组使用自动调节功能,以自动添加和移除容量。

  • 根据需要挂接和分离磁盘

  • 使用 SSH 直接连接到您的实例。

组合使用计算和托管选项

您不必只使用一种类型的计算服务。例如,您可以将 App Engine 和 Compute Engine 结合起来,以充分利用每项服务的特性和优势。如需查看同时使用 App Engine 和 Compute Engine 的示例,请参阅在 Google Compute Engine 上以可靠的方式调度任务

如需详细了解用于托管和传送网站的选项,请参阅托管和传送网站

存储服务

无论您的应用是什么,您都可能需要存储一些数据。GCP 提供了各种存储服务,包括:

  • Cloud SQL 中的 SQL 数据库,该服务可提供 MySQL 或 PostgreSQL 数据库。

  • Cloud Spanner 中的完全托管、可用于关键任务的关系型数据库服务,该服务可提供全球范围内的事务一致性、架构、SQL 查询和用于实现高可用性的自动同步复制功能。

  • 两个 NoSQL 数据存储选项:Cloud DatastoreCloud Bigtable

  • Cloud Storage 中的一致、可伸缩、大容量数据存储服务。Cloud Storage 有多种类别:

    • Multi-Regional 类别具备最高的可用性和地理位置冗余性。
    • Regional 类别具备高可用性和一个本地化的存储位置。
    • Nearline 类别可提供费用低廉的归档存储服务,非常适合每月访问不到一次的数据。
    • Coldline 类别可提供费用最低的归档存储服务,适合进行备份和灾难恢复。
  • Compute Engine 上的永久性磁盘,适合用作实例的主存储服务。Compute Engine 可提供基于硬盘的永久性磁盘(称为标准永久性磁盘)和固态永久性磁盘 (SSD)。

您还可以选择在 Compute Engine 上使用永久性磁盘设置首选存储技术。例如,您可以将 MongoDB 设置为 NoSQL 存储服务。

如需了解 GCP 上的全部存储服务及其优势,请参阅选择存储方案

网络服务

App Engine 会为您管理网络,Kubernetes Engine 使用 Kubernetes 模型,而 Compute Engine 会提供一组网络服务。这些服务有助于您跨资源实现流量负载平衡,创建 DNS 记录,以及将现有网络连接到 Google 的网络。

网络、防火墙和路由

Virtual Private Cloud (VPC) 提供了一组网络服务供您的虚拟机实例使用。每个实例只能连接到一个网络。每个 VPC 项目都有一个默认网络。您可以在自己的项目中创建其他网络,但不能在不同项目之间共享网络。

防火墙规则控制传入网络中各实例的流量。默认网络具有一组默认防火墙规则,您也可以创建自定义规则。

借助路由,您可以在实例中实现更高级的网络功能,例如创建 VPN。路由指定如何对实例发出的数据包进行定向。例如,路由可以指定应由您配置和操作的网关虚拟机实例来处理发往特定网络范围的数据包。

负载平衡

如果您的网站或应用在 Compute Engine 上运行,则当您准备好在多个实例之间分配工作负载时,可能需要进行负载平衡。服务器端负载平衡功能为您提供了以下方案:

  • 网络负载平衡可让您根据传入 IP 协议数据(例如地址、端口和协议)在同一区域中的各服务器实例之间分配流量。例如,如果您希望满足网站流量增加的需求,则网络负载平衡是一个很好的解决方案。

  • HTTP/HTTPS 负载平衡可让您跨区域分配流量,因此您可以确保将请求路由到最近区域,或者在发生故障或超出容量限制的情况下,将请求路由到下一个最近区域中运行状况良好的实例。您还可以使用 HTTP/HTTPS 负载平衡来根据内容类型分配流量。例如,您可以对您的服务器进行设置,以便从一个服务器提供静态内容(如图片和 CSS),而从另一个服务器提供动态内容(如 PHP 页面)。负载平衡器可以将每个请求定向到提供相应内容类型的服务器。

Cloud DNS

您可以使用与 Google 相同的基础架构发布和维护域名系统 (DNS) 记录。还可以使用 Google Cloud Platform Console、命令行或 REST API 来处理托管地区和 DNS 记录。

高级连接

如果您希望将现有网络连接到 GCP 资源,可以选择 GCP 提供的以下高级连接方案:

  • 借助 Cloud Interconnect,您可以通过可用性高、延迟较低的企业级连接将您的现有网络连接到 VPC 网络。您可以使用专用互连直接连接到 Google,也可以使用合作伙伴互连通过受支持的服务提供商连接到 Google。

  • 借助 Cloud VPN,您可以通过 IPsec 连接将现有网络连接到 VPC 网络。您还可以使用 VPN 将两个 Cloud VPN 网关相互连接。

  • 借助直接对等互连,您可以在 Google 覆盖范围广泛的某个边缘网络位置交换您的企业网络与 Google 之间的互联网流量。如需详细了解边缘位置,请参阅 Google 的对等互连站点

  • 采用运营商对等互连,您可以借助服务提供商,通过可用性高、延迟较低的连接将您的基础架构连接到 Google 的网络边缘。您还可以利用网络之间的 VPN 隧道,通过运营商对等互连链接将您的专用网络扩展到专用 Virtual Private Cloud 网络。

大数据服务

大数据服务可让您处理和查询云端的大数据,从而快速获得复杂问题的解答。

数据分析

BigQuery 提供数据分析服务。借助 BigQuery,您可以执行以下操作:

  • 创建自定义架构,以将数据整理到数据集和表中。

  • 从各种来源加载数据,包括流式数据。

  • 使用类似 SQL 的命令,非常快速地查询海量数据集。BigQuery 针对速度进行了设计和优化。

  • 使用网页界面、命令行界面或 API。

  • 使用作业加载、查询、导出和复制数据。

  • 使用权限管理数据并提供安心保护。

要快速轻松地试用 BigQuery,请尝试使用网页界面快速入门查询公共数据集。

批量数据处理和流式数据处理

借助 Cloud Dataflow 提供的托管式服务和一组 SDK,您可以执行批量数据处理和流式数据处理任务。Dataflow 非常适合用于高数据量计算,尤其是在处理任务可以轻松明确地划分为并行工作负载的情况下。此外,Dataflow 还非常适合提取-转换-加载 (ETL) 任务,此类任务有助于在不同存储介质之间移动数据,将数据转换为更理想的格式,或将数据加载到新的存储系统。

异步消息传递服务

Cloud Pub/Sub 是一种异步消息传递服务。您的应用可以将消息以 JSON 数据结构的形式发送到发布单元(称为主题)。由于 Cloud Pub/Sub 主题是一种全球性资源,因此您所拥有项目中的其他应用可以订阅该主题,以在 HTTP 请求或响应正文中接收消息。要熟悉 Cloud Pub/Sub,请参阅 Cloud Pub/Sub 快速入门

Cloud Pub/Sub 的用处并不局限于大数据。在许多情况下,如果您需要异步消息传递服务,都可以使用 Cloud Pub/Sub。如需查看使用 Cloud Pub/Sub 协调 App Engine 和 Compute Engine 的示例,请参阅在 Compute Engine 上以可靠的方式调度任务

机器学习服务

GCP Cloud AI 可提供各种功能强大的机器学习 (ML) 服务。您可以选择使用相应 API 来提供针对特定应用优化且预先训练的模型,也可以使用托管式 TensorFlow 框架构建和训练您自己的大型复杂模型。

ML API

GCP 可提供各种 API,让您可以充分利用 Google 的机器学习服务,而无需创建和训练自己的模型。

  • Google Cloud Video Intelligence API 支持视频分析技术,该技术可以提供标签检测、不良内容的检测、镜头变化检测和区域化功能。

  • Google Cloud Speech API 可以将语音转换为文字,识别超过 110 种语言和语言变体,从而支持您的全球用户群。您可以转录用户在应用中对着麦克风口述的内容,实现语音命令控制功能,转录音频文件,以及进行其他操作。

  • Google Cloud Vision API 可以轻松集成视觉检测功能,这些功能包括图片标记、面部和地标检测,以及光学字符识别 (OCR) 和不良内容的标记。

  • Google Natural Language API 可以添加情感分析、实体分析、实体情感分析、内容分类和语法分析。

  • Google Cloud Translation API 可以快速地将源文本翻译为支持的一百多种语言。如果源语言未知,就可以使用语言检测功能。

  • Dialogflow Enterprise Edition 可以为网站、移动应用、热门消息传递平台和物联网设备构建对话界面。您可以使用该 API 构建能够与人类进行自然而丰富的互动的界面(例如聊天机器人)。

Cloud ML Engine

Cloud Machine Learning Engine 将 GCP 的托管式基础架构与 TensorFlow 的强大功能和灵活性结合在一起。该服务可以大规模训练您的机器学习模型,并托管经过训练的模型以用于预测云端的新数据。

Cloud ML Engine 不但可通过在 GCP 上运行 TensorFlow 训练应用来训练机器学习模型,还可为您托管这些经过训练的模型,供您用来获取有关新数据的预测信息。Cloud ML Engine 可管理您的训练作业需要运行的计算资源,因此,您可以更专注于模型,而无需配置硬件或管理资源。

要试用 Cloud ML Engine,请参阅使用 Flowers 数据集进行图片分类

下一篇:了解开发者工具和管理工具

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页