Share via


Az Azure Spring Apps referenciaarchitektúrája

Megjegyzés

Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken egy ideig a régi nevet fogja látni, miközben dolgozunk az objektumok, például képernyőképek, videók és diagramok frissítésén.

Ez a cikk a következőre vonatkozik: ✔️ Standard ✔️ Enterprise

Ez a referenciaarchitektúra egy alaprendszer, amely egy tipikus vállalati központot és küllős kialakítást használ az Azure Spring Apps használatához. A kialakításban az Azure Spring Apps egyetlen küllőben van üzembe helyezve, amely a központban üzemeltetett megosztott szolgáltatásoktól függ. Az architektúra összetevőkkel van felépítve a Microsoft Azure Well-Architected Framework alapelveinek eléréséhez.

Az Azure Spring Appsnek két változata van: Standard csomag és Nagyvállalati csomag.

Az Azure Spring Apps Standard csomag a Spring Cloud Config Serverből, a Spring Cloud Service Registryből és a kpack buildelési szolgáltatásból áll.

Az Azure Spring Apps Enterprise-csomag a VMware Tanzu buildszolgáltatásból™, a VMware Tanzu®® alkalmazáskonfigurációs szolgáltatásából, a VMware Tanzu® szolgáltatásjegyzékéből, a VMware Tanzu-hoz® készült Spring Cloud Gatewayből és a VMware Tanzu® API-portáljából áll.

Az architektúra megvalósításáért tekintse meg az Azure Spring Apps referenciaarchitektúráját a GitHubon.

Az architektúra üzembehelyezési lehetőségei közé tartozik az Azure Resource Manager (ARM), a Terraform, az Azure CLI és a Bicep. Az adattárban található összetevők olyan alapokat biztosítanak, amelyeket testre szabhat a környezethez. Az erőforrásokat, például Azure Firewall vagy Application Gateway különböző erőforráscsoportokba vagy előfizetésekbe csoportosíthatja. Ez a csoportosítás segít elkülöníteni a különböző függvényeket, például az informatikai infrastruktúrát, a biztonságot, az üzleti alkalmazásokat és így tovább.

A címtér megtervezése

Az Azure Spring Apps két dedikált alhálózatot igényel:

  • Szolgáltatás futtatókörnyezete
  • Spring Boot-alkalmazások

Mindegyik alhálózathoz dedikált Azure Spring Apps-fürt szükséges. Több fürt nem oszthatja meg ugyanazt az alhálózatot. Az egyes alhálózatok minimális mérete /28. Az Azure Spring Apps által támogatott alkalmazáspéldányok száma az alhálózat méretétől függően változik. A virtuális hálózatokra vonatkozó részletes követelményeket az Azure Spring Apps üzembe helyezése virtuális hálózaton című szakasz Virtuális hálózati követelmények című szakaszában találja.

Figyelmeztetés

A kiválasztott alhálózat mérete nem fedheti át a meglévő virtuális hálózati címteret, és nem lehet átfedésben egyetlen társviszonyban álló vagy helyszíni alhálózat címtartományával sem.

Használati esetek

Az architektúra gyakori használati módjai többek között a következők:

  • Privát alkalmazások: Hibrid felhőkörnyezetekben üzembe helyezett belső alkalmazások
  • Nyilvános alkalmazások: Külső alkalmazások

Ezek a használati esetek a biztonsági és hálózati forgalmi szabályok kivételével hasonlóak. Ez az architektúra az egyes árnyalatok támogatására lett kialakítva.

Privát alkalmazások

Az alábbi lista a magánalkalmazások infrastruktúrájára vonatkozó követelményeket ismerteti. Ezek a követelmények a szigorúan szabályozott környezetekben jellemzőek.

  • Az alhálózatoknak csak egy Azure Spring Apps-példánnyal kell rendelkezniük.
  • Legalább egy biztonsági teljesítményteszt betartását végre kell hajtani.
  • Az alkalmazásgazda Tartománynév szolgáltatás (DNS) rekordjait az Azure saját DNS kell tárolni.
  • Az Azure-szolgáltatásfüggőségeknek szolgáltatásvégpontokon vagy Private Link keresztül kell kommunikálniuk.
  • Az inaktív adatokat titkosítani kell.
  • Az átvitt adatokat titkosítva kell megadni.
  • A DevOps üzembehelyezési folyamatai használhatók (például Azure DevOps), és hálózati kapcsolatot igényelnek az Azure Spring Appsszel.
  • A kimenő forgalomnak egy központi hálózati virtuális berendezésen (NVA-n) keresztül kell haladnia (például Azure Firewall).
  • Ha az Azure Spring Apps konfigurációs kiszolgálója egy adattár konfigurációs tulajdonságainak betöltésére szolgál, az adattárnak privátnak kell lennie.
  • A Microsoft Teljes felügyelet biztonsági megközelítéséhez titkos kulcsokat, tanúsítványokat és hitelesítő adatokat kell tárolni egy biztonságos tárolóban. Az ajánlott szolgáltatás az Azure Key Vault.
  • A helyszíni és a felhőbeli gazdagépek névfeloldásának kétirányúnak kell lennie.
  • A vezérlősík forgalmán kívül nincs közvetlen kimenő forgalom a nyilvános internetre.
  • Az Azure Spring Apps üzemelő példánya által felügyelt erőforráscsoportokat nem lehet módosítani.
  • Az Azure Spring Apps üzemelő példánya által felügyelt alhálózatok nem módosíthatók.

