Você pode configurar o nome da interface de um controlador de interface de rede (network interface controller, NIC) usando chamadas de API IaaS aplicadas por meio de ações de extensibilidade.
Para configurar o nome da interface de um NIC, você deve fazer chamadas GET
e PATCH
para a API IaaS do vRealize Automation. Ao fazer uma chamada GET
para https://fqdn_do_seu_vRA/iaas/api/machines/{id}, você pode recuperar o link do NIC referente ao recurso de processamento que deseja modificar. Depois disso, você pode fazer uma chamada PATCH
para https://fqdn_do_seu_vRA/iaas/api/machines/{id}/network-interfaces/{nicld}, que inclui o nome da interface do NIC como payload, para adicionar um novo nome ao NIC.
O cenário a seguir usa um script Python de amostra que pode ser usado para a configuração do nome da interface do NIC. Para seus próprios casos de uso, você pode usar um script e uma linguagem de script diferente, como Node.js.
Pré-requisitos
- Você somente pode configurar o nome da interface do NIC antes de provisionar um recurso de processamento. Portanto, apenas o tópico do evento Provisionamento de Processamento pode ser selecionado para assinaturas de extensibilidade relevantes.
- Você somente pode configurar os nomes de interface para NICs que usam o Microsoft Azure como provedor.
Procedimento
- Crie a ação de extensibilidade.
- Navegue até .
- Clique em Nova Ação.
- Insira um nome e um projeto para a ação de extensibilidade e clique em Seguinte.
- Adicione o script de configuração da NIC.
Veja abaixo um script de exemplo do Python:
import json def handler(context, inputs): # Get the machine info, which contains machine nic link response = context.request('/iaas/api/machines/'+inputs["resourceIds"][0], "GET", {}) # Build PATCH machine nic payload here name = "customized-nic-02"; data = {'name':name}; # Convert machine data string to json object response_json = json.loads(response["content"]) # Patch machine nic response_patch = context.request(response_json["_links"]["network-interfaces"]["hrefs"][0] + "?apiVersion=2021-07-15", 'PATCH', data) # return value is empty since we are not changing any compute provisioning parameters outputs = {} return outputs
O script de exemplo anterior executa duas operações principais por meio da API IaaS. Primeiro, o script usa uma chamadaGET
para recuperar o link do NIC e, depois, usa uma chamadaPATCH
para aplicar o nome da interface. Nesse exemplo, o nome da interface do NIC está codificado no script como"customized-nic-02"
. - Para concluir a edição da ação de extensibilidade, clique em Salvar.
- Crie uma assinatura de extensibilidade.
- Navegue até .
- Clique em Nova Assinatura.
- Insira um nome para a assinatura de extensibilidade.
- Em Tópico de Evento, selecione Provisionamento de Processamento como o tópico do evento para a assinatura de extensibilidade.
- Em Ação/fluxo de trabalho, selecione a ação de extensibilidade que você criou para a configuração do NIC.
- Ative o bloqueio de eventos.
Ao habilitar o bloqueio, você garante que o processo de provisionamento esteja bloqueado até que a ação de extensibilidade termine sua execução.
- Para concluir a edição da assinatura de extensibilidade, clique em Salvar.
Resultados
A nova assinatura de extensibilidade é executada quando um evento de provisionamento de processamento é disparado e configura o nome da interface do NIC para que os recursos de processamento sejam provisionados.