本快速入门介绍如何在 Cloud Storage 存储桶前面设置媒体 CDN 服务。您可以使用此配置进行测试,也可以将其作为生产环境的基础。
本页将引导您完成以下步骤:
- 创建 Cloud Storage 存储桶以存储您的内容。
- 启用必需的服务。
- 创建
EdgeCacheOrigin资源,以将媒体 CDN 连接到您的存储桶。 - 创建
EdgeCacheService资源,以配置来源中内容的请求路由和缓存。 - 测试是否正在缓存响应。
准备工作
确保您满足以下要求:
当前项目的媒体 CDN 访问权限。
已安装 Google Cloud CLI。使用 345.0.0 或更高版本。
如果需要,请使用
gcloud version检查版本,并使用gcloud components update更新已安装的 gcloud CLI。gcloud CLI 提供了
gcloud edge-cache子命令组,用于管理新的和现有的 Media CDN 配置。创建 Media CDN 资源所需的 Identity and Access Management (IAM) 权限。
所需的角色
如需获得完成本文档中的任务所需的权限,请让您的管理员为您授予以下角色:
roles/networkservices.edgeCacheAdmin:有权创建、更新、删除和管理所有 Edge Cache 资源。roles/networkservices.edgeCacheUser:查看和使用 Edge Cache 资源的权限。roles/networkservices.edgeCacheViewer:对 Edge Cache 资源的只读权限。
创建存储桶
- Storage Admin 角色 (
roles/storage.admin)
在媒体 CDN 上启用 SSL
- Certificate Manager Editor 角色 (
roles/certificatemanager.editor)
创建 Cloud Storage 存储桶
媒体 CDN 内容可来自 Cloud Storage 存储桶、第三方存储位置或负载平衡器等位置。
在此快速入门中,我们将内容存储在 Cloud Storage 存储桶中。
创建一个可公开访问的 Cloud Storage 存储桶,并将其命名为
my-bucket。如果您不想让 Cloud Storage 存储桶可公开访问,则必须向 Media CDN 授予访问该存储桶的权限。如需了解详情,请参阅使用私有 Cloud Storage 存储分区。
将文件上传到存储桶中。
启用必需的服务
如需配置和部署媒体 CDN 服务,您需要在项目中同时启用 Network Services API 和 Certificate Manager API。
控制台
gcloud
启用 Network Services API:
gcloud services enable networkservices.googleapis.com启用 Certificate Manager API:
gcloud services enable certificatemanager.googleapis.com
如需详细了解如何启用和停用服务,请参阅Service Usage 文档。
创建 EdgeCacheOrigin 资源
创建指向 Cloud Storage 存储桶的源。
控制台
在 Google Cloud 控制台中,前往 Media CDN 页面。
点击来源标签页。
点击创建源站。
输入来源的名称,例如
cloud-storage-origin。可选:输入来源的说明。
在来源地址部分,选中选择 Google Cloud Storage 存储桶,浏览到名为
my-bucket的 Cloud Storage 存储桶,然后点击选择。如果您有外部来源,请选择指定 FQDN 或 IP 地址,然后输入 FQDN 或 IP 地址。
点击创建源站。
大约 10 分钟后,新创建的 EdgeCacheOrigin 资源会显示在项目“源站”页面上的源站列表中。
如需更新发货地址,请点击相应发货地址,然后点击修改。
gcloud
使用 gcloud edge-cache origins create 命令:
gcloud edge-cache origins create ORIGIN \
--origin-address="ADDRESS"
替换以下内容:
ORIGIN:新来源的名称ADDRESS:存储桶名称,gs://my-bucket
如果您使用的是外部来源,请将 ADDRESS 替换为 FQDN 或 IP 地址。
如需查看新创建的来源,请使用 gcloud edge-cache origins list 命令。
如需更新来源地址,请使用 gcloud edge-cache origins update 命令。
API
使用 edgeCacheOrigins.create 方法:
POST https://networkservices.googleapis.com/v1/PARENT/edgeCacheOrigins?edgeCacheOriginId=ORIGIN_ID
{
"name": "ORIGIN_ID",
"originAddress: "ADDRESS"
}
替换以下内容:
PARENT:父级资源,格式为projects/PROJECT/locations/globalORIGIN_ID:新来源的简称ADDRESS:存储桶名称,gs://my-bucket如果您使用的是外部来源,请将
ADDRESS替换为 FQDN 或 IP 地址。
如需查看新创建的来源,请使用 edgeCacheOrigins.list 方法。
如需更新来源地址,请使用 edgeCacheOrigins.patch 方法。
Terraform
创建 EdgeCacheService 资源
EdgeCacheService 资源用于配置路由、证书和缓存设置,并且可以指向 EdgeCacheOrigin 资源。
创建一个基本的 EdgeCacheService 资源,该资源执行以下操作:
- 将配置的源站的所有响应缓存一小时
- 设置
x-cache-status响应标头,以返回缓存状态(例如HIT或MISS)
(可选)为此服务注册域名。
控制台
在 Google Cloud 控制台中,前往 Media CDN 页面。
点击 Services(服务)标签。
点击创建服务。
为您的服务输入一个唯一名称(例如
my-service),然后点击下一步。在路由部分,点击添加主机规则,然后输入一个或多个主机网域名称。
对于主机,请输入主机域名,例如
web.example.com。点击添加路由规则。
- 对于优先级,指定
1。 - 点击添加匹配条件,对于路径匹配,指定
/,然后点击完成。 - 选择从来源提取,然后选择您配置的源站。
- 点击附加操作。
- 在标头操作中,点击添加内容。然后,执行以下操作:
- 对于类型,选择要添加的响应标头。
- 点击添加标头。
- 对于名称,请指定
x-cache-status;对于值,请指定{cdn_cache_status}。 - 点击完成。
- 对于路由操作,点击添加内容。然后,执行以下操作:
- 对于类型,选择 CDN 政策。
- 对于缓存模式,选择 FORCE_CACHE_ALL。
- 点击完成。
- 点击保存。
- 对于优先级,指定
点击创建服务。
新创建的 EdgeCacheService 资源会显示在服务页面上,位于项目中的服务列表中。