管理 SDK 组件

什么是组件?

组件是 SDK 的可安装部分。组件可以是命令行工具(gcloudbqgsutil)、一组处于 Alpha 版或测试版版本级别的 gcloud CLI 命令,也可以是包含 SDK 中的工具所用依赖项的软件包。

系统会默认安装最常用的组件。如果您以交互方式运行 gcloud alphagcloud beta 命令并且未安装 alphabeta 组件,则 gcloud CLI 会询问您是否要安装该组件。如果您给予肯定答复,则系统会安装该组件,然后运行该命令。当您运行需要使用其他某些组件的命令时,gcloud CLI 会按需安装这些组件。

默认组件

安装 SDK 时,系统会默认安装以下组件:

ID 名称 说明
gcloud 默认的 gcloud CLI 命令 用来与 Google Cloud Platform 进行交互的工具。只有“正式版”和“预览版”版本级别的命令才会随同该组件一起安装。如果您想使用处于其他版本级别的命令,您必须单独安装 gcloud alpha 命令和/或 gcloud beta 命令组件。
bq BigQuery 命令行工具 用于处理 Google BigQuery 中的数据的工具
gsutil Cloud Storage 命令行工具 用于执行 Google Cloud Storage 的相关任务的工具。
core Cloud SDK 核心库 SDK 工具内部使用的库。

Alpha 版和测试版组件

SDK 提供了两个包含 gcloud CLI Alpha 版和测试版命令的组件。系统没有默认安装这些组件,但您可以在初始安装 SDK 之后,随时手动安装这些组件。这些组件如下所示:

ID 名称 说明
alpha gcloud CLI Alpha 版命令 处于“Alpha 版”版本级别的 gcloud CLI 命令。
beta gcloud CLI 测试版命令 处于“测试版”版本级别的 gcloud CLI 命令。

处于“正式版”和“预览版”版本级别的 gcloud CLI 命令是 gcloud CLI 组件的一部分,在您安装 SDK 时,系统将自动安装这些命令。

以下列表列出了所有可用的其他组件外部软件包管理器(默认情况下未安装)。

管理 Cloud SDK 组件

您可以根据需要列出、安装、更新和移除 Google Cloud SDK 组件。

列出组件

要查看可用的组件以及当前安装的组件的列表,请运行 gcloud components list

gcloud components list
┌──────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                                  Components                                          │
├───────────────┬───────────────────────────────────────────────┬──────────────────────────┬───────────┤
│     Status    │                         Name                  │            ID            │    Size   │
├───────────────┼───────────────────────────────────────────────┼──────────────────────────┼───────────┤
│ Installed     │ App Engine Go Extensions                      │ app-engine-go            │  97.7 MiB │
│ Installed     │ Cloud Bigtable Command Line Tool              │ cbt                      │   4.0 MiB │
│ Installed     │ Cloud Bigtable Emulator                       │ bigtable                 │   3.8 MiB │
│ Installed     │ Cloud Datalab Command Line Tool               │ datalab                  │   < 1 MiB │
│ Installed     │ Cloud Datastore Emulator                      │ cloud-datastore-emulator │  17.8 MiB │
│ Installed     │ Cloud Datastore Emulator (Legacy)             │ gcd-emulator             │  38.1 MiB │
│ Installed     │ Cloud Pub/Sub Emulator                        │ pubsub-emulator          │  33.2 MiB │
│ Installed     │ Emulator Reverse Proxy                        │ emulator-reverse-proxy   │  14.5 MiB │
│ Installed     │ Google Cloud Build Local Builder              │ cloud-build-local        │   4.4 MiB │
│ Installed     │ gcloud app Java Extensions                    │ app-engine-java          │ 118.9 MiB │
│ Installed     │ gcloud app PHP Extensions                     │ app-engine-php           │  21.9 MiB │
│ Installed     │ gcloud app Python Extensions (Extra Libraries)│ app-engine-python-extras │  27.8 MiB │
│ Installed     │ kubectl                                       │ kubectl                  │  12.2 MiB │
│ Installed     │ BigQuery Command Line Tool                    │ bq                       │   < 1 MiB │
│ Installed     │ Cloud SDK Core Libraries                      │ core                     │   7.2 MiB │
│ Installed     │ Cloud Storage Command Line Tool               │ gsutil                   │   3.3 MiB │
│ Installed     │ gcloud Alpha Commands                         │ alpha                    │   < 1 MiB │
│ Installed     │ gcloud Beta Commands                          │ beta                     │   < 1 MiB │
│ Installed     │ gcloud app Python Extensions                  │ app-engine-python        │   6.1 MiB │
└───────────────┴───────────────────────────────────────────────┴──────────────────────────┴───────────┘

请注意,上面显示的输出结果并非所有可用组件的完整列表。要查看所提供的最新组件,请更新您安装的 Cloud SDK 并运行 gcloud components list

