Kurz: vytvoření Azure Database for MySQL flexibilního serveru s webovou aplikací App Services ve virtuální síti

[platí pro: Azure Database for MySQL – flexibilní Server

V tomto kurzu se dozvíte, jak vytvořit webovou aplikaci v Azure App Service pomocí serveru MySQL Flexible v rámci virtuální sítě.

V tomto kurzu se naučíte, jak:

  • Vytvoření flexibilního serveru MySQL ve virtuální síti
  • Vytvořte podsíť, která bude delegována na App Service
  • Vytvoření webové aplikace
  • Přidání webové aplikace do virtuální sítě
  • Připojení Postgres z webové aplikace

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete. S bezplatným účtem Azure si teď můžete vyzkoušet Azure Database for MySQL – flexibilní server na 12 měsíců zdarma. Další podrobnosti najdete v tématu Vyzkoušejte si flexibilní server zdarma.

Tento článek vyžaduje, abyste v místním prostředí používali Azure CLI verze 2,0 nebo novější. Pokud chcete zjistit nainstalovanou verzi, spusťte příkaz az --version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.

K účtu se budete muset přihlásit pomocí příkazu AZ Login . Z výstupu příkazu si poznamenejte vlastnost id pro odpovídající název předplatného.

az login

Pokud máte více předplatných, vyberte odpovídající předplatné, ve kterém se má prostředek účtovat. Ve svém účtu vyberte pomocí příkazu az account set konkrétní ID předplatného. Nahraďte vlastnost ID předplatného z výstupu AZ Login pro vaše předplatné na zástupný symbol ID předplatného.

az account set --subscription <subscription ID>

Vytvoření Azure Database for MySQL flexibilního serveru

Pomocí následujícího příkazu vytvořte privátní server v rámci virtuální sítě (VNET):

az mysql flexible-server create --resource-group myresourcegroup --location westus2 --vnet VNETName

Zkopírujte připojovací řetězec a název nově vytvořené virtuální sítě. Tento příkaz provede následující akce, což může trvat několik minut:

  • Vytvořte skupinu prostředků, pokud ještě neexistuje.
  • Vygeneruje název serveru, pokud není k dispozici.
  • Vytvořte novou virtuální síť VNETName pro nový server MySQL a podsíť v rámci této virtuální sítě pro databázový server. Ujistěte se, že je název jedinečný.
  • Vytvoří uživatelské jméno správce a heslo pro váš server, pokud není k dispozici.
  • Vytvoří prázdnou databázi s názvem flexibleserverdb .

Poznámka

Poznamenejte si heslo, které vám bude vygenerováno, pokud není k dispozici. Pokud zapomenete heslo, museli byste heslo resetovat pomocí příkazu. az mysql flexible-server update

Vytvoření podsítě pro App Service koncový bod

Teď je potřeba mít podsíť, která je delegovaná na App Service koncový bod webové aplikace. Spuštěním následujícího příkazu vytvořte novou podsíť ve stejné virtuální síti, jakou vytvořil databázový server.

az network vnet subnet create -g myresourcegroup --vnet-name VNETName --name webappsubnetName  --address-prefixes 10.0.1.0/24  --delegations Microsoft.Web/serverFarms --service-endpoints Microsoft.Web

Poznamenejte si název virtuální sítě a název podsítě za tímto příkazem, protože by ho musel přidat pravidlo integrace virtuální sítě pro webovou aplikaci po jeho vytvoření.

Vytvoření webové aplikace

V této části vytvoříte hostitele aplikací v aplikaci App Service a připojíte tuto aplikaci k databázi MySQL. Ujistěte se, že jste v terminálu kořenový adresář úložiště kódu vaší aplikace.

Vytvoření aplikace App Service (hostitelský proces) pomocí příkazu AZ WebApp up

az webapp up --resource-group myresourcegroup --location westus2 --plan testappserviceplan --sku P2V2 --name mywebapp

Poznámka

  • Pro argument--Location použijte stejné umístění jako u databáze v předchozí části.
  • Nahraďte <app-name> jedinečným názvem v rámci všech Azure (koncový bod serveru je https://\<app-name>.azurewebsites.net ). Povolené znaky pro <app-name> jsou a-Z, 0-9 a-. Dobrým vzorem je použití kombinace názvu vaší společnosti a identifikátoru aplikace.
  • Úroveň Basic App Service nepodporuje integraci virtuální sítě. Použijte prosím Standard nebo Premium.

Tento příkaz provede následující akce, což může trvat několik minut:

  • Vytvořte skupinu prostředků, pokud ještě neexistuje. (V tomto příkazu použijete stejnou skupinu prostředků, ve které jste databázi vytvořili dříve.)
  • testappserviceplanPokud neexistuje, vytvořte plán App Service v cenové úrovni Basic (B1). --plán a--SKU jsou volitelné.
  • Pokud neexistuje, vytvořte aplikaci App Service.
  • Povolí výchozí protokolování pro aplikaci, pokud ještě není povolené.
  • Upload úložiště pomocí nasazení ZIP s povolenou automatizací sestavení.

Přidání webové aplikace do virtuální sítě

Pomocí příkazu AZ WebApp VNet-Integration přidejte integraci místní virtuální sítě do WebApp. Nahraďte < název VNet-Name> a < název podsítě názvem virtuální sítě a podsítě, kterou používá flexibilní Server.

az webapp vnet-integration add -g myresourcegroup -n  mywebapp --vnet VNETName --subnet webappsubnetName

Konfigurace proměnných prostředí pro připojení databáze

S kódem teď nasazeným do App Service je dalším krokem připojení aplikace k flexibilnímu serveru v Azure. Kód aplikace očekává nalezení informací o databázi v řadě proměnných prostředí. Chcete-li nastavit proměnné prostředí v App Service, vytvořte pomocí příkazu Set "App Settings" az webapp config appsettings .

az webapp config appsettings set --settings DBHOST="<mysql-server-name>.mysql.database.azure.com" DBNAME="flexibleserverdb" DBUSER="<username>" DBPASS="<password>"
  • U nově vytvořeného flexibilního serveru nahraďte položku < MySQL-Server-Name>, < username> a < Password> .
  • Nahraďte < uživatelské jméno> a < heslo> přihlašovacími údaji, které příkaz vygeneroval také.
  • Název skupiny prostředků a aplikace se vykreslí z hodnot uložených v mezipaměti v souboru. Azure/config.
  • Příkaz vytvoří nastavení s názvem DBHOST, DBNAME, DBUSER a DBPASS. Pokud kód aplikace používá jiný název pro informace o databázi, pak použijte tyto názvy pro nastavení aplikace, jak je uvedeno v kódu.

Nakonfigurujte webovou aplikaci tak, aby povolovala všechna odchozí připojení v rámci virtuální sítě.

az webapp config set --name mywebapp --resource-group myresourcesourcegroup --generic-configurations '{"vnetRouteAllEnabled": true}'

Vyčištění prostředků

Všechny prostředky, které jste vytvořili v tomto kurzu, vyčistěte pomocí následujícího příkazu. Tento příkaz odstraní všechny prostředky v této skupině prostředků.

az group delete -n myresourcegroup

Další kroky