Linux-alkalmazás újrabontása több régióba az Azure App Service, a Traffic Manager és az Azure Database for MySQL használatávalRefactor a Linux app to multiple regions using Azure App Service, Traffic Manager, and Azure Database for MySQL

Ebből a cikkből megtudhatja, hogy a fiktív Contoso vállalat hogyan bontja újra a kétrétegű Linux-alapú Apache-MySQL-PHP- (LAMP-) alkalmazást, miközben a helyszíni rendszerről az Azure-ba migrálja az Azure App Service és a GitHub-integráció, valamint az Azure Database for MySQL használatával.This article shows how the fictional company Contoso refactors a two-tier Linux-based Apache MySQL PHP (LAMP) app, migrating it from on-premises to Azure using Azure App Service with GitHub integration and Azure Database for MySQL.

Az ebben a példában használt osTicket egy nyílt forráskódú ügyfélszolgálati alkalmazás.osTicket, the service desk app used in this example is provided as open source. Ha saját tesztelési célokra szeretné használni, letöltheti a GitHubról.If you'd like to use it for your own testing purposes, you can download it from GitHub.

Üzleti szempontokBusiness drivers

Az informatikai vezetés szorosan együttműködik az üzleti partnerekkel annak érdekében, hogy megtudják, milyen eredményeket várnak:The IT Leadership team has worked closely with business partners to understand what they want to achieve:

  • Alkalmazkodás a vállalat növekedéséhez.Address business growth. A Contoso egyre növekedik, és új piacokon jelenik meg.Contoso is growing and moving into new markets. Több ügyfélszolgálati munkatársra van szüksége.It needs additional customer service agents.
  • Méretezés.Scale. A megoldást úgy kell kiépíteni, hogy a Contoso több ügyfélszolgálati munkatársat is felvehessen az üzleti növekedés során.The solution should be built so that Contoso can add more customer service agents as the business scales.
  • Rugalmasság növelése.Improve resiliency. Korábban a rendszerrel kapcsolatos problémák csak a belső felhasználókat érintették.In the past issues with the system affected internal users only. Az új üzleti modell esetében a külső felhasználókra is hatással lesznek, és a Contosónak biztosítania kell az alkalmazás folyamatos működését.With the new business model, external users will be affected, and Contoso need the app up and running at all times.

Migrálási célokMigration goals

A Contoso felhőszolgáltatási csapata kitűzte a migrálási célokat a legjobb migrálási módszer meghatározásához:The Contoso cloud team has pinned down goals for this migration, in order to determine the best migration method:

  • Az alkalmazás méretét a jelenlegi helyszíni kapacitásnál és teljesítménynél magasabb szintre kell emelni.The application should scale beyond current on-premises capacity and performance. A Contoso az Azure igény szerinti méretezésében rejlő előnyök miatt helyezi át az alkalmazást.Contoso is moving the application to take advantage of Azure's on-demand scaling.
  • A Contoso szeretné áthelyezni az alkalmazás kódbázisát egy folyamatos teljesítési folyamatba.Contoso wants to move the app code base to a continuous delivery pipeline. Amint az alkalmazás változásai átkerülnek a GitHubba, a Contoso anélkül szeretné üzembe helyezni a változásokat, hogy ez további feladatokat hárítana az üzemeltetési személyzetre.As app changes are pushed to GitHub, Contoso wants to deploy those changes without tasks for operations staff.
  • Az alkalmazásnak rugalmas növekedési és feladatátvételi képességekkel kell rendelkeznie.The application must be resilient with capabilities for growth and failover. A Contoso két különböző Azure-régióban kívánja üzembe helyezni az alkalmazást, és szeretné beállítani az automatikus skálázást.Contoso wants to deploy the app in two different Azure regions, and set it up to scale automatically.
  • Miután a Contoso áthelyezte az alkalmazást a felhőbe, szeretné minimálisra csökkenteni az adatbázis karbantartási feladatait.Contoso wants to minimize database admin tasks after the app is moved to the cloud.

MegoldástervSolution design

A célok és követelmények kitűzése után a Contoso megtervezi és áttekinti az üzembehelyezési megoldást, valamint meghatározza a migrálási folyamat részleteit, például azokat az Azure-szolgáltatásokat, amelyeket a Contoso a migrálás során használni fog.After pinning down their goals and requirements, Contoso designs and reviews a deployment solution, and identifies the migration process, including the Azure services that will be used for the migration.

Aktuális architektúraCurrent architecture

  • Az alkalmazás két szintre van osztva két virtuális gépen (OSTICKETWEB és OSTICKETMYSQL).The app is tiered across two VMs (OSTICKETWEB and OSTICKETMYSQL).
  • A virtuális gépek a contosohost1.contoso.com URL-című VMware ESXi-gazdagépen (6.5-ös verzió) találhatók.The VMs are located on VMware ESXi host contosohost1.contoso.com (version 6.5).
  • A VMware-környezetet egy virtuális gépen futó vCenter Server 6.5 (vcenter.contoso.com) felügyeli.The VMware environment is managed by vCenter Server 6.5 (vcenter.contoso.com), running on a VM.
  • A Contoso egy helyszíni tartományvezérlővel (contosodc1) ellátott helyszíni adatközponttal (contoso-datacenter) rendelkezik.Contoso has an on-premises datacenter (contoso-datacenter), with an on-premises domain controller (contosodc1).

Aktuális architektúra

Javasolt architektúraProposed architecture

A javasolt architektúra ismertetése:Here's the proposed architecture:

  • Az OSTICKETWEB webes rétegbeli alkalmazás migrálása egy, a két Azure-régióban található Azure App Service létrehozásával történik.The web tier app on OSTICKETWEB will be migrated by building an Azure App Service in two Azure regions. A linuxos Azure App Service a PHP 7.0 Docker-tároló használatával lesz implementálva.Azure App Service for Linux will be implemented using the PHP 7.0 Docker container.
  • Az alkalmazás kódja át lesz helyezve a GitHubra, és az Azure App Service-webalkalmazás a GitHubon keresztüli folyamatos teljesítésre lesz konfigurálva.The app code will be moved to GitHub, and the Azure App Service web app will be configured for continuous delivery with GitHub.
  • Az Azure-alkalmazáskiszolgálók az elsődleges (USA 2. keleti) és a másodlagos (USA középső) régióban is üzembe lesznek helyezve.Azure App Servers will be deployed in both the primary (East US 2) and secondary (Central US) region.
  • A Traffic Manager mindkét régióban be lesz állítva a két webalkalmazás előtt.Traffic Manager will be set up in front of the two web apps in both regions.
  • A Traffic Manager prioritásos módban lesz konfigurálva, hogy az USA 2. keleti régióján keresztüli áthaladásra kényszerítse a forgalmat.Traffic Manager will be configured in priority mode to force the traffic through East US 2.
  • Ha az USA 2. keleti régiójában található Azure-alkalmazáskiszolgáló offline állapotba kerül, a felhasználók elérhetik az USA középső régiójában a feladatot átvevő alkalmazást.If the Azure App Server in East US 2 goes offline, users can access the failed over app in Central US.
  • Az alkalmazás-adatbázis a MySQL Workbench-eszközök használatával lesz migrálva az Azure Database for MySQL-be.The app database will be migrated to the Azure Database for MySQL service using MySQL Workbench tools. Ezt követően megtörténik a helyszíni adatbázis helyi biztonsági mentése, majd közvetlen visszaállítása az Azure Database for MySQL-be.The on-premises database will be backed up locally, and restored directly to Azure Database for MySQL.
  • Az adatbázis az USA 2. keleti régiójában, az éles hálózat (VNET-PROD-EUS2) adatbázis-alhálózatában (PROD-DB-EUS2) lesz megtalálható:The database will reside in the primary East US 2 region, in the database subnet (PROD-DB-EUS2) in the production network (VNET-PROD-EUS2):
  • Mivel egy éles számítási feladat migrálásáról van szó, az alkalmazás Azure-erőforrásai a ContosoRG éles erőforráscsoportban lesznek megtalálhatók.Since they're migrating a production workload, Azure resources for the app will reside in the production resource group ContosoRG.
  • A Traffic Manager-erőforrás a Contoso infrastruktúrájának ContosoInfraRG erőforráscsoportjában lesz üzembe helyezve.The Traffic Manager resource will be deployed in Contoso's infrastructure resource group ContosoInfraRG.
  • A Contoso adatközpontjában található helyszíni virtuális gépek le lesznek szerelve a migrálás után.The on-premises VMs in the Contoso datacenter will be decommissioned after the migration is done.

