Szerkesztés

Share via


Több-bérlős megoldások üzembe helyezésének és konfigurálásának architekturális megközelítései

Azure
Azure DevOps
Azure Pipelines
Azure Marketplace
GitHub

Az architektúrától és a megvalósításhoz használt összetevőktől függetlenül telepítenie és konfigurálnia kell a megoldás összetevőit. Több-bérlős környezetben fontos megfontolni az Azure-erőforrások üzembe helyezésének módját, különösen akkor, ha dedikált erőforrásokat helyez üzembe minden bérlőhöz, vagy amikor újrakonfigurálja az erőforrásokat a rendszer bérlőinek száma alapján. Ezen a lapon útmutatást nyújtunk a megoldástervezőknek a több-bérlős megoldások üzembe helyezéséhez, és bemutatunk néhány megfontolandó megközelítést az üzembehelyezési stratégia megtervezésekor.

Főbb szempontok és követelmények

Fontos, hogy az üzembe helyezési stratégia megtervezése előtt tisztában legyen a követelményekkel. A konkrét szempontok közé tartoznak a következők:

  • Várt skálázás: Kis számú bérlőt (például ötöt vagy kevesebbet) támogat, vagy nagy számú bérlőre fog növekedni?
  • Automatizált vagy támogatott előkészítés: Ha egy bérlő készen áll az előkészítésre, képes lesz elvégezni a folyamatot egy automatizált eljárás követésével? Vagy az új bérlők kezdeményeznek kérést, és a kérés kézhezvétele után manuálisan előkészítik őket? Szükség van manuális jóváhagyási lépésekre a csapattól, például a szolgáltatással való visszaélés megakadályozásához?
  • Kiépítési idő: Ha egy bérlő készen áll az előkészítésre, milyen gyorsan kell elvégezni az előkészítési folyamatot? Ha nincs egyértelmű válasza, fontolja meg, hogy másodpercekben, percekben, órákban vagy napokban kell-e mérni.
  • Azure Marketplace: Tervezi, hogy a Azure Marketplace használatával indítja el az üzembe helyezést? Ha igen, akkor az új bérlők hozzáadásához meg kell felelnie a követelményeknek.

Érdemes megfontolnia az előkészítési és kiépítési lépéseket, az automatizálást és az erőforrás-kezelési felelősséget is.

Előkészítési és kiépítési lépések

Fontolja meg, hogy mit kell tennie egy bérlő előkészítésekor, és dokumentálja ezt a listát és munkafolyamatot, még akkor is, ha manuálisan végzi el. Az előkészítési munkafolyamat általában a következőket tartalmazza:

  • Kereskedelmi megállapodások elfogadása.
  • A rendszer új bérlőhöz való konfigurálásához szükséges információk gyűjteménye.
  • Manuális jóváhagyási lépések, például a szolgáltatással való visszaélés vagy visszaélés megelőzése érdekében.
  • Erőforrások kiépítése az Azure-ban.
  • Tartománynevek létrehozása vagy konfigurálása.
  • Végezze el az üzembe helyezés utáni konfigurációs feladatokat, például hozza létre a bérlő első felhasználói fiókját, és biztonságosan továbbadja a hitelesítő adatait a bérlőnek.
  • Manuális konfigurációs módosítások, például DNS-rekordmódosítások.

Egyértelműen dokumentálja az új bérlő előkészítéséhez szükséges munkafolyamatot.

Emellett vegye figyelembe azokat az Azure-erőforrásokat, amelyeket ki kell építenie egy bérlő számára. Még ha nem is épít ki dedikált erőforrásokat az egyes bérlőkhöz, fontolja meg, hogy szükség van-e erőforrások üzembe helyezésére egy új bérlő előkészítésekor. Ez akkor fordulhat elő, ha egy bérlő megköveteli az adataik egy adott régióban való tárolását, vagy ha megközelíti a megoldás egy bélyegének vagy összetevőjének korlátait, és létre kell hoznia egy másik példányt a következő bérlői köteghez.

Gondolja át, hogy az előkészítési folyamat valószínűleg megzavarja-e a többi bérlőt, különösen azokat, akik ugyanazt az infrastruktúrát használják. Ha például módosítania kell a megosztott adatbázisokat, ez a folyamat olyan teljesítménybeli hatást okozhat, amelyet más bérlők is észrevehetnek? Fontolja meg, hogy elkerülheti-e ezeket a hatásokat, vagy enyhítheti őket a szokásos munkaidőn kívüli előkészítési folyamat végrehajtásával.

Automation