安装组件

要安装当前安装的 Cloud SDK 版本中的组件,请运行 gcloud components install

gcloud components install [COMPONENT-ID]

gcloud CLI 会安装指定的组件。

例如,如果您想安装 kubectl 命令,请运行:

gcloud components install kubectl

更新组件

使用 gcloud components update 命令可以将所有已安装的组件更新为 Cloud SDK 的最新可用版本:

gcloud components update

如果您安装了较旧版本的 Cloud SDK,则 gcloud CLI 会更新所有已安装的组件。

如果您需要还原到之前已知良好的版本,并且直接安装 SDK(在软件包管理器外部,包括通过交互式安装程序、静态版本、Windows 安装程序或 Homebrew),您可以使用 gcloud components update 还原到指定版本:

gcloud components update --version VERSION

如需降级通过软件包管理器安装的 Cloud SDK 版本,请参阅这些说明,了解如何在通过 apt-getyum 下载时指定版本。

移除组件

使用 gcloud components remove 命令可以按 ID 移除指定的组件:

gcloud components remove [COMPONENT-ID]

您可以随时使用 gcloud components install 命令重新安装组件。

其他组件

SDK 中还提供了其他组件,这些组件包含各种 gcloud CLI 命令的依赖关系,但默认情况下不会安装这些组件。其中一些组件如下所示(要查看详尽列表,请运行 $ gcloud components list):

ID名称 说明
app-engine-python gcloud 应用 Python 扩展程序 适用于 Python 的 Google App Engine SDK 软件包。当您使用 gcloud app deploy 命令将 Python 应用部署到 App Engine 时,系统会安装此组件。
app-engine-java gcloud 应用 Java 扩展程序 适用于 Java 的 Google App Engine SDK 软件包。当您使用 gcloud app deploy 命令将 Java 应用部署到 App Engine 时,系统会安装此组件。
app-engine-go gcloud 应用 Go 扩展程序 适用于 Go 的 Google App Engine SDK 软件包。当您使用 gcloud app deploy 命令将 Go 应用部署到 App Engine 时,系统会安装此组件。
gcd-emulator Cloud Datastore Emulator Google Cloud Datastore 的模拟器。当您使用 gcloud beta emulators datastore 命令组中的命令时,系统会安装此组件。
pubsub-emulator Cloud Pub/Sub Emulator Google Cloud Pub/Sub 的模拟器。当您使用 gcloud beta emulators pubsub 命令组中的命令时,系统会安装此组件。
cbt Cloud Bigtable CLI Google Cloud Bigtable 命令行工具
cloud-build-local Cloud Build 本地构建工具 Google Cloud Build 本地构建工具
bigtable Cloud Bigtable Emulator Google Cloud Bigtable 的模拟器。当您使用 gcloud beta emulators bigtable 命令组中的命令时,系统会安装此组件。
kubectl kubectl Kubernetes 命令行工具。当您运行 gcloud container 命令组中的命令时,系统会提示您安装此组件。您不需要安装 kubectl 即可创建容器集群,但要运行这些集群,您需要安装此组件。
docker-credential-gcr docker-credential-gcr Google Container Registry 的 Docker 凭据帮助程序。安装凭据帮助程序后,请通过运行 docker-credential-gcr configure-docker 来启用该程序。有关详情,请参阅 GitHub 上的项目。
datalab datalab Cloud Datalab 命令行工具。
cloud-build-local Google Cloud Build Local Cloud Build 的本地构建工具。安装此工具后,您可以在本地机器上运行内部测试版本。有关详情,请参阅本地构建和调试

外部软件包管理器

如果您使用了 APT(通过 deb 格式)或 YUM 等外部软件包管理器来安装 Cloud SDK,则可以使用下表安装其他组件。

Cloud SDK 组件APT 软件包 YUM 软件包
app-engine-go google-cloud-sdk-app-engine-go google-cloud-sdk-app-engine-go
app-engine-java google-cloud-sdk-app-engine-java google-cloud-sdk-app-engine-java
app-engine-python google-cloud-sdk-app-engine-python google-cloud-sdk-app-engine-python
bigtable google-cloud-sdk-bigtable-emulator google-cloud-sdk-bigtable-emulator
cbt google-cloud-sdk-cbt google-cloud-sdk-cbt
cloud-build-local google-cloud-sdk-cloud-build-local google-cloud-sdk-cloud-build-local
datalab google-cloud-sdk-datalab google-cloud-sdk-datalab
docker-credential-gcr 尚未提供。 尚未提供。
gcd-emulator google-cloud-sdk-datastore-emulator google-cloud-sdk-datastore-emulator
kubectl kubectl kubectl
pubsub-emulator google-cloud-sdk-pubsub-emulator google-cloud-sdk-pubsub-emulator