Forgatókönyv-architektúra

Migrálási folyamatMigration process

A Contoso az alábbiak szerint hajtja végre a migrálási folyamatot:Contoso will complete the migration process as follows:

  1. Első lépésként a contoso-rendszergazdák üzembe helyezik az Azure-infrastruktúrát, beleértve a Azure App Service létesítését, a Traffic Manager beállítását és egy Azure Database for MySQL példány üzembe helyezését.As a first step, Contoso admins set up the Azure infrastructure, including provisioning Azure App Service, setting up Traffic Manager, and provisioning an Azure Database for MySQL instance.
  2. Az Azure előkészítése után a MySQL Workbench használatával megtörténik az adatbázis migrálása.After preparing the Azure, they migrate the database using MySQL Workbench.
  3. Miután az adatbázis már fut az Azure-ban, egy privát GitHub-adattárat biztosítanak az Azure App Service-hez folyamatos teljesítéssel, és betöltik az osTicket alkalmazást.After the database is running in Azure, they up a GitHub private repository for Azure App Service with continuous delivery, and load it with the osTicket app.
  4. Az Azure Portalon betöltik a GitHubon található alkalmazást az Azure App Service-t futtató Docker-tárolóba.In the Azure portal, they load the app from GitHub to the Docker container running Azure App Service.
  5. Finomhangolják a DNS-beállításokat, és konfigurálják az alkalmazás automatikus méretezését.They tweak DNS settings, and configure autoscaling for the app.

Migrálási folyamat

Azure-szolgáltatásokAzure services

SzolgáltatásService LeírásDescription KöltségekCost
Azure App ServiceAzure App Service A szolgáltatás az alkalmazások futtatását és méretezését a webhelyekhez készült Azure PaaS szolgáltatással végzi.The service runs and scales applications using the Azure PaaS service for websites. A díjszabás a példányok méretén és a szükséges funkciókon alapul.Pricing is based on the size of the instances, and the features required. További információk.Learn more.
Traffic ManagerTraffic Manager Egy terheléselosztó, amely DNS-t használ a felhasználók az Azure-ba vagy külső webhelyekre és szolgáltatásokra történő irányításához.A load balancer that uses DNS to direct users to Azure, or external websites and services. A díjszabás a fogadott DNS-lekérdezések számán és a monitorozott végpontok számán alapul.Pricing is based on the number of DNS queries received, and the number of monitored endpoints. További információk.Learn more.
Azure Database for MySQLAzure Database for MySQL Az adatbázis a MySQL Server nyílt forráskódú motorján alapul.The database is based on the open-source MySQL Server engine. Az Azure Database for MySQL alkalmazásfejlesztési és üzembehelyezési célokra szolgáltatásként biztosít egy teljes körűen felügyelt, nagyvállalati használatra kész, közösségi gondozású MySQL-adatbázist.It provides a fully managed, enterprise-ready community MySQL database, as a service for app development and deployment. A díjszabás a számítási, tárolási és biztonsági mentési követelményeken alapul.Pricing based on compute, storage, and backup requirements. További információk.Learn more.

ElőfeltételekPrerequisites

A Contosónak az alábbiakra van szüksége a forgatókönyv futtatásához:Here's what Contoso needs to run this scenario.

KövetelményekRequirements RészletekDetails
Azure-előfizetésAzure subscription A Contoso a sorozat egyik korábbi cikkében előfizetéseket hozott létre.Contoso created subscriptions earlier in this article series. Ha nem rendelkezik Azure-előfizetéssel, hozzon létre egy ingyenes fiókot.If you don't have an Azure subscription, create a free account.

Ha ingyenes fiókot hoz létre, Ön lesz az előfizetés rendszergazdája, és minden műveletet végrehajthat.If you create a free account, you're the administrator of your subscription and can perform all actions.

Ha meglévő előfizetést használ, és nem Ön a rendszergazdája, kérjen a rendszergazdától tulajdonosi vagy közreműködői jogosultságot.If you use an existing subscription and you're not the administrator, you need to work with the admin to assign you Owner or Contributor permissions.
Azure-infrastruktúraAzure infrastructure A Contoso a migráláshoz szánt Azure-infrastruktúrát ismertető cikkben leírtak alapján állította be az Azure-infrastruktúrát.Contoso set up their Azure infrastructure as described in Azure infrastructure for migration.

