Ativando o Plug-in de Gerenciamento de Volume em Blocos

Ative o plug-in Gerenciamento de Volume em Blocos em uma instância do serviço Compute.

O plug-in de Gerenciamento de Volume em Blocos é necessário para os seguintes cenários de anexo de volume:

  • Volumes anexados iSCSI configurados para o nível Altíssimo Desempenho. Esses anexos de volume precisam ser ativados para multipath para obter o desempenho otimizado disponível com o nível Altíssimo Desempenho.

  • Volumes anexados iSCSI configurados para outros níveis de desempenho e para conexão automática. Esses volumes foram anexados com a opção Usar Oracle Cloud Agent para estabelecer conexão automaticamente com volumes anexados ao iSCSI selecionada e são suportados para anexos a instâncias baseadas no Linux e no Windows. A tabela a seguir lista a versão disponível do software Oracle Cloud Agent para os diferentes sistemas operacionais:

    Sistemas operacionais e versões correspondentes do Oracle Cloud Agent
    SO Versão do Oracle Cloud Agent
    Oracle Linux ou uma imagem personalizada baseada em uma imagem do Oracle Linux 1.23.0 ou mais recente
    Windows ou uma imagem personalizada baseada em uma imagem do Windows 1.24.0 ou mais recente
    Ubuntu ou uma imagem personalizada baseada em uma imagem do Ubuntu 1.35.0 ou mais recente

O plug-in de Gerenciamento de Volume em Blocos é gerenciado pelo software Oracle Cloud Agent e executa as seguintes ações:

  1. Verifica os metadados da instância para anexos ativados para multipath em volumes ou anexos de Altíssimo Desempenho configurados para estabelecer conexão automaticamente com volumes configurados para outros níveis de desempenho, com um intervalo de sondagem de um minuto.

  2. Instala device-mapper-multipath rpm e só adiciona "/etc/multipath.conf" se houver anexos ativados para vários caminhos.

  3. Se houver anexos ou anexos ativados para multipath configurados para conexão automática nos metadados da instância, o plug-in executará comandos de login iSCSI em batch para os anexos de volume.

Pré-requisitos

O plug-in de Gerenciamento de Volume em Blocos é suportado em imagens do Oracle Autonomous Linux e do Oracle Linux e em imagens personalizadas baseadas nessas imagens.

As etapas a seguir são necessárias para o plug-in de Gerenciamento de Volume em Blocos.

  • Gateways de serviço ou endereços IP públicos: A instância de computação deve ter um endereço IP público ou um gateway de serviço para poder se conectar aos serviços Oracle.

    Se a instância não tiver um endereço IP público, configure um gateway de serviço na rede virtual na nuvem (VCN). O gateway de serviço permite que a sua instância acesse de forma privada os serviços Oracle sem expor os dados à internet pública. Aqui estão observações especiais para configurar o gateway de serviço para o plug-in de Gerenciamento de Volume em Blocos:

    • Ao criar o gateway de serviço, ative o label de serviço chamado Todos os Serviços <region> no Oracle Services Network.
    • Ao configurar o roteamento da sub-rede que contém a instância, configure uma regra de roteamento com o Tipo de Destino definido como Gateway de Serviço e o Serviço de Destino definido como Todos os Serviços <region> no Oracle Services Network.

    Para ver instruções, consulte Acesso a Serviços Oracle: Gateway de Serviço.

  • Oracle Cloud Agent: O software Oracle Cloud Agent deve ser instalado na instância. O Oracle Cloud Agent é instalado por padrão nas imagens da plataforma atual. Para obter as etapas de instalação manual do Oracle Cloud Agent em imagens mais antigas, consulte Instalando o Software Oracle Cloud Agent. Para atualizar, consulte Atualizando o Software Oracle Cloud Agent.
    Importante

    Se você estiver ativando o plug-in de Gerenciamento de Volume em Blocos para suportar a conexão automática com um cenário de volume, a instância deverá estar executando a versão 1.23.0 ou mais recente do software Oracle Cloud Agent.
  • Configurar Permissões: Essas permissões autorizam a instância a fazer chamadas de API para os serviços do Oracle Cloud Infrastructure, permitindo que o plug-in de Gerenciamento de Volume em Blocos reporte os resultados da configuração do iSCSI para anexos iSCSI ativados para multipath.

    Para configurar permissões:

    1. Criar Grupo Dinâmico: Crie um grupo dinâmico com as regras de correspondência na seguinte amostra de código para incluir todas as instâncias nos compartimentos especificados:

      ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'}
    2. Configurar Política para Grupo Dinâmico: Configure uma política que conceda permissões ao grupo dinâmico criado na etapa anterior para permitir que o agente da instância acesso para chamar o serviço Block Volume para recuperar a configuração do anexo:

      Allow dynamic-group InstantAgent to use instances in tenancy
      Allow dynamic-group InstantAgent to use volume-attachments in tenancy

