Gyakorlat – Az Azure DevOps-környezet beállítása

Befejeződött

Ebben az egységben biztosítsa, hogy az Azure DevOps szervezet be van állítva a modul többi részének befejezéséhez. Emellett létrehozza azokat az Azure App Service-környezeteket is, amelyekbe üzembe helyez.

A célok eléréséhez hajtsa végre az alábbi feladatokat:

  • Adjon hozzá egy felhasználót, hogy az Azure DevOps csatlakozzon az Azure-előfizetéséhez.
  • Állítson be egy Azure DevOps-projektet ehhez a modulhoz.
  • Az Azure Boardsban helyezze át a modul munkaelemét a Feladat oszlopba.
  • Győződjön meg arról, hogy a projekt helyileg van beállítva, hogy a módosításokat le tudja küldeni a pipeline-ba.
  • Az Azure App Service és az Azure Functions alkalmazás létrehozása az Azure CLI használatával az Azure Cloud Shellben.
  • Hozzon létre olyan folyamatváltozókat, amelyek meghatározzák az App Service és az Azure Functions-példány nevét.
  • Hozzon létre egy szolgáltatáskapcsolatot, amely lehetővé teszi az Azure Pipelines számára az Azure-előfizetés biztonságos elérését.

Felhasználó hozzáadása az Azure DevOpshoz

A modul elvégzéséhez saját Azure-előfizetésre van szüksége. Ingyenesen használhatja az Azure-t.

Bár nincs szüksége Azure-előfizetésre az Azure DevOps használatához, ez a gyakorlat az Azure DevOps használatával helyezi üzembe az Azure-előfizetésben lévő Azure-erőforrásokat. A folyamat egyszerűsítése érdekében ugyanazzal a Microsoft-fiókkal jelentkezzen be az Azure-előfizetésbe és az Azure DevOps-szervezetbe is.

Fontos

Ha más fiókkal jelentkezik be, adjon hozzá egy felhasználót a DevOps-szervezethez az Azure-ba való bejelentkezéshez használt Microsoft-fiók alatt. További információ: Felhasználók hozzáadása a szervezethez vagy projekthez. A felhasználó hozzáadásakor válassza az Alapszintű hozzáférési szintet.

Ezután jelentkezzen ki az Azure DevOpsból, és jelentkezzen be az új felhasználói fiókkal. Használja azt a Microsoft-fiókot, amellyel bejelentkezik az Azure-előfizetésbe.

Az Azure DevOps-projekt lekérése

Győződjön meg arról, hogy az Azure DevOps-szervezet be van állítva a modul többi részének befejezéséhez. Ehhez futtasson egy sablont, amely létrehoz egy projektet az Azure DevOpsban.

Az ebben a képzési tervben szereplő modulok előrehaladást alkotnak, miközben a Tailspin webcsapatot követik a DevOps-folyamatuk során. Tanulási célokra minden modulnak saját Azure DevOps-projektje van.

A sablon futtatása

Futtass egy sablont, amely beállítja az Azure DevOps-szervezetet.

Fontos

