Best Practices für den effizienten Betrieb von Cloud-Bereitstellungen

Die betriebliche Effizienz bezieht sich auf die Identifizierung geeigneter Prozesse und Verfahren zur Automatisierung und Optimierung des Betriebs aller Cloud-Services. Es ist wichtig, Best Practices für die Bereitstellung, den Betrieb und die Überwachung von Anwendungen und Infrastruktur zu berücksichtigen, um einen maximalen geschäftlichen Nutzen zu erzielen. Bei täglichen Deployments müssen Sie sehen, was mit den Cloud-Ressourcen passiert. Es muss eine Überwachung eingerichtet werden, um zu wissen, ob eine Umgebung korrekt funktioniert und ob Anpassungen erforderlich sind.

Vorgänge als Code ausführen

Stellen Sie Ihre Umgebung mithilfe von Automatisierung und einer Infrastructure-as-Code-Methodik bereit, skalieren und verwalten Sie sie.
  • OCI Landing Zones-Framework verwenden

    Nutzen Sie die von Oracle kuratierten Blueprints mit Designrichtlinien und vorkonfigurierten Terraform IaC-Vorlagen, die für verschiedene Architekturen und Anwendungsfälle für die meisten OCI-Deployments geeignet sind.

  • Infrastruktur als Code übernehmen (IaC)

    Automatisieren Sie die Bereitstellung von Workloads und Betriebsverfahren, begrenzen Sie die menschliche Interaktion und verbessern Sie die Reaktion auf Ereignisse, indem Sie Infrastruktur als Code verwenden.

  • Workload-Infrastruktur definieren

    Wenn Sie die Infrastruktur als Code definieren, können Sie Workloads automatisch und wiederholt in einer konsistenten Infrastruktur bereitstellen. Die Parametrisierung ermöglicht die Wiederverwendung gemeinsamer Vorlagen, die Förderung der umgebungsübergreifenden Standardisierung und die Minimierung von Überarbeitungen innerhalb der Teams.

  • Anwendungen entwickeln und bereitstellen

    Die Automatisierung der Codebereitstellung in der vorhandenen Infrastruktur ermöglicht die Anwendungskonsistenz bei mehreren Infrastrukturbereitstellungen.

  • Infrastructure-Konfiguration verwalten

    Konsistenz ist bei der Konfiguration und Aktualisierung der Infrastrukturkonfiguration für mehrere Cloud-Ressourcen von entscheidender Bedeutung. Mit der Konfigurationsverwaltung ist es möglich, die Bereitstellung der Infrastrukturkonfiguration während Design, Implementierung, Tests, Patching und neuen Releases zu verwalten.

Häufige und iterative Deployments ausführen

Minimieren Sie Risiken, indem Sie beim Testen und Bereitstellen von Code Automatisierung und einen iterativen Entwicklungsprozess verwenden.

  • Automatisieren Sie Ihren Anwendungsbereitstellungsprozess

    Automatisieren Sie so viele Prozesse wie möglich. Wenn möglich, vermeiden Sie manuelle Bereitstellungen in der Produktion. Dies kann jedoch in niedrigeren Umgebungen akzeptabel sein, um Geschwindigkeit und Flexibilität zu fördern.

  • Nutzen Sie die Automatisierung, um Ihren Code vor der Bereitstellung zu testen

    Tests auf Bugs, Sicherheitslücken, Funktionalität, Performance und Integrationen sind von entscheidender Bedeutung, um Probleme zu minimieren, die Benutzer entdecken. Testfehler sollten verhindern, dass Code in die Produktion freigegeben wird.

  • Iterative und inkrementelle Deployments implementieren

    Reduzieren Sie Risiken, indem Sie Deployments häufiger testen und validieren. Kleinere, häufigere Änderungen können zu weniger Ausfällen und Verzögerungen bei der Erkennung von Problemen führen.

Betriebliche Prozeduren definieren

Definieren Sie Verfahren, um verfügbare Tools zu nutzen und Verfahren zu automatisieren.

  • Patching und Wartung automatisieren

    Nutzen Sie Tools, um Compute-Instanzen, Datenbankinstanzen und Server, die Teil Ihrer Kundenwartungsverantwortung sind, automatisch zu aktualisieren und zu patchen.

  • Nutzung von Konfigurationsmanagement-Dienstprogrammen

    Verwenden Sie Konfigurationsverwaltungstools, um das Risiko bei der Aktualisierung von Ressourcenkonfigurationen zu automatisieren und zu reduzieren.

  • Systemperformancemetriken überwachen

    Machen Sie sich mit den Metriken vertraut, die von den Infrastrukturservices bereitgestellt werden. Richten Sie Monitoring und Alerts ein, um einen Einblick in den Status aller Workloads und proaktive Fehlerindikatoren zu erhalten.

  • Dokumentieren und testen Sie Ihren Disaster Recovery-Plan

    Erstellen Sie einen Disaster Recovery-Plan, der die geschäftlichen Auswirkungen von Anwendungsfehlern widerspiegelt. Verstehen Sie Anwendungsabhängigkeiten und ihre Auswirkungen auf Anwendungen. Automatisieren Sie den Wiederherstellungsprozess so weit wie möglich und dokumentieren Sie alle manuellen Schritte. Testen Sie regelmäßig Ihren Disaster Recovery-Prozess, um den Plan zu validieren und zu verbessern.

  • Interaktionen zur Unterstützung von Oracle Cloud Infrastructure planen

    Bevor dies erforderlich ist, richten Sie einen Prozess für die Kontaktaufnahme mit dem Oracle Cloud Infrastructure-Support ein.

  • FinOps-Praktiken integrieren

    Integrieren Sie FinOps-Praktiken in betriebliche Verfahren, um sicherzustellen, dass das Kostenmanagement ein wesentlicher Bestandteil des täglichen Betriebs wird.

