Nasazení infrastruktury Linuxu a PostgreSQL
Tato lekce vás provede vytvořením výpočetních prostředků, které hostují vaši aplikaci v Azure.
Existuje několik metod nasazení infrastruktury v Azure, včetně webu Azure Portal, Azure CLI a šablon infrastruktury jako kódu (včetně Bicep a Terraformu). V této lekci nasadíte předem nakonfigurovanou šablonu Bicep, která zapouzdřuje výpočetní prostředky požadované pro vaši aplikaci. Mezi klíčové prostředky patří:
- Virtuální počítač s Linuxem (Ubuntu 24.04 LTS)
- Azure Database for Postgres běžící na Postgres 16 nebo novější
- Spravovaná identita umožňující zabezpečený přístup z virtuálního počítače k databázi
- RBAC, včetně rolí pro přístup k databázi jako správce, a více omezujících rolí pro samotnou aplikaci
- Virtuální síť pro virtuální počítač i databázi
Vzhledem k tomu, že tento příklad představuje úlohu vývoje/testování a chceme zachovat nákladově efektivní i výkonnou, zvolili jsme pro vás následující konfiguraci:
Virtuální počítač je standardní D2s_v4 (dva virtuální procesory, 8 GB paměti). Má azure Premium SSD se 3 200 maximálními vstupně-výstupními operacemi za sekundu (IOPS) a 128 GB úložiště. Má připojený disk SSD úrovně P10 128 GB Premium s 500 IOPS disku s operačním systémem. Disk s operačním systémem můžete podle potřeby upgradovat tak, aby odpovídal IOPS virtuálního počítače.
Databáze je D2ds_v4 pro obecné účely (dvě virtuální jádra, 8 GB paměti RAM) s maximálním počtem IOPS 3 200. Má disk SSD úrovně P10 128 GB Premium s 500 IOPS. Podle potřeby můžete tento disk upgradovat tak, aby odpovídal výpočetnímu IOPS.
Po dokončení modulu tyto prostředky odstraníte, abyste ušetřili náklady. Virtuální počítač a databázi ale můžete vypnout také v případě, že se nepoužívají, abyste ušetřili náklady na výpočetní prostředky a zaplatili jenom za úložiště, které používáte. Podle potřeby můžete tuto úlohu vertikálně navýšit.
Šablona Bicep v tomto modulu využívá ověřené moduly Azure (AVM). AVM je iniciativa pro standardizaci modulů infrastruktury jako kódu. Microsoft tyto moduly udržuje a zapouzdřuje mnoho osvědčených postupů pro nasazování prostředků v Azure.
Ujistěte se, že máte předplatné Azure a Azure CLI.
Pokud nemáte předplatné Azure, vytvořte si bezplatný účet , než začnete.
Tento modul vyžaduje Azure CLI verze 2.0.30 nebo novější. Verzi najděte pomocí následujícího příkazu:
az --version
Pokud potřebujete nainstalovat nebo upgradovat, přečtěte si téma Instalace Azure CLI.
Přihlášení k Azure pomocí Azure CLI
Pokud chcete spouštět příkazy v Azure pomocí Azure CLI, musíte se nejdřív přihlásit. Přihlaste se pomocí az login příkazu:
az login
Vytvoření skupiny zdrojů
Skupina prostředků je kontejner pro související prostředky. Všechny prostředky musí být umístěné ve skupině prostředků. Pomocí příkazu az group create vytvořte skupinu prostředků:
az group create \
--name 240900-linux-postgres \
--location westus2
Nasazení šablony Bicep pomocí Azure CLI
Bicep je jazyk specifický pro doménu (DSL), který k nasazování prostředků Azure používá deklarativní syntaxi. V souboru Bicep definujete infrastrukturu, kterou chcete nasadit do Azure. Tento soubor pak použijete během životního cyklu vývoje k opakovanému nasazení infrastruktury. Vaše prostředky se nasazují konzistentním způsobem.
Soubor Bicep, který používáte k nasazení výpočetních prostředků pro tuto jednotku, je v úložišti Deploy/vm-postgres.bicep Na GitHubu. Obsahuje virtuální počítač, virtuální síť, spravovanou identitu a skupinu zabezpečení sítě (NSG) pro virtuální počítač. Další informace o Bicep si můžete přečíst v článku Co je Bicep?.
Naklonujte ukázkové úložiště do místního počítače:
git clone https://github.com/Azure-Samples/linux-postgres-migration.gitPřejděte do
linux-postgres-migrationadresáře:cd linux-postgres-migrationNasazení šablony Bicep:
az deployment group create \ --resource-group 240900-linux-postgres \ --template-file deploy/vm-postgres.bicep
Po dokončení nasazení výstup JSON potvrdí, že jsou prostředky nasazené.
V dalších částech nakonfigurujete a prozkoumáte role RBAC a pravidla zabezpečení sítě na nasazené infrastruktuře pomocí webu Azure Portal. Při použití webu Azure Portal můžete role a pravidla zakódovat do šablony Bicep. Azure Portal poskytuje vizuální rozhraní, které usnadňuje pochopení vztahů mezi prostředky a oprávněními, která jsou jim přiřazena.
Otevření skupiny prostředků na webu Azure Portal
Otevřete Azure Portal.
V nabídce služby vyberte skupiny prostředků.
V podokně Skupiny prostředků vyberte skupinu
240900-linux-postgresprostředků .
V pravé horní části podokna se v oblasti Nasazení zobrazuje stav nasazení šablony Bicep. Po úspěšném nasazení se zobrazí úspěch.
Zobrazení skupiny zabezpečení sítě virtuálního počítače
Vyberte virtuální počítač
vm-1.V části Sítě vyberte Nastavení sítě.
Nastavení sítě ukazuje, že skupina zabezpečení sítě (240900-linux-postgres-nsg) je připojená ke stejné podsíti virtuální sítě (240900-linux-postgres-vnet) jako virtuální počítač.
Skupina zabezpečení sítě je také viditelná uvnitř skupiny prostředků. Obsahuje sadu příchozích a odchozích pravidel zabezpečení, která řídí provoz do a z virtuálního počítače.
Návrat do skupiny prostředků
V horní části stránky vyberte odkaz s popisem cesty, který se vrátí do skupiny prostředků (Home > Resource groups > 240900-linux-postgres).
Všimněte si, že spravovaná identita přiřazená uživatelem 240900-linux-postgres-identity je uvedená ve skupině prostředků.
Další informace o spravovaných identitách přiřazených systémem a uživatelem najdete v tématu Co jsou spravované identity pro prostředky Azure?
Přidání příchozího pravidla zabezpečení do skupiny zabezpečení sítě
Přidejte do skupiny zabezpečení sítě příchozí pravidlo zabezpečení, které povolí provoz SSH z vaší aktuální IP adresy do virtuálního počítače.
V produkčním scénáři byste často používali přístup za běhu, Azure Bastion nebo VPN (například Azure nebo síť VPN) k omezení přístupu k virtuálnímu počítači.
Vyberte možnost
240900-linux-postgres-nsg.Vyberte Nastavení>příchozích pravidel zabezpečení.
Vyberte Přidat.
V části Zdroj vyberte Moje IP adresa.
V části Služba vyberte SSH.
Vyberte Přidat.
Zobrazení správce flexibilního serveru Azure Database for PostgreSQL
Vyhledejte a vyberte flexibilní server Azure Database for PostgreSQL. Jmenuje se
postgres-xxxxx, kdexxxxxje jedinečný řetězec, který definovala šablona Bicep. Řetězec zůstává konzistentní napříč nasazeními ve vašem předplatném a skupině prostředků.Vyberte >.
V tomto scénáři používáte Microsoft Entra pouze pro ověřování. Spravovaná identita 240900-linux-postgres-identity přiřazená uživatelem je uvedená v části Microsoft Entra Admins.
Spravovaná identita 240900-linux-postgres-identity je aktuálně jediným správcem serveru. Volitelně můžete jako správce přidat vlastní uživatelský účet. V tomto scénáři ale použijete spravovanou identitu, která už je na místě.
V nadcházející části použijete identitu z virtuálního počítače ke správě serveru přes Azure CLI. Tuto identitu také použijete k poskytnutí přístupu k serveru pro vaši aplikaci.
V produkčním scénáři byste pravděpodobně použili kombinaci spravovaných identit, MICROSOFT Entra ID a jemně odstupňovaného řízení přístupu na základě role, abyste mohli bezpečně přistupovat k datům a spravovat prostředky v Azure. Dodržujete zásadu nejnižších oprávnění.
Přečtěte si více o těchto scénářích v části Ověřování pomocí Microsoft Entra s Azure Database for PostgreSQL - flexibilní server a Použití ID Microsoft Entra pro ověřování s Azure Database for PostgreSQL - flexibilní server.
Projděte si pravidla brány firewall flexibilního serveru Azure Database for PostgreSQL.
Vyberte Nastavení>Síťová nastavení.
Pokud jste server spravovali z místního počítače, a ne z virtuálního počítače, museli byste do pravidel brány firewall přidat svoji IP adresu.
Pravidlo brány firewall pro aktuální IP adresu můžete vytvořit tak, že vyberete Přidat aktuální IP adresu klienta (xxx.xxx.xxx.xxx)>Uložit. Toto pravidlo vám umožní přístup k vývojovému/testovacímu serveru pomocí nástrojů na místním počítači. Protože ale k přístupu k databázi používáte virtuální počítač, nebudete v tuto chvíli vytvářet pravidlo brány firewall.
V produkčním prostředí byste pravděpodobně tento server izolovali od veřejného internetu úplně zrušením zaškrtnutí políčka Povolit veřejný přístup k tomuto prostředku přes internet pomocí možnosti veřejné IP adresy .
Na rozdíl od virtuálního počítače jste nepřidružili službu Azure Database for PostgreSQL k žádné virtuální síti. Zachováte možnost přístupu ke službě Azure Database for PostgreSQL přes veřejný internet, což je užitečné pro scénáře vývoje/testování.
Pokud chcete zajistit zabezpečení i flexibilitu, povolíte přístup z virtuálního počítače přes jeho virtuální síť pomocí privátního koncového bodu. Privátní koncový bod umožňuje virtuálnímu počítači přistupovat k databázi, aniž by ji zpřístupňuje veřejnému internetu. Přečtěte si další informace o privátních koncových bodech ve službě Azure Database for PostgreSQL – sítě flexibilního serveru s využitím služby Private Link.
Tady byl pro vás pomocí Bicep vytvořen privátní koncový bod.
Kontrola přiřazení rolí pro spravovanou identitu přiřazenou systémem virtuálního počítače
Vraťte se
240900-linux-postgresdo skupiny prostředků a vybertevm-1.V nabídce služby vyberte >.
Tady můžete ověřit, že spravovaná identita přiřazená systémem je připojená k virtuálnímu počítači.
Pod Přiřazeno systémem vyberte Přiřazení rolí Azure.
Tady můžete ověřit, že je role Čtenář přiřazena spravované identitě přiřazené systémem. Role je vymezena na
240900-linux-postgresskupinu prostředků.
Oprávnění v této identitě umožňují používat Azure CLI v rámci virtuálního počítače k výpisu prostředků ve skupině prostředků. Díky této možnosti nemusíte do skriptů pevně zakódovat podrobnosti o konkrétních prostředcích.
V pozdější fázi přiřadíte spravované identitě virtuálního počítače další roli, aby mohl virtuální počítač přistupovat přímo k účtu Azure Blob Storage.
Dále prozkoumáte a nakonfigurujete nasazenou infrastrukturu.
Zdroje informací
- Ověřené moduly Azure
- Nainstalujte Azure CLI
- Vytvoření skupiny prostředků pomocí Azure CLI
- Azure RBAC
- Spravovaná identita Azure
- Co je Bicep?
- Co jsou spravované identity pro prostředky Azure?
- Povolení přístupu právě včas na virtuálních počítačích
- Co je Azure Bastion?
- Ověřování Microsoft Entra s flexibilním serverem Azure Database for PostgreSQL
- Použijte Microsoft Entra ID pro ověřování pomocí Azure Database for PostgreSQL – flexibilní server
- Azure Database for PostgreSQL – Síťová připojení flexibilního serveru pomocí Private Link