Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan hozhat létre Azure App Service webalkalmazást Azure Database for PostgreSQL rugalmas kiszolgálóval egy virtuális hálózaton belül.
Ebből a cikkből megtudhatja, hogyan:
- Rugalmas Azure Database for PostgreSQL kiszolgáló létrehozása virtuális hálózaton
- Webalkalmazás létrehozása
- A webalkalmazás hozzáadása a virtuális hálózathoz
- Csatlakozás rugalmas Azure Database for PostgreSQL-kiszolgálóhoz a webalkalmazásból
Prerequisites
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Telepítse az Azure CLI 2.0-s vagy újabb verzióját helyileg (vagy használja az Előre telepített CLI-vel rendelkező Azure Cloud Shellt ). A telepített verziók megtekintéséhez futtassa az
az --versionparancsot.Jelentkezzen be a fiókjába a az login paranccsal. Jegyezze fel a megfelelő előfizetésnév parancskimenetéből az id tulajdonságot.
az loginHa több előfizetéssel rendelkezik, válassza ki az erőforrás számlázásához megfelelő előfizetést. Az az account set paranccsal válassza ki az adott előfizetés-azonosítót a fiókjában.
az account set --subscription <subscription ID>
Rugalmas kiszolgáló létrehozása
Hozzon létre egy privát Azure Database for PostgreSQL rugalmas kiszolgálót egy virtuális hálózaton belül az alábbi paranccsal:
az postgres flexible-server create --resource-group demoresourcegroup --name demoserverpostgres --vnet demoappvnet --location westus2
Ez a parancs a következő műveleteket hajtja végre, amelyek eltarthatnak néhány percig:
- Létrehozza az erőforráscsoportot, ha még nem létezik.
- Létrehoz egy kiszolgálónevet, ha nem ad meg egyet.
- Létrehoz egy virtuális hálózatot és alhálózatot a Azure Database for PostgreSQL rugalmas kiszolgáló számára.
- Rendszergazdai felhasználónevet és jelszót hoz létre a kiszolgálóhoz, ha nem adja meg őket.
- Létrehoz egy postgres nevű üres adatbázist.
Itt található a mintakimenet.
Creating Resource Group 'demoresourcegroup'...
Creating new Vnet "demoappvnet" in resource group "demoresourcegroup"
Creating new Subnet "Subnetdemoserverpostgres" in resource group "demoresourcegroup"
Creating a private dns zone demoserverpostgres.private.postgres.database.azure.com in resource group "demoresourcegroup"
Creating PostgreSQL Server 'demoserverpostgres' in group 'demoresourcegroup'...
Your server 'demoserverpostgres' is using sku 'Standard_D2s_v3' (Paid Tier). Please refer to https://aka.ms/postgres-pricing for pricing details
Creating PostgreSQL database 'flexibleserverdb'...
Make a note of your password. If you forget, you would have to reset your password with "az postgres flexible-server update -n demoserverpostgres -g demoresourcegroup -p <new-password>".
Try using 'az postgres flexible-server connect' command to test out connection.
{
"connectionString": "postgresql://generated-username:generated-password@demoserverpostgres.postgres.database.azure.com/postgres?sslmode=require",
"host": "demoserverpostgres.postgres.database.azure.com",
"id": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/resourceGroups/demoresourcegroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/demoserverpostgres",
"location": "East US",
"password": "generated-password",
"resourceGroup": "demoresourcegroup",
"skuname": "Standard_D2s_v3",
"subnetId": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/resourceGroups/demoresourcegroup/providers/Microsoft.Network/virtualNetworks/demoappvnet/subnets/Subnetdemoserverpostgres",
"username": "generated-username",
"version": "12"
}
Webalkalmazás létrehozása
Ebben a szakaszban egy app-gazdagépet hoz létre egy App Service-alkalmazásban, csatlakoztatja ezt az alkalmazást a rugalmas Azure Database for PostgreSQL-kiszolgálóadatbázishoz, majd üzembe helyezi a kódot az adott gazdagépen. Győződjön meg arról, hogy az alkalmazáskód adattárgyökerében van a terminálban. Az alapszintű csomag nem támogatja a virtuális hálózatok integrációját. Használjon Standard vagy Premium csomagot.
Hozzon létre egy App Service-alkalmazást (a gazdafolyamatot) a az webapp up parancs használatával.
az webapp up --resource-group demoresourcegroup --location westus2 --plan testappserviceplan --sku P2V2 --name mywebapp
Megjegyzés:
-
_--location_ argumentEhhez használja ugyanazt a helyet, mint az előző szakaszban az adatbázis esetében. - Cserélje le
<app-name>egy egyedi névre az összes Azure-ban. A megengedett karakterek:<app-name>A-Z, 0-9 és -. Egy jó minta az, ha a vállalat nevét és az alkalmazás azonosítóját kombináljuk.
Ez a parancs a következő műveleteket hajtja végre, amelyek eltarthatnak néhány percig:
- Létrehozza az erőforráscsoportot, ha még nem létezik. (Ebben a parancsban ugyanazt az erőforráscsoportot használja, amelyben korábban létrehozta az adatbázist.)
- Létrehozza az App Service-alkalmazást, ha nem létezik.
- Engedélyezi az alkalmazás alapértelmezett naplózását, ha még nincs engedélyezve.
- Feltölti az adattárat zip-alapú üzembe helyezéssel, és engedélyezve van a buildautomatizálás.
Alhálózat létrehozása webalkalmazáshoz
A virtuális hálózati integráció engedélyezése előtt szüksége lesz egy App Service Web Appba delegált alhálózatra. Az alhálózat létrehozása előtt tekintse meg az adatbázis alhálózati címét, hogy ne használja ugyanazt a címelőtagot a webalkalmazás alhálózatához.
az network vnet show --resource-group demoresourcegroup -n demoappvnet
Futtassa a következő parancsot egy új alhálózat létrehozásához ugyanabban a virtuális hálózaton, mint a Azure Database for PostgreSQL rugalmas kiszolgáló. Frissítse a címelőtagot, hogy elkerülje a rugalmas Azure Database for PostgreSQL-kiszolgáló alhálózattal való ütközést.
az network vnet subnet create --resource-group demoresourcegroup --vnet-name demoappvnet --name webappsubnet --address-prefixes 10.0.1.0/24 --delegations Microsoft.Web/serverFarms
A webalkalmazás hozzáadása a virtuális hálózathoz
Az az webapp vnet-integration paranccsal regionális virtuális hálózati integrációt adhat hozzá egy webalkalmazáshoz.
az webapp vnet-integration add --resource-group demoresourcegroup -n mywebapp --vnet demoappvnet --subnet webappsubnet
Környezeti változók konfigurálása az adatbázis csatlakoztatásához
Miután telepítette a kódot az App Service-ben, csatlakoztassa az alkalmazást a Azure Database for PostgreSQL rugalmas kiszolgálóhoz Azure. Az alkalmazáskód számos környezeti változó adatbázis-információit várja. Ha környezeti változókat szeretne beállítani az App Service-ben, használja az az webapp config appsettings set parancsot.
az webapp config appsettings set --name mywebapp --settings DBHOST="<postgres-server-name>.postgres.database.azure.com" DBNAME="postgres" DBUSER="<username>" DBPASS="<password>"
Cserélje le a postgres-server nevet, felhasználónevet és jelszót az újonnan létrehozott Azure Database for PostgreSQL rugalmas kiszolgáló értékeire.
Cserélje le a <felhasználónevet> és a <jelszót> azokra a hitelesítő adatokra, amelyeket a parancs szintén létrehozott Önnek.
Az erőforráscsoport és az alkalmazás neve az .azure/config fájl gyorsítótárazott értékeiből származik.
A parancs létrehozza a DBHOST, a DBNAME, a DBUSER és a DBPASS nevű beállításokat. Ha az alkalmazáskód különböző neveket használ az adatbázis adataihoz, használja ezeket a neveket az alkalmazásbeállításokhoz a kódban leírtak szerint.
Konfigurálja a webalkalmazást úgy, hogy a virtuális hálózaton belülről engedélyezze az összes kimenő kapcsolatot.
az webapp config set --name mywebapp --resource-group demoresourcegroup --generic-configurations '{"vnetRouteAllEnabled": true}'
Erőforrások tisztítása
Törölje a cikkben létrehozott összes erőforrást az alábbi paranccsal. Ez a parancs törli az erőforráscsoport összes erőforrását.
az group delete -n demoresourcegroup