arrow_back

访问 Google Cloud 控制台和 Cloud Shell

登录 加入
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

访问 Google Cloud 控制台和 Cloud Shell

实验 1 小时 universal_currency_alt 5 个积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

概览

在本实验中,您将熟悉 Google Cloud 基于网络的界面。此实验将提供两个集成式环境:

  • 名为 Google Cloud 控制台的 GUI 环境
  • 名为 Cloud Shell 的命令行界面,其中已预装 Cloud SDK 提供的命令

在本课程中,您将使用这两种环境。

关于 Google Cloud 控制台,您需要知道以下几点:

  • Google Cloud 控制台正在持续开发中,因此图形布局偶尔会发生变化。这些更改通常是为了配合 Google Cloud 新功能或技术变更,会导致工作流略有不同。
  • 您可以在 Google Cloud 控制台中执行大多数常见的 Google Cloud 操作。有时,新功能会先在 Cloud SDK 中实现,然后才在 Google Cloud 控制台中提供。
  • 对于某些活动,Google Cloud 控制台非常快捷。Google Cloud 控制台可以代表您执行多个操作,这些操作在命令行中可能需要很多步骤。
  • 如需实现自动化,Cloud SDK 中的命令是非常实用的工具。

目标

在本实验中,您将学习如何执行以下任务:

  • 了解如何访问 Google Cloud 控制台和 Cloud Shell
  • 熟悉 Google Cloud 控制台
  • 熟悉 Cloud Shell 功能,包括 Cloud Shell 编辑器
  • 使用 Google Cloud 控制台和 Cloud Shell 创建存储桶和虚拟机以及服务账号
  • 在 Cloud Shell 中执行其他命令

实验设置

访问 Qwiklabs

对于每个实验,您都会免费获得一个新的 Google Cloud 项目及一组资源,它们都有固定的使用时限。

  1. 请使用无痕式窗口登录 Qwiklabs。

  2. 留意实验的访问时限(例如 1:15:00)并确保能在相应时间段内完成实验。
    系统不提供暂停功能。如有需要,您可以重新开始实验,不过必须从头开始。

  3. 准备就绪时,点击开始实验

  4. 请记好您的实验凭据(用户名密码)。您需要使用这组凭据来登录 Google Cloud 控制台。

  5. 点击打开 Google 控制台

  6. 点击使用其他帐号,然后将实验的凭据复制并粘贴到相应提示框中。
    如果您使用其他凭据,将会收到错误消息或产生费用

  7. 接受条款并跳过恢复资源页面。

完成初始登录步骤后,系统会显示项目信息中心。

Google Cloud 项目信息中心

任务 1. 探索 Google Cloud 控制台

在此任务中,您将探索 Google Cloud 控制台并创建资源。

确认已选择您的项目

  1. 在 Google Cloud 控制台标题栏中,点击选择项目下拉列表,然后选择 Qwiklabs 随身份验证凭据提供的项目 ID。

  2. 项目 ID 的格式为 [qwiklabs-gcp-] 后跟一长串十六进制数字。

  3. 点击取消关闭对话框。

标题栏应该会显示项目 ID,如以下屏幕截图所示。Qwiklabs 环境中的每个实验都有唯一的项目 ID 和唯一的身份验证凭据。

显示项目 ID 的标题栏

前往 Google Cloud Storage 并创建存储桶

使用 Cloud Storage,您可以在全球范围内随时存储和检索任意数量的数据。您可以在各种各样的场景中使用 Cloud Storage,包括传送网站内容、存储数据以用于归档和灾难恢复,或者通过直接下载向用户分发大型数据对象。

Cloud Storage 存储桶必须具有全局唯一的名称。在组织中,您应该遵循 Google Cloud 有关 Cloud Storage 最佳实践的指南。对于本实验,由于 Google Cloud 项目 ID 具有全局唯一性,因此通过使用 Qwiklabs 为我们创建的 Google Cloud 项目 ID,我们就能轻松为存储桶设置唯一名称。

  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,依次点击 Cloud 概览 > 信息中心

  2. 在所显示屏幕的信息中心标签页中,项目信息部分会显示您的 Google Cloud 项目 ID。

  3. 选择并复制项目 ID。这个项目 ID 是 Qwiklabs 为您创建的,其格式为:[qwiklabs-gcp-] 后跟一长串十六进制数字。

  4. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,依次点击 Cloud Storage > 存储桶

  5. 点击创建存储桶

  6. 对于名称,粘贴您在之前的步骤中复制的 Google Cloud 项目 ID 字符串。这些实验说明稍后将以 [BUCKET_NAME] 指代您输入的名称。

  7. 点击继续

  8. 对于位置类型,选择区域,并从下拉菜单中选择

  9. 点击继续

  10. 点击选择如何控制对对象的访问权限,取消选中禁止公开访问此存储桶,然后选择精细控制

  11. 点击继续

  12. 请将其他所有值保留为默认值。

  13. 点击创建

注意:Google Cloud 控制台有一个通知 (“通知”图标) 图标。这里有时会提供来自底层命令的反馈。您可以点击该图标来查看通知,以了解其他信息和历史记录。

创建虚拟机 (VM) 实例

Google Compute Engine 提供 Google 数据中心及其“网络即服务”中运行的虚拟机。Google Kubernetes Engine 使用 Compute Engine 作为其架构的一个组件。因此在了解 Google Kubernetes Engine 之前,掌握一些关于 Compute Engine 的知识会很有帮助。

  1. 导航菜单 (“导航菜单”图标) 中,点击 Compute Engine > 虚拟机实例
  2. 点击创建实例
  3. 对于名称,输入 first-vm 作为实例的名称。
  4. 对于区域,选择
  5. 对于可用区,选择
  6. 对于机器类型,请查看提供的选项。
注意:机器类型菜单列出了虚拟 CPU 的数量、内存容量和一个符号名称(例如 e2-medium)。该符号名称是您在使用 gcloud 命令创建虚拟机时用来选择机器类型的参数。区域、可用区和机器类型的右侧会显示每月的估算费用。
  1. 若要查看估算费用的明细,请点击估算费用下方机器类型列表右侧的详细信息
  2. 对于机器类型,点击 2 个 vCPU (e2-standard-2)

费用是如何变化的?

  1. 对于机器类型,点击 e2-micro(2 个共享 vCPU)

Micro 类型是一种共享核心虚拟机,费用比较低廉。

  1. 对于防火墙,点击允许 HTTP 流量
  2. 将其他设置保留默认值,然后点击创建

等待新虚拟机创建完成。

查看虚拟机详细信息

  1. 虚拟机实例页面上,点击虚拟机名称 first-vm
  2. 机器配置中,记下 CPU 平台的值,然后点击修改
  3. 点击顶部的铅笔图标,以修改 first-vm 实例。
注意:您无法更改正在运行的 Google Cloud 虚拟机的机器类型、CPU 平台或可用区。您可以添加网络标记,允许来自互联网的特定网络流量通过防火墙。

虚拟机的某些属性是虚拟机不可或缺的一部分,是在创建虚拟机时设置的。这些属性无法更改。其他属性可以修改。例如您可以添加磁盘,确定在删除实例时是否删除启动磁盘。
  1. 向下滚动到管理部分,并检查可用性政策
注意:Compute Engine 提供的抢占式虚拟机实例每小时的费用更低,但可能随时被 Google Cloud 终止。这些抢占式实例可以为您节省大量费用,但您必须确保中断这些工作负载不会对您造成负面影响。

非抢占式实例无法转换为抢占式实例。必须在创建虚拟机时做出选择。

如果虚拟机由于任何原因(例如服务中断或硬件故障)停止,自动重启功能会将其再次启动。这是您希望的运作方式吗?您的应用是否具有幂等性(其代码可以正确处理第二次启动)?

在主机维护期间,虚拟机会设置为实时迁移。但是,您可以选择终止虚拟机,而不是迁移。

如果进行更改,有时可能需要几分钟才能生效,特别是在涉及到网络更改的情况下,如添加防火墙或更改外部 IP。
  1. 点击取消

创建 IAM 服务账号