A forgatókönyv lépéseiScenario steps

A Contoso a következőképpen végzi el a migrálást:Here's how Contoso will complete the migration:

  • 1. lépés: Azure App Service kiépítése.Step 1: Provision Azure App Service. A Contoso rendszergazdái üzembe helyezik a webalkalmazásokat az elsődleges és a másodlagos régióban.Contoso admins will provision web apps in the primary and secondary regions.
  • 2. lépés: a Traffic Manager beállítása.Step 2: Set up Traffic Manager. A Traffic Managert a webalkalmazások előtt helyezik el az útvonalválasztás és a terheléselosztás érdekében.They set up Traffic Manager in front of the web apps, for routing and load balancing traffic.
  • 3. lépés: a MySQL kiépítése.Step 3: Provision MySQL. Üzembe helyezik az Azure Database for MySQL egy példányát az Azure-ban.In Azure, they provision an instance of Azure Database for MySQL.
  • 4. lépés: az adatbázis migrálása.Step 4: Migrate the database. A MySQL Workbench használatával megtörténik az adatbázis migrálása.They migrate the database using MySQL Workbench.
  • 5. lépés: a GitHub beállítása.Step 5: Set up GitHub. Beállítanak egy helyi Github-adattárat az alkalmazás webhelyeihez/kódjához.They set up a local GitHub repository for the app web sites/code.
  • 6. lépés: a webalkalmazások üzembe helyezése.Step 6: Deploy the web apps. Üzembe helyezik a webalkalmazásokat a GitHubról.They deploy the web apps from GitHub.

1. lépés: Azure App Service kiépítéseStep 1: Provision Azure App Service

A Contoso rendszergazdái üzembe helyezik a két webalkalmazást (egyet-egyet minden régióban) az Azure App Service használatával.Contoso admins provision two web apps (one in each region) using Azure App Service.

  1. Létrehoznak egy webalkalmazás-erőforrást az elsődleges (USA 2. keleti) régióban (osticket-eus2) az Azure Marketplace-ből.They create a web App resource in the primary East US 2 region (osticket-eus2) from the Azure Marketplace.

  2. Elhelyezik az erőforrást az éles ContosoRG erőforráscsoportban.They put the resource in the production resource group ContosoRG.

    Azure-alkalmazás

  3. Létrehoznak egy új App Service-csomagot az elsődleges régióban (APP-SVP-EUS2) a standard méret használatával.They create a new App Service plan in the primary region (APP-SVP-EUS2), using the standard size.

    Azure-alkalmazás

  4. Kiválasztanak egy PHP 7.0 futtatókörnyezetet használó linuxos operációs rendszert, amely egy Docker-tároló.They select a Linux OS with PHP 7.0 runtime stack, which is a Docker container.

    Azure-alkalmazás

  5. Létrehoznak egy második webalkalmazást (osticket-cus) és egy Azure App Service-csomagot az USA középső régiójához.They create a second web app (osticket-cus), and Azure App Service plan for the Central US region.

    Azure-alkalmazás

További segítségre van szüksége?Need more help?

2. lépés: a Traffic Manager beállításaStep 2: Set up Traffic Manager

A Contoso rendszergazdái beállítják a Traffic Managert, hogy a beérkező webes kéréseket az osTicket webes szintjén futó webalkalmazásokhoz irányítsa.Contoso admins set up Traffic Manager to direct inbound web requests to the web apps running on the osTicket web tier.

  1. Létrehoznak egy Traffic Manager-erőforrást (osticket.trafficmanager.net) az Azure Marketplace-ből.They create a Traffic Manager resource (osticket.trafficmanager.net) from the Azure Marketplace. A prioritásos útválasztást használják, hogy az USA 2. keleti régiója legyen az elsődleges hely.They use priority routing so that East US 2 is the primary site. Az erőforrást az infrastruktúra-erőforráscsoportban (ContosoInfraRG) helyezik el.They place the resource in their infrastructure resource group (ContosoInfraRG). Vegye figyelembe, hogy a Traffic Manager globális, és nem adott helyhez kötött.Note that Traffic Manager is global and not bound to a specific location.

    Traffic Manager

  2. Ezután konfigurálják a Traffic Managert a végpontokkal.Now, they configure Traffic Manager with endpoints. Felveszik az USA 2. keleti régiójának webalkalmazását elsődleges helyként (osticket-eus2), majd az USA középső régióját másodlagosként (osticket-cus).They add the East US 2 web app as the primary site (osticket-eus2), and the Central US app as secondary (osticket-cus).

    Traffic Manager

  3. A végpontok hozzáadása után monitorozhatják azokat.After adding the endpoints, they can monitor them.

    Traffic Manager

