Nesta página, descrevemos como gerenciar o ONTAP no modo ONTAP.
Por motivos de segurança e geração de registros, o NetApp Volumes não permite conexões diretas com a LIF de gerenciamento do ONTAP. Portanto, não é possível usar ferramentas como o SystemManager ou o SSH para gerenciar o sistema ONTAP diretamente. Em vez disso, você pode enviar operações do ONTAP para seu pool de armazenamento no modo ONTAP usando os seguintes métodos:
As ferramentas de gerenciamento, como o Terraform, usam o proxy de API do Google para gerenciar recursos do ONTAP.
Antes de começar
Sua versão da CLI do Google Cloud precisa ser pelo menos 559.0.0 para gerenciar operações do ONTAP no pool de armazenamento no modo ONTAP. Se a versão for mais antiga, a Google Cloud CLI vai retornar um erro informando que o comando ou a flag não está definida.
Usar o proxy da CLI do ONTAP da CLI do Google Cloud
Embora o acesso SSH direto à CLI do ONTAP não esteja disponível, é possível enviar comandos da CLI do ONTAP para seu pool de armazenamento usando a Google Cloud CLI.
gcloud
Execute um comando do ONTAP:
gcloud netapp storage-pools execute POOL-NAME ONTAP-COMMAND --project PROJECT \ --location=LOCATION
Substitua as seguintes informações:
POOL-NAME: o nome do pool de armazenamento do modo ONTAP do Flex Unified.ONTAP-COMMAND: o comando do ONTAP que você quer executar no cluster ou pool de armazenamento.PROJECT: o ID do projeto.LOCATION: o local do pool de armazenamento.
Usar uma API de proxy do Google para chamadas da API REST do ONTAP
O NetApp Volumes fornece um endpoint de API do Google para cada pool de armazenamento no modo FlexUnified ONTAP, permitindo enviar chamadas da API REST do ONTAP para o cluster do ONTAP subjacente. Isso permite controlar recursos do ONTAP usando APIs.
As chamadas ao proxy do ONTAP precisam usar o seguinte formato de URL:
https://netapp.googleapis.com/v1/projects/PROJECT/locations/LOCATION/storagePools/POOL_NAME/ontap/ONTAP_REST_URL
Esse URL consiste nos seguintes elementos:
URL de base:
https://netapp.googleapis.com/v1URN do Google para o pool de armazenamento: /projects/
PROJECT/locations/LOCATION/storagePools/POOL_NAMESubstitua as seguintes informações:
PROJECT: o ID do projeto ou o número.LOCATION: o nome da zona para pools zonais ou a região para pools regionais.POOL_NAME: o nome do pool.
Caminho da API REST do ONTAP: /ontap/
ONTAP_REST_URL. Para mais informações, consulte a referência da API REST do ONTAP.
Listar todos os volumes de um pool de armazenamento
O exemplo a seguir mostra o URL completo para listar todos os volumes do pool de armazenamento
mypool em us-central1-a no projeto myproject.
https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes
Como todas as chamadas de API do Google, essa chamada precisa ser autenticada. O exemplo de CLI a seguir busca um token de API e chama o URL usando curl para listar todos os volumes no pool:
TOKEN=$(gcloud auth print-access-token) curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"
Listar todos os snapshots de um volume
O exemplo a seguir mostra o URL completo para listar todos os snapshots do pool de armazenamento
mypool e do volume volume-uuid em us-central1-a no projeto
myproject.
https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes/volume-uuid/snapshots
Como todas as chamadas de API do Google, essa chamada precisa ser autenticada. O exemplo de CLI a seguir busca um token de API e chama o URL usando curl para listar todos os snapshots do volume:
TOKEN=$(gcloud auth print-access-token) curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes/volume-uuid/snapshots' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"
Criar um volume
Esta seção mostra como criar um volume chamado myvolume em um pool de armazenamento unificado do Flex
no modo ONTAP, identificado pelo URN: /projects/myproject/locations/us-central1-a/storagePools/mypool,
usando a API REST do ONTAP.
Para criar um volume, consulte a documentação on-line da API REST do ONTAP. Na documentação, navegue até a seção Armazenamento e expanda Gerenciar volumes de armazenamento. Esta seção fornece vários exemplos.
Use as instruções a seguir para criar um volume.
Determine o endpoint de API REST do ONTAP.
Usando o exemplo básico no NetApp Volumes, o endpoint de API ONTAP necessário é
/api/storage/volumes. Esse endpoint cria o URL:https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes.Construa o payload da solicitação.
Use o exemplo de payload da documentação do ONTAP para corresponder ao seu ambiente específico. Exemplo:
{ "name": "vol1", "aggregates": [ { "name": "aggr1" } ], "svm": { "name": "vs1" } }Ao criar um volume, use o campo
namepara atribuir o nome dele. O payload de criação de volume exige os nomes do agregado e da máquina virtual de armazenamento (SVM) atribuídos pelo NetApp Volumes durante a criação do pool no modo ONTAP. No modo ONTAP, cada pool de armazenamento tem uma SVM e um agregado de armazenamento. Essas informações podem ser recuperadas consultando o ONTAP para todas as SVMs.Para recuperar os nomes da SVM e do agregado:
Use
ontap_fieldspara seleção de campos: em pools do modo ONTAP do NetApp Volumes, use o parâmetro de consultaontap_fields=em vez do parâmetro padrãofields=do ONTAP para especificar os campos solicitados.Opcional: Use
jqpara extrair campos: o exemplo a seguir usa a ferramenta de código aberto jq para extrair oname(nome da SVM) eaggregatesda resposta JSON, o que é útil para processamento em scripts shell.TOKEN=$(gcloud auth print-access-token) curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/svm/svms?ontap_fields=name,aggregates' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json" | jq '.rawResponse.records[] | {name: .name, aggregates: .aggregates[].name}'Exemplo de resposta:
{ "name": "gcnv-7cf6ee41c1a94f0-svm-01", "aggregates": "aggr1" }
Execute a chamada de API de criação de volume.
Com o nome agregado (
aggr1) e o nome da SVM (gcnv-7cf6ee41c1a94f0-svm-01), crie o payload final de criação de volume e envie a chamada de API. Observação: o payload da API ONTAP precisa estar dentro de um envelopebody: {}para NetApp Volumes.O exemplo a seguir cria um volume chamado
myvolumecom um tamanho de 2 GB:curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json" \ --data '{ "body": { "name": "myvolume", "aggregates": [ { "name": "aggr1" } ], "svm": { "name": "gcnv-7cf6ee41c1a94f0-svm-01" }, "size": "2GB" } }'A criação de volumes oferece suporte a muitos parâmetros opcionais, como
size. Por exemplo, o payload especifica um tamanho de 2 GB. A página de documentação do recurso lista todos os parâmetros disponíveis, incluindo os obrigatórios e opcionais. Ele também fornece exemplos detalhados de payloads e corpos de resposta.Para configurar níveis automáticos na API REST do ONTAP, inclua o objeto JSON
tieringno corpo da solicitação:Para definir a política de níveis do volume como
all, use"tiering": {"policy": "all"}.Opcional: para configurar os dias de resfriamento, use
"tiering": {"policy": "auto", "min_cooling_days": 31}.É possível especificar um limite de resfriamento entre 2 e 183 dias no campo
min_cooling_days. O valor padrão do limite de resfriamento é de 31 dias.
Para ignorar o nível quente e gravar dados diretamente no nível da nuvem em volumes de leitura e gravação (RW), use o proxy da CLI do Google Cloud ONTAP com privilégios avançados:
set -privilege advanced; volume modify -vserver SVM_NAME -volume VOLUME_NAME -tiering-policy all -is-cloud-write-enabled true
Monitore o job do ONTAP.
A maioria das chamadas de API ONTAP, como operações
POSTouPATCHque criam ou atualizam recursos, não são executadas de forma síncrona. Em vez disso, essas chamadas retornam um recurso de job do ONTAP, conforme mostrado no exemplo de criação de volume.Exemplo de resposta do trabalho:
{ "body": { "job": { "_links": { "self": { "href": "curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/cluster/jobs/15be1c46-fd2c-11f0-b3c2-7f15697be61c' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"" } }, "uuid": "15be1c46-fd2c-11f0-b3c2-7f15697be61c" } } }Para verificar o status do job, consulte o recurso usando o
uuidretornado:curl --location 'https://netapp.googleapis.com/v1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/cluster/jobs/15be1c46-fd2c-11f0-b3c2-7f15697be61c' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"
Exemplo de resposta:
{ "rawResponse": { "uuid": "15be1c46-fd2c-11f0-b3c2-7f15697be61c", "description": "POST /api/storage/volumes/15be0ad9-fd2c-11f0-b3c2-7f15697be61c", "state": "success", "message": "success", "code": 0, "start_time": "2026-01-29T16:03:43+00:00", "end_time": "2026-01-29T16:03:44+00:00", "svm": { "name": "gcnv-7cf6ee41c1a94f0-svm-01", "uuid": "8a29c15d-fb31-11f0-ab03-03e1bb49206d" } } }Se o
stateforsuccess, o volume será criado.Este exemplo de fluxo de trabalho mostra como pesquisar ações do ONTAP na documentação da API REST do ONTAP. Ele também mostra como criar o formato de payload necessário e enviá-lo ao pool de armazenamento usando uma API do Google. Por fim, ele demonstra como monitorar um job do ONTAP até que o recurso seja criado. Com essa abordagem, é possível controlar a maioria das configurações do ONTAP para seu pool de armazenamento.
Usar o Terraform para gerenciar o modo ONTAP
É possível gerenciar recursos no modo ONTAP usando o proxy da CLI. O proxy da CLI é eficaz para uso interativo, mas a automação pode ser mais complexa. O Terraform gerencia de forma consistente o ciclo de vida dos recursos de nuvem, e você pode usá-lo para gerenciar recursos do NetApp Volumes e do ONTAP.
Use a tabela Visão geral do gerenciamento de recursos para determinar qual provedor usar.
O provedor Google gerencia recursos pela API NetApp Volumes.
O provedor NetApp-ONTAP gerencia recursos usando APIs REST do ONTAP.
Por exemplo, é possível criar um pool de armazenamento no modo ONTAP usando o provedor do Google, versão 7.27.0 ou mais recente. Em seguida, para criar um volume nesse pool no modo ONTAP, use o provedor NetApp-ONTAP, versão 2.6.0 ou mais recente.
Para mais informações sobre configuração e exemplos, consulte a documentação do provedor NetApp-ONTAP.
Ações permitidas do ONTAP
Ao acessar um pool no modo ONTAP pela API ou pelo proxy da CLI, você não tem permissões completas e não pode executar todos os comandos do ONTAP. Essa restrição ajuda a proteger a integridade do sistema e impede mudanças nos recursos físicos subjacentes gerenciados pelo serviço.
Para algumas APIs, o sistema filtra os payloads de solicitação e resposta da API. Por exemplo, como o NetApp Volumes cobra pela capacidade lógica, o sistema bloqueia parâmetros para configurar a capacidade física. Se você enviar um parâmetro que não é permitido, a API vai retornar um erro.
Para mais informações sobre como fazemos o faturamento, consulte Faturamento: capacidade lógica x física.
Comandos do ONTAP aceitos
É possível gerenciar o modo ONTAP enviando comandos ONTAP usando o proxy da CLI ONTAP da CLI do Google Cloud. O NetApp Volumes é compatível com a maioria dos comandos para gerenciar SVMs, LUNs, volumes e recursos do ONTAP. Alguns comandos são bloqueados para proteger a integridade do sistema ou porque gerenciam recursos físicos que não são relevantes em um serviço gerenciado, como o NetApp Volumes.
Você executa comandos no nível de privilégio de administrador do ONTAP. Para mudar o nível de privilégio para avançado, adicione set advanced; ou set -privilege advanced; ao início do comando. Um conjunto limitado de comandos também é compatível com o nível de privilégio de diagnóstico (diag), que pode ser acessado adicionando set diag; ao início do comando. Essas mudanças de privilégio não são permanentes.
Como o proxy não é um shell interativo, só é possível executar um comando por vez. Essa limitação significa que o proxy não é compatível com comandos interativos que pedem mais informações. Por exemplo, não é possível criar um vserver (SVM) CIFS ou SMB que exija credenciais de administrador do Active Directory. O proxy da CLI também não é compatível com o peering de cluster porque é um comando interativo. Para realizar essas operações, use a API REST do ONTAP.
A tabela a seguir lista as famílias de comandos, os comandos e as limitações compatíveis do proxy da CLI do ONTAP:
| Família de comandos | Finalidade | Comandos aceitos | Observações |
|---|---|---|---|
| Cluster | Clusters semelhantes para SnapMirror, FlexCache e exibição de informações selecionadas sobre o cluster | cluster peer: acesso total cluster show, identity show, date show, ha show, statistics show e time-service ntp server show: somente leitura |
O proxy da CLI não é compatível com o comando interativo cluster peer create. Use a API REST. Você pode usar outros comandos cluster peer, como show. |
| Depuração | Suporte ao rastreamento de pacotes (tcpdump), LUN e solução de problemas de bloqueio | debug network tcpdump, debug san lun e debug lock persistence: acesso total | Todos os comandos de depuração permitidos exigem o nível de privilégio diag. Esses são comandos de depuração comuns. |
| Evento | Crie filtros para enviar eventos do ONTAP de interesse para destinos SMTP ou syslog | event catalog show e log de eventos show: somente leitura event config, event filter e notificação de evento: acesso total |
Permite registrar eventos em destinos personalizados. É possível usar event log show para mostrar eventos de registro por hora ou tipo. |
| Job | Gerenciar jobs do ONTAP no nível do nó e do cluster | job show, job schedule, job private, job stop e job resume: acesso total | |
| LUN | Criar e gerenciar LUNs e grupos de iniciadores e importar LUNs externos | lun create, lun bind e igroup: acesso total | Embora a importação de LUNs seja permitida, não é possível conectar discos externos a um sistema no modo ONTAP. |
| Rede | Mostrar configurações de porta de rede, interface, rota e ipspace, executar ping e traceroute para endereços IP externo e mostrar conexões de cliente por protocolo | ping de rede, traceroute de rede, interface de porta de rede, espaço IP de rede e conexões de rede (somente leitura) | |
| QoS | Criar e gerenciar grupos de políticas de QoS e mostrar o desempenho deles | Todos os comandos de QoS (somente leitura) | As configurações de QoS são somente leitura. |
| Segurança | Mostrar a configuração de auditoria, ativar o recurso antirransomware e criar e instalar certificados | Auditoria de segurança: somente leitura volume de segurança antirransomware e certificado de segurança: acesso total |
Os parâmetros antirransomware podem ser definidos ao criar o volume. Só é possível criar certificados de servidor e cliente. |
| SnapLock | Gerenciar o relógio e os registros do SnapLock e controlar as operações de retenção e guarda de documentos baseadas em eventos do SnapLock | snaplock compliance-clock e snaplock log: acesso total | Use o comando volume snaplock modify para configurar o SnapLock em volumes individuais. Só é possível gerenciar os comandos do SnapLock snaplock event-retention e snaplock legal-hold usando a API REST do ONTAP. |
| SnapMirror | Criar e gerenciar relacionamentos do SnapMirror | snapmirror create, snapmirror initialize, snapmirror break e snapmirror resync: acesso total | |
| Estatísticas | Mostrar estatísticas periódicas do sistema ou criar amostras de estatísticas específicas | statistics samples, statistics start, statistics stop e statistics show-periodic: acesso total statistics volume, statistics lun, statistics aggregate, statistics qtree e statistics SVM: somente leitura |
Muitos comandos precisam do modo avançado para especificar os parâmetros. |
| Sistema | Os comandos do sistema geralmente não são aceitos, mas é possível invocar a transmissão automática de suporte e de arquivos de desempenho. | system node autosupport invoke e system node autosupport invoke-performance-archive: acesso total | Os arquivos do AutoSupport estão disponíveis para o suporte da NetApp. |
| Volume | Criar e gerenciar volumes | volume create, volume delete, volume modify, volume clone, volume expand (FlexGroup), volume flexcache, volume flexgroup, qtree, quota, snaplock, snapshot: acesso total | Alguns recursos de volume, como relatórios/aplicação de espaço lógico e garantia de espaço (nenhum), são gerenciados automaticamente pelo sistema. Defina a política de divisão em níveis de volume para usar a divisão em níveis automática definida no nível do pool. |
| Vserver | Gerencie a SVM (vserver) para acesso a volumes de arquivos (SMB, NFS), blocos (iSCSI, NVMe) e objetos (S3). Gerencie políticas usadas para volumes, como políticas de exportação para NFS. Ative recursos da SVM, como registro de auditoria (acesso a arquivos), grupos de consistência, política, serviços de nomes (DNS, LDAP) e antivírus (vscan). Faça peering de SVMs para SnapMirror e FlexCache. |
vserver cifs create (ingressar em um domínio do Active Directory), vserver nfs create, vserver iscsi create e vserver nvme create: acesso total vserver object-store-server: acesso total |
Use o comando vserver modify para definir o idioma padrão, o estilo de segurança e as políticas de snapshot e de cota para todos os volumes. O comando vserver create não é compatível no momento. Os comandos de mudança de senha não podem ser executados de forma interativa e precisam ser especificados usando parâmetros de comando ou a API REST. |
| Comandos legados | timezone e version: acesso total |
Excluir um pool no modo ONTAP
Para excluir um pool no modo ONTAP, primeiro é necessário excluir todos os volumes dele.