Az automatizált üzembe helyezés mindig ajánlott a felhőben üzemeltetett megoldásokhoz. A több-bérlős megoldások használatakor az üzembe helyezés automatizálása az alábbi okokból válik még fontosabbá:

  • Skála: A manuális üzembehelyezési folyamatok egyre összetettebbek és időigényesebbek lesznek a bérlői népesség növekedésével. Az automatizált üzembe helyezési módszer a bérlők számának növekedésével egyszerűbben méretezhető.
  • Ismételhető: Több-bérlős környezetben használjon konzisztens folyamatot az összes bérlő üzembe helyezéséhez. A manuális folyamatok a hibák vagy bizonyos bérlők esetében végrehajtandó lépések esélyét mutatják, másoknál nem. Ezek a manuális folyamatok inkonzisztens állapotban hagyják a környezetet, ami megnehezíti a csapat számára a megoldás kezelését.
  • A kimaradások hatása: A manuális üzembe helyezés jelentősen kockázatosabb és hajlamosabb a szolgáltatáskimaradásokra, mint az automatizált üzemelő példányok. Több-bérlős környezetben a rendszerszintű szolgáltatáskimaradás (üzembehelyezési hiba miatt) nagy hatással lehet, mivel minden bérlőt érinthet.

Ha több-bérlős környezetben helyez üzembe, üzembehelyezési folyamatokat kell használnia, és infrastrukturális kódként (IaC) használt technológiákat kell használnia, például a Bicepet, a JSON ARM-sablonokat, a Terraformot vagy az Azure SDK-kat.

Ha a megoldást a Azure Marketplace keresztül szeretné kínálni, egy teljesen automatizált előkészítési folyamatot kell biztosítania az új bérlők számára. Ezt a folyamatot az SaaS fulfillment API-k dokumentációja ismerteti.

Maximális erőforrás-kapacitás

Ha programozott módon helyez üzembe bérlői erőforrásokat megosztott erőforrásokra, vegye figyelembe az egyes erőforrások kapacitáskorlátját. Ha megközelíti ezt a korlátot, előfordulhat, hogy az erőforrás egy másik példányát kell létrehoznia a további skálázás támogatásához. Vegye figyelembe az egyes üzembe helyezett erőforrások korlátait, valamint azokat a feltételeket, amelyek kiváltják egy másik példány üzembe helyezését.

Tegyük fel például, hogy a megoldás tartalmaz egy Azure SQL logikai kiszolgálót, és a megoldás minden bérlő számára kiépít egy dedikált adatbázist a kiszolgálón. Egyetlen logikai kiszolgálóra korlátozások vonatkoznak, amelyek a logikai kiszolgálók által támogatott adatbázisok maximális számát tartalmazzák. A korlátok közeledtével előfordulhat, hogy új kiszolgálókat kell kiépítenie, hogy továbbra is regisztrálhassa a bérlőket. Gondolja át, hogy automatizálja-e ezt a folyamatot, vagy manuálisan monitorozza a növekedést.

Erőforrás-kezelési felelősség

Néhány több-bérlős megoldásban dedikált Azure-erőforrásokat helyez üzembe minden bérlőhöz, például egy adatbázist minden bérlőhöz. Dönthet úgy is, hogy egy adott erőforrás egyetlen példányán található bérlők számát határozza meg, így a bérlők száma határozza meg az Azure-ban üzembe helyezett erőforrások készletét. Más megoldásokban egyetlen megosztott erőforráskészletet helyez üzembe, majd új bérlők bevezetésekor újrakonfigurálja az erőforrásokat.

Mindegyik modellhez különböző módokon kell erőforrásokat üzembe helyeznie és kezelnie, és figyelembe kell vennie, hogyan fogja üzembe helyezni és kezelni a kiépített erőforrások életciklusát. Két gyakori megközelítés a következő:

  • A bérlőknek a telepített erőforrások konfigurációjaként való kezelése, valamint az üzembehelyezési folyamatok használata az erőforrások üzembe helyezéséhez és konfigurálásához.
  • Ha a bérlőket adatokként szeretné kezelni, és rendelkeznie kell egy vezérlősík kiépítésével és a bérlők infrastruktúrájának konfigurálásával.

E megközelítések további megvitatása alább található.

Tesztelés

Tervezze meg, hogy minden üzembe helyezés során és után alaposan tesztelje a megoldást. Az automatizált tesztelés használatával ellenőrizheti a megoldás funkcionális és nem funkcionális viselkedését. Győződjön meg arról, hogy teszteli a bérlőelkülönítési modellt, és fontolja meg olyan eszközök használatát, mint az Azure Chaos Studio , hogy szándékosan olyan hibákat vezessen be, amelyek valós kimaradásokat szimulálnak, és ellenőrizze, hogy a megoldás akkor is működik-e, ha egy összetevő nem érhető el vagy hibásan működik.

