Überlegungen zur Vorgangsverwaltung für den API Management-Zielzonenbeschleuniger
Dieser Artikel bietet Designüberlegungen und -empfehlungen für Vorgangsverwaltung bei Verwendung des Azure API Management Zielzonen-Beschleunigers. Die Vorgangsverwaltung umfasst mehrere Aspekte, einschließlich:
- Bereitstellen, Skalieren und Überwachen der API Management-Instanz
- Konfigurieren von Richtlinien im Gateway
- Verwalten von APIs
- Vorbereiten auf Business Continuity & Disaster Recovery
Erfahren Sie mehr über den Verwaltungsentwurfsbereich.
Verwaltung und Überwachung
Entwurfsüberlegungen für Verwaltung und Überwachung
- Beachten Sie die maximalen Durchsatzgrenzwerte jeder API Management Dienstebene. Diese Grenzwerte sind ungefähr und nicht garantiert.
- Beachten Sie die maximale Anzahl von Skalierungseinheiten pro API Management-Dienstebene.
- Beachten Sie die Zeit, die zum Skalieren erforderlich ist, in eine andere Region bereitzustellen oder in eine andere Dienstebene zu konvertieren.
- API Management wird nicht automatisch skaliert; zusätzliche Konfiguration ist erforderlich.
- Während eines horizontalen Skalierungsereignisses gibt es keine Ausfallzeiten.
- Nur die Gatewaykomponente von API Management wird in einer multiregionalen Bereitstellung für alle Regionen bereitgestellt.
- Beachten Sie die möglichen Leistungsbeeinträchtigungen der Application Insights-Protokollierung bei hohen Ladevorgängen.
- Beachten Sie die Anzahl der angewendeten Eingangs- und Ausgangsrichtlinien und deren Auswirkungen auf die Leistung.
- API Management-Richtlinien sind Code und sollten sich unter der Versionsverwaltung befinden
- Der integrierte Cache von API Management ist flüchtig und wird von allen Einheiten in derselben Region desselben API Management-Diensts gemeinsam genutzt.
- Verwenden von Verfügbarkeitszonen. Die Anzahl von ausgewählten Skalierungseinheiten muss gleichmäßig auf die Verfügbarkeitszonen verteilt werden.
- Wenn Sie ein selbst gehostetes Gateway verwenden, beachten Sie, dass Anmeldeinformationen alle 30 Tage ablaufen und rotiert werden müssen.
- Der URI
/status-0123456789abcdef
kann als allgemeiner Integritätsendpunkt für den API Management-Dienst verwendet werden. - Der API Management-Dienst ist keine WAF. Stellen Sie eine WAF wie Azure Application Gateway bereit, um zusätzliche Schutzebenen zu gewährleisten.
- Die Clientzertifikatverhandlung ist in einer Konfiguration pro Gateway aktiviert.
- Zertifikate und Geheimnisse In Key Vault werden innerhalb von 4 Stunden nach dem Festlegen in API Management aktualisiert. Sie können ein Geheimnis auch manuell im Azure-Portal oder über die Verwaltungs-REST-API aktualisieren.
- Benutzerdefinierte Domänen können auf alle Endpunkte oder nur eine Teilmenge angewendet werden. Der Premium-Tarif unterstützt mehrere Hostnamen für den Gatewayendpunkt.
- API Management kann mithilfe der Verwaltungs-REST-API gesichert werden. Sicherungen laufen nach 30 Tagen ab. Beachten Sie, was API Management nicht sichert.
- Benannte Werte sind global im Bereich.
- API-Vorgänge können in Produkte und Abonnements gruppiert werden. Legen Sie dem Entwurf die tatsächlichen Geschäftsanforderungen zugrunde.
Entwurfsempfehlungen für Verwaltung und Überwachung
- Wenden Sie nur benutzerdefinierte Domänen auf den Gatewayendpunkt an.
- Verwenden Sie die Event Hubs-Richtlinie für die Protokollierung auf Hochleistungsebene.
- Verwenden Sie einen externen Cache für die Steuerung und die schnellste Leistung.
- Stellen Sie mindestens zwei Skalierungseinheiten bereit, die sich auf zwei Verfügbarkeitszonen pro Region verteilen, um die beste Verfügbarkeit und Leistung zu erzielen.
- Verwenden Sie Azure Monitor, um API Management automatisch zu skalieren. Wenn Sie ein selbst gehostetes Gateway verwenden, verwenden Sie Kubernetes horizontale Pod-Autoscaler, um das Gateway zu skalieren.
- Stellen Sie selbst gehostete Gateways bereit, in denen Azure keine Region in der Nähe der Back-End-APIs hat.
- Verwenden Sie Key Vault für die Zertifikatspeicherung, Benachrichtigung und Drehung.
- Aktivieren Sie 3DES, TLS 1.1 oder niedrigere Verschlüsselungsprotokolle nur, wenn sie erforderlich sind.
- Verwenden Sie DevOps- und Infrastruktur-as-Code-Methoden, um alle Bereitstellungen, Updates und Notfallwiederherstellung zu behandeln.
- Erstellen Sie einen API-Überarbeitungs- und Änderungsprotokoll-Eintrag für jedes API-Update.
- Verwenden Sie Back-Ends, um redundante API-Back-End-Konfigurationen zu beseitigen.
- Verwenden Sie benannte Werte, um allgemeine Werte zu speichern, die in Richtlinien verwendet werden können.
- Verwenden Sie Key Vault, um geheime Schlüssel zu speichern, auf die benannte Werte verweisen können. Wenn Geheimnisse im Schlüsseltresor aktualisiert werden, erfolgt in API Management automatisch eine Rotation
- Entwickeln Sie eine Kommunikationsstrategie, um Benutzer über unterbrechungsrelevante API-Versionsupdates zu informieren.
- Konfigurieren Sie Diagnoseeinstellungen, um AllMetrics und AllLogs an den Log Analytics-Arbeitsbereich weiterzuleiten.
Business Continuity & Disaster Recovery
Entwurfsüberlegungen zu Business Continuity & Disaster Recovery
- Bestimmen Sie das Wiederherstellungszeitziel (RTO) und das Wiederherstellungspunktziel (RPO) für die API Management-Instanzen, die Sie schützen möchten, und die Wertschöpfungsketten, die sie unterstützen (Verbraucher und Anbieter). Erwägen Sie die Bereitstellung neuer Instanzen oder die Einrichtung eines unmittelbar betriebsbereiten/verzögert betriebsbereiten Standby-Systems.
- API Management unterstützt die Bereitstellung mit mehreren Zonen und mehreren Regionen. Basierend auf den Anforderungen können Sie nur eine oder beide aktivieren.
- Failover kann automatisiert werden:
- Eine Multizonen-Bereitstellung führt automatisch einen Failover aus.
- Eine multiregionale Bereitstellung erfordert einen DNS-basierten Lastenausgleich, z. B. Traffic Manager, um einen Failover ausführen zu können.
- API Management kann mithilfe der Verwaltungs-REST-API gesichert werden.
- Sicherungen laufen nach 30 Tagen ab.
- Beachten Sie, was APIM nicht sichern kann
Entwurfsempfehlungen für Business Continuity & Disaster Recovery
- Verwenden Sie eine benutzerseitig zugewiesene verwaltete Identität für API Management, um Ausfallzeiten während der Neubereitstellung von ARM-Vorlagen zu verhindern. Bei Verwendung einer systemseitig zugewiesenen verwalteten Identität werden diese Identität und die zugehörigen Rollen und Zuweisungen (z. B. geheimer Azure Key Vault-Zugriff) entfernt, wenn die Ressource entfernt wird. Wenn Sie eine benutzerseitig zugewiesene verwaltete Identität verwenden, bleiben diese Zuweisungen erhalten, sodass Sie diese ohne Zugriffsverlust wieder dem API Management zuordnen können.
- Verwenden Sie automatisierte Azure Pipelines, um Sicherungen auszuführen.
- Entscheiden Sie, ob die Bereitstellung in mehreren Regionen erforderlich ist.
Erwägungen zur Unternehmensebene
Die folgenden Annahmen wurden bei der Entwicklung des API Management-Zielzonenbeschleunigers einbezogen:
- Eine Premiumebene von API Management, die Verfügbarkeitszonen und multiregionale Bereitstellungen unterstützt, wird empfohlen.
- Azure Pipelines werden verwendet, um Infrastructure-as-Code zu verwalten und bereitzustellen.