维护 Bare Metal 解决方案环境

裸金属解决方案环境正常运行后,请按照本指南中提供的信息维护裸金属解决方案服务器、存储和网络。

设置 Google Cloud 项目以使用 Bare Metal Solution API

Bare Metal Solution API 提供许多工具,可让您监控和维护裸金属解决方案环境。通常,您只需在首次使用 Bare Metal Solution API 时执行此过程。但是,您可以根据需要重复使用这些说明进行问题排查,以防该 API 未按预期响应。

  1. 为您的主帐号分配 Bare Metal Solution Admin 或 Bare Metal Solution Editor 预定义 IAM 角色。如需了解如何映射 IAM 角色,请参阅授予 IAM 角色

  2. 在 Cloud 项目中启用 Bare Metal Solution API。

    控制台

    1. 转到 Google Cloud Console 信息中心中的 Bare Metal Solution API。您也可以从此处在 API 库中搜索 Bare Metal Solution API:API 和服务 > 库
    2. Bare Metal Solution API 页面上,点击启用
    3. 点击浏览器上的返回按钮。如果 API 已启用旁边显示绿色对勾标记,则表示您可以使用该 API。

    gcloud

    • 如需通过 gcloud 启用 Bare Metal Solution API,请在以下命令中输入您的 gcloud CLI 项目 ID,复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

       gcloud services enable baremetalsolution.googleapis.com --project=PROJECT_ID
       

  3. 允许 Google Cloud CLI 使用您的 Cloud 项目。

    1. 在 Cloud Shell 窗口中,输入 gcloud auth login 命令。
      gcloud auth login
      
    2. 复制生成的网址并将其粘贴到单独的浏览器标签页或窗口中。
    3. 使用与您的 Cloud 项目关联的用户名登录该页面。
    4. 点击允许以启用 gcloud CLI。
    5. 复制授权代码。
    6. 将代码粘贴到 Cloud Shell 客户端命令行中。
    7. Enter 键或 Return 键。

如需详细了解在 Google Cloud 中设置 API 所需的一般步骤,请参阅 Google Cloud API 使用入门

运行裸金属解决方案服务器

您可以在服务器上执行多种操作,例如重启和启动。在您的服务器上使用以下命令。

gcloud

  1. 如需关闭并重启 Bare Metal 解决方案服务器,请按以下步骤操作。

    1. 务必按照 API 设置步骤操作。

      重启服务器要求您启用裸金属解决方案 API 和 gcloud CLI。您还需要向主帐号授予 Bare Metal Solution Admin 或 Bare Metal Solution Editor IAM 角色。如需完成设置步骤,请参阅设置 Google Cloud 项目以使用 Bare Metal Solution API

    2. 如需关闭并重启裸金属解决方案服务器,请发出 gcloud bms instances reset 命令:

      gcloud bms instances reset SERVER_NAME --project=PROJECT_ID --region=REGION
      

      输出会显示服务器重启请求的状态。

      Reset request issued for: [SERVER_NAME]

      Waiting for operation [operations/880d346a-4836-4467-acc4-29e6a430bfdd] to complete...done.

      输入该命令后,裸金属解决方案服务器会重启。重启需要 15 到 60 分钟才能完成,具体取决于您的服务器配置。

      此命令的输出提供了一个操作 ID,可用于检查重启状态。如需使用操作 ID 并查看重启状态,请参阅查看长时间运行的操作的状态

  2. 如需开启服务器电源,请使用 gcloud bms instances start 命令。

    gcloud bms instances start SERVER_NAME --project=PROJECT_ID --region=REGION
    

    输出会显示服务器重启请求的状态。

    Start request issued for: [SERVER_NAME]

    Waiting for operation [operations/880d346a-4836-4467-acc4-29e6a430bfdd] to complete...done.

    大多数情况下,服务器的电源会保持开启。如果您需要关闭电源,请使用以下选项:

    • 使用服务器操作系统的关闭命令。
    • 某些应用在重新成像后会自动关闭服务器的电源。

