Betriebsbereitschaft und Leistung mit CloudOps sicherstellen

Last reviewed 2024-10-31 UTC

Dieses Prinzip im Bereich „Operative Exzellenz“ des Google Cloud Well-Architected Framework hilft Ihnen, die Betriebsbereitschaft und Leistung Ihrer Cloud-Arbeitslasten sicherzustellen. Dabei wird Wert darauf gelegt, klare Erwartungen und Verpflichtungen für die Dienstleistung festzulegen, ein robustes Monitoring und Benachrichtigungssystem zu implementieren, Leistungstests durchzuführen und proaktiv für den Kapazitätsbedarf zu planen.

Übersicht über die Grundsätze

Verschiedene Organisationen interpretieren die Einsatzbereitschaft möglicherweise unterschiedlich. Die operative Bereitschaft beschreibt, wie Ihre Organisation sich auf den erfolgreichen Betrieb von Arbeitslasten auf Google Cloudvorbereitet. Die Vorbereitung auf den Betrieb einer komplexen, mehrschichtigen Cloud-Arbeitslast erfordert eine sorgfältige Planung sowohl für den Go-Live als auch für den day-2. Diese Vorgänge werden oft als CloudOps bezeichnet.

Schwerpunkte der operativen Einsatzbereitschaft

Die Betriebsbereitschaft umfasst vier Schwerpunktbereiche. Jeder Fokusbereich besteht aus einer Reihe von Aktivitäten und Komponenten, die erforderlich sind, um eine komplexe Anwendung oder Umgebung in Google Cloudvorzubereiten. In der folgenden Tabelle sind die Komponenten und Aktivitäten der einzelnen Schwerpunktbereiche aufgeführt:

Fokusbereich der Einsatzbereitschaft Aktivitäten und Komponenten
Belegschaft
  • Klare Rollen und Verantwortlichkeiten für die Teams definieren, die die Cloud-Ressourcen verwalten und betreiben.
  • Sicherstellen, dass die Teammitglieder über die erforderlichen Fähigkeiten verfügen.
  • Entwicklung eines Lernprogramms
  • Eine klare Teamstruktur schaffen.
  • Die erforderlichen Talente einstellen.
Prozesse
  • Beobachtbarkeit.
  • Dienstunterbrechungen verwalten
  • Cloud-Bereitstellung
  • Kernaktivitäten in der Cloud.
Tools Tools, die zur Unterstützung von CloudOps-Prozessen erforderlich sind.
Governance
  • Servicelevels und Berichte.
  • Cloud-Finanzdaten.
  • Cloud-Betriebsmodell.
  • Architekturprüfung und Governance-Gremien.
  • Cloud-Architektur und Compliance.

Empfehlungen

Wenn Sie CloudOps verwenden möchten, um die Betriebsbereitschaft und Leistung zu gewährleisten, sollten Sie die Empfehlungen in den folgenden Abschnitten berücksichtigen. Jede Empfehlung in diesem Dokument bezieht sich auf einen oder mehrere der Schwerpunkte der Betriebsbereitschaft.

SLOs und SLAs definieren

Eine der Hauptaufgaben des Cloud Operations-Teams ist es, Service Level Objectives (SLOs) und Service Level Agreements (SLAs) für alle kritischen Arbeitslasten zu definieren. Diese Empfehlung bezieht sich auf den Governance-Fokusbereich der Betriebsbereitschaft.

SLOs müssen spezifisch, messbar, angemessen, relevant und terminiert (SMART) sein und das gewünschte Serviceniveau und die gewünschte Leistung widerspiegeln.

  • Spezifisch: Das erforderliche Serviceniveau und die erforderliche Leistung werden klar formuliert.
  • Messbar: quantifizierbar und nachvollziehbar.
  • Erreichbar: Innerhalb der Grenzen der Fähigkeiten und Ressourcen Ihrer Organisation erreichbar.
  • Relevant: Auf die Geschäftsziele und ‑prioritäten abgestimmt.
  • Zeitlich begrenzt: Es gibt einen festgelegten Zeitraum für die Messung und Bewertung.

Ein SLO für eine Webanwendung könnte beispielsweise „99, 9% Verfügbarkeit“ oder „durchschnittliche Reaktionszeit unter 200 ms“ lauten. Solche SLOs definieren eindeutig das erforderliche Serviceniveau und die erforderliche Leistung für die Webanwendung. Sie können im Zeitverlauf gemessen und nachverfolgt werden.

In SLAs werden die Zusicherungen gegenüber Kunden in Bezug auf Dienstverfügbarkeit, Leistung und Support beschrieben, einschließlich aller Strafen oder Abhilfemaßnahmen bei Nichteinhaltung. SLAs müssen spezifische Details zu den bereitgestellten Diensten, dem erwarteten Serviceniveau, den Verantwortlichkeiten des Dienstanbieters und des Kunden sowie allen Strafen oder Abhilfemaßnahmen bei Nichteinhaltung enthalten. SLAs dienen als vertragliche Vereinbarung zwischen den beiden Parteien und sorgen dafür, dass beide ein klares Verständnis der Erwartungen und Verpflichtungen haben, die mit dem Cloud-Dienst verbunden sind.

Google Cloud bietet Tools wie Cloud Monitoring und Service Level Indicators (SLIs), mit denen Sie SLOs definieren und verfolgen können. Cloud Monitoring bietet umfassende Überwachungs- und Beobachtbarkeitsfunktionen, mit denen Ihre Organisation Messwerte zur Verfügbarkeit, Leistung und Latenz von cloudbasierten Anwendungen und Diensten erfassen und analysieren kann. SLIs sind spezifische Messwerte, mit denen Sie SLOs im Zeitverlauf messen und verfolgen können. Mit diesen Tools können Sie Cloud-Dienste effektiv überwachen und verwalten und dafür sorgen, dass sie die SLOs und SLAs erfüllen.

Wenn Sie SLOs und SLAs für alle Ihre kritischen Clouddienste klar definieren und kommunizieren, können Sie die Zuverlässigkeit und Leistung Ihrer bereitgestellten Anwendungen und Dienste sicherstellen.

Umfassende Beobachtbarkeit implementieren

Um Echtzeit-Einblicke in den Zustand und die Leistung Ihrer Cloud-Umgebung zu erhalten, empfehlen wir, eine Kombination aus Google Cloud Observability-Tools und Drittanbieterlösungen zu verwenden. Diese Empfehlung bezieht sich auf die folgenden Fokusbereiche der operativen Bereitschaft: Prozesse und Tools.

Wenn Sie eine Kombination von Lösungen für die Beobachtbarkeit implementieren, erhalten Sie eine umfassende Strategie, die verschiedene Aspekte Ihrer Cloud-Infrastruktur und Anwendungen abdeckt. Google Cloud Observability ist eine einheitliche Plattform zum Erfassen, Analysieren und Visualisieren von Messwerten, Logs und Traces aus verschiedenenGoogle Cloud -Diensten, Anwendungen und externen Quellen. Mit Cloud Monitoring können Sie Einblicke in die Ressourcennutzung, die Leistungsmerkmale und den Gesamtzustand Ihrer Ressourcen erhalten.

Für ein umfassendes Monitoring sollten Sie wichtige Messwerte im Blick behalten, die mit Systemstatusindikatoren wie CPU-Auslastung, Arbeitsspeichernutzung, Netzwerkverkehr, Laufwerk-E/A und Anwendungsantwortzeiten übereinstimmen. Sie müssen auch unternehmensspezifische Messwerte berücksichtigen. Wenn Sie diese Messwerte im Blick behalten, können Sie potenzielle Engpässe, Leistungsprobleme und Ressourcenbeschränkungen erkennen. Außerdem können Sie Benachrichtigungen einrichten, um die zuständigen Teams proaktiv über potenzielle Probleme oder Anomalien zu informieren.

