Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda> Bare Metal Server> Referencia de la API> Ejemplos> Ejemplo 3: Conexión de discos a un BMS
Actualización más reciente 2023-03-20 GMT+08:00

Ejemplo 3: Conexión de discos a un BMS

Escenarios

Si los discos existentes de un BMS no cumplen con los requisitos de servicio, por ejemplo, debido a un espacio en el disco insuficiente o a un rendimiento de disco deficiente, puede conectar más discos disponibles al BMS o invocar a la API de creación de discos de EVS para crear los discos y adjuntarlos al BMS.

Prerrequisitos

Los BMS que usan ciertas variantes no pueden tener los discos de EVS conectados porque los servidores no tienen iNIC de SDI o por otras razones. Por lo tanto, realice las siguientes operaciones para comprobar si los discos de EVS se pueden conectar a un BMS:

Invoque a la API de Consulta de detalles sobre variantes y la información de las variantes extendidas y compruebe la respuesta. Si el valor de baremetal:__support_evs para la variante de BMS es de true, se pueden conectar los discos de EVS al BMS. Si el valor es de false o la variante de BMS no contiene este parámetro, los discos de EVS no se pueden adjuntar al BMS.

Procedimiento

  1. Cree un disco de EVS.
    • API

      Formato de URI: POST /v2/{project_id}/volumes

      Para obtener más información, consulte la Creación de discos de EVS.

    • Ejemplo de la solicitud

      POST https://{EVS Endpoint}/v2/05041fffa40025702f6dc009cc6f8f33/volumes

      Obtenga {EVS Endpoint} de Regiones y puntos de conexión.

      Cuerpo:

      {
          "volume": {
              "name": "openapi_vol01", 
              "availability_zone": "cn-north-4a", 
              "description": "create for api test", 
              "volume_type": "SSD", 
              "metadata": {
                  "hw:passthrough": "true"
              },
              "size": 40
          }
      }

      Los BMS solo admiten los discos SCSI de EVS. Por lo tanto, el valor de hw:passthrough debe ser true.

    • Ejemplo de la respuesta
      {
          "volume": {
              "attachments": [],
              "links": [
                  {
                      "href": "https://evs.cn-north-4.myhuaweicloud.com/v2/05041fffa40025702f6dc009cc6f8f33/volumes/8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
                      "rel": "self"
                  },
                  {
                      "href": "https://evs.cn-north-4.myhuaweicloud.com/05041fffa40025702f6dc009cc6f8f33/volumes/8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
                      "rel": "bookmark"
                  }
              ],
              "availability_zone": "cn-north-4a",
              "encrypted": false,
              "updated_at": "2020-11-09T08:19:22.077967",
              "replication_status": "disabled",
              "storage_cluster_id": null,
              "snapshot_id": null,
              "id": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
              "size": 40,
              "user_id": "0504186e6a8010e01f3ec009a7279baa",
              "metadata": {
                  "hw:passthrough": "true"
              },
              "status": "creating",
              "description": "create for api test",
              "multiattach": false,
              "source_volid": null,
              "consistencygroup_id": null,
              "name": "openapi_vol01",
              "bootable": "false",
              "created_at": "2020-11-09T08:19:22.061273",
              "volume_type": "SSD",
              "shareable": false
          }
      }

      Registre el valor de id en el volume.

  2. Conecte el disco de EVS al BMS.
    • API

      Formato de URI: POST /v1/{project_id}/baremetalservers/{server_id}/attachvolume

      Para obtener más información, véase Conexión de un disco de EVS a un BMS.

    • Ejemplo de la solicitud

      POST https://{BMS Endpoint}/v1/05041fffa40025702f6dc009cc6f8f33/baremetalservers/9ab74d89-61e7-4259-8546-465fdebe4944/attachvolume

      Obtenga {BMS Endpoint} de Regiones y puntos de conexión.

      Cuerpo:

      {
          "volumeAttachment": {
              "volumeId": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
              "device": "/dev/sdb"
          }
      }
    • Ejemplo de la respuesta
      {
          "volumeAttachment": {
              "id": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
              "volumeId": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
              "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
              "device": "/dev/sdb"
          }
      }
  3. Compruebe si el disco de EVS está conectado correctamente al BMS.
    • API

      Formato de URI: GET /v1/{project_id}/baremetalservers/{server_id}/os-volume_attachments

      Para obtener más información, véase Consulta de los discos de EVS conectados a un BMS.

    • Ejemplo de la solicitud

      GET https://{BMS Endpoint}/v1/05041fffa40025702f6dc009cc6f8f33/baremetalservers/9ab74d89-61e7-4259-8546-465fdebe4944/os-volume_attachments

      Obtenga {BMS Endpoint} de Regiones y puntos de conexión.

    • Ejemplo de la respuesta
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      {
          "volumeAttachments": [
              {
                  "device": "/dev/sdd",
                  "id": "a26887c6-c47b-4654-abb5-dfadf7d3f803",
                  "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
                  "volumeId": "a26887c6-c47b-4654-abb5-dfadf7d3f803"
              },
              {
                  "device": "/dev/sdb",
                  "id": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
                  "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
                  "volumeId": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111"
              }
          ]
      }