Como Adicionar e Configurar uma Nova Interface de Rede (VNIC)
Adicionar múltiplas interfaces de rede (VNICs - Virtual Network Interface Cards) a uma instância permite segmentar o tráfego, conectar-se a diferentes sub-redes ou aplicar políticas de segurança distintas para cada interface.
A ativação de uma nova VNIC envolve duas etapas distintas e obrigatórias:
- Na Plataforma Magalu Cloud: Criar a interface de rede (VNIC) e anexá-la à sua instância de VM.
- No Sistema Operacional da VM: Configurar a nova interface para que ela seja reconhecida, ativada e possa receber um endereço IP.
Este guia cobre ambas as etapas em detalhes.
Etapa 1: Provisionar a Máquina Virtual (VM)
Caso ainda não tenha uma VM, crie uma utilizando um dos métodos abaixo.
- 🖥️ Via Console
- >_ Via CLI
- No menu principal, acesse Virtual Machines.
- Clique no botão + Criar instância.
- Preencha os campos obrigatórios:
- Zona de Disponibilidade: Escolha a zona onde a VM será criada.
- Imagem: Selecione o sistema operacional, como Ubuntu 24.04 LTS.
- Tipo de instância: Escolha o tamanho da VM (ex: Balanced Value).
- Chave SSH: Selecione uma chave SSH já existente para acesso seguro.
- Nome da instância: Defina um nome para sua VM (ex:
minha-vm-multinic
).
- Clique em Criar instância para finalizar.
A criação de uma VM via linha de comando é feita com o comando mgc virtual-machine instances create
. O exemplo abaixo mostra os parâmetros essenciais para provisionar uma instância Ubuntu.
# Exemplo de criação de uma VM Ubuntu
mgc virtual-machine instances create \
--name="vm-vnic-add" \
--image.name="Ubuntu 24.04 LTS" \
--machine-type.name="BV1-1-10" \
--network.vpc.id="[ID_DA_SUA_VPC]" \
--ssh-key-name="[NOME_DA_SUA_CHAVE_SSH]"
O comando retornará o id
da instância criada. Guarde este valor, pois ele será necessário na próxima etapa para anexar a interface de rede.
Para uma lista completa de todos os parâmetros e opções disponíveis, consulte a documentação de referência do comando.
Etapa 2: Criar e Anexar a Nova VNIC (via CLI)
Atualmente, a criação e associação de VNICs adicionais é feita através da CLI.
-
Crie a nova porta (VNIC):
Execute o comando abaixo, substituindo
[ID_DA_SUA_VPC]
pelo ID da VPC onde a VM está localizada e definindo um nome para a nova interface.mgc network vpcs ports create --vpc-id="[ID_DA_SUA_VPC]" --name="vnic-secundaria"
importantAnote o
id
retornado pelo comando. Ele é essencial para vincular a nova interface à sua VM no passo seguinte. -
Anexe a VNIC à instância:
Use o comando a seguir para associar a VNIC à sua VM. Substitua
[ID_DA_SUA_VM]
e[ID_DA_VNIC]
pelos valores obtidos anteriormente.mgc virtual-machine instances network-interface attach \
--instance.id="[ID_DA_SUA_VM]" \
--network.interface.id="[ID_DA_VNIC]"infoUma mensagem como
✅ Operation executed successfully
confirmará que a interface foi anexada com sucesso.
Etapa 3: Configurar a Interface no Sistema Operacional
Após anexar a VNIC na plataforma, a configuração dentro da VM é necessária para ativá-la. A nova interface geralmente é configurada para obter um endereço IP via DHCP.
A tabela abaixo resume as ferramentas e arquivos de configuração para os sistemas operacionais disponíveis na Magalu Cloud.
Sistema Operacional | Nome da Imagem (Exemplo) | Ferramenta Principal | Arquivo de Configuração Típico |
---|---|---|---|
Ubuntu 22.04+ / Debian 12+ | cloud-ubuntu-24.04 LTS | Netplan | /etc/netplan/*.yaml |
Rocky Linux 9 / Oracle Linux 8+ | cloud-rocky-09 | NetworkManager | /etc/sysconfig/network-scripts/ifcfg-<interface> |
Fedora | cloud-fedora-41 | NetworkManager | /etc/NetworkManager/system-connections/*.nmconnection |
openSUSE 15.x | cloud-opensuse-15.6 | wicked | /etc/sysconfig/network/ifcfg-* |
Windows Server | windows-server-2022 | Painel de Controle | (Configuração via interface gráfica ou PowerShell) |
A seguir, detalhamos o processo para cada sistema.
- Ubuntu / Debian (Netplan)
- Rocky / Oracle / RHEL
- Fedora
- openSUSE
- Windows Server
O Ubuntu 22.04+ e o Debian 12+ utilizam o Netplan para gerenciamento de rede. A nova interface estará presente, mas desativada por padrão até ser configurada.
-
Acesse sua VM e identifique a nova interface (ex:
ens7
) com o comandoip a
. Anote seu nome e endereço MAC. -
Edite o arquivo de configuração do Netplan (geralmente
/etc/netplan/50-cloud-init.yaml
) com permissões de superusuário:sudo vim /etc/netplan/50-cloud-init.yaml
-
Adicione a estrofe da nova interface, usando o endereço MAC para a correspondência:
network:
version: 2
ethernets:
# Interface primária (existente)
ens3:
match:
macaddress: "fa:16:3e:62:7f:6e"
dhcp4: true
# ... outras configs
# Nova interface
ens7:
match:
macaddress: "fa:16:3e:4a:fd:07" # <-- Use o MAC da sua nova interface
dhcp4: true
set-name: "ens7" -
Aplique a configuração e verifique o resultado:
sudo netplan apply
ip a show ens7A interface agora deve estar UP e com um endereço IP.
Para sistemas baseados em RHEL, como Rocky Linux e Oracle Linux, a configuração é feita com o NetworkManager
através do utilitário nmcli
.
-
Acesse sua VM e identifique o nome da nova interface que está desconectada.
nmcli device status
# Exemplo de Saída:
# DEVICE TYPE STATE CONNECTION
# ens3 ethernet connected ens3
# ens7 ethernet disconnected --
# lo loopback unmanaged -- -
Crie e ative uma nova conexão para a interface. O
nmcli
configurará o DHCP (ipv4.method=auto
) por padrão. Substituaens7
pelo nome da sua interface.# O nome da conexão pode ser o mesmo da interface para simplicidade
sudo nmcli con add type ethernet con-name ens7 ifname ens7O comando confirmará a criação da conexão com sucesso.
-
Verifique o resultado: A interface já deve estar ativa. Confirme com os comandos abaixo.
# Verifica o status da nova conexão
nmcli con show ens7
# Verifica o endereço IP atribuído à interface
ip a show ens7
O Fedora utiliza o NetworkManager
de forma nativa e o método de configuração é idêntico ao de outros sistemas baseados em RHEL, usando nmcli
.
-
Acesse sua VM e identifique o nome da nova interface que aparece como
disconnected
.nmcli device status
-
Crie e ative a nova conexão para a interface. O nome da conexão pode ser o mesmo da interface para facilitar o gerenciamento.
sudo nmcli con add type ethernet con-name ens7 ifname ens7
-
Verifique a nova conexão e o endereço IP atribuído.
nmcli con show ens7
ip a show ens7
O openSUSE utiliza o wicked
como ferramenta padrão de gerenciamento de rede.
-
Acesse sua VM e identifique o nome da nova interface que não está configurada ("down" ou "unmanaged").
sudo wicked ifshow all
-
Crie um arquivo de configuração para a nova interface. Substitua
ens7
pelo nome correto da sua interface.sudo vim /etc/sysconfig/network/ifcfg-ens7
-
Adicione o seguinte conteúdo ao arquivo para configurar o DHCP e a inicialização automática:
# Conteúdo para /etc/sysconfig/network/ifcfg-ens7
BOOTPROTO='dhcp'
STARTMODE='auto'Salve e feche o arquivo.
-
Aplique a configuração para ativar a interface.
sudo wicked ifup ens7
-
Verifique o status para confirmar que a interface está ativa e com IP.
wicked ifstatus ens7
- 🖥️ Interface Gráfica (GUI)
- >_ PowerShell
- Abra o Menu Iniciar, digite
ncpa.cpl
e pressione Enter. Isso abrirá a janela de Conexões de Rede. - Localize a nova interface de rede. Ela geralmente estará identificada como "Rede Não Identificada" (geralmente "Ethernet 2" ou superior).
- Clique com o botão direito sobre ela e selecione Propriedades.
- Na lista, dê um duplo clique em "Protocolo IP Versão 4 (TCP/IPv4)".
- Na nova janela, certifique-se de que as seguintes opções estejam marcadas:
- Obter um endereço IP automaticamente
- Obter o endereço dos servidores DNS automaticamente
- Clique em OK em todas as janelas para salvar. A interface será ativada e obterá um endereço IP da sua VPC.
Execute os seguintes comandos em uma janela do PowerShell aberta como Administrador.
-
Liste todas as interfaces de rede para identificar o índice (
ifIndex
) da nova interface. Ela estará com o statusDisconnected
.Get-NetAdapter | Format-Table -AutoSize
# Anote o valor da coluna "ifIndex" da interface desconectada. -
Habilite o DHCP para a interface, substituindo
[INDEX]
pelo número que você anotou.Set-NetIPInterface -InterfaceIndex [INDEX] -Dhcp Enabled
-
Configure o DNS para ser obtido via DHCP na mesma interface.
Set-DnsClientServerAddress -InterfaceIndex [INDEX] -ResetServerAddresses
-
Verifique o resultado. A interface agora deve ter um endereço IP.
Get-NetIPAddress -InterfaceIndex [INDEX]