Megfontolandó megközelítések és minták

Az Azure Architecture Center és a szélesebb közösség számos tervezési mintája fontos a több-bérlős megoldások üzembe helyezéséhez és konfigurálásához.

Üzembehelyezési bélyegek mintája

Az Üzembehelyezési bélyegek minta magában foglalja a dedikált infrastruktúra üzembe helyezését egy bérlő vagy bérlőcsoport számára. Egyetlen bélyeg több bérlőt is tartalmazhat, vagy egyetlen bérlőnek dedikált. Dönthet úgy, hogy egyetlen bélyeget helyez üzembe, vagy koordinálja az üzembe helyezést több bélyeg között. Ha minden bérlőhöz dedikált bélyegeket helyez üzembe, érdemes lehet a teljes bélyegeket programozott módon üzembe helyezni.

Üzembehelyezési körök

Az üzembehelyezési körök lehetővé teszik a frissítések különböző infrastruktúracsoportokra való bevezetését különböző időpontokban. Ezt a módszert gyakran használják az üzembehelyezési bélyegek mintájára, és a bélyegcsoportok a bérlői beállítások, a számítási feladatok típusai és egyéb szempontok alapján különböző körökhöz rendelhetők. További információ: Üzembehelyezési körök.

Funkciójelölők

A funkciójelölők lehetővé teszik, hogy fokozatosan elérhetővé tegye a megoldás új funkcióit vagy verzióit a különböző bérlők számára, miközben egyetlen kódbázist tart fenn. Fontolja meg a Azure App Configuration használatát a funkciójelölők kezeléséhez. További információ: Funkciójelölők.

Néha bizonyos ügyfeleknek szelektíven kell engedélyeznie bizonyos funkciókat. Előfordulhat például, hogy különböző tarifacsomagokkal rendelkezik , amelyek lehetővé teszik bizonyos képességek elérését. Ezekhez a forgatókönyvekhez általában nem megfelelőek a funkciójelölők. Ehelyett érdemes lehet létrehozni egy folyamatot az egyes ügyfelek licencjogosultságainak nyomon követésére és kikényszerítésére.

Elkerülendő kizárási minták

A több-bérlős megoldások üzembe helyezésekor és konfigurálásakor fontos elkerülni azokat a helyzeteket, amelyek gátolják a skálázást. Ezek a következők:

  • Manuális üzembe helyezés és tesztelés. A fentiekben leírtak szerint a manuális üzembehelyezési folyamatok kockázatot jelentenek, és lelassítják az üzembe helyezést. Érdemes lehet folyamatokat használni az automatizált üzembe helyezésekhez, programozott módon létrehozni az erőforrásokat a megoldás kódjából, vagy mindkettő kombinációját.
  • A bérlők speciális testreszabásai. Kerülje olyan szolgáltatások vagy konfigurációk üzembe helyezését, amelyek csak egyetlen bérlőre vonatkoznak. Ez a megközelítés összetettebbé teszi az üzembe helyezéseket és a tesztelési folyamatokat. Ehelyett használja ugyanazokat az erőforrástípusokat és kódbázisokat az egyes bérlőkhöz, és használjon olyan stratégiákat, mint a funkciójelölők az ideiglenes módosításokhoz vagy a fokozatosan megjelenő funkciókhoz, vagy használjon különböző tarifacsomagokat licencjogosultságokkal a rájuk vonatkozó funkciók szelektív engedélyezéséhez a bérlők számára. Használjon konzisztens és automatizált üzembe helyezési folyamatot, még az elkülönített vagy dedikált erőforrásokkal rendelkező bérlők esetében is.

Bérlői listák konfigurációként vagy adatként

Ha több-bérlős megoldásban helyez üzembe erőforrásokat, az alábbi két módszert érdemes figyelembe vennie:

  • Minden erőforrás üzembe helyezéséhez használjon automatizált üzembe helyezési folyamatot. Az új bérlők hozzáadásakor konfigurálja újra a folyamatot az egyes bérlők erőforrásainak kiépítéséhez.
  • Automatizált üzembehelyezési folyamat használatával olyan megosztott erőforrásokat helyezhet üzembe, amelyek nem függnek a bérlők számától. Az egyes bérlőkhöz üzembe helyezett erőforrásokhoz hozza létre őket az alkalmazásban.