API

  1. 如需关闭并重启 Bare Metal 解决方案服务器,请按以下步骤操作。

    1. 务必按照 API 设置步骤操作。

      重启服务器要求您启用裸金属解决方案 API 和 gcloud CLI。您还需要授予 Bare Metal Solution Admin 或 Bare Metal Solution Editor IAM 角色。如需完成设置步骤,请参阅设置 Google Cloud 项目以使用 Bare Metal Solution API

    2. 登录裸金属解决方案服务器以观察服务器重启。

      • 打开 Cloud Console 窗口。
      • 导航到您的跳转主机虚拟机实例:Compute Engine > 虚拟机实例
      • 点击 SSH 按钮以连接到跳板机虚拟机实例。
      • 如需登录裸金属解决方案服务器,请在跳板机命令行中输入 SSH 命令。

        [username@instance-jump-host ~]$ ssh customeradmin@bms-ip-address>
        customeradmin@bms-ip-address's password: bms-password
        Last login: Mon Mar 15 22:43:19 2022 from bms-ip-address
        [customeradmin@BMS_SERVER_NAME ~]$
        
      • 输入 top 命令以验证服务器是否正在运行。您可以使用此窗口来监控重新启动的进度。

    3. 运行重启命令

      • 打开 Cloud Shell 窗口。
      • 在以下命令中添加 Cloud 项目 ID、区域和裸金属解决方案服务器名称。

        curl -X POST \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "X-Goog-User-Project: PROJECT_ID" \
        -H "Content-Type: application/json" \
        "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/BMS_SERVER_NAME:reset"
        
      • 复制命令并粘贴到 Cloud Shell 窗口中,然后按 EnterReturn 键。

        Bare Metal 解决方案服务器会重启。重启需要 15 到 60 分钟才能完成,具体取决于您的服务器配置。

        此命令的输出提供了一个操作 ID,可用于检查重启状态。如需使用操作 ID 并查看状态,请参阅查看长时间运行的操作的状态

        {
         "name": "operations/5c0c8b3f-5edc-4117-be9f-812af9740aaf"
        }
        

        服务器重新启动时,您无法在跳板机虚拟机实例上使用 ping 或 SSH 来访问裸金属解决方案服务器。几分钟后,裸金属解决方案服务器将恢复在线状态。

        服务器恢复在线状态后,您便可以成功从跳板机虚拟机实例发出 ping 或使用 SSH 来访问裸金属解决方案服务器。

    如需详细了解如何重启裸金属解决方案服务器,请参阅 Bare Metal Solution API

  2. 如需开启服务器电源,请输入项目 ID、区域和服务器名称,然后发出以下 curl 命令。

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/SERVER_NAME:start"
    

    大多数情况下,服务器的电源会保持开启。如果您需要关闭电源,请使用以下选项:

    • 使用服务器操作系统的关闭命令。
    • 某些应用在重新成像后会自动关闭服务器的电源。

管理裸金属解决方案环境中的资源

借助 Bare Metal Solution Management API、gcloud 命令和 Google Cloud Console,您可以查看裸金属解决方案环境中的资源(例如服务器、网络和存储)的状态。

务必设置 Bare Metal Solution API

如需查看资源状态,您需要启用裸金属解决方案 API 和 gcloud CLI。您还需要向主帐号授予一个裸金属解决方案 IAM 角色,例如 Bare Metal Solution Admin 或 Bare Metal Solution Editor。如需在管理资源之前完成 API 设置步骤,请参阅设置 Google Cloud 项目以使用 Bare Metal Solution API

查看裸金属解决方案环境中的服务器

发出命令来调用 Bare Metal Solution Management API 时,您可以了解裸金属解决方案环境中的设备的状态。如需查看当前状态,请选择以下命令选项之一:

控制台