Az Azure DevOps Demo Generator már nem támogatott, de továbbra is használhatja bemutatókörnyezetek létrehozásához. Jelenleg nincs csere, és a funkciók vagy a rendelkezésre állás megváltozhat az úton.

  1. Szerezze be és futtassa az ADOGenerator projektet a Visual Studióban vagy a választott IDE-ben.

  2. Amikor a rendszer kéri , hogy írja be a sablonszámot a sablonok listájából, adja meg a 38-as értéket az Azure-függvények Azure Pipelines-beli üzembe helyezésének automatizálásához, majd nyomja le az Enter billentyűt.

  3. Válassza ki a hitelesítési módszert. Beállíthat és használhat személyes hozzáférési jogkivonatot (PAT), vagy használhatja az eszköz bejelentkezését.

    Jegyzet

    Ha PAT-t állít be, győződjön meg arról, hogy engedélyezi a szükséges hatóköröket. Ebben a modulban használhatja a Teljes hozzáférést, de valós helyzetben csak a szükséges hatóköröket kell megadnia.

  4. Adja meg az Azure DevOps-szervezet nevét, majd nyomja le az Enter billentyűt.

  5. Ha a rendszer kéri, adja meg az Azure DevOps PAT-t, majd nyomja le az Enter billentyűt.

  6. Adjon meg egy projektnevet, például : Space Game – web – Azure Functions, majd nyomja le az Enter billentyűt.

  7. A projekt létrehozása után lépjen az Azure DevOps-szervezethez a böngészőben (at https://dev.azure.com/<your-organization-name>/) és válassza ki a projektet.

Az adattár megforkolása

Ha még nem tette meg, hozzon létre egy elágazást az mslearn-tailspin-spacegame-web-azure-functions adattárból.

  1. A GitHubon nyissa meg az mslearn-tailspin-spacegame-web-azure-functions adattárat.

  2. Válassza ki a Elágazás menüt a képernyő jobb felső sarkában.

  3. Válassza ki a GitHub-fiókját tulajdonosként, majd válassza az Elágazás létrehozása lehetőséget.

Fontos

Az Azure DevOps-környezet megtisztítása lap ebben a modulban olyan fontos lépéseket tartalmaz, amelyeket el kell végeznie, még akkor is, ha nem végzi el ezt a modult. A tisztítás segít biztosítani, hogy ne fogyjon el az ingyenes buildelési percek száma.

A projekt láthatóságának beállítása

Kezdetben a GitHubon a Space Game-adattár elágazása nyilvánosra van állítva, míg az Azure DevOps-sablon által létrehozott projekt privátra van állítva. A GitHub nyilvános adattárát bárki elérheti, míg egy privát adattár csak Ön és az Ön által megosztott személyek számára érhető el. Hasonlóképpen, az Azure DevOpsban a nyilvános projektek írásvédett hozzáférést biztosítanak a nem hitelesített felhasználók számára, míg a privát projektekhez hozzáférést és hitelesítést kell biztosítani a felhasználóknak a szolgáltatások eléréséhez.

Jelenleg nem szükséges ezen beállítások egyikét sem módosítani a modul céljaira. Személyes projektjei esetében azonban meg kell határoznia, hogy milyen láthatóságot és hozzáférést kíván biztosítani másoknak. Ha például a projekt nyílt forráskódú, dönthet úgy, hogy a GitHub-adattárat és az Azure DevOps-projektet is nyilvánossá teszi. Ha a projekt védett, általában a GitHub-adattárat és az Azure DevOps-projektet is magánjellegűvé tenné.

Később a következő erőforrásokat hasznosnak találhatja annak meghatározásához, hogy melyik lehetőség a legjobb a projekt számára:

Munkaelem hozzárendelése és áthelyezése a Feladat állapotba

Itt hozzárendelhet egy munkaelemet saját magához az Azure Boardsban, és beállíthatja a munkaelem állapotát a "Csinál" értékre. A gyakorlatban Ön és csapata az egyes futamok elején vagy a munka iterációjában hozna létre munkaelemeket.

Ez a gyakorlat létrehoz egy ellenőrzőlistát, amelyből dolgoznia kell. A többi csapattagnak betekintést nyújt abba, hogy min dolgozik, és mennyi munka marad. A munkaelem a folyamatban lévő munka (WIP) korlátainak érvényesítésében is segít, hogy a csapat egyszerre ne vállaljon túl sok munkát.

  1. Az Azure DevOpsban lépjen a Táblák kategóriára, majd válassza a Táblák lehetőséget a menüből.

    Az Azure DevOps megjeleníti a Boards menü helyét.

  2. Nyissa meg a Refactor ranglista API-t Azure-függvény munkaelemként a cím kiválasztásával. Rendelje hozzá saját magához ezt a munkaelemet, majd válassza a Mentés és bezárás lehetőséget.

  3. Kattintson a kártya alján található lefelé mutató nyílra, és válassza a Folyamatbanvagy válassza ki a kártyát, és húzza a Folyamatban oszlopba.

    Képernyőkép a munkaelem-kártyáról, amely a lefelé mutató nyíl helyét emeli ki.

  4. A munkaelem a Teendő oszlopból a Feladat oszlopba kerül.

    Képernyőkép az Azure Boardsról, amely a Munkaelem-kártyát emeli ki a Doing oszlopban.

A modul végén helyezze át a kártyát a Kész oszlopba a feladat elvégzése után.

Az Azure App Service és az Azure Functions-környezetek létrehozása

Itt hozza létre a webhely és az API új verziójának üzembe helyezéséhez szükséges App Service- és Azure Functions-alkalmazást.

Ebben a modulban az Azure CLI használatával hozza létre az App Service-példányt. Az Azure CLI-t egy terminálon vagy a Visual Studio Code-on keresztül érheti el. Azure CLI-t használt az Azure Cloud Shellből. Ez a böngészőalapú rendszerhéj-felület a felhőben üzemel. A Cloud Shellben az Azure CLI az Azure-előfizetéshez való használatra van konfigurálva.

Fontos

A modul gyakorlatainak elvégzéséhez saját Azure-előfizetésre van szüksége.

A Cloud Shell megnyitása az Azure Portalon

  1. Jelentkezzen be az Azure Portalra.

  2. Az oldalfejléc globális vezérlői közül válassza a Cloud Shellt.

    Képernyőkép az Azure Portalról, amelyen a Cloud Shell menüelem helye látható.

    Megnyílik egy terminál, és csatlakozik az Azure Cloud Shellhez.

  3. Ha szükséges, válassza a Bash lehetőséget a terminál menüjében.

    Jegyzet

    A Cloud Shellhez egy Azure Storage-erőforrás szükséges a Cloud Shellben létrehozott fájlok megőrzéséhez. A Cloud Shell első megnyitásakor a rendszer kérni fogja, hogy hozzon létre egy erőforráscsoportot, tárfiókot és Azure Files-megosztást. Ezt a beállítást a rendszer automatikusan használja az összes jövőbeli Cloud Shell-munkamenethez.

Azure-régió kiválasztása

A régió egy vagy több Azure-adatközpont egy földrajzi helyen belül. Az USA keleti régiója, az USA nyugati régiója és Észak-Európa példák a régiókra. Minden Azure-erőforrás, beleértve az App Service-példányt is, régióhoz van rendelve.

A parancsok egyszerűbb futtatásához először állítsunk be egy alapértelmezett régiót. Az alapértelmezett régió megadása után a megadott parancsok az adott régiót használják, amíg meg nem ad egy másik régiót.

  1. A Cloud Shellben futtassa a következő az account list-locations parancsot az Azure-előfizetésből elérhető régiók listázásához:

    az account list-locations \
      --query "[].{Name: name, DisplayName: displayName}" \
      --output table
    
  2. A kimenet Name oszlopában válasszon egy Önhöz közeli régiót. Válassza például a eastasia vagy a westus2lehetőséget.

  3. Futtassa a az configure az alapértelmezett régió beállításához. Cserélje le a <REGION> a választott régió nevére.

    az configure --defaults location=<REGION>
    

    Ez a példa a westus2 állítja be alapértelmezett régióként:

    az configure --defaults location=westus2
    

Bash-változók létrehozása

Itt hozzon létre Bash-változókat, hogy a beállítási folyamat kényelmesebb és kevésbé hibalehetőséget biztosíthasson. A változók használata megosztott szöveges sztringekhez segít elkerülni a véletlen elírásokat.

  1. A Cloud Shellből hozzon létre egy véletlenszerű számot, amellyel globálisan egyedi neveket hozhat létre bizonyos szolgáltatásokhoz a következő lépésben.

    resourceSuffix=$RANDOM
    
  2. Hozzon létre három globálisan egyedi nevet az App Service-, az Azure-függvény- és a tárfiókok számára. Ezek a parancsok dupla idézőjeleket használnak, amelyek arra utasítják a Basht, hogy beágyazott szintaxissal oldja fel a változókat.

    webName="tailspin-space-game-web-${resourceSuffix}"
    leaderboardName="tailspin-space-game-leaderboard-${resourceSuffix}"
    storageName="tailspinspacegame${resourceSuffix}"
    
  3. Hozzon létre még két Bash-változót az erőforráscsoport és a szolgáltatáscsomag nevének tárolásához.

    rgName='tailspin-space-game-rg'
    planName='tailspin-space-game-asp'
    

A szükséges Azure-erőforrások létrehozása

A megoldás több Azure-erőforrást igényel az üzembe helyezéshez, amelyeket most hoz létre.

Jegyzet

Ez a gyakorlat az alapértelmezett hálózati beállításokat használja, így a webhely elérhető az internetről. A gyakorlatban úgy konfigurálhat egy Azure-beli virtuális hálózatot, hogy webhelyét olyan hálózatba helyezze, amelyhez csak Ön és csapata férhet hozzá. Később újrakonfigurálhatja a virtuális hálózatot, hogy elérhetővé tegye a webhelyet a felhasználók számára.

  1. Futtassa a következő az group create parancsot egy erőforráscsoport létrehozásához a korábban definiált név használatával:

    az group create --name $rgName
    
  2. Futtassa a következő az appservice plan create parancsot egy App Service-csomag létrehozásához az előző feladatban meghatározott névvel:

    az appservice plan create \
      --name $planName \
      --resource-group $rgName \
      --sku B1 \
      --is-linux
    

    A --sku paraméter a B1-tervet adja meg. Ez a csomag az Alapszintű szinten fut. A --is-linux paraméter linuxos feldolgozókat (eseményekben és feladatütemezésekben használt szálakat) határoz meg.

    Fontos

    Ha a B1 termékváltozat nem érhető el az Azure-előfizetésben, válasszon egy másik csomagot, például S1 (Standard).

  3. Futtassa a következő az webapp create parancsot az App Service-példány létrehozásához:

    az webapp create \
      --name $webName \
      --resource-group $rgName \
      --plan $planName \
      --runtime "DOTNETCORE|8.0"
    
  4. Az Azure Functions használatához egy tárfiókra van szükség az üzembe helyezéshez. A létrehozáshoz futtassa a következő az storage account create parancsot:

    az storage account create \
      --name $storageName \
      --resource-group $rgName \
      --sku Standard_LRS
    
  5. Futtassa a következő az functionapp create parancsot az Azure Functions-alkalmazáspéldány létrehozásához. Cserélje le a <region> az előnyben részesített régióra.

    az functionapp create \
      --name $leaderboardName \
      --resource-group $rgName \
      --storage-account $storageName \
      --functions-version 4 \
      --consumption-plan-location <region>
    
  6. Futtassa a következő az webapp list parancsot az App Service-példány gazdagépnevének és állapotának listázásához:

    az webapp list \
      --resource-group $rgName \
      --query "[].{hostName: defaultHostName, state: state}" \
      --output table
    

    Jegyezze fel a futó szolgáltatás hosztnevét. A következőhöz hasonlóan kell kinéznie, de egy másik véletlenszerű számmal. Később, amikor ellenőrzi a munkáját, szüksége lesz a webtárhely nevére.

    HostName                                        State
    ----------------------------------------------  -------
    tailspin-space-game-web-4692.azurewebsites.net  Running
    
  7. Futtassa az alábbi az functionapp list parancsot az Azure Functions példány gazdagépnevének és állapotának megjelenítéséhez.

    az functionapp list \
      --resource-group $rgName \
      --query "[].{hostName: defaultHostName, state: state}" \
      --output table
    

    Jegyezze fel a futó szolgáltatás hosztnevét. A következőhöz hasonlóan kell kinéznie, de más véletlenszerű számazonosítóval. Később, amikor ellenőrzi a munkáját, szüksége lesz a ranglista kiszolgáló nevére.

    HostName                                                State
    ------------------------------------------------------  -------
    tailspin-space-game-leaderboard-4692.azurewebsites.net  Running
    
  8. Másolja ezt a két gazdagépnevet egy olyan helyre, ahová később könnyen hozzáférhet.

  9. Választható lépésként nyisson meg egy böngészőt, és adjon meg egy kiszolgálónevet annak ellenőrzésére, hogy fut-e. Megjelenik az alapértelmezett kezdőlap.

Fontos

Az Azure DevOps-környezet megtisztítása lap ebben a modulban fontos tisztítási lépéseket tartalmaz. A tisztítás segít biztosítani, hogy a modul elvégzése után ne kell fizetnie az Azure-erőforrásokért. Ügyeljen arra, hogy akkor is végezze el a tisztítási lépéseket, ha nem végzi el ezt a modult.

Folyamatváltozók létrehozása az Azure Pipelinesban

Itt hozzáad egy változót a folyamathoz, amely a webalkalmazás nevét tárolja az App Service-ben. Emellett hozzáadhatja a ranglista-alkalmazás nevét az Azure Functions-példányhoz.

Ezeket a neveket a folyamatkonfigurációban is meghatározhatja, de ha változókként definiálja őket, a konfiguráció újrafelhasználhatóbb. Emellett ha a példányok neve megváltozik, frissítheti a változókat, és a konfiguráció módosítása nélkül aktiválhatja a folyamatot.

Adjon hozzá egy változócsoportot a projekthez.

  1. A Space Game – web – Azure Functions-projektnek nyitva kell lennie az Azure DevOpsban.

  2. A menüben válassza a Folyamatok lehetőséget, majd a Folyamatok területen válassza a Tár lehetőséget. Megjelenik a Könyvtár ablak.

    Képernyőkép az Azure DevOps menüről, amely kiemeli a Kódtár lehetőséget a Folyamatok területen.

  3. A parancssávon vagy a panel közepén válassza a Változó csoport lehetőséget. Megjelenik az Új változócsoport lap.

  4. A változócsoport neveként adja meg a Kiadás nevet.

  5. A Változók csoportban válassza a Hozzáadás lehetőséget.

  6. A változó nevéhez írja be a WebAppName nevet. Az értékhez adja meg a webalkalmazáshoz létrehozott App Service-példány nevét, például tailspin-space-game-web-4692.

    Fontos

    Állítsa be az App Service példány nevét, és ne a teljes tartománynevet. Ebben a gyakorlatban például a tailspin-space-game-web-4692 a gazdagépnév tailspin-space-game-web-4692.azurewebsites.net példája.

  7. Adjon hozzá egy másik LeaderboardAppName nevű változót a ranglistapéldány értékével, például tailspin-space-game-leaderboard-4692.

  8. Adjon hozzá egy Végleges ResourceGroupName nevű változót a tailspin-space-game-rg értékkel.

  9. A lap tetején található parancssávon válassza a Mentés lehetőséget a Kiadás változócsoport folyamatba mentéséhez.

    A változócsoport változóinak hasonlónak kell lenniük:

    Képernyőkép az Azure Pipelinesról a változócsoportról. A csoport három változót tartalmaz.

A csúcskörnyezet létrehozása

A korábbi modulokban fejlesztési,tesztelési és előkészítési környezetekhez hozott létre környezeteket. Itt is tegye ugyanezt. Ezúttal hozzon létre egy spike nevű környezetet.

  1. Az Azure DevOps menü Folyamatok területén válassza a Környezetek lehetőséget.

    Képernyőkép az Azure Pipelinesról, amelyen a Környezetek menüpont helye látható.

  2. Válassza a Környezet létrehozása lehetőséget. Megjelenik az Új környezet panel.

  3. A Név mezőbe írja be a spike-et.

  4. Hagyja meg a többi mezőt az alapértelmezett értékükön.

  5. Válassza a Létrehozás lehetőséget.

Szolgáltatáskapcsolat létrehozása

Itt létrehoz egy szolgáltatáskapcsolatot, amely lehetővé teszi az Azure Pipelines számára az Azure-előfizetés elérését. Az Azure Pipelines ezzel a szolgáltatáskapcsolattal telepíti a webhelyet az App Service-ben. Hasonló szolgáltatáskapcsolatot hozott létre az előző modulban.

Fontos

Győződjön meg arról, hogy ugyanabban a Microsoft-fiókban van bejelentkezve az Azure Portalra és az Azure DevOpsba is.

  1. Az Azure DevOps , Space Game – web – Azure Functions folyamatprojektben a menü alatt válassza a Projektbeállítások lehetőséget. Megjelenik a Projekt részletei panel.

  2. A menü Folyamatok területén válassza a Szolgáltatáskapcsolatok lehetőséget.

  3. A Szolgáltatáskapcsolatok lapon válassza az Új szolgáltatáskapcsolat lehetőséget, majd az Új szolgáltatáskapcsolat panelen válassza az Azure Resource Managert, majd a Tovább lehetőséget.

  4. Az Új szolgáltatáskapcsolat panelen válassza a Szolgáltatásnév (automatikus) lehetőséget, majd a Tovább lehetőséget.

  5. Az Új Azure szolgáltatáskapcsolat panelen válassza ki vagy adja meg a következő beállításokat:

    Mező Érték
    Hatókör szintje Előfizetés
    Előfizetés Az Azure-előfizetés kiválasztása
    Erőforráscsoport tailspin-space-game-rg
    Szolgáltatáskapcsolat neve Erőforrás-kezelő - Tailspin - Űrjáték

    A folyamat során előfordulhat, hogy a rendszer arra kéri, hogy jelentkezzen be a Microsoft-fiókjába.

  6. Győződjön meg arról, hogy az összes folyamat hozzáférési engedélyének megadása ki van jelölve.

  7. Válassza a Mentés lehetőséget.

Az Azure DevOps tesztkapcsolatot végez annak ellenőrzéséhez, hogy képes-e csatlakozni az Azure-előfizetéséhez. Ha az Azure DevOps nem tud csatlakozni, lehetősége van második alkalommal bejelentkezni.