A két megközelítés figyelembe vételekor különbséget kell tenni a bérlőlista konfigurációként vagy adatként való kezelése között. Ez a különbség akkor is fontos, ha megfontolja, hogyan hozhat létre vezérlősíkot a rendszer számára.

Bérlőlista konfigurációként

Amikor konfigurációként kezeli a bérlőlistát, az összes erőforrást központi üzembehelyezési folyamatból helyezi üzembe. Új bérlők előkészítésekor újrakonfigurálja a folyamatot vagy annak paramétereit. Az újrakonfigurálás általában manuális módosításokkal történik, ahogy az az alábbi ábrán is látható.

A bérlői lista folyamatkonfigurációként való karbantartásakor a bérlők előkészítésének folyamatát bemutató ábra.

Az új bérlő előkészítésének folyamata a következőhöz hasonló lehet:

  1. Frissítse a bérlőlistát. Ez általában manuálisan történik a folyamat konfigurálásával vagy a folyamat konfigurációjában található paraméterfájl módosításával.
  2. Indítsa el a futtatandó folyamatot.
  3. A folyamat újra üzembe helyezi az Azure-erőforrások teljes készletét, beleértve az új bérlőspecifikus erőforrásokat is.

Ez a megközelítés általában kis számú bérlő esetében működik jól, és olyan architektúrák esetében, ahol minden erőforrás meg van osztva. Ez egy egyszerű megközelítés, mivel az összes Azure-erőforrás üzembe helyezhető és konfigurálható egyetlen folyamat használatával.

Ha azonban nagyobb számú bérlőhöz közelít, például 5–10 vagy több bérlőhöz, nehézkessé válik a folyamat újrakonfigurálása a bérlők hozzáadásakor. Az üzembehelyezési folyamat futtatásához szükséges idő is gyakran jelentősen megnő. Ez a megközelítés nem támogatja könnyen az önkiszolgáló bérlők létrehozását, és a bérlő előkészítése előtti átfutási idő hosszabb lehet, mert aktiválnia kell a folyamatot a futtatáshoz.

Bérlőlista adatokként

Ha a bérlői listát adatokként kezeli, akkor is üzembe helyezi a megosztott összetevőket egy folyamat használatával. Az egyes bérlők számára üzembe helyezendő erőforrások és konfigurációs beállítások esetében azonban feltétlenül telepítenie vagy konfigurálnia kell az erőforrásokat. A vezérlősík például az Azure SDK-k használatával létrehozhat egy adott erőforrást, vagy elindíthatja egy paraméteres sablon üzembe helyezését.

Diagram egy bérlő előkészítésének folyamatáról, amikor a bérlőlista adatokként van fenntartva.

Az új bérlő előkészítésének folyamata a következőhöz hasonló lehet, és aszinkron módon történik:

  1. Bérlő előkészítésének kérése, például api-kérés kezdeményezése a rendszer vezérlősíkjára.
  2. A munkafolyamat-összetevők megkapják a létrehozási kérést, és vezénylik a fennmaradó lépéseket.
  3. A munkafolyamat kezdeményezi a bérlőspecifikus erőforrások Üzembe helyezését az Azure-ban. Ez egy imperatív programozási modell használatával érhető el, például az Azure SDK-k használatával, vagy egy Bicep- vagy Terraform-sablon üzembe helyezésének imperatív aktiválásával.
  4. Az üzembe helyezés befejezése után a munkafolyamat menti az új bérlő adatait a központi bérlőkatalógusba. Az egyes bérlők számára tárolt adatok tartalmazhatják a bérlőazonosítót és az erőforrás-azonosítókat a munkafolyamat által létrehozott összes bérlőspecifikus erőforráshoz.

Ezzel erőforrásokat építhet ki új bérlők számára a teljes megoldás újbóli üzembe helyezése nélkül. Az egyes bérlők új erőforrásainak kiépítéséhez szükséges idő valószínűleg rövidebb lesz, mivel csak ezeket az erőforrásokat kell üzembe helyezni.

Ez a megközelítés azonban gyakran sokkal időigényesebb a buildelés során, és a szükséges munkamennyiséget a bérlők száma vagy a teljesítendő kiépítési időkeretek indokolják.

Erről a megközelítésről további információt a Több-bérlős vezérlősíkokkal kapcsolatos szempontok című témakörben talál.

Megjegyzés

Az Azure üzembe helyezési és konfigurációs műveleteinek végrehajtása gyakran időt vesz igénybe. Győződjön meg arról, hogy a hosszú ideig futó műveletek indításához és figyeléséhez megfelelő folyamatot használ. Érdemes lehet például az aszinkron Request-Reply mintát követni. Olyan technológiákat használjon, amelyek hosszú ideig futó műveletek, például az Azure Logic Apps és a Durable Functions támogatására lettek tervezve.

