Introduktion till FreeBSD på Azure

Gäller för: ✔️ Flexibla skalningsuppsättningar för virtuella Linux-datorer ✔️

Den här artikeln innehåller en översikt över hur du kör en virtuell FreeBSD-dator i Azure.

Översikt

FreeBSD för Microsoft Azure är ett avancerat datoroperativsystem som används för att driva moderna servrar, stationära datorer och inbäddade plattformar.

Microsoft Corporation gör avbildningar av FreeBSD tillgängliga i Azure med azure VM-gästagenten förkonfigurerad. För närvarande erbjuds följande FreeBSD-versioner som bilder av Microsoft:

  • FreeBSD 10.4 på Azure Marketplace
  • FreeBSD 11.2 på Azure Marketplace
  • FreeBSD 11.3 på Azure Marketplace
  • FreeBSD 12.0 på Azure Marketplace

Följande FreeBSD-versioner innehåller även gästagenten för virtuella Azure-datorer, men de erbjuds som avbildningar av FreeBSD Foundation:

  • FreeBSD 11.4 på Azure Marketplace
  • FreeBSD 12.2 på Azure Marketplace
  • FreeBSD 13.0 på Azure Marketplace

Agenten ansvarar för kommunikationen mellan den virtuella FreeBSD-datorn och Azure Fabric för åtgärder som att etablera den virtuella datorn vid första användning (användarnamn, lösenord eller SSH-nyckel, värdnamn osv.) och aktivera funktioner för selektiva VM-tillägg.

När det gäller framtida versioner av FreeBSD är strategin att hålla dig uppdaterad och göra de senaste versionerna tillgängliga kort efter att de har publicerats av FreeBSD-versionsutvecklingsteamet.

Skapa en virtuell FreeBSD-dator via Azure CLI på FreeBSD

Först måste du installera Azure CLI genom att följa kommandot på en FreeBSD-dator.

curl -L https://aka.ms/InstallAzureCli | bash

Om bash inte är installerat på din FreeBSD-dator kör du följande kommando före installationen. 

sudo pkg install bash

Om Python inte är installerat på din FreeBSD-dator kör du följande kommandon före installationen. 

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

Under installationen tillfrågas Modify profile to update your $PATH and enable shell/tab completion now? (Y/n)du . Om du svarar y och anger /etc/rc.conf som a path to an rc file to updatekan du stöta på problemet ERROR: [Errno 13] Permission denied. Lös problemet genom att ge den aktuella användaren skrivbehörighet mot filen etc/rc.conf.

Nu kan du logga in på Azure och skapa din virtuella FreeBSD-dator. Nedan visas ett exempel på hur du skapar en virtuell FreeBSD 11.0-dator. Du kan också lägga till parametern --public-ip-address-dns-name med ett globalt unikt DNS-namn för en nyskapad offentlig IP-adress.

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

Sedan kan du logga in på din virtuella FreeBSD-dator via ip-adressen som skrevs ut i utdata från ovanstående distribution.

ssh azureuser@xx.xx.xx.xx -i /etc/ssh/ssh_host_rsa_key

VM-tillägg för FreeBSD

Följande är vm-tillägg som stöds i FreeBSD.

VMAccess

VMAccess-tillägget kan:

  • Återställ lösenordet för den ursprungliga sudo-användaren.
  • Skapa en ny sudo-användare med det angivna lösenordet.
  • Ange den offentliga värdnyckeln med den angivna nyckeln.
  • Återställ den offentliga värdnyckeln som angavs under etableringen av den virtuella datorn om värdnyckeln inte har angetts.
  • Öppna SSH-porten (22) och återställ sshd_config om reset_ssh är inställt på sant.
  • Ta bort den befintliga användaren.
  • Kontrollera diskar.
  • Reparera en tillagd disk.

CustomScript

CustomScript-tillägget kan:

  • Om det tillhandahålls laddar du ned de anpassade skripten från Azure Storage eller extern offentlig lagring (till exempel GitHub).
  • Kör startpunktsskriptet.
  • Stöd för infogade kommandon.
  • Konvertera newline i Windows-stil i shell- och Python-skript automatiskt.
  • Ta bort bom i shell- och Python-skript automatiskt.
  • Skydda känsliga data i CommandToExecute.

Anteckning

Den virtuella FreeBSD-datorn stöder endast CustomScript version 1.x vid det här laget.

Autentisering: användarnamn, lösenord och SSH-nycklar

När du skapar en virtuell FreeBSD-dator med hjälp av Azure Portal måste du ange ett användarnamn, lösenord eller en offentlig SSH-nyckel. Användarnamn för distribution av en virtuell FreeBSD-dator i Azure får inte matcha namn på systemkonton (UID <100) som redan finns på den virtuella datorn (till exempel "root"). För närvarande stöds endast RSA SSH-nyckeln. En SSH-nyckel med flera linjer måste börja med ---- BEGIN SSH2 PUBLIC KEY ---- och sluta med ---- END SSH2 PUBLIC KEY ----.

Skaffa superanvändarprivilegier

Användarkontot som anges under distributionen av en virtuell datorinstans i Azure är ett privilegierat konto. Sudo-paketet installerades i den publicerade FreeBSD-avbildningen. När du har loggat in via det här användarkontot kan du köra kommandon som rot med hjälp av kommandosyntaxen.

$ sudo <COMMAND>

Du kan också hämta ett rotgränssnitt med hjälp sudo -sav .

Kända problem

Gästagentversion 2.2.2 av den virtuella Azure-datorn har ett känt problem som orsakar etableringsfelet för den virtuella FreeBSD-datorn i Azure. Korrigeringen registrerades av Azure VM Guest Agent version 2.2.3 och senare versioner.

Nästa steg