További segítségre van szüksége?Need more help?

3. lépés: Azure Database for MySQL kiépítéseStep 3: Provision Azure Database for MySQL

A Contoso rendszergazdái kiépítenek egy MySQL-adatbázispéldányt az elsődleges régióban, amely az USA 2. keleti régiója.Contoso admins provision a MySQL database instance in the primary East US 2 region.

  1. Az Azure Portalon létrehoznak egy Azure Database for MySQL-erőforrást.In the Azure portal, they create an Azure Database for MySQL resource.

    MySQL

  2. Az Azure-adatbázishoz hozzáadják a contosoosticket nevet.They add the name contosoosticket for the Azure database. Az adatbázist hozzáadják a ContosoRG éles erőforráscsoporthoz, és megadják a hozzá tartozó hitelesítő adatokat.They add the database to the production resource group ContosoRG, and specify credentials for it.

  3. A helyszíni MySQL-adatbázis 5.7-es verziójú, ezért ezt a verziót választják a kompatibilitás érdekében.The on-premises MySQL database is version 5.7, so they select this version for compatibility. Az alapértelmezett méreteket használják, amelyek megfelelnek az adatbázis követelményeinek.They use the default sizes, which match their database requirements.

    MySQL

  4. A Biztonsági mentési redundancia beállításainál a Georedundáns lehetőséget választják.For Backup Redundancy Options, they select to use Geo-Redundant. Ez a beállítás lehetővé teszi, hogy üzemkimaradás esetén helyreállítsák az adatbázist a másodlagos régióban, az USA középső régiójában.This option allows them to restore the database in their secondary Central US region if an outage occurs. Ezt a beállítást csak az adatbázis kiépítésekor konfigurálhatják.They can only configure this option when they provision the database.

    Redundancia

  5. Beállítják a kapcsolati biztonságot.They set up connection security. Az adatbázis Kapcsolatbiztonság beállításánál beállítják azokat a tűzfalszabályokat, amelyekkel hozzáférést biztosítanak az adatbázisnak az Azure-szolgáltatásokhoz.In the database > Connection Security, they set up Firewall rules to allow the database to access Azure services.

  6. Hozzáadják a helyi munkaállomás-ügyfél IP-címét a kezdő és záró IP-címek listájához.They add the local workstation client IP address to the start and end IP addresses. Ez lehetővé teszi a webalkalmazásoknak a MySQL-adatbázis elérését, az adatbázisügyféllel együtt, amely a migrálást végzi.This allows the web apps to access the MySQL database, along with the database client that's performing the migration.

    MySQL

4. lépés: az adatbázis migrálásaStep 4: Migrate the database

A Contoso rendszergazdái a MySQL-eszközökkel és a biztonsági mentés és visszaállítás használatával migrálják az adatbázist.Contoso admins migrate the database using backup and restore, with MySQL tools. Telepítik a MySQL Workbenchet, biztonsági mentést készítenek az OSTICKETMYSQL virtuális gép adatbázisáról, majd helyreállítják az Azure Database for MySQL-kiszolgálón.They install MySQL Workbench, back up the database from OSTICKETMYSQL, and then restore it to Azure Database for MySQL Server.