Példa

A Contoso több-bérlős megoldást futtat ügyfelei számára. Jelenleg hat bérlője van, és a következő 18 hónapban várhatóan 300-ra nő. A Contoso a több-bérlős alkalmazást követi minden bérlői megközelítéshez dedikált adatbázisokkal . Egyetlen App Service-erőforráskészletet és egy Azure SQL logikai kiszolgálót telepítettek, amelyek az összes bérlőjük között meg vannak osztva, és minden bérlőhöz egy dedikált Azure SQL-adatbázist helyeznek üzembe, az alábbi ábrán látható módon.

Architektúradiagram az egyes bérlők megosztott erőforrásairól és dedikált erőforrásairól.

A Contoso a Bicep használatával helyezi üzembe az Azure-erőforrásait.

1. lehetőség – Üzembehelyezési folyamatok használata mindenhez

A Contoso megfontolhatja az összes erőforrás üzembe helyezését egy üzembehelyezési folyamat használatával. A folyamat egy Bicep-fájlt helyez üzembe, amely tartalmazza az összes Azure-erőforrást, beleértve az egyes bérlők Azure SQL adatbázisait is. A paraméterfájl határozza meg a bérlők listáját, a Bicep-fájl pedig egy erőforráshurok használatával helyez üzembe egy adatbázist az egyes felsorolt bérlőkhöz, ahogy az az alábbi ábrán látható.

Megosztott és bérlőspecifikus erőforrásokat egyaránt üzembe helyező folyamatot bemutató ábra.

Ha a Contoso ezt a modellt követi, akkor frissítenie kell a paraméterfájlt egy új bérlő előkészítésének részeként. Ezután újra kell futtatniuk a folyamatot. Emellett manuálisan kell nyomon követniük, hogy megközelítik-e a korlátokat, például hogy váratlanul magas ütemben növekednek-e, és megközelítik-e az egyetlen Azure SQL logikai kiszolgálón támogatott adatbázisok maximális számát.

2. lehetőség – Üzembehelyezési folyamatok és imperatív erőforrás-létrehozás kombinációjának használata

Alternatív megoldásként a Contoso megfontolhatja az Azure-üzemelő példányok felelősségének elkülönítését.

A Contoso egy Bicep-fájlt használ, amely meghatározza az üzembe helyezendő megosztott erőforrásokat. A megosztott erőforrások támogatják az összes bérlőjüket, és egy bérlői térképadatbázist is tartalmaznak az alábbi ábrán látható módon.

A megosztott erőforrások folyamattal történő üzembe helyezésének munkafolyamatát bemutató ábra.

A Contoso csapata ezután létrehoz egy vezérlősíkot, amely tartalmaz egy bérlői előkészítési API-t. Amikor értékesítési csapatuk befejezte az értékesítést egy új ügyfélnek, a Microsoft Dynamics elindítja az API-t az előkészítési folyamat megkezdéséhez. A Contoso egy önkiszolgáló webes felületet is biztosít az ügyfelek számára, amely az API-t is aktiválja.

Az API aszinkron módon elindít egy munkafolyamatot, amely előkészíti az új bérlőket. A munkafolyamat egy új Azure SQL adatbázis üzembe helyezését kezdeményezi, amelyet az alábbi módszerek egyikével végezhet el:

  • Az Azure SDK használatával kezdeményezheti egy második Bicep-fájl üzembe helyezését, amely meghatározza a Azure SQL adatbázist.
  • Az Azure SDK használatával imperatív módon hozhat létre egy Azure SQL-adatbázist a felügyeleti kódtár használatával.

Az adatbázis üzembe helyezése után a munkafolyamat hozzáadja a bérlőt a bérlőlista-adatbázishoz az alábbi ábrán látható módon.

Egy új bérlő adatbázisának üzembe helyezésére szolgáló munkafolyamatot bemutató ábra.

A folyamatban lévő adatbázisséma-frissítéseket az alkalmazásszintjük kezdeményezi.

Közreműködők

Ezt a cikket a Microsoft tartja karban. Eredetileg a következő közreműködők írták.

Fő szerző:

  • John Downs | Az Azure-hoz készült FastTrack vezető ügyfélmérnöke

Egyéb közreműködők:

A nem nyilvános LinkedIn-profilok megtekintéséhez jelentkezzen be a LinkedInbe.

Következő lépések