Fehler erwarten und lernen

Unerwartete Fehler treten während des gesamten Lebenszyklus einer Anwendung auf. Lernen Sie von einem Fehler und verbessern Sie die Reaktions- und Recovery-Prozesse.

  • Aus Fehlern lernen

    Führen Sie Ursachenanalysen durch und optimieren Sie Betriebsprozesse, um in Zukunft besser und agiler auf Fehler zu reagieren.

  • Kontinuierliche Verbesserung der Reaktion auf Vorfälle

    Integrieren Sie die Erkenntnisse aus Fehlern und früheren Problemen in vorhandene Verfahren zur Reaktion auf Vorfälle, um zukünftige Probleme zu vermeiden und die durchschnittliche Reparaturzeit zu reduzieren.

  • Übung zum Scheitern

    Testen und proben Sie regelmäßig Incident Management- und Recovery-Prozesse, um sich auf zukünftige Antworten einzustellen.

Workload-KPIs identifizieren und überwachen

Identifizieren Sie die Baseline-Performance und KPIs für Ihre Workloads. Mit den KPIs und Logs können Sie den Zustand und die Performance von Anwendungs-Workloads überwachen.

Sie sollten Folgendes zur Überwachung der Workload-Performance verwenden:

  • Tracing für Serviceaufrufe implementieren

    Baseline-Performancedaten können dazu beitragen, Trenddaten bereitzustellen, mit denen Sie Performanceprobleme proaktiv identifizieren können, bevor sie sich auf Benutzer auswirken.

  • Health Checks implementieren

    Führen Sie Health Checks und Probes regelmäßig von außerhalb der Anwendung aus, um eine Beeinträchtigung der Anwendungsintegrität und -performance zu ermitteln. Die Health Checks und Sonden sollten mehr sein als nur statische Seitentests, sie sollten den ganzheitlichen Anwendungszustand widerspiegeln.

  • Workflows mit langer Ausführungszeit prüfen

    Das frühzeitige Abfangen von Problemen kann die Notwendigkeit minimieren, den gesamten Workflow zurückzusetzen oder mehrere Vergütungstransaktionen auszuführen.

  • Verwalten von System-, Anwendungs- und Auditlogs

    Verwenden Sie einen zentralen Logging-Service, um Ihre Logs zu speichern und zu analysieren.

  • Frühwarnsystem einrichten

    Identifizieren Sie die Key Performance Indicators (KPIs) des Zustands einer Anwendung, z. B. vorübergehende Ausnahmen und Remote Call Latenz, und legen Sie für jede Anwendung geeignete Schwellenwerte fest. Senden Sie einen Alert an Vorgänge, wenn der Schwellenwert erreicht ist.

  • Mehrere Operatoren trainieren, um die Anwendung zu überwachen und manuelle Recovery-Schritte auszuführen

    Stellen Sie sicher, dass immer mindestens ein geschulter Operator aktiv ist.

  • Skalierungs-Policys erstellen, die basierend auf KPIs Maßnahmen ergreifen

    Mit Skalierungs-Policys können Sie für Endbenutzer in Perioden mit hohem Bedarf eine konsistente Performance bereitstellen und Ihre Kosten in Perioden mit niedrigem Bedarf reduzieren.

Verwaltete Services nutzen

Verwenden Sie verwaltete Cloud-Services, um sicherzustellen, dass Ihre Cloud-Ressourcen effizient und kostengünstig ausgeführt werden. Ihre IT-Organisation kann die taktischen und undifferenzierten Schwerpunkte im Zusammenhang mit der Verwaltung von Cloud-Ressourcen auslagern, damit sie sich auf ihre Kernkompetenzen konzentrieren können.

Zuständigkeiten identifizieren

Cloud-Provider dokumentieren, wofür ihre Plattform verantwortlich ist und wofür der Kunde verantwortlich ist. Identifizieren Sie die Verantwortlichkeiten Ihrer Kunden und stellen Sie sicher, dass Sie über operative Verfahren für jede dieser Verantwortlichkeiten verfügen.