您可以在 Cloud Console 中检查裸金属解决方案服务器及其关联的网络和存储组件的状态。

  1. 导航到 Compute Engine > 裸金属解决方案 > 服务器

  2. 查看可用信息。

    字段 说明 示例
    状态 表示服务器的可用性 带有对勾标记的绿色圆圈表示服务器已预配且可用。
    ID 分配给服务器的标识符。
    • 点击该 ID 可查看有关服务器的基本信息。
    • 排查此资源的问题时,请与 Google Cloud 支持团队共享该 ID。
    at-1234567-svr001
    名称 服务器名称。点击该名称可查看有关服务器的其他信息。

    注意:如果您在预配服务器时未输入名称,则 ID 会显示在此字段中。
    server-1
    位置 裸金属解决方案区域 asia-southeast1
    服务器类型 服务器规格 o2-standard-32-metal
    客户端 IP 连接到 Google Virtual Private Cloud 的服务器 IP 地址 10.200.0.5
    专用 IP 连接到其他裸金属解决方案环境资源的服务器 IP 地址 192.168.2.5
    标签 显示您添加到此服务器的所有标签

    如果要使用标签来过滤控制台输出,您可以复制标签文本并将其粘贴到状态字段上方的过滤条件框。
    environment:test
  3. 如需查看有关服务器及其网络和存储功能的其他信息,请点击服务器的名称

    • 基本信息中,您可以了解服务器是否支持超线程。
    • 网络中,您可以查看网络接口名称、接口类型(客户端或专用)、IP 地址和 MAC 地址。
    • 对于存储,您可以查看逻辑单元号 (LUN) 信息,例如状态、名称、卷、大小和类型。您还可以查看 LUN 是否可共享和可启动。

gcloud

  1. 如需列出裸金属解决方案环境中的服务器并查看它们的状态,请输入项目 ID 并发出 gcloud bms instances list 命令:

    gcloud bms instances list --project=PROJECT_ID
    

    以下输出示例显示了服务器的信息,例如服务器名称、类型、IP 地址和状态。

    NAME               PROJECT              REGION           MACHINE_TYPE          IP_ADDRESSES             STATE
    SERVER_NAME      PROJECT_ID        REGION         o2-standard-32-metal  192.168.1.1,192.168.2.1  RUNNING
    

    其他命令选项包括:

    • --region:查看特定 Google Cloud 区域中的设备。
    • --limit:限制输出以显示特定数量的设备
  2. 如需获取裸金属解决方案环境中特定服务器的网络和存储信息,请输入服务器名称、项目 ID 和区域,然后发出 gcloud bms instances describe 命令:

    gcloud bms instances describe SERVER_NAME --project=PROJECT_ID --region=REGION
    

    以下输出示例显示了一个运行中的服务器,该服务器具有 12 个 LUN,客户端网络为 192.168.1.1,专用网络为 192.168.2.1。

    luns:
    - bootLun: true
      name: SERVER_NAME-lun000-b1
      sizeGb: '200'
      state: READY
      storageVolume: SERVER_NAME-vol000-b1
    - name: STORAGE_DEVICE_NAME-lun001
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun002
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun003
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun004
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun005
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun006
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun007
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun008
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun009
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun010
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun011
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    - name: STORAGE_DEVICE_NAME-lun012
      sizeGb: '85'
      state: READY
      storageVolume: STORAGE_DEVICE_NAME-vol001
    machineType: o2-standard-32-metal
    name: projects/PROJECT_ID/locations/REGION/instances/SERVER_NAME
    networks:
    - ipAddress: 192.168.1.1
      macAddress:
      - 34:80:0D:52:AF:28
      - 34:80:0D:15:3E:0D
      network: STORAGE_DEVICE_NAME-vlan001
    - ipAddress: 192.168.2.1
      macAddress:
      - 34:80:0D:52:AF:38
      - 34:80:0D:15:3E:1D
      network: STORAGE_DEVICE_NAME-vlan002
    state: RUNNING
    
  3. 如需为服务器添加、更新或移除标签,请发出 gcloud bms instances update 命令。您可以使用以下选项:

    • --update-labels: 向资源添加标签,以便能过滤状态命令的输出。必须使用键值对(例如 environment = test)添加每个标签。
    • --remove-labels: 移除特定标签
    • --clear-labels: 移除所有标签

    以下示例命令会添加标签 environment = devlocation = branch,并从服务器移除标签 department

    gcloud bms instances update SERVER_NAME --project=PROJECT_ID --region=REGION --update-labels environment=dev,location=branch --remove-labels=department
    
    以下命令会从服务器中移除所有标签:
    gcloud bms instances update SERVER_NAME --project=PROJECT_ID --region=REGION --clear-labels
    
    如需查看服务器标签的更改,请发出以下命令:
    gcloud bms instances describe SERVER_NAME --project=PROJECT_ID --region=REGION
    
  4. 如需使用标签过滤 gcloud bms instances list 命令的输出,请在命令末尾添加 --filter labels.KEY=VALUE。以下示例会限制标有键值对 environment = dev 的服务器的输出。

    gcloud bms instances list --project=PROJECT_ID --region=REGION --filter labels.environment=dev
    

