Erőforrások létrehozása Azure CLI-szkripttel
Az összetett vagy ismétlődő feladatok időigényesek és hibalehetőségek lehetnek manuálisan végrehajtva. A szervezetek inkább automatizálják ezeket a feladatokat a költségek csökkentése és a hibák elkerülése érdekében.
Az automatizálás elengedhetetlen az Ügyfélkapcsolat-kezelés (CRM) példában, ahol a szoftvert több virtuális gépen teszteli. Előfordulhat, hogy ezeket a gépeket folyamatosan törölni és újra létre kell hozni. A virtuális gépek létrehozásának automatizálására szolgáló Azure CLI-szkript használata sokkal hatékonyabb és megbízhatóbb, mint minden alkalommal manuálisan létrehozni őket.
A virtuális gép létrehozásának alapműveletén túl a szkriptnek meg kell felelnie néhány egyéb követelménynek:
-
Több virtuális gép létrehozása: Több
az vm createegyedi névvel ellátott virtuális gép létrehozása. - Erőforráscsoport paramétere: Lehetővé teszi a szkript számára, hogy paraméterként fogadja el az erőforráscsoport nevét.
Ebben a leckében megtudhatja, hogyan írhat és hajthat végre Egy Azure CLI-szkriptet egy Olyan Bash-környezetben, amely megfelel ezeknek a követelményeknek.
Mi az az Azure CLI Bash-szkript?
Az Azure CLI-szkriptek parancsokat és vezérlőszerkezeteket tartalmazó szöveges fájlok. A szkript referenciaparancsokat hajt végre, és a vezérlő szerkezetek olyan programozási funkciók, mint a hurkok, változók, paraméterek, megjegyzések stb.
Az Azure CLI Bash-szkriptfájlok fájlkiterjesztéssel .sh rendelkeznek. Ezeket a fájlokat bármilyen szövegszerkesztővel létrehozhatja és mentheti.
Miután létrehozott egy szkriptet, végrehajthatja a parancssorból a fájl nevének átadásával. Előzze meg a fájlnevet egy ponttal az aktuális könyvtárhoz és egy fordított perjelhez:
.\myScript.sh
Bash-technikák
A Bash a programozási nyelvekben gyakran használt funkciókat tartalmazza. Az ebben a gyakorlatban összpontosító szkripthez három fő funkciót használ: változókat, ciklusokat és paramétereket.
Változók
Az Azure CLI-ben az érték változóhoz való hozzárendelése automatikusan létrehozza a változót. Példa:
location="eastus"
A változóban tárolt érték meghatározásához használja az $ előtagot és a nevét:
echo $location
Hurkok
A Bash több hurokstruktúrával rendelkezik, köztük untila . whilefor A for hurok jó választás olyan helyzetekben, amikor egy ciklust egy gyűjtemény megadott számú értékén kell végrehajtania.
#!/bin/bash
for i in 1 2 3
do
echo "Loop $i times"
done
Paraméterek
Azure CLI-szkript létrehozásakor paramétereket adhat hozzá a szkripthez, majd a szkript végrehajtásakor megadhatja ezeknek a paramétereknek az értékeit. Példa:
.\setupEnvironment.sh parameter1 parameter2 parameter3
A szkripten belül rögzítse az értékeket változókba. Ebben a példában a paraméterek a loopCount és a név:
#!/bin/bash
loopCount=3
name="msdocs"
for i in $(seq 1 $loopCount)
do
loopName="loop $i for $name"
echo $loopName
done
A kimenet a következőképpen fog kinézni:
loop 1 for msdocs
loop 2 for msdocs
loop 3 for msdocs
Paramétereket használhat bemenetként és ciklusként virtuális gépek készletének létrehozásához az adott paraméterek alapján. Ez a módszer általánosan tartja a szkriptet, és nem ismétlődik ugyanaz a kód.
Példaszkript
Íme egy példaszkript, amely azt mutatja be, hogy változók, hurkok és paraméterek használatával hoz létre több virtuális gépet:
#!/bin/bash
# Assign parameters to variables
vmCount=$1
adminUserPrefix=$2
shift 2
images=("$@")
# Loop
for i in $(seq 1 $vmCount)
do
let "randomIdentifier=$RANDOM*$RANDOM"
resourceGroupName="msdocs-rg-$randomIdentifier"
location="westus"
adminUserName="msdocs-$randomIdentifier"
vmName="msdocs-vm-$randomIdentifier"
vmImage=${images[$((i-1)) % ${#images[@]}]}
echo "Creating VM $vmName on $mvImage with admin $adminUserName in resource group $resourceGroupName"
# create the resource group
az group create --name $resourceGroupName --location $location
# create the VM
az vm create \
--resource-group $resourceGroupName \
--location $location \
--admin-username $adminUserName \
--name $vmName \
--image $vmImage \
--generate-ssh-keys
done
A szkript futtatása
Mentse a szkriptet, msdocs-script.sh és futtassa egy Bash-parancssorból a szükséges paraméterek megadásával:
./msdocs-script.sh 3 Debian11 Debian11 Ubuntu2204
Ezzel a szkripttel hatékonyan hozhat létre több virtuális gépet különböző erőforráscsoportokban, automatizálhatja az ismétlődő feladatokat, és konzisztenciát biztosíthat az Azure-környezetben. A következő leckében hozzuk létre ezt a szkriptet, hogy további paramétereket is tartalmazzon, és ellenőrizze a sikeres befejezést.