IAM 服务账号是一种特殊类型的 Google 账号,属于应用或虚拟机,不属于个人最终用户。

  1. 导航菜单中,点击 IAM 和管理 > 服务账号
  2. 点击 + 创建服务账号
  3. 服务账号详情页面,将服务账号名称指定为 test-service-account
  4. 点击创建并继续
  5. 向此服务账号授予对项目的访问权限页面上,依次选择基本 > Editor 来指定角色。
  6. 点击继续
  7. 点击完成
  8. 服务账号页面上,转至 test-service-account 的最右侧,然后点击三点状图标。
  9. 点击管理密钥
  10. 点击添加密钥
  11. 选择创建新密钥
  12. 选择 JSON 作为密钥类型。
  13. 点击创建

系统会下载一个 JSON 密钥文件。在稍后的步骤中,您需要找到这个密钥文件并将其上传到虚拟机。

  1. 点击关闭

点击检查我的进度以验证是否完成了以下目标。 创建存储桶、具有必要防火墙规则的虚拟机实例和 IAM 服务账号

任务 2. 了解 Cloud Shell

Cloud Shell 让您可以直接在浏览器中通过命令行访问云端资源。借助 Cloud Shell,您可以随时使用经过全面身份验证的最新 Cloud SDK 命令行工具,例如 gcloud。

Cloud Shell 提供以下特性和功能:

  • Compute Engine 临时虚拟机
  • 可在浏览器中使用命令行访问实例
  • 5 GB 永久性磁盘存储空间 ($HOME dir)
  • 预装的 Cloud SDK 和其他工具。
  • gcloud:适用于 Compute Engine、Google Kubernetes Engine (GKE) 和许多 Google Cloud 服务
  • gcloud storagegsutil:适用于 Cloud Storage
  • kubectl:适用于 GKE 和 Kubernetes
  • bq:适用于 BigQuery
  • 针对 Java、Go、Python、Node.js、PHP 和 Ruby 的语言支持
  • 网页预览功能
  • 用于访问资源和实例的内置授权

系统会回收处于非活跃状态超过 1 小时的 Cloud Shell 实例。只保留 /home 目录。对系统配置(包括环境变量)所做的任何更改都将在会话切换时丢失。

在此任务中,您将使用 Cloud Shell 创建和检查一些资源。

打开 Cloud Shell 并探索其特征

  1. 在 Google Cloud 控制台标题栏中,点击激活 Cloud Shell (Cloud Shell 图标)。
  2. 出现提示时,点击继续

Cloud Shell 会在 Google Cloud 控制台窗口底部打开。

以下图标位于 Cloud Shell 工具栏的最右侧:

  • 隐藏/恢复:点击此图标可隐藏或恢复窗口,让您无需关闭 Cloud Shell 即可使用 Google Cloud 控制台的所有功能。
  • 在新窗口中打开:在发出个别命令时,Cloud Shell 位于 Google Cloud 控制台底部会很方便。但在您编辑文件或想要查看命令的完整输出时,点击此图标就能在一个完整尺寸的终端窗口中显示 Cloud Shell。
  • 关闭所有标签页:点击此图标会关闭 Cloud Shell。每次关闭 Cloud Shell 时,虚拟机将被回收,所有机器上下文都将丢失。但是,在下次启动 Cloud Shell 时,您仍然可以使用存储在主目录中的数据。

使用 Cloud Shell 设置此任务所用的环境变量

在 Cloud Shell 中,使用以下命令定义此任务中使用的环境变量。

  1. [BUCKET_NAME] 替换为任务 1 中第一个存储桶的名称。
  2. [BUCKET_NAME_2] 替换为您选择的一个全局唯一名称。
  3. 在 Cloud Shell 中,执行如下命令创建环境变量:
MY_BUCKET_NAME_1=[BUCKET_NAME] MY_BUCKET_NAME_2=[BUCKET_NAME_2] MY_REGION={{{project_0.default_region | "REGION"}}} 注意:当您使用 Cloud Shell 或编写脚本时,创建环境变量是一种很好的做法。您可以轻松且一致地重复使用这些环境变量,确保工作更不容易出错。 注意:确保将 [BUCKET_NAME] 等整个占位符字符串替换为您选择的唯一名称,例如 MY_BUCKET_NAME_1=unique_bucket_name

将先前创建的凭据文件移动到 Cloud Shell 中