API

  1. 打开 Google Cloud Console 中的 Cloud Shell 终端窗口

  2. 如需列出裸金属解决方案环境中的服务器并查看其状态,请在以下 curl 命令中输入您的项目 ID 和区域,复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances"
    
  3. 如需获取裸金属解决方案环境中的服务器的网络和存储信息,请发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/SERVER_NAME"
    
  4. 如需为服务器添加标签,请在以下 curl 命令中输入项目 ID、区域和服务器名称。此示例中的键值对会分配标签 environment = test。复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/SERVER_NAME?updateMask=labels"
     -d "{
      'labels' : {'environment': 'test'}
    }"
    
  5. 如需使用标签过滤裸金属解决方案服务器的 GET curl 命令的输出,请输入项目 ID 和区域,然后在命令末尾附加 ?filter=labels.KEY=VALUE。以下示例会限制输出,以便查找具有键值对标签 environment = test 的服务器。

    curl -X GET -H \
    "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances"?filter=labels.environment=test
    

查看裸金属解决方案环境中的网络

通过监控裸金属解决方案环境中的网络资源,您可以了解服务器如何连接到其他资源。如需查看网络的状态,请选择以下选项之一:

控制台

  1. 在 Google Cloud Console 中,导航到 Compute Engine > 裸金属解决方案 > 网络

  2. 查看可用信息。

    字段 说明 示例
    状态 指明网络的可用性 带有对勾标记的绿色圆圈表示网络已预配且可用。
    ID 分配给网络的标识符。
    • 点击该 ID 可查看有关网络的基本信息。
    • 排查此资源的问题时,请与 Google Cloud 支持团队共享该 ID。
    at-1234567-vlan001
    名称 网络名称。点击该名称可查看有关网络的其他信息。

    注意:如果您在预配网络时未输入名称,则 ID 会显示在此字段中。
    network-1
    位置 网络所在的区域 asia-southeast1
    类型 客户端或专用网络 Client
    CIDR 网络的 IP 地址范围 192.168.1.0/24
    VLAN ID Google Cloud 分配的 VLAN 标识符 100
    标签 显示您添加到此网络资源中的任何标签

    如果要使用标签来过滤控制台输出,您可以复制标签文本并将其粘贴到状态字段上方的过滤器框。
    environment:test

gcloud

  1. 如需查看裸金属解决方案环境中的所有网络并查看其状态,请输入项目 ID 并发出 gcloud bms networks list 命令。

    gcloud bms networks list --project=PROJECT_ID
    
    以下输出示例展示了每个网络的网络名称、区域、IP 地址范围、网络类型和 VLAN ID。
    NAME                REGION           RANGE           TYPE     VLAN_ID
    at-1111111-vlan001  REGION         192.168.1.0/24  CLIENT   122
    at-1111111-vlan002  REGION         192.168.2.0/24  PRIVATE  123
    
  2. 如需查看单个网络的详细信息,请输入项目 ID、区域和网络名称,然后发出以下 gcloud bms networks describe 命令:

    gcloud bms networks describe NETWORK_NAME --project=PROJECT_ID --region=REGION
    
    以下输出示例展示了 IP 地址范围、网络名称、状态、网络类型、VLAN ID 以及虚拟路由和转发 (VRF) 详细信息。
    cidr: 192.168.1.0/24
    name: projects/PROJECT_ID/locations/REGION/networks/NETWORK_NAME
    state: PROVISIONED
    type: CLIENT
    vlanId: '122'
    vrf:
      autonomousSystemNumber: '65500'
      juniperAlias: g00000-at-1111111-ic001
      name: at-1111111-ic001
      routeTarget: '282'
      state: PROVISIONED
    
  3. 如需为网络添加、更新或移除标签,请发出 gcloud bms networks update 命令。您可以使用以下选项:

    • --update-labels: 向资源添加标签,以便能过滤状态命令的输出。必须使用键值对(例如 environment = test)添加每个标签。
    • --remove-labels: 移除特定标签
    • --clear-labels: 移除所有标签

    以下示例命令会添加标签 environment = devlocation = downtown,并从网络中移除标签 cost-center

    gcloud bms networks update NETWORK_NAME --project=PROJECT_ID --region=REGION --update-labels environment=dev,location=downtown --remove-labels=cost-center
    
    以下命令会从网络中移除所有标签:
    gcloud bms networks update NETWORK_NAME --project=PROJECT_ID --region=REGION --clear-labels
    
    如需查看网络标签的更改,请发出以下命令:
    gcloud bms networks describe NETWORK_NAME --project=PROJECT_ID --region=REGION
    
  4. 如需使用标签过滤 gcloud bms networks list 命令的输出,请在命令末尾添加 --filter labels.KEY=VALUE。以下示例会限制标有键值对 environment = dev 的网络的输出。

    gcloud bms networks list --project=PROJECT_ID --region=REGION --filter labels.environment=dev
    