Um Ihre Monitoringfunktionen weiter zu verbessern, können Sie Drittanbieterlösungen in Google Cloud Observability einbinden. Diese Lösungen können zusätzliche Funktionen bieten, z. B. erweiterte Analysen, auf maschinellem Lernen basierende Anomalieerkennung und Funktionen für das Vorfallmanagement. Mit dieser Kombination aus Google Cloud-Tools für die Beobachtbarkeit und Drittanbieterlösungen können Sie ein robustes und anpassbares Monitoring-Ökosystem erstellen, das auf Ihre spezifischen Anforderungen zugeschnitten ist. Mit diesem kombinierten Ansatz können Sie Probleme proaktiv erkennen und beheben, die Ressourcennutzung optimieren und die allgemeine Zuverlässigkeit und Verfügbarkeit Ihrer Cloud-Anwendungen und ‑Dienste sicherstellen.

Leistungs- und Lasttests implementieren

Regelmäßige Leistungstests helfen Ihnen, sicherzustellen, dass Ihre cloudbasierten Anwendungen und Ihre Infrastruktur Spitzenlasten bewältigen und eine optimale Leistung aufrechterhalten können. Beim Lasttest werden realistische Trafficmuster simuliert. Beim Stresstest wird das System an seine Grenzen gebracht, um potenzielle Engpässe und Leistungseinschränkungen zu identifizieren. Diese Empfehlung bezieht sich auf die folgenden Fokusbereiche der operativen Bereitschaft: Prozesse und Tools.

Tools wie Cloud Load Balancing und Lasttestdienste können Ihnen helfen, reale Trafficmuster zu simulieren und Ihre Anwendungen zu belasten. Diese Tools liefern wertvolle Informationen dazu, wie sich Ihr System unter verschiedenen Lastbedingungen verhält. So können Sie Bereiche ermitteln, die optimiert werden müssen.

Anhand der Ergebnisse von Leistungstests können Sie Entscheidungen treffen, um Ihre Cloud-Infrastruktur und Anwendungen für optimale Leistung und Skalierbarkeit zu optimieren. Dazu kann es erforderlich sein, die Ressourcenzuweisung anzupassen, Konfigurationen zu optimieren oder Caching-Mechanismen zu implementieren.

Wenn Sie beispielsweise feststellen, dass Ihre Anwendung bei hohem Traffic langsamer wird, müssen Sie möglicherweise die Anzahl der virtuellen Maschinen oder Container erhöhen, die der Anwendung zugewiesen sind. Alternativ müssen Sie möglicherweise die Konfiguration Ihres Webservers oder Ihrer Datenbank anpassen, um die Leistung zu verbessern.

Durch regelmäßige Leistungstests und die Implementierung der erforderlichen Optimierungen können Sie dafür sorgen, dass Ihre cloudbasierten Anwendungen und Ihre Infrastruktur immer mit maximaler Leistung ausgeführt werden und Ihren Nutzern eine nahtlose und reaktionsschnelle Nutzung ermöglichen. So können Sie sich einen Wettbewerbsvorteil sichern und das Vertrauen Ihrer Kunden stärken.

Kapazität planen und verwalten

Wenn Sie proaktiv für zukünftige Kapazitätsanforderungen planen – sowohl organische als auch anorganische –, können Sie den reibungslosen Betrieb und die Skalierbarkeit Ihrer cloudbasierten Systeme sicherstellen. Diese Empfehlung bezieht sich auf den Fokusbereich der betrieblichen Bereitschaft.

Die Planung für zukünftige Kapazitäten umfasst das Verstehen und Verwalten von Kontingenten für verschiedene Ressourcen wie Compute-Instanzen, Speicher und API-Anfragen. Durch die Analyse von bisherigen Nutzungsmustern, Wachstumsprognosen und geschäftlichen Anforderungen können Sie zukünftige Kapazitätsanforderungen genau vorhersagen. Mit Tools wie Cloud Monitoring und BigQuery können Sie Nutzungsdaten erfassen und analysieren, Trends erkennen und die zukünftige Nachfrage prognostizieren.

Historische Nutzungsmuster liefern wertvolle Einblicke in die Ressourcennutzung im Zeitverlauf. Anhand von Messwerten wie CPU-Auslastung, Speichernutzung und Netzwerkverkehr können Sie Zeiten mit hoher Nachfrage und potenzielle Engpässe erkennen. Außerdem können Sie den zukünftigen Kapazitätsbedarf schätzen, indem Sie Wachstumsprognosen auf der Grundlage von Faktoren wie dem Wachstum der Nutzerbasis, neuen Produkten und Funktionen sowie Marketingkampagnen erstellen. Bei der Bewertung des Kapazitätsbedarfs sollten Sie auch geschäftliche Anforderungen wie SLAs und Leistungsziele berücksichtigen.

