Introdução ao FreeBSD no Azure
Aplica-se a: ✔️ VMs do Linux ✔️ Conjuntos de dimensionamento flexíveis
Este artigo fornece uma visão geral da execução de uma VM (máquina virtual) FreeBSD no Azure.
Visão geral
O FreeBSD para Azure é um sistema operacional avançado usado para capacitar servidores modernos, desktops e plataformas incorporadas.
A Microsoft está disponibilizando imagens do FreeBSD no Azure com o Agente convidado da VM Azure pré-configurado. No momento, as seguintes versões do FreeBSD são oferecidas como imagens pela Microsoft:
- FreeBSD 10.4 no Azure Marketplace
- FreeBSD 11.2 no Azure Marketplace
- FreeBSD 11.3 no Azure Marketplace
- FreeBSD 12.0 no Azure Marketplace
As versões do FreeBSD a seguir também incluem o Agente Convidado da VM do Azure. Eles são oferecidos como imagens pela FreeBSD Foundation:
- FreeBSD 11.4 no Azure Marketplace
- FreeBSD 12.2 no Azure Marketplace
- FreeBSD 13.0 no Azure Marketplace
O agente é responsável pela comunicação entre a VM do FreeBSD e a malha do Azure para operações como provisionamento da VM no primeiro uso (nome de usuário, senha, chave SSH e nome do host) e habilitação da funcionalidade para extensões de VM seletivas.
Para versões futuras do FreeBSD, a estratégia é manter-se atualizado e disponibilizar as versões mais recentes logo após a publicação pela equipe de engenharia de versão do FreeBSD.
Criar uma VM do FreeBSD por meio da CLI do Azure no FreeBSD
Primeiro, você precisa instalar a CLI do Azure seguindo os comandos em um computador FreeBSD:
curl -L https://aka.ms/InstallAzureCli | bash
Se o bash não estiver instalado no seu computador FreeBSD, execute o comando a seguir antes da instalação:
sudo pkg install bash
Se o Python não estiver instalado no seu computador FreeBSD, execute o comando a seguir antes da instalação:
sudo pkg install python38
cd /usr/local/bin
sudo rm /usr/local/bin/python
sudo ln -s /usr/local/bin/python3.8 /usr/local/bin/python
Durante a instalação, você será solicitado a Modify profile to update your $PATH and enable shell/tab completion now? (Y/n)
. Se responder y
e inserir /etc/rc.conf
como a path to an rc file to update
, você poderá ver ERROR: [Errno 13] Permission denied
. Para resolvê-lo, você deve conceder a permissão de gravação ao usuário atual sobre o arquivo etc/rc.conf
.
Agora você pode entrar no Azure e criar sua VM do FreeBSD. O exemplo a seguir mostra como criar uma VM FreeBSD 11.0. Você também pode adicionar o parâmetro --public-ip-address-dns-name
com um nome DNS exclusivo para um IP público recém-criado.
az login
az group create --name myResourceGroup --location eastus
az vm create --name myFreeBSD11 \
--resource-group myResourceGroup \
--image MicrosoftOSTC:FreeBSD:11.0:latest \
--admin-username azureuser \
--generate-ssh-keys
Em seguida, é possível entrar na VM do FreeBSD pelo endereço IP impresso na saída da implantação acima.
ssh azureuser@xx.xx.xx.xx -i /etc/ssh/ssh_host_rsa_key
Extensões de VM para FreeBSD
As extensões de VM a seguir têm suporte no FreeBSD.
VMAccess
A extensão VMAccess pode:
- Redefinir a senha do usuário sudo original.
- Criar um novo usuário sudo com a senha especificada.
- Definir a chave pública do host com a chave fornecida.
- Redefinir a chave pública do host fornecida durante o provisionamento da VM se a chave do host não for fornecida.
- Abra a porta SSH (22) e restaure o
sshd_config
sereset_ssh
estiver definido comotrue
. - Remover o usuário existente.
- Verificar os discos.
- Reparar o disco adicionado.
CustomScript
A extensão CustomScript pode:
- Se for fornecida, baixar os scripts personalizados do Armazenamento do Azure ou do armazenamento público externo (por exemplo, GitHub).
- Executar o script de ponto de entrada.
- Oferecer suporte ao comando embutido.
- Converter automaticamente o estilo newline do Windows em scripts de Shell e Python.
- Remover automaticamente BOM em scripts de Shell e Python.
- Proteger dados confidenciais em
CommandToExecute
.
Observação
A VM do FreeBSD só oferece suporte ao CustomScript versão 1. x até o momento.
Autenticação: nomes de usuário, senhas e chaves SSH
Ao criar uma VM FreeBSD usando o portal do Azure, você deve fornecer um nome de usuário, uma senha ou uma chave pública SSH.
Os nomes de usuário para implantação de uma VM do FreeBSD no Azure não devem corresponder aos nomes de contas do sistema (UID <100) já presentes na VM (“root”, por exemplo).
Atualmente, há suporte apenas para a chave RSA SSH. Uma chave SSH multilinha deve começar com ---- BEGIN SSH2 PUBLIC KEY ----
e terminar com ---- END SSH2 PUBLIC KEY ----
.
Obter privilégios de superusuário
A conta de usuário especificada durante a implantação da instância de VM no Azure é uma conta privilegiada. O pacote do sudo foi instalado na imagem de FreeBSD publicada.
Depois de fazer logon usando essa conta de usuário, você poderá executar comandos como raiz usando a sintaxe de comando.
$ sudo <COMMAND>
Opcionalmente, é possível obter um shell root usando sudo -s
.
Problemas conhecidos
O Agente convidado de VM do Azure versão 2.2.2 tem um problema conhecido que causa a falha de provisionamento da VM do FreeBSD no Azure. A correção foi capturada pelo Agente Convidado da VM do Azure versão 2.2.3 e versões posteriores.
Conteúdo relacionado
- Acesse o Azure Marketplace para criar uma VM FreeBSD.