Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda> Bare Metal Server> Referência de API> Exemplos> Exemplo 3: anexar discos a um BMS
Atualizado em 2023-09-20 GMT+08:00

Exemplo 3: anexar discos a um BMS

Cenários

Se os discos existentes de um BMS não atenderem aos requisitos de serviço, por exemplo, devido a espaço em disco insuficiente ou baixo desempenho do disco, você pode anexar mais discos disponíveis ao BMS ou chamar a API de criação de disco EVS para criar discos e anexá-los ao o BMS.

Pré-requisitos

Os BMSs que usam determinados flavors não podem ter discos EVS anexados porque os servidores não têm iNICs de SDI ou por outros motivos. Portanto, execute as seguintes operações para verificar se os discos EVS podem ser anexados a um BMS:

Chame a API de Consulta de detalhes sobre flavors e informações estendidas sobre flavors e verifique a resposta. Se o valor de baremetal:__support_evs para o flavor do BMS for true, os discos EVS podem ser anexados ao BMS. Se o valor for false ou o flavor do BMS não contiver este parâmetro, os discos EVS não poderão ser anexados ao BMS.

Procedimento

  1. Crie um disco EVS.
    • API

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

      Para obter detalhes, consulte Criação de discos EVS.

    • Exemplo de solicitação

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

      Obtenha {EVS Endpoint} de Regiões e pontos de extremidade.

      Corpo:

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

      Os BMSs suportam apenas discos EVS SCSI. Portanto, o valor de hw:passthrough deve ser true.

    • Exemplo de resposta
      {
          "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 o valor de id em volume.

  2. Conecte o disco do EVS ao BMS.
    • API

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

      Para mais detalhes, consulte Anexar um disco EVS a um BMS.

    • Exemplo de solicitação

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

      Obtenha {BMS Endpoint} de Regiões e pontos de extremidade.

      Corpo:

      {
          "volumeAttachment": {
              "volumeId": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
              "device": "/dev/sdb"
          }
      }
    • Exemplo de resposta
      {
          "volumeAttachment": {
              "id": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
              "volumeId": "8ae4ff5b-7e6e-492f-b83a-8a51fdfa3111",
              "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
              "device": "/dev/sdb"
          }
      }
  3. Verifique se o disco EVS foi anexado com sucesso ao BMS.
    • API

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

      Para mais detalhes, consulte Consulta de discos EVS conectados a um BMS.

    • Exemplo de solicitação

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

      Obtenha {BMS Endpoint} de Regiões e pontos de extremidade.

    • Exemplo de resposta
       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"
              }
          ]
      }