Berücksichtigen Sie bei der Bestimmung der Ressourcengröße für eine Arbeitslast Faktoren, die sich auf die Ressourcennutzung auswirken können. Saisonale Schwankungen wie die Feiertagssaison oder der Quartalsabschluss können zu vorübergehenden Nachfragespitzen führen. Auch geplante Ereignisse wie Produkteinführungen oder Marketingkampagnen können den Traffic erheblich steigern. Damit Ihr primäres System und Ihr System zur Notfallwiederherstellung (Disaster Recovery, DR) unerwartete Nachfragespitzen bewältigen können, sollten Sie Kapazitäten einplanen, die ein reibungsloses Failover bei Störungen wie Naturkatastrophen und Cyberangriffen ermöglichen.

Autoscaling ist eine wichtige Strategie, um Ihre Cloud-Ressourcen dynamisch an Schwankungen der Arbeitslast anzupassen. Mit Autoscaling-Richtlinien können Sie Recheninstanzen, Speicher und andere Ressourcen automatisch an den sich ändernden Bedarf anpassen. So wird eine optimale Leistung in Spitzenzeiten gewährleistet und gleichzeitig die Kosten bei geringer Ressourcenauslastung minimiert. Autoscaling-Algorithmen verwenden Messwerte wie CPU-Auslastung, Arbeitsspeichernutzung und Warteschlangentiefe, um zu bestimmen, wann Ressourcen skaliert werden sollen.

Kontinuierlich überwachen und optimieren

Um Cloud-Arbeitslasten zu verwalten und zu optimieren, müssen Sie einen Prozess für die kontinuierliche Überwachung und Analyse von Leistungsmesswerten einrichten. Diese Empfehlung bezieht sich auf die folgenden Schwerpunkte der operativen Bereitschaft: Prozesse und Tools.

Um einen Prozess für kontinuierliches Monitoring und kontinuierliche Analysen einzurichten, müssen Sie Daten zu verschiedenen Aspekten Ihrer Cloud-Umgebung erfassen, sammeln und auswerten. Mithilfe dieser Daten können Sie proaktiv Bereiche für Verbesserungen identifizieren, die Ressourcennutzung optimieren und dafür sorgen, dass Ihre Cloudinfrastruktur Ihre Leistungserwartungen durchgehend erfüllt oder übertrifft.

Ein wichtiger Aspekt der Leistungsüberwachung ist die regelmäßige Überprüfung von Logs und Traces. Protokolle liefern wertvolle Informationen zu Systemereignissen, Fehlern und Warnungen. Traces enthalten detaillierte Informationen zum Ablauf von Anfragen durch Ihre Anwendung. Durch die Analyse von Logs und Traces können Sie potenzielle Probleme und die Grundursachen von Problemen erkennen und besser nachvollziehen, wie sich Ihre Anwendungen unter verschiedenen Bedingungen verhalten. Messwerte wie die Round-Trip-Zeit zwischen Diensten können Ihnen helfen, Engpässe in Ihren Arbeitslasten zu identifizieren und zu verstehen.

Außerdem können Sie die Reaktionszeiten von Anwendungen und die Gesamteffizienz durch Leistungsoptimierungstechniken erheblich verbessern. Hier sind einige Beispiele für Techniken, die Sie verwenden können:

  • Caching: Speichern Sie häufig aufgerufene Daten im Arbeitsspeicher, um die Notwendigkeit wiederholter Datenbankabfragen oder API-Aufrufe zu verringern.
  • Datenbankoptimierung: Verwenden Sie Techniken wie die Indexierung und Abfrageoptimierung, um die Leistung von Datenbankvorgängen zu verbessern.
  • Code-Profilerstellung: Bereiche Ihres Codes identifizieren, die übermäßig viele Ressourcen beanspruchen oder Leistungsprobleme verursachen.

Durch die Anwendung dieser Techniken können Sie Ihre Anwendungen optimieren und dafür sorgen, dass sie effizient in der Cloud ausgeführt werden.