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.
Atualizado em 2024-09-10 GMT+08:00

Exclusão de um PersistentVolume

Função

Essa API é usada para excluir um PersistentVolume de um namespace especificado. Usando essa API, você pode determinar se deve reter o armazenamento em nuvem associado ao PersistentVolume. Esta API foi preterida. Em vez disso, use a API PV do Kubernetes correspondente.

O formato do URL de gerenciamento de armazenamento é https://{clusterid}.Endpoint/uri. No URL, {clusterid} indica o ID do cluster e uri indica o caminho do recurso, ou seja, o caminho para acesso à API. Se https://Endpoint/uri for usado, o parâmetro X-Cluster-ID deve ser especificado no cabeçalho da solicitação.

URI

DELETE /api/v1/cloudpersistentvolumes/{name}

Tabela 1 Descrição do parâmetro de URI

Parâmetro

Obrigatório

Tipo

Descrição

name

Sim

String

Nome do PersistentVolume a ser eliminado.

Formato do nome: Volume name[?deleteVolume=BOOLEAN&storageType=Cloud storage volume type]. O conteúdo entre colchetes pode ser omitido. Exemplos:

  • volume-49f1?deleteVolume=true&storageType=bs
  • volume-49f1

No primeiro exemplo:

deleteVolume: se deve excluir o armazenamento em nuvem de back-end associado depois que o PersistentVolume for excluído. O valor pode ser true ou false.

NOTA:

Se o tipo de volume de armazenamento for efs, esse parâmetro deve ser definido como false.

storageType: tipo de volume de armazenamento em nuvem. Este parâmetro é utilizado em conjunto com deleteVolume. Ou seja, deleteVolume e storageType devem ser configurados ao mesmo tempo.

NOTA:
  • bs: EVS
  • nfs: SFS
  • obs: OBS
  • efs: SFS Turbo

Solicitação

Tabela 2 Descrição do parâmetro do cabeçalho da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

Content-Type

Sim

String

Tipo de corpo da mensagem (formato).

Valores possíveis:

  • application/json;charset=utf-8
  • application/json

X-Auth-Token

Sim

String

As solicitações para chamar uma API podem ser autenticadas usando um token ou AK/SK. Se a autenticação baseada em token for usada, esse parâmetro é obrigatório e deve ser definido como um token de usuário. Para obter detalhes sobre como obter um token de usuário, consulte Autenticação.

Comprimento máximo: 16.384 caracteres

X-Cluster-ID

Não

String

ID do cluster. Este parâmetro é obrigatório quando o formato de URL https://Endpoint/uri é usado. Para obter detalhes sobre como obter o valor, consulte Como obter parâmetros no URI da API.

Resposta

Código de status: 200

Tabela 3 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

apiVersion

String

Versão da API. O valor é fixado em v1.

Valor padrão: v1

kind

String

Tipo de API. O valor é fixado em PersistentVolume.

Valor padrão: PersistentVolume

metadata

PersistentVolumeMetadata object

Informações de metadados do PersistentVolume.

spec

PersistentVolumeSpec object

Especificações do PersistentVolume.

status

PersistentVolumeStatus object

Informações de status do PersistentVolume.

Tabela 4 PersistentVolumeMetadata

Parâmetro

Tipo

Descrição

name

String

Nome do PV. Digite de 1 a 253 caracteres começando e terminando com uma letra ou dígito. Use somente letras minúsculas, dígitos, hifens (-) e pontos (.). Nomes do PV devem ser exclusivos em um namespace.

labels

Map<String,String>

Rótulos do PV, no formato de pares chave-valor.

  • Key: digite de 1 a 63 caracteres começando com uma letra ou dígito. Apenas letras, dígitos, hifens (-), sublinhados (_) e pontos (.) são permitidos. Um subdomínio do DNS pode ser prefixo para uma chave e conter um máximo de 253 caracteres. Exemplo de subdomínio do DNS: example.com/my-key
  • Value: o valor pode ser deixado em branco ou uma cadeia de 1 a 63 caracteres, começando com uma letra ou dígito. Somente letras, dígitos, hifens (-), sublinhados (_) e pontos (.) são permitidos na cadeia de caracteres.

Exemplo de rótulo: "foo": "bar"

Tabela 5 PersistentVolumeSpec

Parâmetro

Tipo

Descrição

flexVolume

FlexVolume object

O plug-in de armazenamento do Kubernetes FlexVolume.

