Atualize as propriedades da VM

Esta página descreve as propriedades da máquina virtual (VM) que pode atualizar para uma VM existente e como fazer essa atualização.

Antes de começar

Para usar os comandos da gdcloud interface de linhas de comando (CLI), certifique-se de que transferiu, instalou e configurou a CLI gdcloud. Todos os comandos para a nuvem distribuída usam a CLI gdcloud ou kubectl e requerem um ambiente de sistema operativo (SO).

Obtenha o caminho do ficheiro kubeconfig

Para executar comandos no servidor da API Management, certifique-se de que tem os seguintes recursos:

  1. Inicie sessão e gere o ficheiro kubeconfig para o servidor da API Management se não tiver um.

  2. Use o caminho para o ficheiro kubeconfig do servidor da API de gestão para substituir MANAGEMENT_API_SERVER nestas instruções.

Peça autorizações e acesso

Para realizar as tarefas indicadas nesta página, tem de ter a função de administrador da máquina virtual do projeto. Siga os passos para validar que tem a função de administrador de máquinas virtuais do projeto (project-vm-admin) no espaço de nomes do projeto onde a VM reside.

Para operações de VM que usam a consola do GDC ou a CLI gdcloud, peça ao administrador de IAM do projeto para lhe atribuir a função de administrador de máquinas virtuais do projeto e a função de visualizador do projeto (project-viewer).

Propriedades atualizáveis

Só pode alterar as propriedades que estão no spec da MV.

Veja as propriedades atualizáveis

Encontre as propriedades que quer alterar através da consola do GDC ou da kubectl.

Consola

  1. No menu de navegação, clique em Máquinas virtuais > Instâncias.

  2. Na lista de VMs, clique no nome de uma VM para ver as respetivas propriedades.

  3. As propriedades editáveis têm um ícone Editar.

kubectl

  1. Veja a lista de propriedades da VM spec e os valores válidos correspondentes a cada propriedade:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      explain virtualmachines.virtualmachine.gdc.goog.spec
    

    O resultado é semelhante ao seguinte:

    KIND:     VirtualMachine
    VERSION:  virtualmachine.gdc.goog/v1
    
    RESOURCE: spec <Object>
    
    DESCRIPTION:
         Defines the specification of the Virtual Machine.
    
    FIELDS:
       compute      <Object>
         Specifies the CPU and Memory of the VM. CPU and Memory can be defined
         directly or through the VirtualMachineType. Changes to Compute require a
         reboot to take effect. Compute is immutable when the VM is in `Unknown`
         state.
    
       disks        <[]Object> -required-
         Specifies the list of disks attached to this vm. There must be exactly one
         boot disk. Changes to disk attachments require a reboot to take effect.
    
       ...
    
  2. Ver recursivamente as subpropriedades de cada propriedade. Estes exemplos mostram o retorno para as subpropriedades compute e vcpus:

    • Este comando de exemplo devolve os campos da subpropriedade compute:

      kubectl --kubeconfig MANAGEMENT_API_SERVER \
        explain virtualmachines.virtualmachine.gdc.goog.spec.compute
      

      O resultado é semelhante ao seguinte:

      KIND:     VirtualMachine
      VERSION:  virtualmachine.gdc.goog/v1
      
      RESOURCE: compute <Object>
      
      DESCRIPTION:
           Specifies the CPU and Memory of the VM. CPU and Memory can be defined
           directly or through the VirtualMachineType. Changes to Compute require a
           reboot to take effect. Compute is immutable when the VM is in `Unknown`
           state.
      
      FIELDS:
         memory       <>
           Specifies the amount of physical memory available to the instance. memory
           must have a minimum value of `1G`, and can be up to (including) `400G`.
      
         vcpus        <integer>
           Specifies the number of VCPUs that are available to the instance. Specify
           `vcpus` as an integer. This value must be a multiple of 2, with 2 as the
           minimum and 128 as the maximum allowed.
      
         ...
      
    • Este comando de exemplo devolve os campos da subpropriedade vcpus:

      kubectl --kubeconfig MANAGEMENT_API_SERVER \
        explain virtualmachines.virtualmachine.gdc.goog.spec.compute.vcpus
      

      O resultado é semelhante ao seguinte:

      KIND:     VirtualMachine
      VERSION:  virtualmachine.gdc.goog/v1
      
      FIELD:    vcpus <integer>
      
      DESCRIPTION:
           Specifies the number of VCPUs that are available to the instance. Specify
           `vcpus` as an integer. This value must be a multiple of 2, with 2 as the
           minimum and 128 as the maximum allowed.
      

Todas as propriedades podem ser atualizadas numa VM em execução, mas, muitas vezes, é necessário reiniciar a VM para que as alterações entrem em vigor.

Estas atualizações de propriedades requerem que a VM seja reiniciada para que as alterações entrem em vigor:

Estas atualizações da propriedade entram em vigor imediatamente:

  • guestEnvironment
  • runningState

Atualize as propriedades da VM

Atualize as propriedades da VM através da consola do GDC ou kubectl.

Consola

  1. No menu de navegação, clique em Máquinas virtuais > Instâncias.

  2. Na lista de VMs, clique no nome de uma VM para ver as respetivas propriedades.

  3. Clique em Editar junto à propriedade que quer editar e faça as alterações.

  4. Se quiser substituir o disco de arranque ou adicionar um novo disco, consulte os artigos Substitua um disco de arranque ou Adicione um disco a uma VM.

  5. Clique em Guardar.

kubectl

  1. Execute o seguinte comando:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
       -n PROJECT \
       edit virtualmachines.virtualmachine.gdc.goog VM_NAME
    

    Substitua as variáveis conforme definido na tabela seguinte.

    VariávelDefinição
    MANAGEMENT_API_SERVERO ficheiro kubeconfig do servidor da API Management.
    VM_NAMEO nome da VM.
    PROJECTO nome do projeto.
  2. Edite o spec para atualizar os campos e os valores necessários para as propriedades atualizáveis.

  3. Guarde o ficheiro.

  4. Se a atualização da propriedade exigir o reinício da VM, use as instruções para reiniciar uma VM para reiniciar a VM.