API

  1. 打开 Cloud Console 中的 Cloud Shell 终端窗口。

  2. 如需查看裸金属解决方案环境中的所有网络并查看其状态,请在以下 curl 命令中输入项目 ID 和区域,复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/networks"
    
  3. 如需查看单个网络的详细信息,请输入项目 ID、区域和网络名称,然后发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/networks/NETWORK_NAME"
    
  4. 如需为网络添加标签,请输入项目 ID、区域和网络名称,然后发出以下 curl 命令。此示例中的键值对会分配标签 environment = test

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/networks/NETWORK_NAME?updateMask=labels"
     -d "{
      'labels' : {'environment': 'test'}
    }"
    
  5. 如需使用标签过滤裸金属解决方案网络的 GET curl 命令的输出,请输入项目 ID 和区域,然后在命令末尾附加 ?filter=labels.KEY=VALUE。以下示例会限制输出,以便查找具有键值对标签 environment = test 的网络。

    curl -X GET -H \
    "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/networks"?filter=labels.environment=test
    

查看裸金属解决方案环境中的存储

留意裸金属解决方案环境中的存储空间资源有助于您确定服务器是否有足够的存储空间容量来容纳应用和工作负载。如需查看存储空间的状态,请选择以下选项之一:

控制台

  1. 在 Cloud Console 中,导航到 Compute Engine > 裸金属解决方案 >

  2. 查看可用信息。

    字段 说明 示例
    状态 指明存储卷的可用性 带有对勾标记的绿色圆圈表示存储卷已准备就绪。
    ID 分配给存储卷的标识符。
    • 点击该 ID 可查看有关存储卷的基本信息,包括 LUN 和快照。
    • 排查此资源的问题时,请与 Google Cloud 支持团队共享该 ID。
    • 启动卷:
      at-1234567-svr001-vol000-b1
    • Fibre Channel 量:
      at-1111111-vol001
    • NFS 共享:
      at-2222222-nfs001-vol000
    名称 存储卷名称。点击名称可查看有关存储卷的其他信息,包括 LUN 和快照。

    注意:如果您在预配存储卷时未输入名称,则 ID 会显示在此字段中。
    • 启动卷:
      boot-volume-1
    • Fibre Channel 量:
      fibre-channel-volume-5
    • NFS 共享:
      nfs-share-7
    位置 存储卷所在的区域 asia-southeast1
    类型 硬盘或固态硬盘 HDD - Hard drive
    标签 显示您添加到此存储资源中的任何标签

    如果要使用标签来过滤控制台输出,您可以复制标签文本并将其粘贴到状态字段上方的过滤器框。
    environment:test