persistentVolumeReclaimPolicy

String

Política de recuperação do PV. Valores possíveis:

  • Retain: a política de recuperação Retain permite a recuperação manual do recurso. Quando a PVC é excluída, o PV ainda existe e o volume é considerado "liberado".
  • Recycle: a política de recuperação Recycle executa uma limpeza básica (rm -rf / thevolume / *) no volume e o torna disponível novamente para uma nova recuperação.
  • Delete: para plug-ins de volume compatíveis com a política de recuperação Delete, a exclusão remove o objeto do PV do Kubernetes, bem como o ativo de armazenamento associado na infraestrutura externa. Volumes que foram provisionados dinamicamente herdam a política de recuperação de sua StorageClass que, por padrão, é Delete.

accessModes

Array of strings

Modo de acesso do PersistentVolume.

  • ReadWriteOnce: o volume pode ser montado como leitura-escrita por um único nó.
    NOTA:

    Esta função é suportada apenas quando a versão do cluster é v1.13.10 e a versão do controlador de armazenamento é 1.0.19.

  • ReadOnlyMany: o volume pode ser montado como read-only por muitos nós.
  • ReadWriteMany: o volume pode ser montado como read-write por muitos nós.
Tabela 6 FlexVolume

Parâmetro

Tipo

Descrição

driver

String

Nome do plug-in de armazenamento do FlexVolume. Defina este parâmetro com base no tipo de volume de armazenamento.

  • huawei.com/fuxivol (EVS)
  • huawei.com/fuxinfs (SFS)
  • huawei.com/fuxiobs (OBS)
  • huawei.com/fuxiefs (SFS Turbo)

fsType

String

Tipo de sistema de arquivos. Defina este parâmetro com base no tipo de volume de armazenamento.

options

Options object

Itens de configuração do FlexVolume.

Tabela 7 Options

Parâmetro

Tipo

Descrição

fsType

String

Tipo de sistema de arquivos. Defina este parâmetro com base no tipo de volume de armazenamento.

  • ext4 (EVS)
  • nfs (SFS)
  • obs (OBS)
  • efs (SFS Turbo)

region

String

Região onde o armazenamento em nuvem está localizado.

volumeID

String

UUID do armazenamento em nuvem. Se o armazenamento em nuvem for um bucket do OBS, defina esse parâmetro como o nome do bucket.

storageType

String

tipo de volume de armazenamento em nuvem.

  • bs (EVS)
  • nfs (SFS)
  • obs (OBS)
  • efs (SFS Turbo)
Tabela 8 PersistentVolumeStatus

Parâmetro

Tipo

Descrição

accessModes

Array of strings

Modo de acesso do PersistentVolume.

phase

String

Status do PV. Valores possíveis:

  • Available: o volume não está vinculado a nenhuma PVC.
  • Bound: o PV foi vinculado a uma PVC.
  • Released: a PVC vinculada ao PV foi excluída, mas o PV não foi disponibilizado novamente para uma nova recuperação no cluster.
  • Failed: falhou na recuperação automática do volume.

Exemplo de solicitação

Nenhum

Exemplo de resposta

Código de status: 200

A tarefa para excluir um PersistentVolume é entregue com sucesso.

{
  "kind" : "PersistentVolume",
  "apiVersion" : "v1",
  "metadata" : {
    "name" : "pv-test",
    "selfLink" : "/api/v1/persistentvolumes/pv-test",
    "uid" : "0d93181d-3628-11e7-9093-fa163e8c373b",
    "resourceVersion" : "180886",
    "creationTimestamp" : "2017-05-11T08:58:51Z",
    "labels" : {
      "app" : "test"
    }
  },
  "spec" : {
    "flexVolume" : {
      "driver" : "huawei.com/fuxivol",
      "fsType" : "ext4",
      "options" : {
        "fsType" : "ext4",
        "kubernetes.io/namespace" : "default",
        "volumeID" : "0781b22f-4d89-4e9c-b026-80e545cea16c"
      }
    },
    "capacity" : {
      "storage" : "1Gi"
    },
    "accessModes" : [ "ReadWriteMany" ],
    "persistentVolumeReclaimPolicy" : "Delete"
  },
  "status" : {
    "phase" : "Available"
  }
}

Código de status

Código de status

Descrição

200

A tarefa para excluir um PersistentVolume é entregue com sucesso.

Códigos de erro

Para mais detalhes, consulte Códigos de erro.