Crie e carregue uma imagem de disco OpenBSD para o Azure
Aplica-se a: ✔️ VMs do Linux ✔️ Conjuntos de dimensionamento flexíveis
Este artigo mostra como criar e carregar um disco rígido virtual (VHD) que contém o sistema operacional OpenBSD. Depois de carregá-lo, você poderá usá-lo como sua própria imagem para criar uma máquina virtual (VM) no Azure por meio da CLI do Azure.
Pré-requisitos
Este artigo pressupõe que você tenha os seguintes itens:
- Uma assinatura do Azure: se você não tiver uma conta, poderá criar uma em alguns minutos. Se você tiver uma assinatura do MSDN, confira Crédito Azure mensal para assinantes do Visual Studio. Caso contrário, saiba como criar uma conta de avaliação gratuita.
- CLI do Azure: Certifique-se de ter a CLI do Azure mais recente instalada e conectada à sua conta do Azure com az login.
- Sistema operacional OpenBSD instalado em um arquivo .vhd: Um sistema operacional OpenBSD compatível (versão 6.6 AMD64) deve ser instalado em um VHD. Existem várias ferramentas para criar arquivos .vhd. Por exemplo, você pode usar uma solução de virtualização, como o Hyper-V, para criar o arquivo .vhd e instalar o sistema operacional. Para obter instruções sobre como instalar e usar o Hyper-V, veja Instalar o Hyper-V e criar uma VM.
Prepare uma imagem OpenBSD para Azure
Na VM em que você instalou o sistema de operacional OpenBSD 6.1, que adicionou suporte Hyper-V, conclua os procedimentos a seguir:
Se o DHCP não estiver habilitado durante a instalação, habilite o serviço:
doas echo dhcp > /etc/hostname.hvn0
Configure um console serial:
doas echo "stty com0 115200" >> /etc/boot.conf doas echo "set tty com0" >> /etc/boot.conf
Configure a instalação do pacote:
doas echo "https://ftp.openbsd.org/pub/OpenBSD" > /etc/installurl
Por padrão, o usuário
root
está desabilitado em VMs no Azure. Os usuários podem executar comandos com privilégios elevados usando o comandodoas
na VM OpenBSD. Doas é habilitado por padrão.Instale e configure pré-requisitos para o agente Azure:
doas pkg_add py-setuptools openssl git doas ln -sf /usr/local/bin/python2.7 /usr/local/bin/python doas ln -sf /usr/local/bin/python2.7-2to3 /usr/local/bin/2to3 doas ln -sf /usr/local/bin/python2.7-config /usr/local/bin/python-config doas ln -sf /usr/local/bin/pydoc2.7 /usr/local/bin/pydoc
Você pode encontrar a versão mais recente do agente do Azure em GitHub. Instale o agente:
doas git clone https://github.com/Azure/WALinuxAgent doas cd WALinuxAgent doas python setup.py install doas waagent -register-service
Importante
Depois de instalar o agente Azure, é uma boa ideia verificar se ele está em execução:
doas ps auxw | grep waagent root 79309 0.0 1.5 9184 15356 p1 S 4:11PM 0:00.46 python /usr/local/sbin/waagent -daemon (python2.7) doas cat /var/log/waagent.log
Desprovisione o sistema para limpá-lo e torná-lo adequado para o desprovisionamento. O comando a seguir também exclui a última conta de usuário provisionada e os dados associados:
doas waagent -deprovision+user -force
Observação
Se estiver migrando uma VM específica e não quiser criar uma imagem generalizada, ignore a etapa de desprovisionamento.
Agora você pode desligar sua VM.
Preparar o VHD
Não há suporte para o formato VHDX no Azure, somente para o VHD fixo. Você pode converter o disco para o formato VHD fixo usando o Gerenciador Hyper-V ou o cmdlet PowerShell convert-vhd. Veja um exemplo:
Convert-VHD OpenBSD61.vhdx OpenBSD61.vhd -VHDType Fixed
Criar recursos de armazenamento e carregar
Primeiro, crie um grupo de recursos com az group create. O exemplo a seguir cria um grupo de recursos denominado myResourceGroup
no local eastus
:
az group create --name myResourceGroup --location eastus
Para carregar seu VHD, crie uma conta de armazenamento com criar conta de armazenamento az. O nome da conta de armazenamento deve ser exclusivo; portanto, forneça seu próprio nome. O exemplo a seguir cria uma conta de armazenamento chamada mystorageaccount
:
az storage account create --resource-group myResourceGroup \
--name mystorageaccount \
--location eastus \
--sku Premium_LRS
Para controlar o acesso à conta de armazenamento, obtenha a chave de armazenamento com a lista de chaves da conta de armazenamento az:
STORAGE_KEY=$(az storage account keys list \
--resource-group myResourceGroup \
--account-name mystorageaccount \
--query "[?keyName=='key1'] | [0].value" -o tsv)
Para separar logicamente os VHDs que você carregue, crie um contêiner dentro da conta de armazenamento com criar contêiner de armazenamento az:
az storage container create \
--name vhds \
--account-name mystorageaccount \
--account-key ${STORAGE_KEY}
Por fim, carregue seu VHD com upload de blob de armazenamento az:
az storage blob upload \
--container-name vhds \
--file ./OpenBSD61.vhd \
--name OpenBSD61.vhd \
--account-name mystorageaccount \
--account-key ${STORAGE_KEY}
Crie uma VM a partir do seu VHD
Você pode criar uma VM com um script de exemplo ou diretamente com criar vm az. Para especificar o VHD do OpenBSD que você carregou, use o --image
parâmetro:
az vm create \
--resource-group myResourceGroup \
--name myOpenBSD61 \
--image "https://mystorageaccount.blob.core.windows.net/vhds/OpenBSD61.vhd" \
--os-type linux \
--admin-username azureuser \
--ssh-key-value ~/.ssh/id_rsa.pub
Obtenha o endereço IP para sua VM OpenBSD com az vm list-ip-addresses:
az vm list-ip-addresses --resource-group myResourceGroup --name myOpenBSD61
Agora você pode SSH para sua VM OpenBSD normal:
ssh azureuser@<ip address>
Conteúdo relacionado
- Para saber mais sobre o suporte do Hyper-V no OpenBSD 6.1, leia OpenBSD 6.1.
- Para criar uma VM a partir de um disco gerenciado, leia az disk.