A MySQL Workbench telepítéseInstall MySQL Workbench

  1. Ellenőrzik az előfeltételeket és letöltik a MySQL Workbenchet.They check the prerequisites and downloads MySQL Workbench.

  2. A telepítési útmutatót követve telepítik a MySQL Workbench for Windowst.They install MySQL Workbench for Windows in accordance with the installation instructions. A telepítéshez használt gépnek elérhetőnek kell lennie az OSTICKETMYSQL virtuális gép és az Azure számára az interneten keresztül.The machine on which they install must be accessible to the OSTICKETMYSQL VM, and Azure via the internet.

  3. A MySQL Workbenchben létrehoznak egy MySQL-kapcsolatot az OSTICKETMYSQL virtuális géppel.In MySQL Workbench, they create a MySQL connection to OSTICKETMYSQL.

    MySQL Workbench

  4. Az adatbázist osticket néven exportálják egy helyi önálló fájlba.They export the database as osticket, to a local self-contained file.

    MySQL Workbench

  5. Az adatbázis helyi biztonsági mentése után kapcsolatot hoznak létre az Azure Database for MySQL-példánnyal.After the database has been backed up locally, they create a connection to the Azure Database for MySQL instance.

    MySQL Workbench

  6. Ezután az önálló fájlból importálhatják (helyreállíthatják) az adatbázist az Azure Database for MySQL-példányon.Now, they can import (restore) the database in the Azure Database for MySQL instance, from the self-contained file. A rendszer egy új sémát (osticket) hoz létre a példányhoz.A new schema (osticket) is created for the instance.

    MySQL Workbench

  7. Az adatok a visszaállítás után lekérdezhetők a Workbench használatával és megtalálhatók az Azure Portalon.After data is restored, it can be queried using Workbench, and appears in the Azure portal.

    MySQL Workbench

    MySQL Workbench

  8. Végül frissíteniük kell az adatbázis adatait a webalkalmazásokon.Finally, they need to update the database information on the web apps. A MySQL-példányon megnyitják a kapcsolati sztringeket.On the MySQL instance, they open Connection Strings.

    MySQL Workbench

  9. A sztringek listáján megkeresik a webalkalmazás beállításait, és kijelölik őket a másoláshoz.In the strings list, they locate the web app settings, and select to copy them.

    MySQL Workbench

  10. Megnyitnak egy Jegyzettömb-ablakot, és beillesztik a karakterláncot egy új fájlba, valamint az osticket adatbázis, a MySQL-példány és a hitelesítő adatok beállításainak megfelelően frissítik azt.They open a Notepad window and paste the string into a new file, and update it to match the osticket database, MySQL instance, and credentials settings.

    MySQL Workbench

  11. A kiszolgáló nevét és a bejelentkezést az Azure Portalon a MySQL-példány Áttekintésében ellenőrizhetik.They can verify the server name and login from Overview in the MySQL instance in the Azure portal.

    MySQL Workbench

5. lépés: a GitHub beállításaStep 5: Set up GitHub

A Contoso-rendszergazdák létrehoznak egy új, privát GitHub-adattárat, és az Azure Database for MySQL-ben beállítják a kapcsolatot az osTicket adatbázishoz.Contoso admins create a new private GitHub repo, and sets up a connection to the osTicket database in Azure Database for MySQL. Majd betöltik a webalkalmazást az Azure App Service-be.Then, they load the web app into Azure App Service.

  1. Megkeresik az OsTicket szoftver nyilvános GitHub-adattárát, és elágaztatják a Contoso GitHub-fiókba.They browse to the OsTicket software public GitHub repo, and fork it to the Contoso GitHub account.

    GitHub

  2. Az elágaztatás után megnyitják az include mappát, és megkeresik az ost-config.php fájlt.After forking, they navigate to the include folder, and find the ost-config.php file.

    GitHub

  3. Megnyitják a fájl egy böngészőben, majd szerkesztik.The file opens in the browser and they edit it.

    GitHub

  4. A szerkesztőben frissítik az adatbázis részleteit, különösen a DBHOST és a DBUSER adatait.In the editor, they update the database details, specifically DBHOST and DBUSER.

    GitHub

  5. Majd véglegesítik a módosításokat.Then they commit the changes.

    GitHub

  6. Minden webalkalmazásnál (osticket-eus2 és osticket-cus) módosítják az Alkalmazásbeállításokat az Azure Portalon.For each web app (osticket-eus2 and osticket-cus), they modify the Application settings in the Azure portal.

    GitHub

  7. Felviszik a kapcsolati sztringet osticket néven, és kimásolják a sztringet a jegyzettömbből az érték területre.They enter the connection string with the name osticket, and copy the string from notepad into the value area. Kiválasztják a MySQL elemet a sztring melletti legördülő listában, és mentik a beállításokat.They select MySQL in the dropdown list next to the string, and save the settings.

    GitHub

