Üzembe helyezés az Azure Stack Hubon App Service az Azure Pipelines használatával
Azure DevOps Services | 2022 Azure DevOps Server – 2019 Azure DevOps Server
Ez a cikk végigvezeti egy CI/CD-folyamat beállításán egy alkalmazás Azure Stack Hub-példány alkalmazásszolgáltatásokban való üzembe helyezéséhez az Azure Pipelines használatával.
Ebből a cikkből megtudhatja, hogyan hozhat létre vagy érvényesíthet:
- Az Azure Stack Hub szolgáltatásnév (SPN) hitelesítő adatai a folyamathoz.
- Egy webalkalmazás az Azure Stack Hub-példányban.
- Szolgáltatáskapcsolat az Azure Stack Hub-példányhoz.
- Adattár az alkalmazás kódjával, amely üzembe helyezhető az alkalmazásban
Előfeltételek
- Hozzáférés az Azure Stack Hub-példányhoz, amelyen engedélyezve van a App Service RP.
- Az Azure Stack Hub-bérlőhöz társított Azure DevOps-megoldás .
SpN létrehozása vagy ellenőrzése
Az SPN szerepköralapú hitelesítő adatokat biztosít, így az Azure-on kívüli folyamatok csatlakozhatnak az erőforrásokhoz, és kezelhetik azokat. Az Azure DevOps-folyamathoz egy közreműködői hozzáféréssel rendelkező egyszerű szolgáltatásnévre és az ezekben az utasításokban megadott attribútumokra lesz szüksége.
Az Azure Stack Hub felhasználójaként nincs engedélye az egyszerű szolgáltatásnév létrehozására. Ezt a tagot a felhőszolgáltatótól kell kérnie. Itt talál útmutatást, így létrehozhatja az SPN-t, ha Ön felhőszolgáltató, vagy ellenőrizheti, hogy ön fejlesztő-e a felhőszolgáltató által biztosított munkafolyamatban.
A felhőszolgáltatónak létre kell hoznia az SPN-t az Azure CLI használatával.
A következő kódrészletek windowsos géphez íródnak az Azure Stack Hubhoz készült Azure CLI-vel rendelkező PowerShell-parancssor használatával. Ha parancssori felületet használ Linux rendszerű gépen és bashen, távolítsa el a sorbővítményt, vagy cserélje le őket egy \
.
Készítse elő az SPN létrehozásához használt alábbi paraméterek értékeit:
Paraméter Példa Leírás endpoint-resource-manager "https://management.orlando.azurestack.corp.microsoft.com" Az erőforrás-kezelési végpont. utótag-storage-endpoint "orlando.azurestack.corp.microsoft.com" A tárfiókok végponti utótagja. utótag-keyvault-dns ".vault.orlando.azurestack.corp.microsoft.com" A Key Vault szolgáltatás DNS-utótagja. endpoint-active-directory-graph-resource-id "https://graph.windows.net/" Az Active Directory erőforrás-azonosító. endpoint-sql-management https://notsupported Az SQL Server felügyeleti végpontja. Állítsa a következőre: https://notsupported
profil 2019-03-01-hybrid Ehhez a felhőhöz használandó profil. Nyissa meg a parancssori eszközt, például Windows PowerShell vagy Basht, és jelentkezzen be. Használja az alábbi parancsot:
az login
Ha meglévő környezetet használ, használja a
register
parancsot egy új környezethez vagy aupdate
parancshoz. Használja az alábbi parancsot.az cloud register ` -n "AzureStackUser" ` --endpoint-resource-manager "https://management.<local>.<FQDN>" ` --suffix-storage-endpoint ".<local>.<FQDN>" ` --suffix-keyvault-dns ".vault.<local>.<FQDN>" ` --endpoint-active-directory-graph-resource-id "https://graph.windows.net/" ` --endpoint-sql-management https://notsupported ` --profile 2019-03-01-hybrid
Kérje le az egyszerű szolgáltatásnévhez használni kívánt előfizetés-azonosítót és erőforráscsoportot.
Hozza létre az SPN-t az alábbi paranccsal az előfizetés-azonosítóval és az erőforráscsoporttal:
az ad sp create-for-rbac --name "myApp" --role contributor ` --scopes /subscriptions/{subscription-id}/resourceGroups/{resource-group} ` --sdk-auth
Ha nem rendelkezik felhőszolgáltatói jogosultságokkal, a felhőszolgáltató által biztosított egyszerű szolgáltatásnévvel is bejelentkezhet. Szüksége lesz az ügyfél-azonosítóra, a titkos kódra és a bérlőazonosítóra. Ezekkel az értékekkel a következő Azure CLI-parancsokkal hozhatja létre a szolgáltatáskapcsolat létrehozásához szükséges értékeket tartalmazó JSON-objektumot.
az login --service-principal -u "<client-id>" -p "<secret>" --tenant "<tenant-ID>" --allow-no-subscriptions az account show
Ellenőrizze az eredményként kapott JSON-objektumot. A JSON-objektum használatával hozza létre a szolgáltatáskapcsolatot. A JSON-objektumnak a következő attribútumokkal kell rendelkeznie:
{ "environmentName": "<Environment name>", "homeTenantId": "<Tenant ID for the SPN>", "id": "<Application ID for the SPN>", "isDefault": true, "managedByTenants": [], "name": "<Tenant name>", "state": "Enabled", "tenantId": "<Tenant ID for the SPN>", "user": { "name": "<User email address>", "type": "user" } }
A webalkalmazás-cél létrehozása
- Jelentkezzen be az Azure Stack Hub portálra.
- Válassza az Erőforrás> létrehozásaWeb + Mobil>webalkalmazás lehetőséget.
- Válassza ki az előfizetését.
- Hozzon létre vagy válasszon ki egy erőforráscsoportot.
- Írja be az alkalmazás nevét . Az alkalmazás neve megjelenik az alkalmazás URL-címében, például:
yourappname.appservice.<region>.<FQDN>
- Válassza ki az alkalmazás futtatókörnyezeti vermét . A futtatókörnyezetnek meg kell egyeznie a webalkalmazáshoz használni kívánt kóddal.
- Válassza ki azt az operációs rendszert (operációs rendszert), amely a futtatókörnyezetet és az alkalmazást fogja üzemeltetni.
- Válassza ki vagy írja be az Azure Stack Hub-példány régióját .
- Válassza ki a csomagot az Azure Stack Hub-példány, a régió és az alkalmazás operációs rendszere alapján.
- Válassza a Felülvizsgálat és létrehozás lehetőséget.
- Tekintse át a webalkalmazást. Válassza a Létrehozás lehetőséget.
- Válassza az Erőforrás megnyitása lehetőséget.
- Jegyezze fel az alkalmazás nevét. Hozzáadja a nevet az yml-dokumentumhoz, amely meghatározza a folyamatot az adattárban.
Szolgáltatáskapcsolat létrehozása
Hozzon létre egy szolgáltatáskapcsolatot. Szüksége lesz az SPN-ből származó értékekre és az Azure Stack Hub-előfizetés nevére.
Jelentkezzen be az Azure DevOps-szervezetbe, majd lépjen a projekthez.
Válassza a Projektbeállítások, majd a Szolgáltatáskapcsolatok lehetőséget.
Válassza a Szolgáltatáskapcsolatok>Új szolgáltatáskapcsolat lehetőséget.
Válassza az Azure Resource Manager, majd a Tovább gombot.
Válassza a Szolgáltatásnév (manuális) lehetőséget.
Válassza az Azure Stack lehetőséget a Környezetből.
Töltse ki az űrlapot, majd válassza az Ellenőrzés és mentés lehetőséget.
Adjon nevet a szolgáltatáskapcsolatnak. (A yaml-folyamat létrehozásához szüksége lesz a szolgáltatáskapcsolat nevére.
Az adattár létrehozása és folyamat hozzáadása
Ha még nem adta hozzá a webalkalmazás kódját az adattárhoz, adja hozzá most.
Nyissa meg az adattárat. Válassza ki az adattárat, és válassza a Tallózás lehetőséget.
Folyamatok kiválasztása
Válassza az Új folyamat lehetőséget.
Válassza az Azure Repos Git lehetőséget.
Válassza ki az adattárat.
Válassza a Starter-folyamat lehetőséget.
Lépjen vissza az adattárhoz, és nyissa meg a következőt
azure-pipelines.yml
: .Adja hozzá a következő yaml-et:
# Starter pipeline # Start with a minimal pipeline that you can customize to build and deploy your code. # Add steps that build, run tests, deploy, and more: # https://aka.ms/yaml trigger: - main variables: azureSubscription: '<your connection name>' VSTS_ARM_REST_IGNORE_SSL_ERRORS: true steps: - task: AzureWebApp@1 displayName: Azure Web App Deploy inputs: azureSubscription: $(azureSubscription) appName: <your-app-name> package: '$(System.DefaultWorkingDirectory)'
Megjegyzés
Az SSL-hibák figyelmen kívül hagyásához állítson be egy nevű
VSTS_ARM_REST_IGNORE_SSL_ERRORS
változót a buildelési vagy kiadási folyamat értékéretrue
, ahogyan ebben a példában is látható.Frissítse az
azureSubscription
értéket a szolgáltatáskapcsolat nevével.Frissítse az
appName
alkalmazást az alkalmazás nevével. Most már készen áll az üzembe helyezésre.
Megjegyzések az Azure-feladatok Azure Stack Hubbal való használatáról
A következő Azure-feladatokat ellenőrzi a rendszer az Azure Stack Hubbal:
- Azure PowerShell
- Azure File Copy
- Azure-erőforráscsoport üzembe helyezése
- Azure App Service üzembe helyezés
- Azure App Service kezelés
- adatbázis-telepítés Azure SQL
Következő lépések
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: