Inleiding tot FreeBSD op Azure
Van toepassing op: ✔️ Flexibele schaalsets voor Linux-VM's ✔️
Dit artikel bevat een overzicht van het uitvoeren van een virtuele FreeBSD-machine (VM) in Azure.
Overzicht
FreeBSD voor Azure is een geavanceerd computerbesturingssysteem dat wordt gebruikt voor moderne servers, desktops en ingesloten platforms.
Microsoft maakt installatiekopieën van FreeBSD beschikbaar in Azure met de Azure VM-gastagent vooraf geconfigureerd. Momenteel worden de volgende FreeBSD-versies aangeboden als afbeeldingen door Microsoft:
- FreeBSD 10.4 in Azure Marketplace
- FreeBSD 11.2 in Azure Marketplace
- FreeBSD 11.3 in Azure Marketplace
- FreeBSD 12.0 in Azure Marketplace
De volgende FreeBSD-versies bevatten ook de Azure VM-gastagent. Ze worden aangeboden als afbeeldingen door de FreeBSD Foundation:
- FreeBSD 11.4 in Azure Marketplace
- FreeBSD 12.2 in Azure Marketplace
- FreeBSD 13.0 in Azure Marketplace
De agent is verantwoordelijk voor communicatie tussen de FreeBSD-VM en de Azure-infrastructuur voor bewerkingen zoals het inrichten van de VM bij eerste gebruik (gebruikersnaam, wachtwoord of SSH-sleutel en hostnaam) en het inschakelen van functionaliteit voor selectieve VM-extensies.
Wat toekomstige versies van FreeBSD betreft, is de strategie om actueel te blijven en de nieuwste releases beschikbaar te maken kort nadat ze zijn gepubliceerd door het FreeBSD release engineering team.
Een FreeBSD-VM maken via de Azure CLI op FreeBSD
Eerst moet u de Azure CLI installeren via de volgende opdracht op een FreeBSD-computer:
curl -L https://aka.ms/InstallAzureCli | bash
Als bash niet op uw FreeBSD-computer is geïnstalleerd, voert u de volgende opdracht uit vóór de installatie:
sudo pkg install bash
Als Python niet is geïnstalleerd op uw FreeBSD-computer, voert u de volgende opdrachten uit vóór de installatie:
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
Tijdens de installatie wordt u gevraagd .Modify profile to update your $PATH and enable shell/tab completion now? (Y/n)
Als u antwoordt y
en invoert /etc/rc.conf
als a path to an rc file to update
, ziet ERROR: [Errno 13] Permission denied
u mogelijk . Om dit probleem op te lossen, moet u de schrijfmachtiging verlenen aan de huidige gebruiker op basis van het bestand etc/rc.conf
.
Nu kunt u zich aanmelden bij Azure en uw FreeBSD VM maken. In het volgende voorbeeld ziet u hoe u een FreeBSD 11.0 VM maakt. U kunt de parameter --public-ip-address-dns-name
ook toevoegen met een globaal unieke DNS-naam voor een nieuw gemaakt openbaar IP-adres.
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
Vervolgens kunt u zich aanmelden bij uw FreeBSD VM via het IP-adres dat wordt afgedrukt in de uitvoer van de voorgaande implementatie.
ssh azureuser@xx.xx.xx.xx -i /etc/ssh/ssh_host_rsa_key
VM-extensies voor FreeBSD
De volgende VM-extensies worden ondersteund in FreeBSD.
VMAccess
De VMAccess-extensie kan het volgende doen:
- Stel het wachtwoord van de oorspronkelijke sudo-gebruiker opnieuw in.
- Maak een nieuwe sudo-gebruiker met het opgegeven wachtwoord.
- Stel de openbare hostsleutel in met de opgegeven sleutel.
- Stel de openbare hostsleutel die is opgegeven tijdens het inrichten van de VIRTUELE machine opnieuw in als de hostsleutel niet is opgegeven.
- Open de SSH-poort (22) en herstel de
sshd_config
ifreset_ssh
is ingesteld optrue
. - Verwijder de bestaande gebruiker.
- Controleer schijven.
- Herstel een toegevoegde schijf.
CustomScript
De CustomScript-extensie kan het volgende doen:
- Als dit is opgegeven, downloadt u de aangepaste scripts uit Azure Storage of externe openbare opslag (bijvoorbeeld GitHub).
- Voer het invoerpuntscript uit.
- Ondersteuning voor inlineopdrachten.
- Converteer nieuwe regel in Windows-stijl in shell- en Python-scripts automatisch.
- Verwijder bom in shell- en Python-scripts automatisch.
- Gevoelige gegevens beveiligen in
CommandToExecute
.
Notitie
FreeBSD VM ondersteunt nu alleen CustomScript versie 1.x.
Verificatie: Gebruikersnamen, wachtwoorden en SSH-sleutels
Wanneer u een FreeBSD-VM maakt met behulp van Azure Portal, moet u een gebruikersnaam, wachtwoord of openbare SSH-sleutel opgeven.
Gebruikersnamen voor het implementeren van een FreeBSD-VM in Azure mogen niet overeenkomen met de namen van systeemaccounts (UID <100) die al aanwezig zijn in de VM ('root', bijvoorbeeld).
Momenteel wordt alleen de RSA SSH-sleutel ondersteund. Een SSH-sleutel met meerdere regels moet beginnen met ---- BEGIN SSH2 PUBLIC KEY ----
en eindigen met ---- END SSH2 PUBLIC KEY ----
.
Superuser-bevoegdheden verkrijgen
Het gebruikersaccount dat is opgegeven tijdens de implementatie van het VM-exemplaar in Azure, is een bevoegd account. Het pakket van sudo is geïnstalleerd in de gepubliceerde FreeBSD-installatiekopieën.
Nadat u bent aangemeld via dit gebruikersaccount, kunt u opdrachten uitvoeren als root met behulp van de opdrachtsyntaxis.
$ sudo <COMMAND>
U kunt eventueel een hoofdshell verkrijgen met behulp van sudo -s
.
Bekende problemen
De Azure VM-gastagent versie 2.2.2 heeft een bekend probleem dat de inrichtingsfout veroorzaakt voor FreeBSD VM in Azure. De oplossing is vastgelegd door azure VM-gastagent versie 2.2.3 en latere versies.
Gerelateerde inhoud
- Ga naar Azure Marketplace om een FreeBSD VM te maken.