Vytváření úloh replikace pro prostředky Azure pomocí Azure Logic Apps (Preview)
Důležité
Tato funkce je ve verzi Preview a podléhá dodatečným podmínkám použití pro microsoft Azure Preview.
I když maximální dostupnost a spolehlivost představují nejvyšší provozní priority pro služby Azure, existuje mnoho způsobů, jak se komunikace zastavit kvůli problémům se sítí nebo řešením názvů, chybám nebo dočasnému nereagování. Takové podmínky nejsou "katastrofální" tak, že budete chtít úplně opustit regionální nasazení, protože byste to mohli udělat v situaci zotavení po havárii. Obchodní scénář některých aplikací ale může mít vliv na události dostupnosti, které trvají déle než několik minut nebo dokonce sekund.
Pokud chcete snížit účinek, že nepředvídatelné události můžou mít prostředky Azure v oblasti Azure, můžete obsah těchto prostředků replikovat z jedné oblasti do jiné oblasti, abyste mohli udržovat provozní kontinuitu. V Azure můžete vytvořit úlohu replikace, která přesune data, události nebo zprávy ze zdroje v jedné oblasti do cíle v jiné oblasti. Tímto způsobem můžete mít cíl snadno dostupný, pokud zdroj přejde do režimu offline a cíl musí převzít.
Poznámka:
Úlohy replikace můžete použít také k přesunu obsahu mezi entitami ve stejné oblasti, ale pokud se celá oblast stane nedostupnou nebo dojde k přerušení, ovlivní to zdroj i cíl.
Tento článek obsahuje přehled úloh replikace využívajících Azure Logic Apps a ukazuje, jak vytvořit ukázkovou úlohu replikace pro fronty služby Azure Service Bus. Pokud s aplikacemi a pracovními postupy logiky začínáte, přečtěte si téma Co je Azure Logic Apps a jednoklientština a víceklient v Azure Logic Apps.
Co je úloha replikace?
Úloha replikace obecně přijímá data, události nebo zprávy ze zdroje, přesune tento obsah do cíle a pak odstraní tento obsah ze zdroje, s výjimkou případů, kdy je zdrojem entita Event Hubs. Úloha replikace obvykle přesune obsah beze změny, ale úlohy replikace využívající Azure Logic Apps také přidávají vlastnosti replikace. Pokud se zdrojové a cílové protokoly liší, tyto úlohy také provádějí mapování mezi strukturami metadat. Úlohy replikace jsou bezstavové, což znamená, že nesdílejí stavy ani jiné vedlejší účinky napříč paralelními nebo sekvenčními prováděními úlohy.
Když použijete dostupné šablony úloh replikace, každá úlohu replikace, kterou vytvoříte, má základní bezstavový pracovní postup v prostředku aplikace logiky (Standard), který může zahrnovat více pracovních postupů pro úlohy replikace. Tento prostředek je hostovaný v Azure Logic Apps s jedním tenantem, což je škálovatelné a spolehlivé spouštěcí prostředí pro konfiguraci a spouštění bezserverových aplikací, včetně úloh replikace a federace. Modul runtime Azure Logic Apps s jedním tenantem používá také model rozšiřitelnosti služby Azure Functions a je hostovaný jako rozšíření v modulu runtime Azure Functions. Tento návrh poskytuje přenositelnost, flexibilitu a vyšší výkon pro pracovní postupy aplikací logiky a další možnosti a výhody zděděné z platformy Azure Functions a ekosystému služby Aplikace Azure Service.
Další informace o replikaci a federaci najdete v následující dokumentaci:
- Federace služby Event Hubs s více lokalitami a více oblastmi
- Vzory úloh replikace událostí
- Replikace zpráv služby Service Bus a federace mezi oblastmi
- Vzory úloh replikace zpráv
Šablony úloh replikace
V současné době jsou šablony úloh replikace k dispozici pro Azure Event Hubs a Azure Service Bus. Následující tabulka uvádí šablony úloh replikace, které jsou aktuálně k dispozici v této verzi Preview:
Typ prostředku | Zdroj a cíl replikace |
---|---|
Obor názvů služby Azure Event Hubs | – Instance služby Event Hubs do instance služby Event Hubs – Instance služby Event Hubs do fronty služby Service Bus – Instance služby Event Hubs do tématu služby Service Bus |
Obor názvů služby Azure Service Bus | – Fronta služby Service Bus do fronty služby Service Bus – Fronta služby Service Bus do tématu služby Service Bus – Téma služby Service Bus na téma služby Service Bus – Fronta služby Service Bus do instance služby Event Hubs – Téma služby Service Bus do fronty služby Service Bus – Téma služby Service Bus pro instanci služby Event Hubs Důležité: Pokud je fronta zdrojem, úloha replikace nekopíruje zprávy, ale přesune je ze zdroje do cíle a odstraní je ze zdroje. Pokud chcete místo toho zrcadlit zprávy, použijte jako zdroj téma, kde "hlavní" odběr funguje jako koncový bod fronty. Tímto způsobem cíl získá kopii každé zprávy ze zdroje. Pokud chcete směrovat zprávy napříč různými oblastmi, můžete vytvořit frontu, do které se zprávy odesílají z aplikace. Úloha replikace přenáší zprávy z této fronty do cílové fronty v oboru názvů, který je v jiné oblasti. Odběr tématu můžete použít také jako entitu, která funguje jako fronta přenosu. Další informace najdete v topologii replikace pro ServiceBusCopy. |
Topologie replikace a pracovní postup
Následující diagramy znázorňují strukturu úloh replikace a pracovní postup pro instance služby Event Hubs a pro fronty Služby Service Bus, které vám pomůžou vizualizovat, jak funguje úloha replikace využívající Službu Logic Apps (Standard).
Topologie replikace pro službu Event Hubs
Následující diagram znázorňuje topologii a pracovní postup úlohy replikace mezi instancemi služby Event Hubs:
Informace o replikaci a federaci ve službě Azure Event Hubs najdete v následující dokumentaci:
Topologie replikace pro Service Bus
Následující diagram znázorňuje topologii a pracovní postup úlohy replikace mezi frontami služby Service Bus:
Informace o replikaci a federaci ve službě Azure Service Bus najdete v následující dokumentaci:
Mapování metadat a vlastností
Pro službu Event Hubs se následující položky získané ze zdrojového oboru názvů služby Event Hubs nahradí novými hodnotami přiřazenými službou v oboru názvů služby Event Hubs: metadata přiřazená službou události, původní čas fronty, pořadové číslo a posun. V případě pomocných funkcí a úloh replikace v ukázkách poskytovaných v Azure se ale původní hodnoty zachovají ve vlastnostech uživatele: repl-enqueue-time
(ISO8601 řetězec), repl-sequence
a repl-offset
. Tyto vlastnosti mají string
typ a obsahují řetězcovou hodnotu odpovídajících původních vlastností. Pokud se událost předá vícekrát, připojí se metadata okamžitého zdroje přiřazená službou k jakýmkoli existujícím vlastnostem s hodnotami oddělenými středníky. Další informace najdete v metadatech přiřazených službou – vzory úloh replikace událostí.
Pro Service Bus se následující položky získané ze zdrojové fronty nebo tématu služby Service Bus nahradí novými hodnotami přiřazenými službou v cílové frontě nebo tématu služby Service Bus: metadata přiřazená službou zprávy, původní čas zařazení do fronty a pořadové číslo. U výchozích úloh replikace v ukázkách poskytovaných v Azure se ale původní hodnoty zachovají ve vlastnostech uživatele: repl-enqueue-time
(ISO8601 řetězec) a repl-sequence
. Tyto vlastnosti mají string
typ a obsahují řetězcovou hodnotu odpovídajících původních vlastností. Pokud se zpráva přeposílají vícekrát, připojí se k existujícím vlastnostem metadata přiřazená službou bezprostředního zdroje s hodnotami oddělenými středníky. Další informace najdete v metadatech přiřazených službou – vzory úloh replikace zpráv.
Když se úloha replikuje ze služby Service Bus do služby Event Hubs, úloha mapuje pouze User Properties
vlastnost na Properties
vlastnost. Pokud se však úloha replikuje ze služby Event Hubs do služby Service Bus, úloha mapuje následující vlastnosti:
Ze služby Event Hubs | Do služby Service Bus |
---|---|
ContentType | ContentType |
CorrelationId | CorrelationId |
MessageId | MessageId |
PartitionKey | PartitionKey SessionId |
Vlastnosti | Vlastnosti uživatele |
ReplyTo | ReplyTo |
ReplyToGroupName | ReplyToSessionId |
Předmět | Popisek |
Záměr | Záměr |
Zachování objednávek
V případě služby Event Hubs vytvoří replikace mezi stejným počtem oddílů klony 1:1 beze změn v událostech, ale můžou obsahovat i duplicity. Replikace mezi různými čísly oddílů se ale zachová pouze relativní pořadí událostí na základě klíče oddílu, ale může obsahovat i duplicity. Další informace najdete v datových proudech a zachování objednávek.
U služby Service Bus je nutné povolit relace, aby se sekvence zpráv se stejným ID relace načteným ze zdroje odeslaly do cílové fronty nebo tématu jako dávka v původní sekvenci a se stejným ID relace. Další informace najdete v sekvencích a zachování pořadí.
Důležité
Úlohy replikace nesledují, které zprávy už byly zpracovány, když zdroj dojde k rušivé události. Pokud chcete zabránit opětovnému zpracování již zpracovaných zpráv, musíte nastavit způsob sledování již zpracovaných zpráv, aby zpracování pokračovalo pouze s nezpracovanými zprávami.
Můžete například nastavit databázi, která ukládá stav zpracování pro každou zprávu. Při příchodu zprávy zkontrolujte stav a proces zprávy pouze v případě, že zpráva není zpracována. Tímto způsobem nedojde k žádnému zpracování pro již zpracovanou zprávu.
Tento model ukazuje koncept idempotenci , kdy opakování akce na vstupu vytvoří stejný výsledek bez jiných vedlejších účinků nebo nezmění hodnotu vstupu.
Další informace o federaci více lokalit a více oblastí pro služby Azure, kde můžete vytvářet úlohy replikace, najdete v následující dokumentaci:
- Federace služby Event Hubs s více lokalitami a více oblastmi
- Vzory úloh replikace událostí
- Replikace zpráv služby Service Bus a federace mezi oblastmi
- Vzory úloh replikace zpráv
Ceny
Úloha replikace je založená na bezstavovém pracovním postupu v prostředku aplikace logiky (Standard), který je hostovaný v Azure Logic Apps s jedním tenantem. Při vytváření této úlohy replikace se začnou účtovat poplatky okamžitě. Využití, měření, fakturace a cenový model se řídí cenovými úrovněmi standardního plánu hostování a plánu Standard.
Na základě počtu událostí, které služba Event Hubs přijímá, nebo zpráv, které služba Service Bus zpracovává, může váš plán hostování vertikálně navýšit nebo snížit kapacitu, aby se zachovalo minimální využití vCPU a nízká latence během aktivní replikace. Toto chování vyžaduje, aby při vytváření prostředku aplikace logiky, který se má použít pro úlohu replikace, zvolte odpovídající cenovou úroveň plánu Standard, aby služba Azure Logic Apps neomeškála nebo nezačala maximální využití procesoru a stále může zaručit rychlou rychlost replikace.
Poznámka:
Pokud vaše aplikace začíná jednou instancí plánu WS1 a pak škáluje na dvě instance, náklady jsou dvakrát náklady na WS1 za předpokladu, že plány běží celý den. Pokud vertikálně navyšujete kapacitu aplikace na plán WS2 a použijete jednu instanci, budou náklady efektivně stejné jako dvě instance plánu WS1. Podobně platí, že pokud vertikálně navýšit kapacitu aplikace na plán WS3 a použít jednu instanci, náklady jsou efektivně stejné jako dvě instance plánu WS2 nebo čtyři instance plánu WS1.
Následující příklady ukazují cenové úrovně plánu hostování a možnosti konfigurace, které poskytují nejlepší propustnost a náklady pro konkrétní scénáře úloh replikace na základě toho, jestli se jedná o službu Event Hubs nebo Service Bus a různé hodnoty konfigurace.
Poznámka:
Příklady v následujících částech používají jako výchozí hodnotu pro počet předběžného načtení, maximální velikost dávky událostí pro službu Event Hubs a maximální počet zpráv služby Service Bus za předpokladu, že událost nebo velikost zprávy je 1 kB. Na základě velikostí událostí můžete chtít upravit počet předčítání, maximální velikost dávky událostí nebo maximální počet zpráv. Pokud je například velikost události nebo velikost zprávy větší než 1 kB, můžete snížit hodnoty pro počet předčítání a maximální velikost dávky událostí nebo počet zpráv z 800.
Horizontální navýšení kapacity služby Event Hubs
Následující příklady ukazují cenové úrovně plánu hostování a možnosti konfigurace pro úlohu replikace mezi dvěma obory názvů služby Event Hubs ve stejné oblasti na základě počtu oddílů, počtu událostí za sekundu a dalších hodnot konfigurace.
Příklady v této části používají jako výchozí hodnotu pro počet předčítání a maximální velikost dávky událostí 800 za předpokladu, že velikost události je 1 kB. Na základě velikostí událostí můžete chtít upravit počet předčítání a maximální velikost dávky událostí. Pokud je například velikost události větší než 1 kB, můžete snížit hodnoty pro počet předčítání a maximální velikost dávky události z 800.
Cenová úroveň | Počet oddílů | Počet událostí za sekundu | Maximální nárůsty* | Vždy připravené instance* | Prefetch count* | Maximální velikost dávky událostí* |
---|---|---|---|---|---|---|
WS1 | 0 | 1 000 | 1 | 1 | 800 | 800 |
WS1 | 2 | 2000 | 1 | 1 | 800 | 800 |
WS2 | 4 | 4000 | 2 | 0 | 800 | 800 |
WS2 | 8 | 8000 | 2 | 0 | 800 | 800 |
WS3 | 16 | 16000 | 2 | 0 | 800 | 800 |
WS3 | 32 | 32000 | 3 | 0 | 800 | 800 |
* Další informace o hodnotách, které můžete změnit pro každou cenovou úroveň, najdete v následující tabulce:
Hodnota | Popis |
---|---|
Maximální nárůsty | Maximální počet elastických pracovníchprocesůch Pokud vaše podkladová aplikace vyžaduje instance nad rámec vždy připravených instancí v dalším řádku tabulky, může aplikace dál škálovat kapacitu, dokud počet instancí nenasáhne maximální limit pro zvýšení kapacity. Pokud chcete tuto hodnotu změnit, přečtěte si téma Upravit nastavení horizontálního navýšení kapacity plánu hostování dále v tomto článku. Poznámka: Všechny instance nad rámec vaší velikosti plánu se účtují jenom v případě, že jsou spuštěné a přiděleny vám za sekundu. Platforma se snaží škálovat aplikaci na definovaný maximální limit. Tip: Jako doporučení vyberte maximální hodnotu, která je vyšší, než je možná potřeba, aby platforma mohla škálovat kapacitu, aby v případě potřeby zvládla větší zatížení, protože nevyužité instance se neúčtují. Další informace najdete v následující dokumentaci, ve které se plán Pracovní postup Standard sdílí některé aspekty s plánem Azure Functions Premium: - Plánování a nastavení skladové položky – Plán Azure Functions Premium |
Vždy připravené instance | Minimální počet instancí, které jsou vždy připravené a teplé pro hostování vaší aplikace. Minimální číslo je vždy 1. Pokud chcete tuto hodnotu změnit, přečtěte si téma Upravit nastavení horizontálního navýšení kapacity plánu hostování dále v tomto článku. Poznámka: Všechny instance nad rámec vaší velikosti plánu se účtují bez ohledu na to, jestli jsou spuštěné, když vám jsou přiděleny. Další informace najdete v následující dokumentaci, protože plán Workflow Standard sdílí některé aspekty s plánem Azure Functions Premium: Vždy připravené instance – plán Azure Functions Premium. |
Prefetch count | Výchozí hodnota pro AzureFunctionsJobHost__extensions__eventHubs__eventProcessorOptions__prefetchCount nastavení aplikace v prostředku aplikace logiky, která určuje počet předběžného načtení používaný podkladovou EventProcessorHost třídou. Pokud chcete přidat nebo zadat jinou hodnotu pro toto nastavení aplikace, přečtěte si téma Správa nastavení aplikace – local.settings.json, například: - Název: Další informace o - nastavení host.json – Trigger a vazby služby Azure Event Hubs pro Azure Functions |
Maximální velikost dávky události | Výchozí hodnota AzureFunctionsJobHost__extensions__eventHubs__eventProcessorOptions__maxBatchSize pro nastavení aplikace v prostředku aplikace logiky, která určuje maximální počet událostí přijatých jednotlivými smyčkami příjmu. Pokud chcete přidat nebo zadat jinou hodnotu pro toto nastavení aplikace, přečtěte si téma Správa nastavení aplikace – local.settings.json, například: - Název: Další informace o - nastavení host.json – Trigger a vazby služby Azure Event Hubs pro Azure Functions |
Horizontální navýšení kapacity služby Service Bus
Následující příklady znázorňují cenovou úroveň plánu hostování a možnosti konfigurace pro úlohu replikace mezi dvěma obory názvů služby Service Bus ve stejné oblasti na základě počtu zpráv za sekundu a dalších hodnot konfigurace.
Příklady v této části používají jako výchozí hodnotu pro počet před načtení a maximální počet zpráv 800 za předpokladu, že velikost zprávy je 1 kB. Na základě velikostí zpráv můžete chtít upravit počet předčítání a maximální počet zpráv. Pokud je například velikost zprávy větší než 1 kB, můžete snížit počet předčítání a maximální počet zpráv z 800.
Cenová úroveň | Zprávy za sekundu | Maximální nárůsty* | Vždy připravené instance* | Prefetch count* | Maximální počet zpráv* |
---|---|---|---|---|---|
WS1 | 2000 | 1 | 1 | 800 | 800 |
WS2 | 2500 | 1 | 1 | 800 | 800 |
WS3 | 3500 | 1 | 1 | 800 | 800 |
* Další informace o hodnotách, které můžete změnit pro každou cenovou úroveň, najdete v následující tabulce:
Hodnota | Popis |
---|---|
Maximální nárůsty | Maximální počet elastických pracovníchprocesůch Pokud vaše podkladová aplikace vyžaduje instance nad rámec vždy připravených instancí v dalším řádku tabulky, může aplikace dál škálovat kapacitu, dokud počet instancí nenasáhne maximální limit pro zvýšení kapacity. Pokud chcete tuto hodnotu změnit, přečtěte si téma Upravit nastavení horizontálního navýšení kapacity plánu hostování dále v tomto článku. Poznámka: Všechny instance nad rámec vaší velikosti plánu se účtují jenom v případě, že jsou spuštěné a přiděleny vám za sekundu. Platforma se snaží škálovat aplikaci na definovaný maximální limit. Tip: Jako doporučení vyberte maximální hodnotu, která je vyšší, než je možná potřeba, aby platforma mohla škálovat kapacitu, aby v případě potřeby zvládla větší zatížení, protože nevyužité instance se neúčtují. Další informace najdete v následující dokumentaci, ve které se plán Pracovní postup Standard sdílí některé aspekty s plánem Azure Functions Premium: - Plánování a nastavení skladové položky – Plán Azure Functions Premium |
Vždy připravené instance | Minimální počet instancí, které jsou vždy připravené a teplé pro hostování vaší aplikace. Minimální číslo je vždy 1. Pokud chcete tuto hodnotu změnit, přečtěte si téma Upravit nastavení horizontálního navýšení kapacity plánu hostování dále v tomto článku. Poznámka: Všechny instance nad rámec vaší velikosti plánu se účtují bez ohledu na to, jestli jsou spuštěné, když vám jsou přiděleny. Další informace najdete v následující dokumentaci, protože plán Workflow Standard sdílí některé aspekty s plánem Azure Functions Premium: Vždy připravené instance – plán Azure Functions Premium. |
Prefetch count | Výchozí hodnota pro AzureFunctionsJobHost__extensions__serviceBus__prefetchCount nastavení aplikace v prostředku aplikace logiky, která určuje počet předběžného načtení používaný podkladovou ServiceBusProcessor třídou. Pokud chcete přidat nebo zadat jinou hodnotu pro toto nastavení aplikace, přečtěte si téma Správa nastavení aplikace – local.settings.json, například: - Název: Další informace o - nastavení host.json – vazby služby Azure Service Bus pro Azure Functions |
Maximální počet zpráv | Výchozí hodnota AzureFunctionsJobHost__extensions__serviceBus__batchOptions__maxMessageCount pro nastavení aplikace v prostředku aplikace logiky, která určuje maximální počet zpráv, které se mají odeslat při aktivaci. Pokud chcete přidat nebo zadat jinou hodnotu pro toto nastavení aplikace, přečtěte si téma Správa nastavení aplikace – local.settings.json, například: - Název: Další informace o |
Požadavky
Účet a předplatné Azure. Pokud předplatné nemáte, zaregistrujte si bezplatný účet Azure.
Zdrojové a cílové prostředky nebo entity, které by měly existovat v různých oblastech Azure, abyste mohli otestovat scénář převzetí služeb při selhání geografického zotavení po havárii. Tyto entity se můžou lišit v závislosti na šabloně úkolu, kterou chcete použít. Příklad v tomto článku používá dvě fronty služby Service Bus, které se nacházejí v různých oborech názvů a oblastech Azure.
Prostředek aplikace logiky (Standard), který můžete znovu použít při vytváření úlohy replikace. Tímto způsobem můžete tento prostředek přizpůsobit speciálně pro úlohu replikace, například výběrem plánu hostování a cenové úrovně na základě potřeb scénáře replikace, jako je kapacita, propustnost a škálování. I když tento prostředek můžete vytvořit při vytváření úlohy replikace, nemůžete změnit oblast, plán hostování a cenovou úroveň. Následující seznam obsahuje další důvody a osvědčené postupy pro dříve vytvořený prostředek aplikace logiky:
Tento prostředek aplikace logiky můžete vytvořit v oblasti, která se liší od zdrojových a cílových entit ve vaší úloze replikace.
V současné době jsou tyto pokyny k dispozici kvůli nativní integraci úlohy replikace v rámci prostředků Azure. Když vytvoříte úlohu replikace mezi entitami a rozhodnete se místo použití existujícího prostředku aplikace logiky vytvořit nový prostředek aplikace logiky, vytvoří se nová aplikace logiky ve stejné oblasti jako zdrojová entita. Pokud zdrojová oblast přestane být dostupná, úloha replikace také nemůže fungovat. Ve scénáři převzetí služeb při selhání nemůže úloha také začít číst data z nového zdroje, dříve cílovou entitu, což je to, čeho se model replikace aktivní-pasivní snaží dosáhnout.
Tento prostředek aplikace logiky můžete předem přizpůsobit tak, že zvolíte plán hostování a cenovou úroveň, a ne použijete výchozí atributy. Tímto způsobem může úloha replikace zpracovávat více událostí nebo zpráv za sekundu pro rychlejší replikaci. Pokud tento prostředek vytvoříte při vytváření úlohy replikace, opraví se tyto výchozí atributy.
Ujistěte se, že tento prostředek aplikace logiky obsahuje jenom pracovní postupy úloh replikace, zejména pokud chcete postupovat podle vzoru replikace typu aktivní-pasivní. Když k vytvoření úlohy replikace použijete existující aplikaci logiky, přidá tato možnost k danému prostředku aplikace logiky úkol (bezstavový pracovní postup).
Další informace najdete v tématu Vytvoření pracovního postupu integrace s azure Logic Apps (Standard) s jedním tenantem na webu Azure Portal.
Volitelné: Připojovací řetězec pro cílový obor názvů. Tato možnost umožňuje, aby cíl existoval v jiném předplatném, abyste mohli nastavit replikaci mezi předplatnými.
Chcete-li najít připojovací řetězec pro cílovou entitu, postupujte takto:
Na webu Azure Portal přejděte do cílového oboru názvů.
V navigační nabídce oboru názvů v části Nastavení vyberte Zásady sdíleného přístupu.
V podokně Zásady sdíleného přístupu, které se otevře, v části Zásady vyberte RootManageSharedAccessKey.
V zásadě SAS: RootManageSharedAccessKey podokno, které se otevře, zkopírujte hodnotu primárního připojovacího řetězce.
Uložte připojovací řetězec někam, abyste se později mohli pomocí řetězce připojit k cílovému oboru názvů.
Zásady vytváření názvů
Pečlivě zvažte strategii pojmenování, kterou používáte pro úlohy nebo entity replikace, pokud jste je ještě nevytvořili. Ujistěte se, že názvy jsou snadno identifikovatelné a odlišené. Pokud například pracujete s oborem názvů služby Event Hubs, úloha replikace se replikuje z každé instance služby Event Hubs ve zdrojovém oboru názvů. Pokud pracujete s frontami služby Service Bus, následující tabulka obsahuje příklad pojmenování entit a úlohy replikace:
Název zdroje | Příklad | Aplikace replikace | Příklad | Cílový název | Příklad |
---|---|---|---|---|---|
Obor názvů: <name>-sb-<region> |
fabrikam-sb-weu |
Aplikace logiky: <name-source-region-target-region> |
fabrikam-rep-weu-wus |
Obor názvů: <name>-sb-<region> |
fabrikam-sb-wus |
Fronta: <name> |
jobs-transfer |
Pracovní postup: <name> |
jobs-transfer-workflow |
Fronta: <name> |
jobs |
Vytvoření úlohy replikace
Tento příklad ukazuje, jak vytvořit úlohu replikace pro fronty služby Service Bus.
Na webu Azure Portal vyhledejte obor názvů služby Service Bus, který chcete použít jako zdroj.
V navigační nabídce oboru názvů vyberte v části Automation a vyberte Úkoly (Preview).
V podokně Úkoly vyberte Přidat úlohu , abyste mohli vybrat šablonu úkolu.
V podokně Přidat úlohu v části Vybrat šablonu v šabloně pro úlohu replikace, kterou chcete vytvořit, vyberte Vybrat. Pokud se další stránka nezobrazí, vyberte Další: Ověření.
Tento příklad pokračuje výběrem šablony úlohy fronty Replikovat z fronty service bus do fronty, která replikuje obsah mezi frontami služby Service Bus.
Na kartě Ověření vyberte v části Připojení možnost Vytvořit pro každé připojení, které se zobrazí v úloze, abyste mohli zadat ověřovací přihlašovací údaje pro všechna připojení. Typy připojení v jednotlivých úkolech se liší v závislosti na úkolu.
Tento příklad ukazuje výzvu k vytvoření připojení k cílovému oboru názvů služby Service Bus, ve kterém existuje cílová fronta. Připojení existuje pro zdrojový obor názvů služby Service Bus.
Zadejte potřebné informace o cíli a pak vyberte Vytvořit.
V tomto příkladu zadejte zobrazovaný název připojení a pak vyberte obor názvů služby Service Bus, kde existuje cílová fronta.
Tip
Místo toho můžete vytvořit připojení s připojovací řetězec. Tato možnost umožňuje mít cíl v jiném předplatném, abyste mohli nastavit replikaci mezi předplatnými. Cíl nebo zdroj založený na tom, kde jste začali vytvářet úlohu replikace, se dynamicky konfiguruje, takže ho budete muset připojit jenom. Pokud chcete použít připojovací řetězec, postupujte následovně:
V podokně Připojit vyberte Připojit přes připojovací řetězec.
Do pole Připojovací řetězec zadejte připojovací řetězec pro cílový obor názvů.
Následující příklad ukazuje úspěšně vytvořené připojení:
Po dokončení všech připojení vyberte Další: Konfigurovat.
Na kartě Konfigurace zadejte název úkolu a všechny další informace potřebné pro úkol.
Poznámka:
Po vytvoření nemůžete změnit název úkolu, proto zvažte název, který se stále použije, pokud upravíte podkladový pracovní postup. Změny provedené v podkladovém pracovním postupu se vztahují pouze na úkol, který jste vytvořili, nikoli na šablonu úkolu.
Pokud například pojmenujete úkol
fabrikam-rep-weu-wus
, ale později upravíte podkladový pracovní postup pro jiný účel, nemůžete změnit název úkolu tak, aby odpovídal.Pokud chcete přidat pracovní postup úkolu do existujícího prostředku aplikace logiky (Standard), vyberte ze seznamu aplikace logiky existující aplikaci logiky. Pokud chcete místo toho vytvořit nový prostředek aplikace logiky (Standard), vyberte v seznamu Aplikace logiky možnost Vytvořit novou a zadejte název, který se má použít pro novou aplikaci logiky.
Poznámka:
Pokud během vytváření úlohy replikace vytvoříte nový prostředek aplikace logiky, vytvoří se aplikace logiky ve stejné oblasti jako zdrojová entita, což je problematické, pokud zdrojová oblast přestane být dostupná a ve scénáři převzetí služeb při selhání nebude fungovat. Osvědčeným postupem je vytvořit prostředek aplikace logiky (Standard) v jiné oblasti než zdroj. Když vytvoříte úlohu replikace, vyberte místo toho existující aplikaci logiky a přidejte do existující aplikace logiky základní bezstavový pracovní postup. Další informace najdete v požadavcích.
Až budete hotovi, vyberte Zkontrolovat a vytvořit.
Na kartě Zkontrolovat a vytvořit potvrďte prostředky Azure, které úloha replikace vyžaduje pro operaci.
Pokud jste se rozhodli vytvořit nový prostředek aplikace logiky pro úlohu replikace, v podokně se zobrazí požadované prostředky Azure, které úloha replikace vytvoří pro provoz. Mezi tyto prostředky patří například účet Azure Storage, který obsahuje informace o konfiguraci pro prostředek aplikace logiky, pracovní postup a další operace modulu runtime. Například u služby Event Hubs obsahuje tento účet úložiště informace o kontrolním bodu a pozici nebo posun ve streamu, kde se zdrojová entita zastaví, pokud je zdrojová oblast narušena nebo nedostupná.
Následující příklad ukazuje kartu Zkontrolovat a vytvořit , pokud jste se rozhodli vytvořit novou aplikaci logiky:
Pokud jste se rozhodli znovu použít existující prostředek aplikace logiky pro úlohu replikace, v podokně se zobrazí prostředky Azure, které replikace použije k provozu.
Následující příklad ukazuje kartu Zkontrolovat a vytvořit , pokud jste se rozhodli znovu použít existující aplikaci logiky:
Poznámka:
Pokud je zdroj, cíl nebo obojí za virtuální sítí, musíte po vytvoření úkolu nastavit oprávnění a přístup. V tomto scénáři se vyžadují oprávnění a přístup, aby pracovní postup aplikace logiky mohl provést úlohu replikace.
Až budete připraveni, vyberte Vytvořit.
Úloha, kterou jste vytvořili, která je automaticky aktivní a spuštěná, se teď zobrazí v seznamu Úkolů .
Tip
Pokud se úkol nezobrazí okamžitě, zkuste aktualizovat seznam úkolů nebo chvíli počkat, než ho aktualizujete. Na panelu nástrojů vyberte Aktualizovat.
Pokud jsou vaše prostředky za virtuální sítí, nezapomeňte nastavit oprávnění pro prostředek aplikace logiky a pracovní postup pro přístup k těmto prostředkům.
Nastavení zásad opakování
Pokud se chcete vyhnout ztrátě dat během události dostupnosti na obou stranách vztahu replikace, musíte nakonfigurovat zásady opakování pro odolnost. Pokud chcete nakonfigurovat zásady opakování pro úlohu replikace, projděte si dokumentaci týkající se zásad opakování v Azure Logic Apps a kroky pro úpravu základního pracovního postupu.
Kontrola historie úkolů
Tento příklad ukazuje, jak zobrazit historii pracovního postupu úlohy spolu se stavy, vstupy, výstupy a dalšími informacemi a pokračovat v používání příkladu úlohy replikace fronty Service Bus.
Na webu Azure Portal vyhledejte prostředek nebo entitu Azure, která má historii úloh, kterou chcete zkontrolovat.
V tomto příkladu je tento prostředek oborem názvů služby Service Bus.
V navigační nabídce prostředku v části Nastavení v části Automatizace vyberte Úkoly (Preview).
V podokně Úlohy vyhledejte úlohu, kterou chcete zkontrolovat. Ve sloupci Spuštění úkolu vyberte Zobrazit.
Tento krok otevře podokno Přehled základního bezstavového pracovního postupu, který je součástí prostředku aplikace logiky Standard.
Pokud chcete zobrazit historii spuštění pro bezstavový pracovní postup, vyberte na panelu nástrojů podokna Přehled režim ladění.
Na kartě Historie spuštění se zobrazují všechny předchozí probíhající a čekající spuštění pro úlohu spolu s jejich identifikátory, stavy, časy spuštění a dobami trvání spuštění.
Následující tabulka popisuje možné stavy spuštění:
Popisek stavu Popis Zrušeno Úloha byla při spuštění zrušena. Neúspěch Úkol má alespoň jednu neúspěšnou akci, ale neexistovaly žádné následné akce pro zpracování selhání. Spuštěno Úloha je aktuálně spuštěná. Uspěl Všechny akce byly úspěšné. Úkol se může úspěšně dokončit, pokud se akce nezdařila, ale existovala další akce pro zpracování selhání. Čekání Spuštění ještě není spuštěné a je pozastavené, protože předchozí instance úlohy je stále spuštěná. Pokud chcete zobrazit stavy a další informace pro každý krok spuštění, vyberte toto spuštění.
Otevře se podokno podrobností spuštění a zobrazí podkladový pracovní postup, který běžel.
Pokud chcete zkontrolovat vstupy a výstupy pro každý krok, vyberte krok, který otevře podokno zobrazící vstupy, výstupy a podrobnosti o vlastnostech daného kroku.
Tento příklad ukazuje vstupy pro trigger služby Service Bus.
Pokud chcete zjistit, jak můžete vytvářet vlastní automatizované pracovní postupy, abyste mohli integrovat aplikace, data, služby a systémy kromě kontextu úloh replikace pro prostředky Azure, projděte si téma Vytvoření pracovního postupu integrace s jednou tenantovou službou Azure Logic Apps (Standard) na webu Azure Portal.
Monitorování úloh replikace
Pokud chcete zkontrolovat výkon a stav úlohy replikace nebo základního pracovního postupu aplikace logiky, můžete použít Application Insights, což je funkce ve službě Azure Monitor. Mapa aplikace Application Insights je užitečný vizuální nástroj, který můžete použít k monitorování úloh replikace. Tato mapa se automaticky generuje z zachycených informací o monitorování, abyste mohli prozkoumat výkon a spolehlivost zdroje úlohy replikace a cílových přenosů. Pro okamžité diagnostické přehledy a vizualizaci podrobností protokolu s nízkou latencí můžete pracovat s nástrojem portálu Live Metrics , který je také funkcí služby Azure Monitor.
Úprava úkolu
Pokud chcete změnit úkol, máte tyto možnosti:
Upravte úlohu "vloženou" , abyste mohli změnit vlastnosti úkolu, například informace o připojení nebo informace o konfiguraci.
Upravte základní pracovní postup úkolu v návrháři.
Úprava vloženého úkolu
Na webu Azure Portal vyhledejte prostředek, který má úlohu, kterou chcete aktualizovat.
V navigační nabídce prostředků v části Automatizace vyberte Úkoly (Preview).<
/a0> V seznamuúkolůch Otevřete nabídku se třemi tečkami (...) úkolu a vyberte Upravit v řádku.
Ve výchozím nastavení se zobrazí karta Ověření a zobrazí se existující připojení.
Pokud chcete přidat nové přihlašovací údaje pro ověřování nebo vybrat jiné existující přihlašovací údaje pro připojení, otevřete nabídku se třemi tečkami připojení (...) a vyberte přidat nové připojení nebo pokud jsou k dispozici jiné ověřovací přihlašovací údaje.
Poznámka:
Můžete upravit pouze cílové připojení, nikoli zdrojové připojení.
Chcete-li aktualizovat další vlastnosti úlohy, vyberte Další: Konfigurovat.
Pro úlohu v tomto příkladu můžete zadat různé zdrojové a cílové fronty. Název úlohy a podkladová aplikace logiky a pracovní postup však zůstávají stejné.
Až budete hotovi, zvolte tlačítko Uložit.
Úprava základního pracovního postupu úkolu
Můžete upravit základní pracovní postup za úlohou replikace, který změní původní konfiguraci pro úlohu, kterou jste vytvořili, ale ne samotnou šablonu úkolu. Po provedení a uložení změn už upravený úkol neprovádí stejnou funkci jako původní úkol. Pokud chcete, aby úloha, která provádí původní funkce, možná budete muset vytvořit nový úkol se stejnou šablonou. Pokud nechcete původní úkol znovu vytvořit, vyhněte se změně pracovního postupu za úkolem pomocí návrháře. Místo toho vytvořte bezstavový pracovní postup aplikace logiky (Standard), který vyhovuje vašim potřebám integrace. Další informace najdete v tématu Vytvoření pracovního postupu integrace s azure Logic Apps (Standard) s jedním tenantem na webu Azure Portal.
Na webu Azure Portal vyhledejte prostředek, který má úlohu, kterou chcete aktualizovat.
V navigační nabídce prostředku v části Automatizace vyberte Úkoly.
V seznamuúkolůch Otevřete nabídku se třemi tečkami (...) úkolu a vyberte Otevřít v Logic Apps.
Azure Portal změní kontext na návrháře, kde teď můžete pracovní postup upravit.
Teď můžete upravit aktivační událost a akce pracovního postupu a také vlastnosti triggeru a akcí.
Pokud chcete zobrazit vlastnosti aktivační události nebo akce, vyberte tuto aktivační událost nebo akci.
V tomto příkladu se vlastnost IsSessionsEnabled triggeru změní na Ano.
Změny uložíte tak, že na panelu nástrojů návrháře vyberete Uložit.
Pokud chcete otestovat a spustit aktualizovaný pracovní postup, otevřete prostředek aplikace logiky, který obsahuje aktualizovaný pracovní postup. V navigační nabídce pracovního postupu vyberte Spustit aktivační událost>přehledu>.
Po dokončení spuštění návrhář zobrazí podrobnosti o spuštění pracovního postupu. Pokud chcete zkontrolovat vstupy a výstupy pro každý krok, vyberte krok, který otevře podokno zobrazící vstupy, výstupy a podrobnosti o vlastnostech daného kroku.
Tento příklad ukazuje vstupy, výstupy a vlastnosti vybrané aktivační události služby Service Bus spolu s aktualizovanou hodnotou vlastnosti aktivační události.
Pokud chcete pracovní postup zakázat, aby úloha neběžel dál, vyberte na panelu nástrojů Přehled možnost Zakázat. Další informace najdete v tématu Zakázání nebo povolení pracovních postupů s jedním tenantem.
Nastavení převzetí služeb při selhání pro službu Azure Event Hubs
Pro replikaci Azure Event Hubs mezi stejnými typy entit vyžaduje zotavení po havárii provést převzetí služeb při selhání ze zdrojové entity na cílovou entitu a pak oznámit všem ovlivněným příjemcům a producentům událostí, aby používali koncový bod pro cílovou entitu, což se stane novým zdrojem. Pokud dojde k havárii a zdrojová entita převezme služby při selhání, příjemci a producenti, včetně úlohy replikace, se přesměrují na nový zdroj. Účet úložiště vytvořený úlohou replikace obsahuje informace o kontrolním bodu a pozici nebo posun ve streamu, kde se zdrojová entita zastaví, pokud dojde k narušení zdrojové oblasti nebo nedostupnosti.
Abyste měli jistotu, že účet úložiště neobsahuje žádné starší informace z původního zdroje a že úloha replikace začne číst a replikovat události od začátku nového zdrojového datového proudu, musíte všechny starší informace z původního zdroje ručně vyčistit a znovu nakonfigurovat úlohu replikace.
Na webu Azure Portal otevřete prostředek aplikace logiky nebo základní pracovní postup za úlohou replikace.
Poznámka:
Prostředek aplikace logiky by měl obsahovat pouze pracovní postupy úloh replikace.
V navigační nabídce zdroje nebo pracovního postupu vyberte Přehled. Na panelu nástrojů Přehled buď vyberte Zakázat pro pracovní postup, nebo vyberte Zastavit prostředek aplikace logiky.
Pokud chcete najít účet úložiště, který používá základní prostředek aplikace logiky úlohy replikace k uložení kontrolního bodu a informací o posunu datového proudu ze zdrojové entity, postupujte takto:
V nabídce prostředku aplikace logiky v části Nastavení vyberte Konfigurace.
V podokně Konfigurace na kartě Nastavení aplikace vyberte nastavení aplikace AzureWebJobsStorage.
Toto nastavení určuje připojovací řetězec a účet úložiště používaný prostředkem aplikace logiky.
Poznámka:
Pokud se nastavení aplikace v seznamu nezobrazí, vyberte Zobrazit hodnoty.
Vyberte nastavení aplikace AzureWebJobsStorage, abyste mohli zobrazit název účtu úložiště.
Tento příklad ukazuje, jak najít název tohoto účtu úložiště, což je
storagefabrikamreplb0c
tady:- Pokud chcete ověřit, že prostředek účtu úložiště existuje, zadejte název do vyhledávacího pole webu Azure Portal a pak vyberte účet úložiště, například:
Teď pomocí následujícího postupu odstraňte složku, která obsahuje kontrolní bod zdrojové entity a informace o posunu:
Pokud nemáte nejnovější verzi, stáhněte si, nainstalujte a otevřete nejnovější Průzkumník služby Azure Storage desktopového klienta.
Poznámka:
Pro úlohu vyčištění odstranění musíte v současné době používat klienta Průzkumník služby Azure Storage, nikoli průzkumníka úložiště, prohlížeče, editoru nebo prostředí pro správu na webu Azure Portal.
I když můžete odstranit složky kontejnerů pomocí příkazu PowerShellu
Remove-AzStorageDirectory
, tento příkaz funguje jenom u prázdných složek.Pokud jste to ještě neudělali, přihlaste se pomocí svého účtu Azure a ujistěte se, že je vybrané předplatné Azure pro váš prostředek účtu úložiště. Další informace najdete v tématu Začínáme s Průzkumník služby Storage.
V okně Průzkumníka přejděte pod názvem předplatného Azure do účtů> úložiště{název_účtu_úložiště}>Kontejnery>objektů blob azure-webjobs-eventhub.
Poznámka:
Pokud složka azure-webjobs-eventhub neexistuje, úloha replikace se ještě nespustila. Složka se zobrazí až po spuštění úlohy replikace aspoň jednou.
V podokně azure-webjobs-eventhub , které se otevře, vyberte složku oboru názvů Event Hubs, která má název s následujícím formátem:
<source-Event-Hubs-namespace-name>.servicebus.windows.net
.Po otevření složky oboru názvů vyberte v podokně< azure-webjobs-eventhub složku s názvem> bývalého zdroje entity. V místní nabídce panelu nástrojů nebo složky vyberte například Odstranit:
Potvrďte, že chcete složku odstranit.
Vraťte se k prostředku aplikace logiky nebo pracovnímu postupu za úlohou replikace. Restartujte aplikaci logiky nebo znovu povolte pracovní postup.
Pokud chcete, aby producenti a spotřebitelé používali nový zdrojový koncový bod, musíte zpřístupnit informace o nové zdrojové entitě, kterou můžete použít a najít v umístění, které je snadno dostupné a aktualizovat. Pokud producenti nebo spotřebitelé narazí na časté nebo trvalé chyby, měli by zkontrolovat toto umístění a upravit konfiguraci. Konfigurace se dá sdílet mnoha způsoby, ale příklady jsou DNS a sdílené složky.
Další informace o geografickém zotavení po havárii najdete v následující dokumentaci:
- Azure Event Hubs – Geografické zotavení po havárii
- Azure Service Bus – Geografické zotavení po havárii
Úprava nastavení horizontálního navýšení kapacity plánu hostování
Na webu Azure Portal otevřete základní prostředek aplikace logiky pro vaši úlohu replikace.
V nabídce prostředků aplikace logiky v části Nastavení vyberte Horizontální navýšení kapacity (plán služby App Service).
V závislosti na potřebách vašeho scénáře změňte v části Plánování horizontálního navýšení kapacity a horizontálního navýšení kapacity aplikace hodnoty maximálního nárůstu a vždy připravené instance.
Až budete hotovi, na panelu nástrojů podokna Horizontální navýšení kapacity (plán služby App Service) vyberte Uložit.
Další informace najdete v následující dokumentaci, ve které se plán Pracovní postup Standard sdílí některé aspekty s plánem Azure Functions Premium:
- Plánování a nastavení skladové položky – Plán Azure Functions Premium
- Co je nárůst cloudu?
- Vždy připravené instance – plán Azure Functions Premium
Problémy a selhání replikace
Tato část popisuje možné způsoby, jak může replikace selhat nebo přestat fungovat:
Omezení velikosti zpráv
Nezapomeňte odesílat zprávy menší než 1 MB, protože úloha replikace přidává vlastnosti replikace. Jinak pokud je velikost zprávy větší než velikost událostí, které je možné odeslat do entity event Hubs po přidání vlastností replikace úlohy, proces replikace selže.
Předpokládejme například, že velikost zprávy je 1 MB. Po přidání vlastností replikace je velikost zprávy větší než 1 MB. Odchozí volání, které se pokusí zprávu odeslat, selže.
Klíče oddílu
Pokud v událostech existují nějaké klíče oddílů, replikace mezi instancemi služby Event Hubs selže, pokud mají tyto instance stejný počet oddílů.