gcloud

  1. 如需查看裸金属解决方案环境中的所有存储卷并查看其状态,请输入项目 ID 并发出 gcloud bms volumes list 命令:

    gcloud bms volumes list --project=PROJECT_ID
    
    以下输出示例展示了三个存储卷、项目 ID、区域、卷大小和存储类型。
    NAME                         PROJECT              REGION           REQUESTED_SIZE_GIB  STORAGE_TYPE  STATE
    at-1234567-svr001-vol000-b1  PROJECT_ID         REGION         200                 SSD           READY
    at-1111111-vol001            PROJECT_ID         REGION         1024                SSD           READY
    at-2222222-nfs001-vol000     PROJECT_ID         REGION         400                 HDD           READY
    
  2. 如需查看单个存储卷,请输入存储卷名称、项目 ID 和区域,然后发出 gcloud bms volumes describe 命令:

    gcloud bms volumes describe VOLUME_NAME --project=PROJECT_ID --region=REGION
    
    以下输出示例展示了存储卷大小、名称、快照自动删除政策、状态和存储类型。
    currentSizeGib: '250'
    name: projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME
    requestedSizeGib: '250'
    snapshotAutoDeleteBehavior: OLDEST_FIRST
    snapshotReservationDetail:
      reservedSpaceGib: '50'
      reservedSpaceRemainingGib: '50'
    state: READY
    storageType: SSD
    
  3. 如需为存储卷添加、更新或移除标签,请发出 gcloud bms volumes update 命令。您可以使用以下选项:

    • --update-labels: 向资源添加标签,以便能过滤状态命令的输出。必须使用键值对(例如 environment = production)添加每个标签。
    • --remove-labels: 移除特定标签
    • --clear-labels: 移除所有标签

    以下示例命令会添加标签 environment = productionlocation = hq,并从存储卷中移除标签 rack

    gcloud bms volumes update VOLUME_NAME --project=PROJECT_ID --region=REGION --update-labels environment=production,location=hq --remove-labels=rack
    
    以下命令会从存储卷中移除所有标签:
    gcloud bms volumes update VOLUME_NAME --project=PROJECT_ID --region=REGION --clear-labels
    
    如需查看存储卷标签的更改,请发出以下命令:
    gcloud bms volumes describe VOLUME_NAME --project=PROJECT_ID --region=REGION
    
  4. 如需使用标签过滤 gcloud bms volumes list 命令的输出,请在命令末尾添加 --filter labels.KEY=VALUE。以下示例会限制标有键值对 environment = production 的存储卷的输出。

    gcloud bms volumes list --project=PROJECT_ID --region=REGION --filter labels.environment=production
    
  5. 如需查看存储卷的所有 LUN,请输入项目 ID、区域和存储卷名称,然后发出 gcloud bms volumes luns list 命令:

    gcloud bms volumes luns list --project=PROJECT_ID --region=REGION --volume=VOLUME_NAME
    
    以下输出示例展示了 LUN 名称、区域、存储卷名称、卷大小和状态。
    NAME                         REGION           VOLUME       SIZE_GB  STATE
    at-11111111-vol001-lun000    REGION        VOLUME_NAME 200      READY
    
  6. 如需查看单个 LUN 的详细信息,请输入项目 ID、区域和 LUN 名称,然后发出 gcloud bms volumes luns describe 命令:

    gcloud bms volumes luns describe LUN_NAME --project=PROJECT_ID --region=REGION --volume=VOLUME_NAME
    
    以下输出示例展示了 LUN 名称和存储卷信息,例如大小、状态、存储类型、名称和 ID。
    bootLun: true
    name: projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME/luns/LUN_NAME
    sizeGb: '200'
    state: READY
    storageType: SSD
    storageVolume: VOLUME_NAME
    wwid: 600a09803831434434244f774d616b94
    