Az alábbi lista a tervet alkotó összetevőket mutatja be:

  • Helyszíni hálózat
    • Tartománynév-szolgáltatás (DNS)
    • Átjáró
  • Központi előfizetés
    • Application Gateway alhálózat
    • Azure Firewall alhálózat
    • Megosztott szolgáltatások alhálózata
  • Csatlakoztatott előfizetés
    • Azure Bastion-alhálózat
    • Virtual Network társ

Az alábbi lista az Azure-szolgáltatásokat ismerteti ebben a referenciaarchitektúrában:

  • Azure Key Vault: egy hardveralapú hitelesítőadat-kezelési szolgáltatás, amely szoros integrációval rendelkezik a Microsoft identitásszolgáltatásaival és számítási erőforrásaival.

  • Azure Monitor: az Azure-ban és a helyszínen üzembe helyező alkalmazások monitorozási szolgáltatásainak teljes körű csomagja.

  • Azure Pipelines: egy teljes funkcionalitású folyamatos integrációs/folyamatos fejlesztési (CI/CD) szolgáltatás, amely automatikusan üzembe helyezhet frissített Spring Boot-alkalmazásokat az Azure Spring Appsben.

  • Microsoft Defender a felhőhöz: egységes biztonsági felügyeleti és fenyegetésvédelmi rendszer a helyszíni, több felhős és Azure-beli számítási feladatokhoz.

  • Azure Spring Apps: egy felügyelt szolgáltatás, amelyet kifejezetten Java-alapú Spring Boot-alkalmazásokhoz és . NET-alapú Steeltoe-alkalmazások .

Az alábbi ábrák jól megtervezett küllős küllős kialakítást ábrázolnak, amely megfelel a fenti követelményeknek:

Nyilvános alkalmazások

Az alábbi lista a nyilvános alkalmazások infrastruktúra-követelményeit ismerteti. Ezek a követelmények a szigorúan szabályozott környezetekben jellemzőek.

  • Az alhálózatoknak csak egy Azure Spring Apps-példánnyal kell rendelkezniük.
  • Legalább egy biztonsági teljesítményteszt betartását végre kell hajtani.
  • Az alkalmazásgazda Tartománynév szolgáltatás (DNS) rekordjait az Azure saját DNS kell tárolni.
  • Az Azure DDoS Protectiont engedélyezni kell.
  • Az Azure-szolgáltatásfüggőségeknek szolgáltatásvégpontokon vagy Private Link keresztül kell kommunikálniuk.
  • Az inaktív adatokat titkosítani kell.
  • Az átvitt adatokat titkosítva kell megadni.
  • A DevOps üzembehelyezési folyamatai használhatók (például Azure DevOps), és hálózati kapcsolatot igényelnek az Azure Spring Appsszel.
  • A kimenő forgalomnak egy központi hálózati virtuális berendezésen (NVA-n) keresztül kell haladnia (például Azure Firewall).
  • A bejövő forgalmat legalább Application Gateway vagy az Azure Front Doornak kell kezelnie.
  • Az internetes irányítható címeket az Azure nyilvános DNS-ben kell tárolni.
  • A Microsoft Teljes felügyelet biztonsági megközelítéséhez titkos kulcsokat, tanúsítványokat és hitelesítő adatokat kell tárolni egy biztonságos tárolóban. Az ajánlott szolgáltatás az Azure Key Vault.
  • A helyszíni és a felhőbeli gazdagépek névfeloldásának kétirányúnak kell lennie.
  • A vezérlősík forgalmán kívül nincs közvetlen kimenő forgalom a nyilvános internetre.
  • Az Azure Spring Apps üzemelő példánya által felügyelt erőforráscsoportokat nem lehet módosítani.
  • Az Azure Spring Apps üzemelő példánya által felügyelt alhálózatok nem módosíthatók.