Ativando o Gerenciamento de Volume em Blocos em Novas Instâncias

Para ativar o Gerenciamento de Volume em Blocos em uma nova instância de computação, use as etapas a seguir.

Para ativar o Gerenciamento de Volume em Blocos em uma nova instância de computação usando a Console
  1. Siga as etapas em Criando uma Instância, até as opções avançadas. Certifique-se de que a instância tenha um endereço IP público ou um gateway de serviço, conforme descrito nos Pré-requisitos.
  2. Clique em Mostrar Opções Avançadas.
  3. Na guia Oracle Cloud Agent, marque a caixa de seleção Gerenciamento de Volume em Blocos.

  4. Clique em Criar.

Para ativar o Gerenciamento de Volume em Blocos em uma nova instância de computação usando a API
  1. Instale o software Oracle Cloud Agent, se ele ainda não estiver instalado.
  2. Use a operaçãoUpdateInstance. Inclua os seguintes parâmetros:

    #oci compute instance update --instance-id <New_Instance> --agent-config file:///agentUpdate.json
    agentUpdate.json
    {
        "is-agent-disabled": false,
        "plugins-config": [
            {"name": "Block Volume Management", "desiredState": "ENABLED" }
        ]
    }
  3. Certifique-se de que a instância tenha um endereço IP público ou um gateway de serviço, conforme descrito nos Pré-requisitos.

Ativando o Gerenciamento de Volume em Blocos em Instâncias Existentes

Para ativar o Gerenciamento de Volume em Blocos em uma instância de computação existente, use as etapas a seguir.

Para ativar o Gerenciamento de Volume em Blocos em uma instância de computação existente usando a Console
  1. Instale o software Oracle Cloud Agent, se ele ainda não estiver instalado. O Oracle Cloud Agent já deve estar instalado em todas as imagens de plataforma atuais e mais recentes. Execute o seguinte comando para verificar se ele já está instalado:

    systemctl status oracle-cloud-agent

    Se o resultado não for encontrado, será necessário instalar o software; caso contrário, vá para a próxima etapa.

  2. Ative o plug-in de Gerenciamento de Volume em Blocos.
  3. Confirme se os plug-ins estão em execução na instância.
  4. Certifique-se de que a instância tenha um endereço IP público ou um gateway de serviço, conforme descrito nos Pré-requisitos.
Para ativar o Gerenciamento de Volume em Blocos em uma instância de computação existente usando a API
  1. Instale o software Oracle Cloud Agent, se ele ainda não estiver instalado.
  2. Use a operaçãoUpdateInstance. Inclua os seguintes parâmetros:

    #oci compute instance update --instance-id <New_Instance> --agent-config file:///agentUpdate.json
    agentUpdate.json
    {
        "is-agent-disabled": false,
        "plugins-config": [
            {"name": "Block Volume Management", "desiredState": "ENABLED" }
        ]
    }
  3. Certifique-se de que a instância tenha um endereço IP público ou um gateway de serviço, conforme descrito nos Pré-requisitos.

Ativando Manualmente o Gerenciamento de Volume em Blocos em uma Instância

Você pode ativar manualmente o Gerenciamento de Volume em Blocos em uma instância de computação usando a CLI.

Esse procedimento só é necessário para imagens personalizadas que foram atualizadas para suportar o nível Altíssimo Desempenho, mas o plug-in Gerenciamento de Volumes em Blocos não foi ativado no arquivo /etc/oracle-cloud-agent/agent.yml.

Antes de executar este procedimento, você precisa concluir as etapas descritas em Ativando o Gerenciamento de Volume em Blocos em Novas Instâncias ou Ativando o Gerenciamento de Volume em Blocos em Instâncias Existentes.

Para ativar manualmente o plug-in de Gerenciamento de Volume em Blocos em uma instância
  1. Instale o software Oracle Cloud Agent na instância, se ele ainda não estiver instalado.
  2. Faça log-in na instância. Consulte Estabelecendo conexão com uma Instância.
  3. Execute o seguinte script sed para ativar o Gerenciamento de Volume em Blocos:

    sed -i.saved -e '/^  oci-blockautoconfig:/,/^  [a-z]*:/{s/\(.*disabled:.*\)true/\1false/}' /etc/oracle-cloud-agent/agent.yml

    Esse script atualiza o parâmetro disabled para a configuração oci-blockautoconfig em /etc/oracle-cloud-agent/agent.yml de true para false.

  4. Execute o seguinte comando para reiniciar o serviço do Oracle Cloud Agent:
    systemctl restart oracle-cloud-agent.service