API

  1. 打开 Cloud Console 中的 Cloud Shell 终端窗口。

  2. 如需查看裸金属解决方案环境中的所有存储卷并查看其状态,请在以下 curl 命令中输入项目 ID 和区域,复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes"
    
  3. 如需查看单个存储空间卷,请输入项目 ID、区域和存储空间卷名称并发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME"
    
  4. 如需查看存储空间卷的所有逻辑单元号 (LUN),请输入项目 ID、区域和存储空间卷名称,然后发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME/luns
    
  5. 如需查看单个 LUN 的详细信息,请输入项目 ID、区域、存储空间卷名称和 LUN 名称,然后发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME/luns/LUN_NAME"
    
  6. 如需为存储卷添加标签,请输入项目 ID、区域和存储卷名称,然后发出以下 curl 命令。此示例中的键值对会分配标签 environment = test

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes/VOLUME_NAME?updateMask=labels"
     -d "{
      'labels' : {'environment': 'test'}
    }"
    
  7. 如需使用标签过滤裸金属解决方案存储卷的 GET curl 命令的输出,请输入项目 ID 和区域,然后在命令末尾附加 ?filter=labels.KEY=VALUE。以下示例会限制输出,以便查找具有键值对标签 environment = test 的存储卷。

    curl -X GET -H \
    "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/volumes"?filter=labels.environment=test
    

查看裸金属解决方案环境中的 NFS 文件存储

为裸金属解决方案订购和预配 NFS 后,您可以查看 NFS 文件存储的状态,并确认 Google Cloud 按预期实现了您配置的设置。如需查看当前状态,请选择以下命令选项之一:

控制台

  1. 在 Cloud Console 中,导航到 Compute Engine > 裸金属解决方案 > NFS 共享

  2. 查看可用信息。

    字段 说明 示例
    状态 指明 NFS 卷的可用性 带有对勾标记的绿色圆圈表示已预配 NFS 卷。
    ID 分配给托管卷的 NFS 存储设备的标识符。
    • 点击该 ID 可查看有关存储卷的其他信息,包括允许的客户端和 NFS 属性。
    • 排查此资源的问题时,请与 Google Cloud 支持团队共享该 ID。
    at-2222222-nfs001
    名称 托管卷的 NFS 存储设备的名称。点击该名称可查看有关存储卷的其他信息,包括允许的客户端和 NFS 属性。

    注意:如果在预配 NFS 存储设备时未输入名称,则 ID会显示在此字段中。
    nfs-share-7
    位置 NFS 存储卷的区域 asia-southeast1
    NFS 存储卷的名称。点击该名称可查看有关 NFS 存储卷的其他信息,例如快照。 at-2222222-nfs001-vol000
    标签 显示您添加到此 NFS 文件存储资源中的任何标签

    如果要使用标签来过滤控制台输出,您可以复制标签文本并将其粘贴到状态字段上方的过滤器框。
    environment:test

gcloud

  1. 如需查看裸金属解决方案环境中 NFS 文件存储的状态,请发出 gcloud bms nfs-shares list 命令:

    gcloud bms nfs-shares list --project=PROJECT_ID --region=REGION
    

    其他命令选项包括:

    • --limit: 限制输出以显示特定数量的设备
    • --filter: 限制输出,以显示具有特定标签或其他过滤条件参数的设备。

    输出会提供有关 NFS 文件存储的详细信息,包括名称、ID、卷和允许的客户端。

    NAME: nfs-share-7
    ID: at-2222222-nfs001
    PROJECT: PROJECT_ID
    REGION: REGION
    VOLUME_NAME: at-2222222-nfs001-vol000
    STATE: PROVISIONED
    ALLOWED_CLIENTS: [{"allowedCidr": "192.168.1.1/32", "networkName": "at-1111111-vlan001", "shareIp": "192.168.1.240"}]
    

  2. 如需查看特定 NFS 文件存储设备的状态,请发出 gcloud bms nfs-shares describe 命令。您可以将 NFS 共享名称或 ID 用作 NFS_SHARE 变量:

    gcloud bms nfs-shares describe NFS_SHARE --project=PROJECT_ID --region=REGION
    
    输出内容提供有关允许的客户端、NFS 设置、NFS 服务器及其状态以及存储卷的详细信息。
    allowedClients:
    – allowDev: true
      allowedClientsCidr: 192.168.1.1/32
      mountPermissions: READ_WRITE
      network: projects/PROJECT_ID/locations/REGION/networks/at-1111111-vlan001
      noRootSquash: true
      shareIp: 192.168.1.240
    name: projects/PROJECT_ID/locations/REGION/nfsShares/NFS_SHARE
    nfsShareId: at-2222222-nfs001
    state: PROVISIONED
    volume: projects/PROJECT_ID/locations/REGION/volumes/at-2222222-nfs001-vol000
    
  3. 如需为 NFS 文件存储添加、更新或移除标签,请发出 gcloud bms nfs-shares update 命令。您可以使用以下选项:

    • --update-labels: 向资源添加标签,以便能过滤状态命令的输出。必须使用键值对(例如 environment = test)添加每个标签。
    • --remove-labels: 移除特定标签
    • --clear-labels: 移除所有标签

    以下示例命令会添加标签 environment = testlocation = downtown,并从 NFS 文件存储设备中移除标签 cost-center

    gcloud bms nfs-shares update NFS_SHARE --project=PROJECT_ID --region=REGION --update-labels environment=test,location=downtown --remove-labels=cost-center
    
    以下命令会从 NFS 文件存储设备中移除所有标签:
    gcloud bms nfs-shares update NFS_SHARE --project=PROJECT_ID --region=REGION --clear-labels
    

    如需查看 NFS 文件存储标签的更改,请发出以下命令:

    gcloud bms nfs-shares describe NFS_SHARE --project=PROJECT_ID --region=REGION
    
  4. 如需使用标签过滤 gcloud bms nfs-shares list 命令的输出,请在命令末尾添加 --filter labels.KEY=VALUE。以下示例会限制标有键值对 environment = test 的 NFS 文件存储设备的输出。

    gcloud bms nfs-shares list --project=PROJECT_ID --region=REGION --filter labels.environment=test
    