在前面的任务中,您在创建首个 Cloud IAM 服务账号时下载了一个 JSON 编码的凭据文件。

  1. 在您的本地工作站上,找到您刚刚下载的 JSON 密钥并将该文件重命名为 credentials.json
  2. 在 Cloud Shell 中,点击 Cloud Shell 工具栏中的三点状菜单图标 (三点状菜单图标),显示更多选项。
  3. 点击上传,从本地机器上选择 credentials.json 文件。
  4. 点击打开
  5. 点击上传以将 credentials.json 传输到 Cloud Shell 虚拟机。
  6. 点击 X 图标关闭文件上传弹出式窗口。
  7. 在 Cloud Shell 中,输入 ls 并按下 ENTER 键,确认该文件已上传。

创建第二个 Cloud Storage 存储桶并在 Google Cloud 控制台中确认

您可以使用 gcloud storagegsutil 命令,通过命令行对 Cloud Storage 执行操作。 此任务中,您将在 Cloud Shell 中使用 gcloud storage 命令。

  1. 在 Cloud Shell 中,使用 gcloud storage 命令创建存储桶:
gcloud storage buckets create gs://$MY_BUCKET_NAME_2 --location={{{project_0.default_region | REGION}}}

在系统提示时点击授权

  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,依次点击 Cloud Storage > 存储桶,或点击刷新(如果您已在 Cloud Storage 页面中)。

第二个存储桶应该显示在存储桶列表中。

使用 gcloud 命令行创建第二个虚拟机

  1. 在 Cloud Shell 中执行以下命令,列出给定区域内的所有可用区:
gcloud compute zones list | grep $MY_REGION
  1. 从列表的第一列中选择一个可用区。请注意,Google Cloud 可用区名称为其区域名称后面加上一个连字符和一个字母。

您可以选择任务 1 中第一个虚拟机使用的可用区,也可以选择其他可用区。

  1. 执行以下命令,将您选择的可用区存储在一个环境变量中。

[ZONE] 替换为您选择的可用区名称:

MY_ZONE=[ZONE]
  1. 执行以下命令,将该可用区设置为默认可用区:
gcloud config set compute/zone $MY_ZONE
  1. 执行以下命令,将名称存储在用于创建虚拟机的环境变量中。第二个虚拟机名为 second-vm
MY_VMNAME=second-vm
  1. 在本任务中之前设置的默认可用区中创建一个虚拟机,使用新的环境变量来分配虚拟机名称:
gcloud compute instances create $MY_VMNAME \ --machine-type "e2-standard-2" \ --image-project "debian-cloud" \ --image-family "debian-11" \ --subnet "default"
  1. 列出项目中的虚拟机实例:
gcloud compute instances list

您将在列表中看到新创建的虚拟机和第一个虚拟机。

  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,点击 Compute Engine > 虚拟机实例。就像 gcloud compute instances list 的输出那样,您将看到您创建的两个虚拟机。

  2. 查看 External IP 列。请注意,您创建的第一个虚拟机的外部 IP 地址显示为一个链接(如果需要,可点击隐藏信息面板按钮显示“外部 IP”列)。由于您将这个虚拟机的防火墙配置为允许 HTTP 流量,因此 Google Cloud 控制台才提供链接。

  3. 点击首个虚拟机的外部 IP 列中的链接。浏览器将在一个新的浏览器标签页中显示“连接被拒绝”消息。出现此消息的原因是,尽管有一个打开的防火墙端口让 HTTP 流量传入虚拟机,但没有正在运行的 Web 服务器。关闭刚刚打开的浏览器标签页。

使用 gcloud 命令行创建第二个服务账号

  1. 在 Cloud Shell 中,执行如下命令以创建新的服务账号:
gcloud iam service-accounts create test-service-account2 --display-name "test-service-account2" 注意:如果看到如下输出,请输入 Y 并按下 ENTER 键: API [iam.googleapis.com] not enabled on project [560255523887].Would you like to enable and retry (this will take a few minutes)? (y/N)?
  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,点击 IAM 和管理 > 服务账号
注意:刷新该页面,直到您看到 test-service-account2

点击检查我的进度以验证是否完成了以下目标。 创建第二个存储桶、虚拟机实例和 IAM 服务账号

  1. 在 Cloud Shell 中执行以下命令,为第二个服务账号授予 Viewer 角色:
