Offentlig slutpunktsanslutning för Virtual Machines med Azure Standard Load Balancer i SAP-scenarier med hög tillgänglighet
Omfånget för den här artikeln är att beskriva konfigurationer som möjliggör utgående anslutning till offentliga startpunkter. Konfigurationerna är främst i kontexten hög tillgänglighet med pacemaker för SUSE/RHEL.
Om du använder pacemaker med Azure-stängselagenten i din lösning för hög tillgänglighet måste de virtuella datorerna ha utgående anslutning till Azure-hanterings-API:et. Artikeln innehåller flera alternativ som gör att du kan välja det alternativ som passar bäst för ditt scenario.
Översikt
När du implementerar hög tillgänglighet för SAP-lösningar via klustring är en av de nödvändiga komponenterna Azure Load Balancer. Azure erbjuder två SKU:er för lastbalanserare: standard och basic.
Azures standardlastbalanserare erbjuder vissa fördelar jämfört med Basic-lastbalanserare. Den fungerar till exempel i flera Azure-tillgänglighetszoner. Den har bättre övervaknings- och loggningsfunktioner för enklare felsökning och kortare svarstider. Funktionen "HA-portar" omfattar alla portar, det vill säga, det är inte längre nödvändigt att lista alla enskilda portar.
Det finns några viktiga skillnader mellan den grundläggande SKU:n och standard-SKU:n för Azure Load Balancer. En av dem är hanteringen av utgående trafik till offentlig startpunkt. En fullständig jämförelse av basic- och standard-SKU-lastbalanserare finns i Load Balancer jämförelse av SKU: er.
När virtuella datorer utan offentliga IP-adresser placeras i serverpoolen för intern (ingen offentlig IP-adress) Standard Azure-lastbalanserare, finns det ingen utgående anslutning till offentliga slutpunkter, om inte ytterligare konfiguration har gjorts.
Om en virtuell dator tilldelas en offentlig IP-adress, eller om den virtuella datorn finns i backend-poolen för en lastbalanserare med offentlig IP-adress, kommer den att ha utgående anslutning till offentliga slutpunkter.
SAP-system innehåller ofta känsliga affärsdata. Det är sällan acceptabelt att virtuella datorer som är värdar för SAP-system är tillgängliga via offentliga IP-adresser. Samtidigt finns det scenarier som kräver utgående anslutning från den virtuella datorn till offentliga slutpunkter.
Exempel på scenarier som kräver åtkomst till en offentlig Azure-startpunkt är:
- Azure Fence Agent kräver åtkomst till management.azure.com och login.microsoftonline.com
- Azure Backup
- Azure Site Recovery
- Använda en offentlig lagringsplats för att korrigera operativsystemet
- SAP-programmets dataflöde kan kräva utgående anslutning till offentlig slutpunkt
Om sap-distributionen inte kräver utgående anslutning till offentliga slutpunkter behöver du inte implementera den ytterligare konfigurationen. Det räcker att skapa interna standard-SKU Azure Load Balancer för ditt scenario med hög tillgänglighet, förutsatt att det inte heller finns något behov av inkommande anslutningar från offentliga slutpunkter.
Anteckning
När virtuella datorer utan offentliga IP-adresser placeras i serverpoolen för intern (ingen offentlig IP-adress) Standard Azure-lastbalanserare, kommer det inte att finnas någon utgående Internetanslutning, såvida inte ytterligare konfiguration utförs för att tillåta routning till offentliga slutpunkter.
Om de virtuella datorerna antingen har offentliga IP-adresser eller redan finns i backend-poolen i Azure Load Balancer med offentlig IP-adress, har den virtuella datorn redan utgående anslutning till offentliga slutpunkter.
Läs följande artiklar först:
- Azure Standard Load Balancer
- Översikt Standard Load Balancer Azure Standard Load Balancer översikt över Azure Standard Load Balancer, viktiga principer, begrepp och självstudier
- Utgående anslutningar i Azure – scenarier för hur du uppnår utgående anslutningar i Azure
- Regler för utgående lastbalanserare– förklarar begreppen för utgående regler för lastbalanserare och hur du skapar regler för utgående trafik
- Azure Firewall
- Azure Firewall –översikt över Azure Firewall
- Självstudie: Distribuera och konfigurera Azure Firewall – instruktioner om hur du konfigurerar Azure Firewall via Azure Portal
- Virtuella nätverk – Användardefinierade regler – Azure-routningsbegrepp och -regler
- Tjänsttaggar för säkerhetsgrupper – hur du förenklar nätverkssäkerhetsgrupper och brandväggskonfiguration med tjänsttaggar
Alternativ 1: Ytterligare externa Azure-Standard Load Balancer för utgående anslutningar till Internet
Ett alternativ för att uppnå utgående anslutning till offentliga slutpunkter, utan att tillåta inkommande anslutningar till den virtuella datorn från den offentliga slutpunkten, är att skapa en andra lastbalanserare med offentlig IP-adress, lägga till de virtuella datorerna i den andra lastbalanseringspoolens backend-pool och definiera endast utgående regler.
Använd nätverkssäkerhetsgrupper för att styra de offentliga slutpunkterna som är tillgängliga för utgående anrop från den virtuella datorn.
Mer information finns i Scenario 2 i dokumentet Utgående anslutningar.
Konfigurationen skulle se ut så här:

