Überwachen und Optimieren im Laufe der Zeit
Kontinuierliche Investition in die richtige Größe, da sich Ihre Workload mit dem Ökosystem weiterentwickelt. |
---|
Was gestern wichtig war, könnte heute nicht mehr wichtig sein. Wenn Sie durch die Auswertung von Produktionsworkloads lernen, erwarten Sie Änderungen an Architektur, Geschäftsanforderungen, Prozessen und sogar der Teamstruktur. Ihre Softwareentwicklungs-Lifecycle-Praktiken (SDLC) müssen möglicherweise weiterentwickelt werden. Externe Faktoren können sich auch ändern, z. B. die Cloudplattform, ihre Ressourcen und Ihre Verträge.
Sie sollten die Auswirkungen aller Änderungen auf die Kosten sorgfältig bewerten. Überwachen Sie Änderungen und den ROI-Trend in regelmäßigen Abständen, und bewerten Sie, ob Sie funktionale und nichtfunktionale Anforderungen anpassen müssen.
Beispielszenario
Contoso Air bietet eine Gepäckverfolgungslösung für Fluggesellschaften. Die Workload wird in Azure gehostet und wird auf AKS mit Cosmos DB für seine Datenbank ausgeführt und verwendet Event Hubs für Messaging. Die Workload wird in den Regionen West-USA und Ost-USA bereitgestellt.
Bewerten Sie kontinuierlich und optimieren Sie Ihre Umgebung und Supportkosten.
Mithilfe Ihres Kostenverfolgungssystems können Sie die Kosten für Ressourcen, Daten und kostenpflichtigen Support kontinuierlich auswerten und optimieren. Gibt es nicht genutzte Ressourcen, die abgeschaltet, ersetzt, neu erstellt oder umgestaltet werden können?
Sie reduzieren die Kosten, indem Sie die Zahlung für Ressourcen vermeiden, die nicht vollständig genutzt werden. Das Verständnis von Preismetriken kann Ihnen dabei helfen, Entscheidungen zu treffen, die stärker auf Ihr Kostenmodell abgestimmt sind. Es kann auch verhindern, dass die Abrechnung ungerechtfertigt ist. Das Ändern der Größe oder das Entfernen von nicht genutzten Ressourcen oder sogar das Ändern von SKUs kann Kosten mindern.
Möglicherweise können Sie auch einige Kosten sparen, indem Sie die Nutzung Ihrer Supportverträge mit Ihren Technologieanbietern bewerten und die richtigen Größenanpassungen durchführen.
Herausforderung für Contoso
- Das Workload-Team hat immer das Budget eingehalten, sodass die Optimierung für die Kosteneffizienz keine Priorität hat.
- Sie planen, die Zuverlässigkeit der Workload im nächsten Jahr zu verbessern und wissen, dass dies ihre Azure-Kosten erhöhen wird, was wahrscheinlich dafür sorgt, dass die Workload ihr Budget überschreitet. Sie erwägen die Forderung nach einem erhöhten Budget für das nächste Jahr.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
- Das Team entscheidet, dass sie vor der Forderung nach mehr Geld ihre aktuellen Azure- und Supportkosten auswerten sollten, um nach potenziellen Sparmöglichkeiten zu suchen. Sie untersuchen die Ressourcen-, Ressourcengruppen- und Tag-Aufschlüsselungen der Kosten im vorhandenen Kostenverfolgungssystem und bemerken unerwartete Ausgaben.
- Das Team ermittelt, dass VMs in ihrer Umgebung ausgeführt werden, die für ein veraltetes Buildsystem verwendet wurden und nicht mehr benötigt werden, es gibt eine erhebliche Menge alter Daten in Azure Storage, die auf eine weniger teure Stufe verschoben werden können, und sie zahlen für einen Supportvertrag mit ihrem Cloudanbieter, der Beratungsstunden umfasst, die sie nicht verwenden.
- Das Team optimiert seine Azure-Kosten, indem die nicht verwendeten virtuellen Computer gelöscht und die alten Daten in den Archivspeicher verschoben werden. Sie arbeiten enger mit ihrem Cloud-Anbieter zusammen, um ihre Beratungsleistungen gut nutzen zu können.
- Das Team fügt seinem Backlog eine wiederkehrende Aufgabe hinzu, um in Zukunft Auswertungen ihrer Workloadkosten durchzuführen.
Kontinuierliches Überprüfen und Verfeinern Ihrer Workload
Passen Sie Architekturdesignentscheidungen, Ressourcen, Code und Workflows basierend auf ROI-Daten kontinuierlich an.
Regelmäßige Überprüfungen von Metriken, Leistungsdaten, Abrechnungsberichten und Featurenutzung können zu einer Feinabstimmung führen, die Kosten reduzieren kann.
Herausforderung für Contoso
- Da das Team in der Vergangenheit unter dem Budget geblieben ist, hat es sich keine alternativen Ansätze für vorhandene Funktionen angesehen. Stattdessen konzentrieren sich die meisten ihrer Planungen auf die Erstellung neuer Features.
- Nach dem Auffinden von Ausschuss durch ihre anfängliche Auswertung entscheiden sie sich, die restlichen Komponenten zu betrachten, um nach Optimierungsmöglichkeiten zu suchen.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
- Das Team findet, dass sie mehr Ressourcen zugewiesen haben, als für Flows mit niedriger Priorität erforderlich sind, und können den zugewiesenen Durchsatz sicher herunterskalieren und gleichzeitig ihre Leistungsanforderungen beibehalten. Insbesondere können sie sich von der zu hohen Bereitstellung wegbewegen, um Spitzenlasten zu verarbeiten und stattdessen ein warteschlangenbasiertes Lastenabgleichssystem zu implementieren.
- Sie stellen außerdem fest, dass der ausgewählten SKU auf ihrer Computeplattform ein neues Feature hinzugefügt wurde, das einen Authentifizierungscode ersetzt. Die Verwendung dieses Features bedeutet weniger Code zum Warten und Testen.
Optimieren Ihrer Bereitstellungsumgebungen
Behandeln Sie verschiedene SDLC-Umgebungen unterschiedlich, und stellen Sie die richtige Anzahl von Umgebungen bereit. Die Produktionsumgebungen sollten Ihr Hauptkostentreiber sein.
Sie können Geld sparen, indem Sie verstehen, dass nicht alle Umgebungen die Produktion simulieren müssen. Nichtproduktionsumgebungen können unterschiedliche Features, SKUs, Instanzenanzahl und sogar Protokollierung aufweisen.
Sie können auch Kosten sparen, indem Sie Vorproduktionsumgebungen bei Bedarf erstellen und sie entfernen, wenn Sie sie nicht mehr benötigen.
Herausforderung für Contoso
- Das Workload-Team gibt mehr für Vorproduktionsumgebungen als für Produktionsumgebungen aus. Obwohl dies für einige Szenarien wichtig sein kann, scheint dies für diese Workload zu übermäßig.
- Die Vorproduktionsumgebungen wurden so aufgebaut, dass sie sehr eng mit der Produktionsumgebung übereinstimmen. Das Workload-Team schätzt, dass die niedrigeren Umgebungen der Produktionsumgebung sehr nahe kommen, was ein hohes Maß an Vertrauen bietet, dass das Verhalten in den niedrigeren Umgebungen mit der Produktion übereinstimmt.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
- Nach sorgfältiger Bewertung entscheidet das Team, dass sie den Kompromiss von etwas zusätzlichem Risiko akzeptieren können, um Kosteneinsparungen zu erzielen, die mit einer Abweichung zwischen den Umgebungen verbunden sind.
- Das Team entscheidet sich, einige der Testumgebungen in die selbe Infrastruktur zu verlagern und nicht verwendete Umgebungen über Nacht herunterzufahren.
- Das Team findet auch Möglichkeiten, nach links zu wechseln und interne Entwicklungs- und Testvorgänge auf lokalen Entwicklerarbeitsstationen durchzuführen.
- Durch die Suche nach Möglichkeiten, kleine Kompromisse in ihren Vorproduktionsumgebungen und Entwicklungspraktiken einzugehen, haben sie Budget freigemacht, das sie in ihren Automatisierungsbemühungen gut einsetzen können.