gcloud projects add-iam-policy-binding $GOOGLE_CLOUD_PROJECT --member serviceAccount:test-service-account2@${GOOGLE_CLOUD_PROJECT}.iam.gserviceaccount.com --role roles/viewer 注意GOOGLE_CLOUD_PROJECT 是一个在 Cloud Shell 中自动填充的环境变量,设置为当前上下文的项目 ID。
  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,点击 IAM 和管理 > IAM

  2. 您将看到列为 Viewer 角色一员的新服务账号 test-service-account2

任务 3. 在 Cloud Shell 中使用 Cloud Storage

将文件下载到 Cloud Shell 并将其复制到 Cloud Storage

  1. 将一张猫的图片从 Google 提供的 Cloud Storage 存储桶复制到 Cloud Shell:
gcloud storage cp gs://cloud-training/ak8s/cat.jpg cat.jpg
  1. 将该文件复制到您之前创建的首个存储桶内:
gcloud storage cp cat.jpg gs://$MY_BUCKET_NAME_1
  1. 将该文件从第一个存储桶复制到第二个存储桶:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg gs://$MY_BUCKET_NAME_2/cat.jpg
  1. 在 Google Cloud 控制台的导航菜单 (“导航菜单”图标) 中,点击 Cloud Storage > 存储桶,选择您创建的两个存储桶并确认它们都包含 cat.jpg 文件。

为 Cloud Storage 对象设置访问控制列表

  1. 如需获得分配给 cat.jpg 的默认访问权限列表(当您将该图片上传到 Cloud Storage 存储桶时),请执行以下两条命令。

  2. 首先,在 Cloud Shell 中执行以下命令:

gsutil acl get gs://$MY_BUCKET_NAME_1/cat.jpg > acl.txt cat acl.txt

输出应该类似于下面的示例,但具体数字有所不同。此输出显示,任何具有项目的 OwnerEditorViewer 角色的人都具有访问权限(Owner 和 Editor 具有 OWNER 访问权限,Viewer 具有 READER 访问权限)。

[ { "entity": "project-owners-560255523887", "projectTeam": { "projectNumber": "560255523887", "team": "owners" }, "role": "OWNER" }, { "entity": "project-editors-560255523887", "projectTeam": { "projectNumber": "560255523887", "team": "editors" }, "role": "OWNER" }, { "entity": "project-viewers-560255523887", "projectTeam": { "projectNumber": "560255523887", "team": "viewers" }, "role": "READER" }, { "email": "google12345678_student@qwiklabs.net", "entity": "user-google12345678_student@qwiklabs.net", "role": "OWNER" } ]
  1. 如需将对象更改为仅限私密访问,请执行如下命令:
gsutil acl set private gs://$MY_BUCKET_NAME_1/cat.jpg
  1. 如需验证分配给 cat.jpg 的新 ACL,请执行以下两条命令:
gsutil acl get gs://$MY_BUCKET_NAME_1/cat.jpg > acl-2.txt cat acl-2.txt

输出应类似于以下示例。

[ { "email": "google12345678_student@qwiklabs.net", "entity": "user-google12345678_student@qwiklabs.net", "role": "OWNER" } ]

现在,只有对象的原创建者(您的实验账号)拥有 OWNER 访问权限。

在 Cloud Shell 中以服务账号身份进行身份验证

  1. 在 Cloud Shell 中,执行如下命令查看当前配置:
gcloud config list

您应该看到如下例所示的输出。在输出中,可用区应该是您在任务 2 中创建第二个虚拟机时设置的可用区。账号和项目应该与您的 Qwiklabs 实验凭据一致。

[component_manager] disable_update_check = True [compute] gce_metadata_read_timeout_sec = 30 zone = {{{project_0.default_zone | "ZONE"}}} [core] account = google12345678_student@qwiklabs.net disable_usage_reporting = False project = qwiklabs-Google Cloud-1aeffbc5d0acb416 [metrics] environment = devshell Your active configuration is: [cloudshell-16441]
  1. 在 Cloud Shell 中执行以下命令,通过下载到本地机器然后上传到 Cloud Shell 的凭据 (credentials.json),将通过身份验证的用户更改为在前面的任务中创建的第一个服务账号:
gcloud auth activate-service-account --key-file credentials.json

Cloud Shell 现在以 test-service-account 身份通过了身份验证。

  1. 如需验证活跃账号,请执行如下命令:
gcloud config list

