Vývoj pro cloud v Azure
Jste vývojář v Pythonu a jste připraveni vyvíjet cloudové aplikace pro Microsoft Azure. Tato série tří článků vám pomůže připravit se na dlouhou a produktivní kariéru a orientuje vás na základní prostředí vývoje cloudu v Azure.
Co je Azure? Datová centra, služby a prostředky
Generální ředitel Microsoftu Satya Nadella často označuje Azure jako "počítač na světě". Jak dobře víte, počítač je kolekce hardwaru, která je spravovaná operačním systémem a která poskytuje platformu, na které můžete vytvářet software, který lidem pomáhá aplikovat výpočetní výkon systému na libovolný počet úkolů. (Proto k popisu takového softwaru používáme slovo "aplikace".)
V případě Azure není hardware počítače jediným počítačem, ale obrovským fondem virtualizovaných serverových počítačů, které se nachází v desítkách obrovských datových center po celém světě. "Operační systém" Azure se pak skládá ze služeb, které dynamicky přidělují a zrušte přidělení různých částí tohoto fondu zdrojů podle toho, jak je aplikace potřebují. Tato dynamická přidělení umožňují aplikacím rychle reagovat na libovolný počet měnících se podmínek, jako je poptávka zákazníků.
Každé přidělení se nazývá prostředeka každému prostředku je přiřazen jedinečný identifikátor objektu (GUID) i jedinečná adresa URL. Mezi typy prostředků patří virtuální počítače (jádra procesoru a paměť), úložiště, databáze, virtuální sítě, registry kontejnerů, orchestrátory kontejnerů, webové hostitele, AI a analytické moduly atd.

Prostředky jsou stavebními bloky cloudové aplikace. Proces vývoje cloudu tak začíná vytvořením vhodného prostředí, do kterého můžete nasadit různé části aplikace. Jednoduše řečeno, do Azure nemůžete nasadit žádný kód ani data, dokud nenasadíte a nenakonfigurujete (zřízené) vhodné cílové prostředky.
Proces vytvoření prostředí pro vaši aplikaci pak zahrnuje identifikaci příslušných služeb a typů prostředků a jejich zřízení. Proces zřizování je v podstatě způsob, jakým sestavíte výpočetní systém, do kterého aplikaci nasadíte. Zřizování je také bod, ve kterém začnete pronajímat tyto prostředky z Azure.
Máte k dispozici stovky různých typů prostředků, od základních prostředků infrastruktury, jako jsou virtuální počítače, kde máte plnou kontrolu a zodpovědnost za software, který nasazujete, až po služby platformy vyšší úrovně, které poskytují více spravované prostředí, ve kterém se sami zabýváte jenom daty a kódem aplikace.
Hledání správných služeb pro vaši aplikaci a vyvážení jejich relativních nákladů může být náročné, ale je také součástí kreativní radosti z vývoje cloudu. Pokud chcete porozumět mnoha možnostem, prohlédněte si příručku pro vývojáře Azure. Teď se podíváme na to, jak se všemi těmito službami a prostředky skutečně pracujete.
Poznámka
Pravděpodobně jste viděli a možná jste se trochu ošimli termíny IaaS (infrastruktura jako služba), PaaS (platforma jako služba) a tak dále. Část as-a-service odráží skutečnost, že obecně nemáte fyzický přístup k samotným datovým centrem. Místo toho můžete ke zřizování prostředků infrastruktury, Azure Portal platformy a podobně použít nástroje, jako je Azure Portal, Azure CLI nebo azure's REST API. Azure jako službavždy stojí a čeká na přijetí vašich žádostí.
V tomto centru pro vývojáře vás ušetříme žargonU IaaS, PaaS atd., protože "jako služba" je pro začátek součástí cloudu.
Poznámka
Hybridní cloud odkazuje na kombinaci privátních počítačů a data center s cloudovými prostředky, jako je Azure, a má vlastní aspekty nad rámec toho, co bylo probádáno v předchozí diskuzi. Kromě toho tato diskuze předpokládá vývoj nových aplikací. Scénáře, které zahrnují přearchitekci a migraci stávajících místních aplikací, zde nejsou uvedené.
Poznámka
Můžete slyšet pojmy nativní cloudové aplikace a aplikace s podporou cloudu, o kterých se často diskutuje jako o stejné věci. Existují však rozdíly. Cloudová aplikace je často migrovaná jako celek z místního datového centra na cloudové servery. Takové aplikace si často zachovávají původní strukturu a jednoduše se nasadí do virtuálních počítačů v cloudu (a tedy napříč geografickými oblastmi). Taková migrace umožňuje aplikaci škálovat se tak, aby splňovala globální poptávku, aniž by bylo třeba zřizované nové hardware ve vašem vlastním datovém centru. Škálování se ale musí provést na úrovni virtuálního počítače (nebo infrastruktury), a to i v případě, že vyšší výkon vyžaduje pouze jedna část aplikace.
Na druhou stranu nativní cloudová aplikace je od počátku napsána, aby využila mnoho různých, nezávisle škálovatelných služeb dostupných v cloudu, jako je Azure. Aplikace nativní pro cloud jsou volněji strukturované (například pomocí architektur mikroslužby), což vám umožní přesněji nakonfigurovat nasazení a škálování pro každou část. Tato struktura zjednodušuje údržbu a často výrazně snižuje náklady, protože za prémiové služby potřebujete platit jenom tam, kde je to nezbytné.
Další informace najdete v tématu Vytváření aplikací nativních pro cloud v Azure a Vytváření nativních cloudových aplikací .NETpro Azure. Principy, které platí pro aplikace napsané v libovolném jazyce.