Diagnosticando e Solucionando Problemas do Plug-in de Gerenciamento de Volume em Blocos

Se o plug-in de Gerenciamento de Volume em Blocos não estiver configurado corretamente para uma instância, você poderá encontrar um erro ao anexar um volume a um tipo de anexo iSCSI. Consulte as sugestões de diagnóstico e solução de problemas desta seção para ver esses problemas.

Erro de Log do Plug-in de Gerenciamento de Volume em Blocos: Anexo de Volume Não Autorizado ou Erro Não Encontrado

Se você não tiver configurado permissões corretamente para o plug-in de Gerenciamento de Volume em Blocos, o volume falhará ao ser anexado à instância.

Detalhes

O volume não será mostrado conforme anexado na Console e você verá uma mensagem de erro NotAuthorizedOrNotFound no log do plug-in Gerenciamento de Volume em Blocos.

O log do plug-in de Gerenciamento de Volume em Blocos está localizado em:

"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log

Veja a seguir um exemplo de entrada de log de erros para este problema:

2021/08/13 09:14:25.864932 compute_client_command.go:255: Updating volume attachment to the state LOGIN_SUCCEEDED ...
2021/08/13 09:14:26.155473 compute_client_command.go:260: Service error:NotAuthorizedOrNotFound.
volume attachment ocid1.volumeattachment.oc1.iad.<volume-attachment_ID> not found.
http status code: 404. Opc request id: <request_ID>

Causa

O plug-in de Gerenciamento de Volume em Blocos não tem permissões suficientes para enviar a notificação de status de log-in iSCSI ao serviço.

Resolução

Para configurar permissões para o plug-in de Gerenciamento de Volume em Blocos:

  1. Criar Grupo Dinâmico: Crie um grupo dinâmico com as regras de correspondência na seguinte amostra de código para incluir todas as instâncias nos compartimentos especificados:

    ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'
  2. Configurar Política para Grupo Dinâmico: Configure uma política que conceda permissões ao grupo dinâmico criado na etapa anterior para permitir que o agente da instância acesso para chamar o serviço Block Volume para recuperar a configuração do anexo:

    Allow dynamic-group InstantAgent to use instances in tenancy
    Allow dynamic-group InstantAgent to use volume-attachments in tenancy
Erro de Log do Plug-in de Gerenciamento de Volume em Blocos: O Agente do Usuário Não Pode Ficar em Branco

A instância de computação deve ter um endereço IP público ou um gateway de serviço para poder estabelecer conexão com serviços Oracle, caso contrário, o volume não será anexado.

Detalhes

O volume não será mostrado conforme anexado na Console e você verá uma mensagem de erro user agent can not be blank no log do plug-in de Gerenciamento de Volume em Blocos.

O log do plug-in de Gerenciamento de Volume em Blocos está localizado em:

"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log

Veja a seguir um exemplo de entrada de log de erros para este problema:

2021/10/15 22:16:07.881953 compute_client_command.go:255: Updating volume attachment to the state LOGIN_SUCCEEDED ...
2021/10/15 22:16:07.882185 compute_client_command.go:260: user agent can not be blank
2021/10/15 22:16:07.882204 iscsi_commands_helper.go:302: user agent can not be blank
2021/10/15 22:16:07.882212 iscsi_commands_helper.go:310: user agent can not be blank

Causa

O plug-in de Gerenciamento de Volume em Blocos não pode enviar a notificação de status de log-in iSCSI para o serviço em decorrência da configuração de rede.

Resolução

Se a instância não tiver um endereço IP público, configure um gateway de serviço na rede virtual na nuvem (VCN). O gateway de serviço permite que a sua instância acesse de forma privada os serviços Oracle sem expor os dados à internet pública. Aqui estão observações especiais para configurar o gateway de serviço para o plug-in de Gerenciamento de Volume em Blocos:

  • Ao criar o gateway de serviço, ative o label de serviço chamado Todos os Serviços <region> no Oracle Services Network.
  • Ao configurar o roteamento da sub-rede que contém a instância, configure uma regra de roteamento com o Tipo de Destino definido como Gateway de Serviço e o Serviço de Destino definido como Todos os Serviços <region> no Oracle Services Network.

Para ver instruções, consulte Acesso a Serviços Oracle: Gateway de Serviço.