Substituindo um Volume de Inicialização

Você pode substituir automaticamente o volume de inicialização de uma instância sem encerrar e recriar a instância. A instância é interrompida, substitui o volume de inicialização e retorna a instância ao estado anterior ao processo de substituição de volume. Esse recurso permite a substituição de volumes de inicialização se um problema for detectado ou um upgrade for necessário para implementar novos recursos.

Importante

A substituição do volume de inicialização só é suportada para instâncias de máquina virtual.

Requisitos e Opções de Substituição do Volume de Inicialização

Estes são OS principais requisitos de sistema operacional e de imagens para usar a substituição do volume de inicialização:

  • Somente sistemas operacionais e imagens Linux são suportados.
  • Imagens do Windows e do marketplace não são suportadas.
  • Os volumes de inicialização só podem ser substituídos por volumes em blocos e imagens que usam a mesma distribuição do Linux. Por exemplo, você não pode alternar do Oracle Linux para o Ubuntu ou vice-versa.
  • As limitações da imagem se aplicam às opções de inicialização associadas à imagem e ao que está atualmente na instância. Se, por exemplo, o tipo de anexo do volume de inicialização da imagem não corresponder às opções de inicialização da instância, a imagem será considerada inválida.

Em relação às instâncias, você deve ter:

  • Uma instância de máquina virtual.
  • E um dos seguintes:
    • Um volume em blocos formatado com um sistema operacional compatível.
    • Uma imagem de backup compatível com sua instância.

Política de IAM Necessária

Para usar o Oracle Cloud Infrastructure, você deve receber de um administrador o acesso de segurança em uma política . Esse acesso é necessário, quer você esteja usando a Console ou a API REST com um SDK, uma CLI ou outra ferramenta. Caso receba uma mensagem de que você não tem permissão ou não está autorizado, verifique com o administrador o tipo de acesso que você tem e em qual compartimento  trabalhar.

Para ativar a substituição do volume de inicialização, adicione as políticas necessárias para seu compartimento ou tenancy. Veja a seguir exemplos de políticas de instância no nível de administração que permitem a substituição do volume de inicialização para um compartimento e uma tenancy.

Exemplos de Políticas para um Compartimento

allow group InstanceUpdaters to manage instances in compartment instanceCompartment
OR
allow group InstanceUpdaters to manage instance-family in compartment instanceCompartment

Exemplo de Políticas para uma Tenancy

allow group InstanceUpdaters to manage instances in TENANCY
OR
allow group InstanceUpdaters to manage instance-family in TENANCY

Para um conjunto existente de políticas, a política a seguir é a alteração mínima necessária para permitir a substituição do volume de inicialização.

allow group InstanceUpdaters to {INSTANCE_BOOT_VOLUME_REPLACE} in instanceCompartment
Observação

Nos exemplos, InstanceUpdaters é um grupo de políticas que permite atualizações nas instâncias.

Rollback para Substituição do Volume de Inicialização

Se for encontrado um problema ao executar uma substituição de volume em blocos, o sistema tentará fazer rollback da instância para seu estado original. As etapas executadas incluem:

  • Restaure os metadados da instância.
  • Restaure o estado da instância.
  • Restaure o estado dos volumes anexados.
  • Reiniciar a instância.

Idealmente, isso restaura a instância para seu estado anterior. Isso pode não ser possível em todas as circunstâncias.

Observação

Quando ocorre um rollback, o novo volume de destino é tratado da seguinte forma:
  • Quando uma imagem é usada, o rollback exclui o volume de inicialização gerado.
  • Quando um OCID de volume é usado, o rollback não exclui o volume de inicialização de destino.

Usando a Console

Selecione as Opções de Volume de Inicialização

Para substituir o volume de inicialização de uma instância, faça o seguinte:

  1. Abra o menu de navegação e clique em Compute. No serviço Compute, clique em Instâncias.
  2. Clique no nome da instância.
  3. No item de menu Mais Ações, selecione Substituir Volume de Inicialização.
  4. Configure as opções de substituir volume de inicialização:
    • Preservar Volume de Inicialização: Se Ativado, o volume de inicialização anterior será preservado após uma substituição bem-sucedida. Caso contrário, o volume de inicialização será encerrado.

Selecione um Volume de Inicialização de Substituição

Selecione seu volume de substituição usando um dos métodos a seguir.

Substituir por um Volume de Inicialização usando uma Lista
  1. Em Substituir por, selecione Volume de Inicialização.
  2. Em Aplicar volume de inicialização por, selecione Selecionar na lista.
  3. Clique na lista para selecionar o volume.
    Observação

    Você tem a opção de alterar o compartimento.
Substituir por um Volume de Inicialização usando um OCID
  1. Em Substituir por, selecione Volume de Inicialização.
  2. Em Aplicar volume de inicialização por, selecione OCID de Entrada.
  3. Informe o OCID do volume de inicialização.
Substituir por uma Imagem usando uma Lista
  1. Em Substituir por, selecione Imagem.
  2. Em Aplicar imagem por, selecione Selecionar na lista.
  3. Clique na lista para selecionar a imagem.
    Observação

    Você tem a opção de alterar o compartimento.
Substituir por uma Imagem usando um OCID
  1. Em Substituir por, selecione Imagem.
  2. Em Aplicar imagem por, selecione OCID de Entrada.
  3. Informe o OCID da imagem.

Confirmar sua Opção

Clique em Substituir para fazer sua seleção.

Usando a CLI

Use o comando update instance e os parâmetros necessários para atualizar uma instância:

oci compute instance update --from-json <file://path/to/file.json>

<file://path/to/file.json> é o caminho para um arquivo JSON que define os detalhes da instância. Para obter informações sobre como gerar um exemplo do arquivo JSON, consulte Opções Avançadas de JSON.

Para obter uma lista completa de flags e opções de variáveis para os comandos da CLI do Compute Service, consulte a referência de linha de comando para o serviço Compute.