Az alábbi lista a tervet alkotó összetevőket mutatja be:

  • Helyszíni hálózat
    • Tartománynév-szolgáltatás (DNS)
    • Átjáró
  • Központi előfizetés
    • Application Gateway alhálózat
    • Azure Firewall alhálózat
    • Megosztott szolgáltatások alhálózata
  • Csatlakoztatott előfizetés
    • Azure Bastion-alhálózat
    • Virtual Network társ

Az alábbi lista a referenciaarchitektúra Azure-szolgáltatásait ismerteti:

  • Azure-alkalmazás tűzfal: a Azure Application Gateway egyik funkciója, amely központi védelmet nyújt az alkalmazásoknak a gyakori biztonsági résekkel és biztonsági résekkel szembeni központi védelemmel.

  • Azure Application Gateway: a Transport Layer Security (TLS) kiszervezésű alkalmazásforgalomért felelős terheléselosztó, amely a 7. rétegben működik.

  • Azure Key Vault: hardveralapú hitelesítőadat-kezelési szolgáltatás, amely szoros integrációval rendelkezik a Microsoft identitásszolgáltatásaival és számítási erőforrásaival.

  • Azure Monitor: a monitorozási szolgáltatások teljes körű csomagja az Azure-ban és a helyszínen üzembe helyező alkalmazásokhoz.

  • Azure Pipelines: egy teljes körű folyamatos integrációs/folyamatos fejlesztési (CI/CD) szolgáltatás, amely automatikusan üzembe helyezhet frissített Spring Boot-alkalmazásokat az Azure Spring Appsben.

  • Microsoft Defender a felhőhöz: egységes biztonsági felügyeleti és fenyegetésvédelmi rendszer a helyszíni, több felhőbeli és Azure-beli számítási feladatokhoz.

  • Azure Spring Apps: egy felügyelt szolgáltatás, amely kifejezetten Java-alapú Spring Boot-alkalmazásokhoz és . NET-alapú Steeltoe-alkalmazások .

Az alábbi ábrák egy jól megtervezett küllős kialakítást ábrázolnak, amely megfelel a fenti követelményeknek. Csak a hub-virtual-network kommunikál az internettel:

Helyszíni Azure Spring Apps-kapcsolat

Az Azure Spring Apps-alkalmazások különböző Azure-beli, helyszíni és külső erőforrásokkal kommunikálhatnak. A küllős kialakítással az alkalmazások az Express Route vagy a Helyek közötti virtuális magánhálózat (VPN) használatával irányíthatják a forgalmat külsőleg vagy a helyszíni hálózatra.

Az Azure Well-Architected-keretrendszer szempontjai

Az Azure Well-Architected-keretrendszer az erős infrastruktúra-alapok létrehozásakor követendő vezérelvek készlete. A keretrendszer a következő kategóriákat tartalmazza: költségoptimalizálás, működési kiválóság, teljesítményhatékonyság, megbízhatóság és biztonság.

Költségoptimalizálás

Az elosztott rendszer kialakításának természetéből adódóan az infrastruktúra-sprawl valóság. Ez a valóság váratlan és ellenőrizhetetlen költségeket eredményez. Az Azure Spring Apps olyan összetevők használatával készült, amelyek skálázhatók, így képesek kielégíteni az igényeket és optimalizálni a költségeket. Az architektúra magja a Azure Kubernetes Service (AKS). A szolgáltatás célja, hogy csökkentse a Kubernetes kezelésének összetettségét és működési többletterhelését, ami magában foglalja a fürt üzemeltetési költségeinek hatékonyságát is.

Különböző alkalmazásokat és alkalmazástípusokat helyezhet üzembe az Azure Spring Apps egyetlen példányán. A szolgáltatás támogatja a metrikák vagy ütemezések által aktivált alkalmazások automatikus skálázását, amelyek javíthatják a kihasználtságot és a költséghatékonyságot.

Az Application Insights és az Azure Monitor használatával is csökkentheti a működési költségeket. Az átfogó naplózási megoldás által biztosított láthatósággal implementálhatja az automatizálást a rendszer összetevőinek valós idejű skálázásához. Naplóadatokat is elemezhet, hogy feltárja az alkalmazáskódban a hatékonysági hiányosságokat, amelyeket a rendszer általános költségének és teljesítményének javítása érdekében kezelhet.

Működésbeli kiválóság