API

  1. 如需查看裸金属解决方案环境中 NFS 文件存储的状态,包括允许的客户端和 NFS 属性,请在下面的 curl 命令中输入项目 ID 和区域。复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/nfsShares"
    
  2. 如需查看特定 NFS 文件存储设备的状态,请输入您的项目 ID、区域和 NFS 服务器名称或 ID,然后发出以下命令:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/nfsShares/NFS_SHARE"
    
  3. 如需为 NFS 文件存储设备添加标签,请在以下 curl 命令中输入项目 ID、区域和 NFS 服务器名称或 ID。此示例中的键值对分配了三个标签:user = testenv = stagingpurpose = new_hardware_cert。复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/nfsShares/NFS_SHARE?updateMask=labels"
     -d "{
      'labels' : {
         'user': 'test',
         'env': 'staging',
         'purpose': 'new_hardware_cert'
       }
    }"
    
    • 如果发出不带任何标签或值的 curl 命令,则清除所有标签。
      'labels' : {
       }
      
    • 如果发出带有新标签值的 curl 命令,则新值会覆盖先前的值。
      'labels' : {
           'user': 'production',
           'env': 'production',
           'purpose': 'shared_data_store'
       }
      
  4. 如需使用标签过滤裸金属解决方案 NFS 文件存储设备的 GET curl 命令的输出,请输入项目 ID 和区域,然后在命令末尾附加 ?filter=labels.KEY=VALUE。以下示例会限制输出,以便查找具有键值对标签 env = staging 的 NFS 文件存储设备。

    curl -X GET -H \
    "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://baremetalsolution.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/nfsShares"?filter=labels.env=staging
    

查看长时间运行的操作的状态

某些“gcloud”命令或 API 调用(例如服务器重置)可能需要很长时间才能完成。如果要检查长时间运行的操作的状态,请使用以下命令选项:

gcloud

  1. 如需查看长时间运行的操作的状态,请使用 gcloud bms operations describe 命令。

    gcloud bms operations describe --project=PROJECT_ID --region=REGION operations/OPERATION_ID
    

API

  1. 打开 Cloud Console 中的 Cloud Shell 终端窗口。

  2. 如需查看裸金属解决方案环境中长时间运行的操作的状态,请在以下 curl 命令中输入项目 ID 和操作 ID。复制该命令,将其粘贴到 Cloud Shell 提示符中,然后按 EnterReturn 键:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "[https://baremetalsolution.googleapis.com/v1/operations/OPERATION_ID"
    
    操作完成后,完成字段在输出中显示为 true
    {
      "name": "operations/OPERATION_ID",
      "done": true
    }