您应该看到如下例所示的输出。活跃账号现已设置为 test-service-account 服务账号。

[component_manager] disable_update_check = True [compute] gce_metadata_read_timeout_sec = 30 zone = {{{project_0.default_zone | "ZONE"}}} [core] account = test-service-account@qwiklabs-Google Cloud-1aeffbc5d0acb416.iam.gserviceaccount.com disable_usage_reporting = False project = qwiklabs-Google Cloud-1aeffbc5d0acb416 [metrics] environment = devshell Your active configuration is: [cloudshell-16441]
  1. 如需验证 Cloud Shell 中已获授权的账号列表,请执行如下命令:
gcloud auth list

您应该看到如下例所示的输出。

Credentialed Accounts ACTIVE: ACCOUNT: student-03-5165fd82c14b@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. 如需确认当前账号 (test-service-account) 无法访问您创建的第一个存储桶中的 cat.jpg 文件,请执行如下命令:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg ./cat-copy.jpg

由于您之前在此任务中将有权访问该文件的角色限制为 Owner,因此您应该看到如下例所示的输出。

输出

Copying gs://test-bucket-123/cat.jpg... AccessDeniedException: 403 KiB]
  1. 确认当前账号 (test-service-account) 可以访问您创建的第二个存储桶中的 cat.jpg 文件:
gcloud storage cp gs://$MY_BUCKET_NAME_2/cat.jpg ./cat-copy.jpg

由于没有限制对该文件的访问权限,您应该看到如下例所示的输出。

Copying gs://test-bucket-123/cat.jpg... - [1 files][ 81.7 KiB/ 81.7 KiB] Operation completed over 1 objects/81.7 KiB.
  1. 如需切换到实验账号,请执行如下命令,将 [USERNAME] 替换为实验说明页面左侧 Qwiklabs 连接详情窗格中提供的用户名:
gcloud config set account [USERNAME]
  1. 如需确认您可以访问存储桶 [BUCKET_NAME](您创建的第一个存储桶)中的 cat.jpg 文件,请执行如下命令:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg ./copy2-of-cat.jpg

您应该看到如下例所示的输出。在对象访问权限控制列表 (ACL) 转换为不公开后,创建存储桶和对象的实验账号仍然是 Owner 角色,因此实验账号依然可以访问该对象。

Copying gs://test-bucket-123/cat.jpg... - [1 files][ 81.7 KiB/ 81.7 KiB] Operation completed over 1 objects/81.7 KiB.
  1. 让所有人(包括未通过身份验证的用户)都能读取第一个 Cloud Storage 存储桶:
gsutil iam ch allUsers:objectViewer gs://$MY_BUCKET_NAME_1 注意:此设置适用于在 Cloud Storage 中托管公开网站内容。
  1. 在 Cloud 控制台的导航菜单 (“导航菜单”图标) 中,点击 Cloud Storage > 存储桶

  2. 选择您创建的具有相应项目 ID 的第一个存储桶。请注意 cat.jpg 文件有一个 Public link(公开链接)。

  3. 点击复制网址以复制该链接。

  4. 在无痕模式下打开新的浏览器标签页,将该链接粘贴到浏览器地址栏。您会看到一张猫的照片,请勿关闭该浏览器标签页。

点击检查我的进度以验证是否完成了以下目标。 在 Cloud Shell 中使用 Cloud Storage

任务 4. 探索 Cloud Shell 编辑器

在此任务中,您将探索如何使用 Cloud Shell 代码编辑器。

打开 Cloud Shell 编辑器

  1. 在 Cloud Shell 中,点击打开编辑器图标 (Cloud Shell 编辑器图标),然后点击 Open in a new window(在新窗口中打开)链接。

浏览器中会打开一个显示 Cloud Shell 编辑器的新标签页。Google Cloud 控制台和 Cloud Shell 仍在原标签页中。您可以点击标签页,在 Cloud Shell 和代码编辑器之间切换。

  1. 在 Cloud Shell 编辑器中,点击菜单,然后选择文件 > 打开文件夹

Cloud Shell 编辑器菜单

  1. 点击确定

文件夹打开后,左侧窗格会显示文件和目录列表。

  1. 在 Google Cloud 控制台标签页中,点击打开终端,然后在 Cloud Shell 中执行如下命令,克隆 git 代码库:
git clone https://github.com/googlecodelabs/orchestrate-with-kubernetes.git

orchestrate-with-kubernetes 文件夹将出现在 Cloud Shell 编辑器窗口的左侧窗格中。

  1. 在 Cloud Shell 中,执行如下命令创建 test 目录:
mkdir test

test 文件夹现在显示在 Cloud Shell 编辑器窗口的左侧窗格中。

  1. 在 Cloud Shell 编辑器中,点击 orchestrate-with-kubernetes 左侧的箭头展开该文件夹。

orchestrate-with-kubernetes 文件夹

  1. 在左侧窗格中,点击 cleanup.sh 文件,在 Cloud Shell 编辑器窗口的右窗格中打开它。

  2. cleanup.sh 文件的最后一行添加以下文本:

echo Finished cleanup! 注意:不需要执行任何操作来保存您的工作。
  1. 在 Cloud Shell 中,执行以下命令切换目录并显示 cleanup.sh 的内容:
cd orchestrate-with-kubernetes cat cleanup.sh
  1. 确认 cat cleanup.sh 的输出包含您添加的文本行。

  2. 在 Cloud Shell 代码编辑器中,右键点击 orchestrate-with-kubernetes 文件夹,然后选择新建文件

  3. 将文件命名为 index.html

  4. 点击保存

  5. 在右侧窗格中,粘贴如下 HTML 文本:

<html><head><title>Cat</title></head> <body> <h1>Cat</h1> <img src="REPLACE_WITH_CAT_URL"> </body></html> 注意:使用本地计算机的键盘快捷键进行粘贴:如果使用的是 Mac 计算机,请按 Cmd + V;如果使用的是 Windows 或 Linux 计算机,请按 Ctrl + V。
  1. 将字符串 REPLACE_WITH_CAT_URL 替换为先前任务中猫图片的网址。该网址如下所示:
https://storage.googleapis.com/qwiklabs-Google Cloud-1aeffbc5d0acb416/cat.jpg
  1. 导航菜单 (“导航菜单”图标) 中,点击 Compute Engine > 虚拟机实例

  2. 在您的 first-vm 所在的行中,点击 SSH 按钮。

  3. 在虚拟机上打开的 SSH 登录窗口中,安装 nginx Web 服务器:

sudo apt-get remove -y --purge man-db sudo touch /var/lib/man-db/auto-update sudo apt-get update sudo apt-get install nginx 注意:完成处理可能需要几分钟的时间。如果出现提示,请点击 Y 继续。
  1. 在 Cloud Shell 窗口中,将您使用 Cloud Shell 编辑器创建的 HTML 文件复制到虚拟机:
gcloud compute scp index.html first-vm:index.nginx-debian.html --zone={{{project_0.default_zone | "ZONE"}}} 注意:如果系统询问是否将主机密钥添加到已知主机列表中,请输入 Y。 注意:如果系统提示您输入口令,请按下 ENTER 键以空口令作为回应。在系统提示您确认空口令时再次按下 ENTER 键。
  1. 在虚拟机的 SSH 登录窗口中,将 HTML 文件从主目录复制到 nginx Web 服务器的文档根目录:
sudo cp index.nginx-debian.html /var/www/html

点击检查我的进度以验证是否完成了以下目标。 安装 nginx Web 服务器并自定义欢迎页面

  1. 导航菜单 (“导航菜单”图标) 中,点击 Compute Engine > 虚拟机实例

  2. 点击外部 IP 列中您的 first-vm 的链接。一个新的浏览器标签页即会打开,其中的网页将显示这张猫图片。

结束实验

完成实验后,请点击结束实验。Google Cloud Skills Boost 会移除您使用过的资源并为您清理帐号。

系统会提示您为实验体验评分。请选择相应的星级数,输入评论,然后点击提交

星级数的含义如下:

  • 1 颗星 = 非常不满意
  • 2 颗星 = 不满意
  • 3 颗星 = 一般
  • 4 颗星 = 满意
  • 5 颗星 = 非常满意

如果您不想提供反馈,可以关闭该对话框。

如果要留言反馈、提出建议或做出更正,请使用支持标签页。

版权所有 2020 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。

此内容目前不可用

We will notify you via email when it becomes available

太好了!

We will contact you via email if it becomes available