Az Azure Spring Apps a működési kiválóság több aspektusával foglalkozik. Ezeket a szempontokat kombinálva biztosíthatja, hogy a szolgáltatás hatékonyan fusson éles környezetben, az alábbi listában leírtak szerint:

  • Az Azure Pipelines használatával biztosíthatja, hogy az üzemelő példányok megbízhatóak és konzisztensek legyenek, miközben segít elkerülni az emberi hibákat.
  • Az Azure Monitor és az Application Insights segítségével napló- és telemetriai adatokat tárolhat. Felmérheti az összegyűjtött napló- és metrikaadatokat az alkalmazások állapotának és teljesítményének biztosítása érdekében. Az alkalmazásteljesítmény-monitorozás (APM) teljes mértékben integrálva van a szolgáltatásba egy Java-ügynökön keresztül. Ez az ügynök további kód megkövetelése nélkül biztosít betekintést az összes üzembe helyezett alkalmazásba és függőségbe. További információt az Alkalmazások és függőségek egyszerű monitorozása az Azure Spring Appsben című blogbejegyzésben talál.
  • A felhőhöz készült Microsoft Defender használatával gondoskodhat arról, hogy az alkalmazások megőrizzék a biztonságot azáltal, hogy platformot biztosítanak a megadott adatok elemzéséhez és értékeléséhez.
  • A szolgáltatás különböző üzembehelyezési mintákat támogat. További információ: Átmeneti környezet beállítása az Azure Spring Appsben.

Megbízhatóság

Az Azure Spring Apps az AKS-en alapul. Bár az AKS rugalmassági szintet biztosít a fürtözésen keresztül, ez a referenciaarchitektúra még tovább megy azáltal, hogy szolgáltatásokat és architekturális szempontokat foglal magában az alkalmazás rendelkezésre állásának növelése érdekében, ha összetevőhiba történik.

A jól definiált küllős kialakításra épülő architektúra alapja biztosítja, hogy több régióban is üzembe helyezhesse. A privát alkalmazáshasználati eset esetében az architektúra az Azure saját DNS használatával biztosítja a folyamatos rendelkezésre állást földrajzi hiba esetén. A nyilvános alkalmazáshasználati eset esetében az Azure Front Door és Azure Application Gateway biztosítják a rendelkezésre állást.

Biztonság

Az architektúra biztonságát az iparág által meghatározott ellenőrzésekhez és teljesítménymutatókhoz való ragaszkodása kezeli. Ebben az összefüggésben az "ellenőrzés" egy tömör és jól definiált ajánlott eljárás, például "A legkevésbé jogosultsági elv alkalmazása az információs rendszerek hozzáférésének megvalósításakor. IAM-05" Az architektúra vezérlői a Cloud Security Alliance (CSA) és a Microsoft Azure Foundations Benchmark (MAFB) felhőszabályozási mátrixából (CCM) származnak a Center for Internet Security (CIS) által. Az alkalmazott vezérlőkben a irányítás, a hálózatkezelés és az alkalmazásbiztonság elsődleges biztonsági tervezési alapelveire összpontosítunk. Az Ön felelőssége, hogy a célinfrastruktúrához kapcsolódóan kezelje az identitás, a hozzáférés-kezelés és a tárolás tervezési alapelveit.

Szabályozás

Az architektúra által használt szabályozás elsődleges szempontja a hálózati erőforrások elkülönítése révén történő elkülönítés. A CCM-ben a DCS-08 az adatközpont bejövő és kimenő forgalmának vezérlését javasolja. A vezérlés kielégítése érdekében az architektúra hálózati biztonsági csoportokat (NSG-ket) használó küllős kialakítást használ az erőforrások közötti kelet-nyugati forgalom szűréséhez. Az architektúra a központi szolgáltatások és a küllő erőforrásai közötti forgalmat is szűri. Az architektúra az Azure Firewall egy példányát használja az internet és az architektúra erőforrásai közötti forgalom kezelésére.

Az alábbi lista az adatközpont biztonságát kezelő vezérlőt mutatja be ebben a hivatkozásban:

CSA CCM-vezérlő azonosítója CSA CCM-vezérlőtartomány
DCS-08 Adatközpont biztonsági engedély nélküli személyek belépése

Network (Hálózat)

Az architektúrát támogató hálózati kialakítás a hagyományos küllős modellből származik. Ez a döntés biztosítja, hogy a hálózatelkülönítés egy alapvető szerkezet. A CCM-vezérlés IVS-06 azt javasolja, hogy a hálózatok és a virtuális gépek közötti forgalom korlátozva és monitorozva legyenek a megbízható és nem megbízható környezetek között. Ez az architektúra a kelet-nyugati forgalom (az "adatközponton" belüli) NSG-k és az észak-déli forgalom Azure Firewall (az "adatközponton kívül") végrehajtásával fogadja el az irányítást. A CCM-vezérlés IPY-04 azt javasolja, hogy az infrastruktúrának biztonságos hálózati protokollokat kell használnia a szolgáltatások közötti adatcseréhez. Az architektúrát támogató Azure-szolgáltatások mind szabványos, biztonságos protokollokat használnak, például A HTTP-hez és az SQL-hez készült TLS-t.

