A API Object Storage usa recursos personalizados do Kubernetes e depende do modelo de recursos do Kubernetes. As APIs são usadas para o provisionamento e a administração de recursos de armazenamento de objetos. Eles são usados para gerenciar o ciclo de vida dos recursos de armazenamento de objetos em uma determinada organização, incluindo a criação, leitura, atualização e exclusão de buckets. As APIs também são usadas para listar buckets, definir políticas de retenção e definir a classe de armazenamento dos buckets. O armazenamento de arquivos e blocos é gerenciado com APIs padrão do Kubernetes.
Endpoint de serviço e documento de descoberta
As APIs KRM do Storage são fornecidas em três pacotes, dependendo da implantação zonal ou global.
Os endpoints das APIs de armazenamento zonais e globais são os seguintes, respectivamente:
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/object.gdc.goog/v1https://MANAGEMENT_API_SERVER_ENDPOINT/apis/object.global.gdc.goog/v1https://MANAGEMENT_API_SERVER_ENDPOINT/apis/storage.global.gdc.goog/v1
A variável MANAGEMENT_API_SERVER_ENDPOINT é o
endpoint do servidor da API Management.
Usando o comando kubectl proxy, é possível acessar esse URL no navegador ou com uma ferramenta como curl para receber o documento de descoberta da API Object Storage. O comando kubectl proxy abre um proxy para o servidor da API Kubernetes na sua máquina local. Depois que esse comando estiver em execução, acesse o documento nos seguintes URLs:
http://127.0.0.1:8001/apis/object.gdc.goog/v1http://127.0.0.1:8001/apis/object.global.gdc.goog/v1http://127.0.0.1:8001/apis/storage.global.gdc.goog/v1
Visão geral da API REST do S3
A API XML de armazenamento de objetos isolado do Google Distributed Cloud (GDC) é uma interface RESTful que permite gerenciar dados de armazenamento de objetos de maneira programática. Como uma API RESTful, ela depende de informações de método e escopo para definir as operações a serem realizadas:
- Informações do método. Você especifica as informações do método com métodos HTTP padrão, como
DELETE,GET,HEADePUT. - Informações de escopo. Você especifica as informações de escopo com um endpoint acessível (URI) e vários parâmetros de escopo. Para a API XML, os principais parâmetros de escopo são os nomes do bucket e do objeto. Amplie ainda mais o escopo das suas operações usando cabeçalhos HTTP e parâmetros de string de consulta.
Visão geral da API Volume Storage
A interação com o armazenamento ONTAP no GDC ocorre totalmente por primitivos de armazenamento do Kubernetes. Para criar volumes permanentes, siga as etapas descritas na documentação do Kubernetes em https://kubernetes.io/docs/concepts/storage/persistent-volumes/. O driver ONTAP Trident implementa o protocolo Container Storage Interface (CSI) e provisiona e orquestra os volumes no sistema ONTAP, que é opaco para o usuário final do volume permanente.
O GDC é compatível com uma única classe de armazenamento do tipo standard-rwo. Consulte https://kubernetes.io/docs/concepts/storage/storage-classes/ para mais informações sobre classes de armazenamento.
Essa classe de armazenamento do tipo standard-rwo é compatível com o back-end do Trident ontap-san.
Exemplo de uma reivindicação de volume permanente:
Name: my_volume
Namespace: my_namespace
StorageClass: standard-rwo
Annotations: volume.beta.kubernetes.io/storage-provisioner: csi.trident.netapp.io
volume.kubernetes.io/storage-provisioner: csi.trident.netapp.io
Finalizers: [kubernetes.io/pvc-protection]
Capacity: 150Gi
Access Modes: RWO
VolumeMode: Filesystem