Att tänka på
- Du kan använda ytterligare en offentlig Load Balancer för flera virtuella datorer i samma undernät för att uppnå utgående anslutning till offentlig slutpunkt och optimera kostnaden
- Använd nätverkssäkerhetsgrupper för att styra vilka offentliga platser som är tillgängliga från de virtuella datorerna. Du kan tilldela nätverkssäkerhetsgruppen antingen till undernätet eller till varje virtuell dator. Använd tjänsttaggar om det är möjligt för att minska komplexiteten i säkerhetsreglerna.
- Azures standardlastbalanserare med offentlig IP-adress och regler för utgående trafik ger direkt åtkomst till offentlig slutpunkt. Om du har företagets säkerhetskrav för att all utgående trafik ska passera via en centraliserad företagslösning för granskning och loggning kanske du inte kan uppfylla kravet i det här scenariot.
Tips
Om möjligt kan du använda tjänsttaggar för att minska nätverkssäkerhetsgruppens komplexitet.
Distributionssteg
Skapa Load Balancer
- I den Azure Portal klickar du på Alla resurser, Lägg till och söker sedan efter Load Balancer
- Klicka på Skapa
- Load Balancer MyPublicILB
- Välj Offentlig som typ, Standard som SKU
- Välj Skapa offentlig IP-adress och ange namnet MyPublicILBFrondEndIP
- Välj Zonredundant som tillgänglighetszon
- Klicka på Granska och skapa och klicka sedan på Skapa
Skapa backend-poolen MyBackendPoolOfPublicILB och lägg till de virtuella datorerna.
- Välj det virtuella nätverket
- Välj de virtuella datorerna och deras IP-adresser och lägg till dem i backend-poolen
Skapa regler för utgående trafik. För närvarande går det inte att skapa regler för utgående trafik från Azure Portal. Du kan skapa regler för utgående trafik med Azure CLI.
az network lb outbound-rule create --address-pool MyBackendPoolOfPublicILB --frontend-ip-configs MyPublicILBFrondEndIP --idle-timeout 30 --lb-name MyPublicILB --name MyOutBoundRules --outbound-ports 10000 --enable-tcp-reset true --protocol All --resource-group MyResourceGroupSkapa regler för nätverkssäkerhetsgrupp för att begränsa åtkomsten till specifika offentliga slutpunkter. Om det finns en befintlig nätverkssäkerhetsgrupp kan du justera den. Exemplet nedan visar hur du aktiverar åtkomst till Azure-hanterings-API:et:
- Gå till nätverkssäkerhetsgruppen
- Klicka på Utgående säkerhetsregler
- Lägg till en regel för att neka all utgående åtkomst till Internet.
- Lägg till en regel i Tillåt åtkomst till AzureCloud, med lägre prioritet än regelns prioritet för att neka all Internetåtkomst.
De utgående säkerhetsreglerna skulle se ut så här:

Mer information om Azure-nätverkssäkerhetsgrupper finns i Säkerhetsgrupper.
Alternativ 2: Azure Firewall för utgående anslutningar till Internet
Ett annat alternativ för att uppnå utgående anslutning till offentliga slutpunkter, utan att tillåta inkommande anslutningar till den virtuella datorn från offentliga Azure Firewall. Azure Firewall är en hanterad tjänst med inbyggd hög tillgänglighet och kan sträcka sig över flera Tillgänglighetszoner.
Du måste också distribuera användardefinierad väg somär associerad med undernätet där virtuella datorer och Azure-lastbalanserare distribueras och pekar på Azure-brandväggen för att dirigera trafik genom Azure Firewall.
Mer information om hur du distribuerar Azure Firewall finns i Distribuera och konfigurera Azure Firewall.
Arkitekturen skulle se ut så här:

Att tänka på
- Azure Firewall är en molnbaserad tjänst med inbyggd hög tillgänglighet och stöd för zonindelig distribution.
- Kräver ytterligare undernät som måste ha namnet AzureFirewallSubnet.
- Om överföring av stora datamängder utgående från det virtuella nätverket där de virtuella SAP-datorerna finns, till en virtuell dator i ett annat virtuellt nätverk eller till en offentlig startpunkt, kanske det inte är en kostnadseffektiv lösning. Ett sådant exempel är att kopiera stora säkerhetskopior över virtuella nätverk. Mer information finns i Azure Firewall prissättning.
- Om företagets brandväggslösning inte är Azure Firewall och du har säkerhetskrav för att all utgående trafik ska passera genom en centraliserad företagslösning, kanske den här lösningen inte är praktisk.
Tips
Om möjligt kan du använda tjänsttaggar för att minska komplexiteten för Azure Firewall regler.
Distributionssteg
Distributionsstegen förutsätter att du redan har ett virtuellt nätverk och undernät som definierats för dina virtuella datorer.
Skapa undernätet AzureFirewallSubnet i samma Virtual Network, där VMS och Standard Load Balancer distribueras.
- I Azure Portal navigerar du till Virtual Network: Klicka på Alla resurser, sök efter Virtual Network, klicka på Virtual Network välj undernät.
- Klicka på Lägg till undernät. Ange AzureFirewallSubnet som Namn. Ange lämpligt adressintervall. Spara.
Skapa Azure Firewall.
- I Azure Portal alla resurser klickar du på Lägg till, Brandvägg, Skapa. Välj Resursgrupp (välj samma resursgrupp, där Virtual Network är).
- Ange namnet på Azure Firewall resursen. Till exempel MyAzureFirewall.
- Välj Region och välj minst två tillgänglighetszoner, i linje med tillgänglighetszonerna där dina virtuella datorer distribueras.
- Välj din Virtual Network, där de virtuella SAP-datorerna och Azure Standard Load Balancer distribueras.
- Offentlig IP-adress: Klicka på Skapa och ange ett namn. Till exempel MyFirewallPublicIP.
Skapa Azure Firewall regel för att tillåta utgående anslutning till angivna offentliga slutpunkter. Exemplet visar hur du tillåter åtkomst till Azure-API för hantering offentliga slutpunkten.
- Välj Regler, Nätverksregelsamling och klicka sedan på Lägg till nätverksregelsamling.
- Namn: MyOutboundRule, ange Prioritet, Välj Åtgärd Tillåt.
- Tjänst: Namnge TillAzureAPI. Protokoll: Välj Val av. Källadress: Ange intervallet för undernätet, där de virtuella datorerna och Standard Load Balancer distribueras till exempel: 11.97.0.0/24. Målportar: ange * .
- Spara
- Eftersom du fortfarande är placerad på Azure Firewall väljer du Översikt. Anteckna den privata IP-adressen för Azure Firewall.
Skapa väg till Azure Firewall
- I Azure Portal väljer du Alla resurser och klickar sedan på Lägg till, Dirigera tabell, Skapa.
- Ange Namn MyRouteTable, välj Prenumeration, Resursgrupp och Plats (som matchar platsen för det virtuella nätverket och brandväggen).
- Spara
Brandväggsregeln skulle se ut så här:

Skapa en användardefinierad väg från undernätet för dina virtuella datorer till den privata IP-adressen för MyAzureFirewall.
- När du är placerad i vägtabellen klickar du på Vägar. Välj Lägg till.
- Vägnamn: ToMyAzureFirewall, Adressprefix: 0.0.0.0/0. Nästa hopptyp: Välj Virtuell installation. Nästa hoppadress: Ange den privata IP-adressen för brandväggen som du konfigurerade: 11.97.1.4.
- Spara
Alternativ 3: Använda proxy för pacemaker-anrop till Azure API för hantering
Du kan använda proxy för att tillåta pacemaker-anrop till den offentliga azure-hanterings-API:et.
Att tänka på
- Om det redan finns en företagsproxy på plats kan du dirigera utgående anrop till offentliga slutpunkter genom den. Utgående anrop till offentliga slutpunkter går via företagets kontrollpunkt.
- Kontrollera att proxykonfigurationen tillåter utgående anslutning till Azure-hanterings-API:et:
https://management.azure.comochhttps://login.microsoftonline.com - Kontrollera att det finns en väg från de virtuella datorerna till proxyservern
- Proxy hanterar endast HTTP/HTTPS-anrop. Om det finns ytterligare behov av att göra utgående anrop till den offentliga slutpunkten över olika protokoll (t.ex. RFC) krävs en alternativ lösning
- Proxylösningen måste ha hög tillgänglig för att undvika instabilitet i pacemakerklustret
- Beroende på proxyns plats kan det leda till ytterligare fördröjning i anropen från Azure Fence Agent till Azure API för hantering. Om företagets proxy fortfarande finns lokalt, medan pacemakerklustret finns i Azure, mäter du svarstiden och överväger om den här lösningen passar dig
- Om det inte redan finns en företagsproxy med hög tillgång rekommenderar vi inte det här alternativet eftersom kunden skulle medföra extra kostnad och komplexitet. Men om du väljer att distribuera ytterligare proxylösning för att tillåta utgående anslutning från Pacemaker till azure management offentliga API, se till att proxyn har hög tillgänglig och att svarstiden från de virtuella datorerna till proxyn är låg.
Pacemakerkonfiguration med proxy
Det finns många olika proxyalternativ i branschen. Stegvisa instruktioner för proxydistributionen ligger utanför omfånget för det här dokumentet. I exemplet nedan förutsätter vi att proxyn svarar på MyProxyService och lyssnar på porten MyProxyPort.
Om du vill tillåta pacemaker att kommunicera med Azure-hanterings-API:et utför du följande steg på alla klusternoder:
Redigera pacemakerkonfigurationsfilen /etc/sysconfig/pacemaker och lägg till följande rader (alla klusternoder):
sudo vi /etc/sysconfig/pacemaker # Add the following lines http_proxy=http://MyProxyService:MyProxyPort https_proxy=http://MyProxyService:MyProxyPortStarta om pacemakertjänsten på alla klusternoder.
SUSE
# Place the cluster in maintenance mode sudo crm configure property maintenance-mode=true #Restart on all nodes sudo systemctl restart pacemaker # Take the cluster out of maintenance mode sudo crm configure property maintenance-mode=trueRed Hat
# Place the cluster in maintenance mode sudo pcs property set maintenance-mode=true #Restart on all nodes sudo systemctl restart pacemaker # Take the cluster out of maintenance mode sudo pcs property set maintenance-mode=false
Andra alternativ
Om utgående trafik dirigeras via tredje part, URL-baserad brandväggsproxy:
- om du använder Azure Fence Agent kontrollerar du att brandväggskonfigurationen tillåter utgående anslutning till Azure-hanterings-API:et:
https://management.azure.comochhttps://login.microsoftonline.com - Om du använder SUSE:s offentliga azure-molnuppdateringsinfrastruktur för att tillämpa uppdateringar och korrigeringar kan du läsa Azure Public Cloud Update Infrastructure 101