6. lépés: a webalkalmazások konfigurálásaStep 6: Configure the web apps

A migrálási folyamat utolsó lépéseként a Contoso rendszergazdái konfigurálják a webalkalmazásokat az osTicket webhelyeivel.As the final step in the migration process, Contoso admins configure the web apps with the osTicket web sites.

  1. Az elsődleges webalkalmazásban (osticket-eus2) megnyitják az Üzembehelyezési lehetőség elemet, és a forrást GitHub értékre állítják.In the primary web app (osticket-eus2) they open Deployment option and set the source to GitHub.

    Alkalmazás konfigurálása

  2. Kiválasztják az üzembehelyezési beállításokat.They select the deployment options.

    Alkalmazás konfigurálása

  3. A beállítások megadása után a konfiguráció függőként jelenik meg az Azure Portalon.After setting the options, the configuration shows as pending in the Azure portal.

    Alkalmazás konfigurálása

  4. A konfiguráció frissítése után az osTicket webalkalmazás a GitHubról az Azure App Service-t futtató Docker-tárolóba lesz betöltve, és a webhely aktívként jelenik meg.After the configuration is updated and the osTicket web app is loaded from GitHub to the Docket container running the Azure App Service, the site shows as Active.

    Alkalmazás konfigurálása

  5. A fenti lépéseket megismétlik a másodlagos webalkalmazásnál is (osticket-cus).They repeat the above steps for the secondary web app (osticket-cus).

  6. A hely konfigurációja után az elérhetővé válik a Traffic Manager-profilon keresztül.After the site is configured, it's accessible via the Traffic Manager profile. A DNS-név az osTicket alkalmazás új helye.The DNS name is the new location of the osTicket app. További információk.Learn more.

    Alkalmazás konfigurálása

  7. A Contoso a könnyen megjegyezhető DNS-neveket részesíti előnyben.Contoso wants a DNS name that's easy to remember. A tartományvezérlő DNS-ében létrehoznak egy aliasrekordot (CNAME) osticket.contoso.com néven, amely a Traffic Manager nevére mutat.They create an alias record (CNAME) osticket.contoso.com which points to the Traffic Manager name, in the DNS on their domain controllers.

    Alkalmazás konfigurálása

  8. A osTicket-eus2 és a osTicket-ke Web Apps-t is konfigurálják az egyéni állomásnevek engedélyezéséhez.They configure both the osticket-eus2 and osticket-cus web apps to allow the custom host names.

    Alkalmazás konfigurálása

Automatikus méretezés beállításaSet up autoscaling

Végül beállítják az alkalmazáshoz az automatikus méretezést.Finally, they set up automatic scaling for the app. Ez biztosítja, hogy amikor az ügynökök használják az alkalmazást, az alkalmazás példányai az üzleti igényeknek megfelelően növekednek és csökkennek.This ensures that as agents use the app, the app instances increase and decrease according to business needs.

  1. Az App Service-ben (APP-SRV-EUS2) megnyitják a Skálázási egységet.In App Service APP-SRV-EUS2, they open Scale Unit.

  2. Egy új, egyetlen szabállyal konfigurált automatikus skálázási beállítást adnak meg, amely akkor növeli a példányszámot, ha az aktuális példány CPU-használati aránya 10 percig 70% fölött van.They configure a new autoscale setting with a single rule that increases the instance count by one when the CPU percentage for the current instance is above 70% for 10 minutes.

    Automatikus méretezés

  3. Ugyanezt a beállítást konfigurálják az APP-SRV-CUS esetében, így biztosítva, hogy ugyanúgy viselkedjen, ha a másodlagos régió veszi át a feladatot.They configure the same setting on APP-SRV-CUS to ensure that the same behavior applies if the app fails over to the secondary region. Az egyetlen különbség az, hogy az alapértelmezett példányt 1-re állítják, mert ez csak a feladatátvételekre vonatkozik.The only difference is that they set the default instance to 1 since this is for failovers only.

    Automatikus méretezés

A feleslegessé vált elemek eltávolítása a migrálás utánClean up after migration

