Implantação em nuvem / VM (qcow2)¶
A imagem qcow2 já traz cloud-init e qemu-guest-agent, o que a torna ideal
para subir rápido em nuvem, KVM/libvirt, Proxmox e afins. O cloud-init cuida do
usuário, da chave SSH, do hostname e da rede no primeiro boot.
Imagem = template
O qcow2 é um template. Cada VM criada a partir dele é personalizada pelo
cloud-init na primeira inicialização (a partir do datasource).
Opção A — KVM/libvirt com seed NoCloud¶
Sem um provedor de nuvem, o jeito mais simples de alimentar o cloud-init é um
datasource NoCloud: um pequeno ISO com dois arquivos, meta-data e
user-data.
1. Crie os arquivos do seed¶
meta-data:
user-data (note o #cloud-config na primeira linha):
#cloud-config
users:
- name: admin
groups: [wheel]
sudo: "ALL=(ALL) NOPASSWD:ALL"
shell: /bin/bash
ssh_authorized_keys:
- ssh-ed25519 AAAA... voce@maquina
# senha opcional — serve para CONSOLE e Cockpit (o SSH é só por chave)
chpasswd:
expire: false
users:
- name: admin
password: "troque-esta-senha"
type: text
SSH é só por chave
O HERD vem com PasswordAuthentication no. Inclua sua chave pública em
ssh_authorized_keys, senão você não entra por SSH. A senha (se definida)
vale para o console e para o Cockpit.
sudo sem senha
O exemplo usa NOPASSWD:ALL (sudo sem pedir senha) — prático em nuvem com
login só por chave. Para um controle mais rígido, troque por
ALL=(ALL) ALL e defina uma senha ao usuário; aí o sudo passa a exigi-la.
2. Gere o ISO do seed¶
genisoimage -output seed.iso -volid cidata -joliet -rock user-data meta-data
# (ou: cloud-localds seed.iso user-data meta-data)
3. Suba a VM¶
cp CapivaraOS-HERD-1.0.0-x86_64.qcow2 herd-01.qcow2
virt-install --name herd-01 --memory 2048 --vcpus 2 \
--disk path=herd-01.qcow2,format=qcow2,bus=virtio \
--disk path=seed.iso,device=cdrom \
--os-variant fedora-unknown --import \
--network network=default,model=virtio --graphics none
Descubra o IP (virsh domifaddr herd-01) e entre: ssh admin@<ip>.
Opção B — Provedor de nuvem¶
- Faça upload do qcow2 como imagem/template no seu provedor (OpenStack Glance,
etc.) — ou importe como disco (Proxmox:
qm importdisk). - Crie a instância a partir da imagem.
- Forneça o user-data (mesmo
#cloud-configacima) pelo mecanismo do provedor (metadata service / ConfigDrive). Ocloud-initaplica no 1º boot.
qemu-guest-agent
Já vem instalado e habilitado — o host de virtualização consegue consultar IP, fazer quiesce de snapshot e desligamento gracioso.
Depois de subir¶
- Primeiros passos — atualizações, rede, fuso.
- Console web (Cockpit) —
https://<ip>:9090. - Segurança e compliance.
Conteúdo produzido com auxílio de IA, em revisão contínua. Encontrou um erro? Abra uma issue.