Az alábbi lista a hálózati biztonságot kezelő CCM-vezérlőket mutatja be ebben a hivatkozásban:

CSA CCM-vezérlő azonosítója CSA CCM-vezérlőtartomány
IPY-04 Hálózati protokollok
IVS-06 Hálózati biztonság

A hálózat megvalósítását tovább védi a MAFB vezérlőinek meghatározása. A vezérlők biztosítják, hogy a környezetbe érkező forgalom a nyilvános internetről legyen korlátozva.

Az alábbi lista a hivatkozásban a hálózati biztonságot kezelő CIS-vezérlőket mutatja be:

CIS-vezérlő azonosítója CIS-vezérlő leírása
6,2 Győződjön meg arról, hogy az SSH-hozzáférés az internetről van korlátozva.
6.3 Győződjön meg arról, hogy az SQL Database-adatbázisok nem engedélyezik a 0.0.0.0/0 bejövő forgalmat (BÁRMELY IP-cím).
6.5 Győződjön meg arról, hogy a Network Watcher engedélyezve van.
6.6 Győződjön meg arról, hogy az UDP használatával történő bejövő forgalom korlátozva van az internetről.

Az Azure Spring Apps biztonságos környezetben történő üzembe helyezés esetén felügyeleti forgalmat igényel az Azure-ból való kilépéshez. Engedélyeznie kell az Azure Spring Apps virtuális hálózaton való futtatásával kapcsolatos ügyfél-felelősségi szakaszban felsorolt hálózati és alkalmazásszabályokat.

Alkalmazások biztonsága

Ez a tervezési elv az identitás, az adatvédelem, a kulcskezelés és az alkalmazáskonfiguráció alapvető összetevőire vonatkozik. Az Azure Spring Appsben üzembe helyezett alkalmazások a működéshez minimálisan szükséges jogosultsággal futnak. Az engedélyezési vezérlők készlete közvetlenül kapcsolódik az adatvédelemhez a szolgáltatás használatakor. A kulcskezelés erősíti ezt a rétegzett alkalmazásbiztonsági megközelítést.

Az alábbi listában azokat a CCM-vezérlőket láthatja, amelyek a kulcskezelést kezelik ebben a hivatkozásban:

CSA CCM-vezérlőazonosító CSA CCM-vezérlőtartomány
EKM-01 Titkosítási és kulcskezelési jogosultság
EKM-02 Titkosítás és kulcskezelés kulcslétrehozása
EKM-03 Titkosítás és kulcskezelés – Bizalmas adatok védelme
EKM-04 Titkosítás és kulcskezelés – tárolás és hozzáférés

A CCM, az EKM-02 és az EKM-03 szabályzatokat és eljárásokat javasol a kulcsok kezeléséhez, valamint titkosítási protokollok használatát a bizalmas adatok védelméhez. Az EKM-01 azt javasolja, hogy minden titkosítási kulcs rendelkezzen azonosítható tulajdonosokkal, hogy kezelhetők legyenek. Az EKM-04 szabványos algoritmusok használatát javasolja.

Az alábbi listában azokat a CIS-vezérlőket láthatja, amelyek a kulcskezelést kezelik ebben a hivatkozásban:

CIS-vezérlő azonosítója CIS-vezérlő leírása
8.1 Győződjön meg arról, hogy a lejárati dátum minden kulcson be van állítva.
8.2 Győződjön meg arról, hogy a lejárati dátum az összes titkos kódra be van állítva.
8.4 Győződjön meg arról, hogy a kulcstartó helyreállítható.

A CIS-vezérlők 8.1-et és 8.2-et használnak, és azt javasolják, hogy a hitelesítő adatok lejárati dátuma legyen beállítva a rotáció kényszerítése érdekében. A CIS-vezérlés 8.4-ben biztosítja, hogy a kulcstartó tartalma visszaállítható legyen az üzletmenet folytonosságának fenntartása érdekében.

Az alkalmazásbiztonság szempontjai megalapozták a referenciaarchitektúra használatát a Spring számítási feladatok támogatásához az Azure-ban.

Következő lépések

Megismerheti ezt a referenciaarchitektúrát az Azure Spring Apps referenciaarchitektúra-adattárában elérhető ARM-, Terraform- és Azure CLI-üzemelő példányokon keresztül.