A migrálás végeztével az osTicket alkalmazás újra lett tervezve az Azure App Service webalkalmazásban való futásra, a privát GitHub-adattáron keresztüli folyamatos teljesítéssel.With migration complete, the osTicket app is refactored to running in an Azure App Service web app with continuous delivery using a private GitHub repo. Az alkalmazás két régióban fut a rugalmasság növelése érdekében.The app's running in two regions for increased resilience. Az osTicket-adatbázis a PaaS-platformra történő migrálás után az Azure Database for MySQL-ben fut.The osTicket database is running in Azure database for MySQL after migration to the PaaS platform.

A felesleges elemek törléséhez a Contosónak a következőket kell tennie:For clean up, Contoso needs to do the following:

  • El kell távolítania a VMware-virtuálisgépeket a vCenter-leltárból.Remove the VMware VMs from the vCenter inventory.
  • El kell távolítania a helyszíni virtuális gépeket a helyi biztonsági mentési feladatokból.Remove the on-premises VMs from local backup jobs.
  • Frissítenie kell a belső dokumentációt, hogy megjelenjenek benne az új helyek és IP-címek.Update internal documentation show new locations and IP addresses.
  • Át kell tekinteni a helyi virtuális gépekkel kommunikáló erőforrásokat, és frissíteni kell a releváns beállításokat vagy dokumentumokat, hogy azok megfeleljenek az új konfigurációnak.Review any resources that interact with the on-premises VMs, and update any relevant settings or documentation to reflect the new configuration.
  • Újra kell konfigurálnia a monitorozást, hogy az az osticket-trafficmanager.net URL-címre irányuljon, és nyomon követhető legyen az alkalmazás működése.Reconfigure monitoring to point at the osticket-trafficmanager.net URL, to track that the app is up and running.

Az üzembe helyezés áttekintéseReview the deployment

Most, hogy az alkalmazás már fut, a Contosónak teljesen működőképessé és biztonságossá kell tennie az új infrastruktúrát.With the app now running, Contoso need to fully operationalize and secure their new infrastructure.

BiztonságSecurity

A Contoso biztonsági csapata megvizsgálta az alkalmazást az esetlegesen fennálló biztonsági problémák megállapításához.The Contoso security team reviewed the app to determine any security issues. Észlelték, hogy az osTicket alkalmazás és a MySQL-adatbázispéldány közötti kommunikáció nincs konfigurálva az SSL-hez.They identified that the communication between the osTicket app and the MySQL database instance isn't configured for SSL. A rendszergazdáknak ezt el kell végezniük, hogy elkerüljék az adatbázis forgalmának feltörését.They will need to do this to ensure that database traffic can't be hacked. További információk.Learn more.

Biztonsági másolatokBackups

  • Az osTicket webalkalmazásai nem tartalmaznak állapotadatokat, így nem szükséges biztonsági másolatot készíteni róluk.The osTicket web apps don't contain state data and thus don't need to be backed up.
  • Nem szükséges biztonsági mentést konfigurálni az adatbázishoz.They don't need to configure backup for the database. Az Azure Database for MySQL automatikusan létrehozza és tárolja a kiszolgáló biztonsági másolatait.Azure Database for MySQL automatically creates server backups and stores. A georedundancia használata mellett döntöttek, így az alkalmazás rugalmas és használatra kész.They selected to use geo-redundancy for the database, so it's resilient and production-ready. A biztonsági másolatokkal a kiszolgáló adott időpontnak megfelelő állapotra állítható vissza.Backups can be used to restore your server to a point-in-time. További információk.Learn more.

Licencelés és költségoptimalizálásLicensing and cost optimization

  • A PaaS üzembe helyezésével kapcsolatban nem merülnek fel licencelési problémák.There are no licensing issues for the PaaS deployment.
  • A Contoso engedélyezi a Cloudyn, a Microsoft leányvállalata által licencelt Azure Cost Managementet.Contoso will enable Azure Cost Management licensed by Cloudyn, a Microsoft subsidiary. Ez egy többfelhős költségkezelő megoldás, amely segítséget nyújt az Azure-beli és más felhőerőforrások használatához és felügyeletéhez.It's a multicloud cost management solution that helps you use and manage Azure and other cloud resources. További információ az Azure Cost Managementről.Learn more about Azure Cost Management.