Entwerfen mit Blick auf die Kosteneffizienz
- 12 Minuten
|
|
|---|
Jede Architekturentscheidung wirkt sich auf Ihr Budget aus, z. B. ob Sie erstellen oder kaufen, welche Tools Sie verwenden oder wie Sie lizenzieren und trainieren. Es ist wichtig, diese Optionen abzuwägen und Abwägungen vorzunehmen, die die Anforderungen Ihrer App weiterhin erfüllen, ohne ausstehend zu sein.
Beispielszenario
Contoso Manufacturing führt ein benutzerdefiniertes Lagerverwaltungssystem (WMS) aus, das seine vier Lagerhäuser in Südamerika verarbeitet. Sie möchten die WMS aktualisieren und in die Cloud verschieben. Sie entscheiden zwischen einem Lift- und Shift-Move der aktuellen Lösung oder einem grünen Feldbau mit modernen Cloudtools. Führung möchte die Kosten unter Kontrolle halten, daher benötigt das Team einen Plan, der die Kosteneffizienz gewährleistet.
Die WMS-Lösung ist eine .NET-Anwendung, die auf Internetinformationsdienste (IIS) ausgeführt wird und SQL Server für seine Datenbanken verwendet.
Grundlegendes zu den vollständigen Kosten Ihres Designs
Messen Sie die Gesamtkosten, die durch Technologie- und Automatisierungsoptionen entstehen, unter Berücksichtigung der Auswirkungen auf die Rendite (ROI). Das Design muss innerhalb der zulässigen Grenzen für alle funktionalen und nicht funktionalen Anforderungen funktionieren. Das Design muss auch flexibel sein, um die vorhergesagte Entwicklung zu berücksichtigen. Berücksichtigen Sie Anschaffungskosten, Schulungen und Change Management.
Durch die Implementierung eines ausgewogenen Ansatzes, der den ROI berücksichtigt, wird eine Überentwicklung verhindert, wodurch die Kosten erhöht werden können.
Herausforderung für Contoso
Das Entwicklungsteam bei Contoso freut sich, sein Lagersystem wie andere Teams in die Cloud zu verschieben.
Sie wissen, dass die aktuelle App einige technische Schulden hat, daher planen sie, einen Großteil des Anwendungscodes neu zu schreiben und zu neueren cloudeigenen Tools zu wechseln.
Das Entwicklungsteam möchte alles in Microservices umgestalten und auf Azure Kubernetes Service (AKS) ausführen, was eine neue und spannende Plattform für sie ist.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Das Team freut sich, während des Cloud-Umzugs eine erhebliche Neugestaltung durchzuführen, aber sie wissen, dass sie den ROI der Workload beibehalten müssen. Daher müssen sie sich an Tools halten, die sie bereits kennen, und vermeiden Sie wichtige Umschreibungen, die zusätzliche Schulungen des Engineering-Teams erfordern.
Das Workload-Team verfolgt einen praktischen Ansatz beim Entwerfen des Systems. Sie möchten, dass es kosteneffizient ist, Erwartungen erfüllt und überkompiliert dinge vermieden wird. Um den ROI in Kontrolle zu halten und die Migration reibungslos zu gestalten, entscheiden sie sich für eine entsprechende Lösung in der Cloud, z. B. Azure App Service.
Sie richten einen Kostengrundplan ein, der Infrastruktur-, Lizenzierungs- und Betriebskosten sowie weniger offensichtliche Faktoren wie Schulungen für neue Plattformen, das Umschreiben von Legacycode und die Verwaltung von Änderungen in teamsübergreifend rechnung. Sie erhalten ein klareres Bild davon, was in ihrem Budget machbar ist, was ihre Entscheidung des App-Diensts als vertrauterer, risikoärerer Weg bestätigt.
Während der Migration plant das Team, einige der technischen Schulden zu bereinigen, die jetzt sinnvoll sind. Auf diese Weise, nachdem alles auf Azure ausgeführt wurde, sind sie besser geeignet, um die Plattform zu verbessern und gleichzeitig den ROI bei der Auswahl zu berücksichtigen.
Verfeinern des Designs
Optimieren Sie das Design, indem Sie Dienste priorisieren, welche die Gesamtkosten reduzieren, keine zusätzliche Investition benötigen oder keine wesentlichen Auswirkungen auf die Funktionalität haben. Die Priorisierung sollte das Geschäftsmodell und die Technologieentscheidungen berücksichtigen, die einen hohen ROI bringen.
Sie können günstigere Optionen erkunden, die ressourcenflexibilität oder dynamische Skalierung ermöglichen könnten, oder Sie können die Verwendung vorhandener Investitionen rechtfertigen. Die Priorisierungsparameter können Kosten einbeziehen, die für kritische Workloads, Laufzeit und Vorgänge erforderlich sind, sowie andere Kosten, die dem Team helfen könnten, effizienter zu arbeiten.
Herausforderung für Contoso
Die vorhandene Workload wird in einer hyperkonvergenten-Appliance (HCI) gehostet und dem Kostencenter des Teams werden Compute-, Netzwerk- und Speicherkosten berechnet.
Die Workload hat die Vorproduktions- und Produktionsumgebungen auf virtuellen Windows-Computern bereitgestellt.
GitHub Actions with self-hosted runners is used for running GitHub Actions jobs.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Nach der Auswertung mehrerer cloudeigener Optionen entscheidet das Team, dass das Verschieben der Webkomponenten in App Service die Kompatibilität von Windows IIS-Anwendungen ohne erhebliche Änderungen bereitstellen würde und keine bedeutende Schulung erforderte.
Das Team entscheidet sich, weiterhin GitHub Actions mit selbst gehosteten Runnern zu verwenden, aber sie werden zu einer VM-Skalierungsgruppe migriert, die auf Nullknoten skaliert werden kann, wenn sie nicht verwendet werden.
Designen Sie Ihre Architektur zur Einhaltung von Kostenschutzschienen
Richten Sie Kostenbeschränkungen in Ihrer Architektur ein, um Die Ausgaben innerhalb eines sicheren Bereichs zu behalten, und stellen Sie sicher, dass Die Kosten ihrer Cloudumgebung unter diesen Grenzwerten gehalten werden.
Durch das Erzwingen von Grenzwerten können Sie Überraschungsgebühren vermeiden und sicherstellen, dass Sie nur das, wofür Sie tatsächlich budgetieren, verwenden.
Herausforderung für Contoso
Das aktuelle System verfügt nicht über Kostenschutzschienen, aber da es sich selten ändert, wird niemand dazu gedrängt, sie hinzuzufügen.
Die Besitzer der HCI-Umgebung haben eine Ressourcengrenze festgelegt, sodass die Workload nicht mehr Compute oder Speicher verwenden kann als zulässig.
Das Team ist besorgt, dass der Wechsel in die Cloud zu unerwarteten Kosten führen könnte, und sie sind nicht sicher, wie man dies vermeiden kann.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Das Team lernt, wie Microsoft Cost Management-Lösungen verwendet werden.
Sie planen, Skalierungsgrenzwerte für die App Service-Pläne festzulegen.
Sie planen, eine Ablehnungsrichtlinie einzurichten, um bestimmte teure virtuelle Computer-SKUs zu blockieren, die verwendet werden.
Sie planen das Hinzufügen von Automatisierung zum Speichern im Speicher. Ältere oder weniger verwendete Daten werden automatisch auf günstigere Speicherebenen wie Kalt oder Archiv verschoben. Diese Art von Automatisierung war in ihrer alten HCI-Umgebung nicht möglich.