Empfehlungen zum Festlegen von Ausgabenleitplanken

Gilt für die folgende Empfehlung für die Azure Well-Architected Framework-Prüfliste zur Kostenoptimierung:

CO:04 Legen Sie Die Ausgabenschutzplanken fest. Schutzmaßnahmen sollten Releasegates, Governancerichtlinien, Ressourcenlimits und Zugriffssteuerungen umfassen. Priorisieren Sie die Plattformautomatisierung gegenüber manuellen Prozessen.

In diesem Leitfaden werden die Empfehlungen zum Festlegen von Ausgabenschutzrichtlinien beschrieben. Ausgabenschutzmaßnahmen sind Maßnahmen zur Kontrolle und Verwaltung von Kosten innerhalb eines bestimmten Budgets. Sie tragen dazu bei, unerwartete oder übermäßige Ausgaben zu vermeiden und eine kostengünstige Nutzung von Ressourcen zu fördern. Ohne Die Ausgaben für Schutzmaßnahmen können Ihre Workloadkosten Ihr Budget überschreiten, was zu ungeplanten Ausgaben führen kann, die Ihre finanziellen Ressourcen belasten können.

Definitionen

Begriff Definition
Governancerichtlinien Eine Reihe von Regeln, die Compliance erzwingen und die Überwachung von Workloadressourcen aktivieren.
Governance Eine Reihe von Richtlinien, Prozessen und Kontrollen, die sicherstellen, dass die Workload effektiv, sicher und in Übereinstimmung mit den organisatorischen und gesetzlichen Anforderungen verwaltet wird.
Infrastruktur als Code (Infrastructure as Code, IaC) Ein beschreibendes Modell zum Definieren und Bereitstellen von Infrastruktur, einschließlich Netzwerken, virtuellen Computern, Lastenausgleichsmodulen und Verbindungstopologien.
Releasegate Eine Bedingung oder ein Prüfpunkt in einer Releasepipeline, die erfüllt werden muss, bevor die Bereitstellung fortgesetzt werden kann. Ein Releasegate hilft sicherzustellen, dass bestimmte Kriterien erfüllt sind, bevor Software veröffentlicht wird.

Wichtige Entwurfsstrategien

Legen Sie Schutzmaßnahmen für Ausgaben fest, indem Sie Maßnahmen implementieren, um Ihre Kosten innerhalb eines bestimmten Budgets zu steuern und zu verwalten. Diese Maßnahmen umfassen Governancerichtlinien, Zugriffssteuerungen, Releasegates, Budgetschwellenwerte und Warnungen. Automatisierung reduziert das Risiko menschlicher Fehler, verbessert die Effizienz und unterstützt die konsequente Anwendung von Ausgabenleitplanken. Priorisieren Sie die Plattformautomatisierung gegenüber manuellen Prozessen. Automatisierungstools und -dienste, die die Plattform bereitstellt, können die Bereitstellung, Konfiguration und Verwaltung von Ressourcen optimieren.

Verwenden von Governancerichtlinien

Governancerichtlinien können als Ausgabenschutz für verschiedene Aspekte von Ressourcen fungieren, z. B. Ressourcentypen, Konfigurationen, Tags, Standort und Datenverwaltung. Viele Cloudplattformen verfügen über einen Dienst, der die Durchsetzung von Governancerichtlinien automatisiert. Verwenden Sie automatisierte Richtlinien, um die Ressourcennutzung zu steuern, die Verantwortlichkeit zu erzwingen und Ausgaben für eingeschränkte Ressourcentypen zu vermeiden. Im Folgenden finden Sie einige der Richtlinien, die Sie erzwingen sollten:

  • Eingeschränkte Ressourcentypen: Richtlinien können angeben, welche Ressourcentypen innerhalb eines organization zulässig oder nicht zulässig sind. Ein organization kann beispielsweise über eine Richtlinie verfügen, die die Verwendung bestimmter teurer Ressourcentypen zur Kostenkontrolle einschränkt.

  • Ressourcengrenzwerte: Legen Sie Ressourcengrenzwerte fest, um Kosten zu steuern und eine Überbereitstellung zu verhindern. Schließen Sie Grenzwerte für die Anzahl von Ressourcen, die bereitgestellt werden können, die Größe der Ressourcen und die Dauer der Ressourcennutzung in Ihre Richtlinie ein. Diese Grenzwerte können Ihnen helfen, übermäßige Ausgaben zu vermeiden und die Ressourcennutzung zu optimieren. Beispielsweise können Ressourcenlimits die Auswirkungen einer nicht autorisierten Kontoverletzung im Zusammenhang mit Krypto-Mining minimieren.

  • Definierte Ressourcenkonfigurationen: Richtlinien können bestimmte Konfigurationen für Ressourcen definieren. Sie können Einstellungen für Ressourcen erzwingen, die die Kostenoptimierung fördern, z. B. automatische Skalierung und Datenarchivierung.

  • Eingeschränkte Standorte: Sie können Richtlinien verwenden, um die Bereitstellung von Ressourcen auf bestimmte Regionen oder Standorte einzuschränken. Erwägen Sie, Standorte einzuschränken, um kostspielige Datenübertragungsgebühren zu vermeiden und die Einhaltung der Datenhoheitsvorschriften aufrechtzuerhalten.

  • Verwaltete Daten: Verwenden Sie Richtlinien, um Datenverwaltungsmethoden zu erzwingen, die zur Optimierung der Kosten beitragen. Sie können beispielsweise Richtlinien implementieren, die die Verwendung kostengünstigerer Speicherebenen für weniger häufig verwendete Daten erfordern, oder Richtlinien, die Ablaufregeln für die Datenaufbewahrung definieren.

  • Erzwungene Metadaten: Richten Sie Richtlinien ein, die die Verwendung bestimmter Metadaten für eine bessere Nachverfolgung und Kostenzuordnung erfordern. Sie können Metadaten auch in Ihrer Automatisierung oder manuellen Überprüfung verwenden. Verwenden Sie beispielsweise Metadaten, um Ressourcensicherungen mithilfe eines Sicherungstags zu automatisieren. Eine konsistente Metadatenrichtlinie hilft dabei, die Kosten an den Ausgabenrichtlinien auszurichten.

  • Eingeschränkte Ressourcen im Leerlauf: Verwenden Sie Richtlinien, um Ressourcen im Leerlauf zu identifizieren, damit Sie sie löschen oder neu verwenden können. Erwägen Sie das Festlegen von Richtlinien, die Instanzen während der Stunden, die sie nicht verwenden, automatisch heruntergefahren werden.

RisikosymbolRisiko: Wenn Sie die automatische Skalierung implementieren, legen Sie basierend auf Tests einen maximalen Skalierungsschwellenwert fest. Maximale Schwellenwerte können Ihnen dabei helfen, massive Skalierungsspitzen zu vermeiden, die zu Kostenüberschreitungen führen, aber ein zu niedriger Schwellenwert kann sich negativ auf die Leistung auswirken. Weitere Informationen finden Sie unter Empfehlungen zum Optimieren der Skalierungskosten.

Konfigurieren der Zugriffssteuerung

Konfigurieren Sie Zugriffssteuerungen, um Einschränkungen festzulegen, die übermäßig ausstehend verhindern, und um sicherzustellen, dass nur autorisierte Personen Ressourcen nutzen können. Zugriffssteuerungen können dazu beitragen, das Risiko versehentlicher oder unnötiger Änderungen zu verringern, die sich negativ auf die Kostenoptimierung auswirken. Führen Sie die folgenden Schritte aus, um Zugriffssteuerungen für die Kostenoptimierung zu implementieren:

  1. Identifizieren Sie die erforderliche Steuerung. Identifizieren Sie die Ressourcen und Dienste, die Zugriffssteuerungen benötigen.

  2. Definieren sie Zugriffsrichtlinien. Definieren Sie Zugriffsrichtlinien basierend auf dem Prinzip des Zugriffs mit den geringsten Rechten, und gewähren Sie Benutzern nur die erforderlichen Berechtigungen, um ihre Aufgaben auszuführen. Beispielsweise benötigen einige Benutzer möglicherweise nur Lesezugriff, während andere auch Schreib- oder Löschberechtigungen benötigen.

  3. Implementieren sie die Authentifizierung. Implementieren Sie Authentifizierungsmethoden wie Benutzername/Kennwort, mehrstufige Authentifizierung oder Integration mit Identitätsanbietern, um sicherzustellen, dass nur autorisierte Benutzer auf Ressourcen zugreifen können.

  4. Verwenden Sie die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC). Richten Sie RBAC ein, um Benutzern Rollen und Berechtigungen basierend auf ihren Aufgaben zuzuweisen. Die Verwendung von RBAC kann Ihnen helfen, den Ressourcenzugriff effektiv zu verwalten.

  5. Überprüfen und aktualisieren Sie Steuerelemente. Überprüfen und aktualisieren Sie die Zugriffssteuerungen regelmäßig, um sicherzustellen, dass sie den sich ändernden Anforderungen der organization entsprechen. Entfernen Sie unnötige Zugriffsberechtigungen, und passen Sie die Zugriffsebenen nach Bedarf an.

Verwenden von Releasegates

Releasegates sind Prüfpunkte oder Bedingungen, die erfüllt sein müssen, bevor ein Release oder eine Bereitstellung fortgesetzt werden kann. Verwenden Sie Releasegates, um sicherzustellen, dass das Release kostengünstig ist und den Optimierungszielen entspricht. Release Gates bieten einen strukturierten Ansatz zur Identifikation und Umsetzung von Kostensparmaßnahmen. Beachten Sie die folgenden Schritte, um Releasegates für die Workloadkostenoptimierung zu implementieren:

  1. Legen Sie Releasegate-Kriterien fest. Legen Sie die Bedingungen oder Kriterien fest, die erfüllt sein müssen, bevor Ressourcen freigegeben oder bereitgestellt werden. Schließen Sie Faktoren wie Ausgabenlimits, Ressourcenauslastungsschwellenwerte oder Projektmeilensteine ein.

  2. Integrieren sie Releasegates. Integrieren Sie die Releasegates in die Bereitstellungspipeline. Sie können Automatisierungstools oder benutzerdefinierte Skripts verwenden, um sicherzustellen, dass Ressourcenbereitstellungen den definierten Kriterien unterliegen.

  3. Überwachen der Ausgaben. Überwachen Sie die Ausgaben und die Ressourcennutzung kontinuierlich anhand der definierten Kriterien. Wenn die organization Ausgabenschwellenwerte überschreitet, sollten die Releasegates weitere Bereitstellungen verhindern, bis das Problem behoben ist.

Konfigurieren von Kostenwarnungen

Es ist wichtig, Warnungen für Budgets, Kostenanomalien und eine auf Verpflichtungen basierende Plannutzung festzulegen, um die Kosten zu optimieren. Diese Warnungen bieten Einblick in Ihre Cloudausgaben und ermöglichen ein proaktives Kostenmanagement. Achten Sie darauf, Benachrichtigungsempfänger für Warnungen zu verwalten, und halten Sie die Empfängerliste mit den aktuellen Zuständigkeiten und dem aktuellen Zugriff auf dem neuesten Stand. Einige Warnungen, die Sie möglicherweise erstellen, um Kosten zu optimieren, sind:

  • Budgetwarnungen: Legen Sie Warnungen für Budgets fest, um Ihre Ausgaben anhand vordefinierter Schwellenwerte nachzuverfolgen. Sie können Ihre Kosten überwachen und Benachrichtigungen erhalten, wenn Sie sich dem budgetierten Betrag nähern oder überschreiten, indem Sie ein monatliches Budget, ein Abrechnungskonto oder eine Ressourcengruppe erstellen. Budgetwarnungen helfen Ihnen, über Ihre Ausgaben auf dem Laufenden zu bleiben und vorbeugende Maßnahmen zur Kostenkontrolle zu ergreifen.

  • Warnungen zu Kostenanomalien: Anomaliewarnungen informieren Sie über unerwartete Kostenschwankungen, die auf Ineffizienzen oder ungewöhnliche Ausgabenmuster hinweisen können. Sie können diese Warnungen konfigurieren, um Anomalien in den tatsächlichen oder prognostizierten Kosten zu identifizieren. Verwenden Sie Kostenanomaliewarnungen, um die zugrunde liegende Ursache einer Kostenabweichung zu untersuchen und bei Bedarf Korrekturmaßnahmen zu ergreifen.

  • Warnungen zur nutzungsbasierten Plannutzung auf Verpflichtungsbasis: Implementieren Sie Zusagenbasierte Plannutzungswarnungen, um Ihre Plannutzung zu überwachen. Wenn Sie über verpflichtungsbasierte Pläne verfügen, kann das Festlegen von Warnungen zur Planauslastung Ihnen helfen, den Wert dieser Verpflichtungen effektiv zu verwalten und zu maximieren. Sie können diese Warnungen konfigurieren, um Projektbeteiligte zu benachrichtigen, wenn die Nutzung von ressourcenbasierten Ressourcen unter einen gewünschten Schwellenwert fällt. Optimieren Sie Ihre ressourcenbasierten Verpflichtungen, und stellen Sie sicher, dass Sie die Vorteile Ihrer Verpflichtungen nutzen.

Verwenden von IaC

Infrastructure-as-Code ist die Praxis der Verwaltung und Bereitstellung von Infrastrukturressourcen mithilfe von Code, in der Regel in Form von Konfigurationsdateien. Implementieren Sie diese Strategie, um die Bereitstellung und Konfiguration von Infrastrukturressourcen wie virtuellen Computern, Netzwerken und Speicher mithilfe von codebasierten Vorlagen zu definieren und zu automatisieren.

IaC-Strategien bieten einen strukturierten und wiederholbaren Ansatz für die Verwaltung und Steuerung von Infrastrukturressourcen. IaC kann Ihnen helfen, Ressourcen nach Bedarf bereitzustellen, Ressourcen zu löschen, ohne sie kontinuierlich auszuführen, und die Kosten zu optimieren, indem Sie sicherstellen, dass Sie Ressourcen gemäß vordefinierten Regeln bereitstellen und konfigurieren. Führen Sie die folgenden Schritte aus, um IaC für die Kostenoptimierung zu verwenden:

  1. Create IaC-Vorlagen. Create eine codebasierte Vorlagensprache, um Ihre Infrastrukturressourcen und deren Konfigurationen zu definieren. Mit diesen Vorlagen können Sie den gewünschten Zustand Ihrer Infrastrukturressourcen deklarativ angeben. Implementieren Sie bewährte Methoden für die Kostenoptimierung in Ihrem Infrastrukturcode. Erwägen Sie die richtige Größenanpassung Ihrer Ressourcen mithilfe reservierter Instanzen oder Sparpläne. Verwenden Sie kostengünstige Speicheroptionen, und wenden Sie Ressourcenmetadaten für die Kostenzuordnung und -nachverfolgung an.

  2. Speichern von Vorlagen. Speichern Sie IaC-Vorlagen in einem Versionskontrollsystem, um Änderungen nachzuverfolgen und verschiedene Versionen zu verwalten. Sie können die Versionskontrolle verwenden, um einen Verlauf Ihrer Infrastrukturkonfigurationen zu verwalten und die Zusammenarbeit zwischen Teammitgliedern zu fördern.

  3. Verwenden Sie Parameter. Verwenden Sie Parameter in Ihren Vorlagen, um sie wiederverwendbar und konfigurierbar zu machen. Mithilfe von Parametern können Sie Ihre Infrastrukturbereitstellungen ganz einfach für verschiedene Umgebungen oder Szenarien anpassen.

  4. Verwenden Sie kurzlebige Umgebungen. Verwenden Sie kurzlebige Umgebungen für Entwicklungs-, Test- und Stagingzwecke, um Kosten zu optimieren. Kurzlebige Umgebungen sollten nur bei Bedarf ausgeführt werden. Create diese Umgebungen mithilfe von IaC-Tools und löschen Sie die Umgebung, wenn Sie fertig sind.

  5. Verwenden Sie IaC-Tools. Verwenden Sie IaC-Tools und -Frameworks, um die Bereitstellung und Konfiguration Ihrer Infrastrukturressourcen zu automatisieren. Verwenden Sie die Automatisierung, um Ressourcen konsistent und zuverlässig gemäß Ihren definierten Richtlinien bereitzustellen.

  6. Überwachen bereitgestellter Ressourcen. Überwachen Sie Ihre Ressourcen und deren Kosten regelmäßig, um die Einhaltung Ihrer Ausgabenrichtlinien sicherzustellen. Verwenden Sie Überwachungs- und Warnungstools, um Abweichungen von den definierten Leitplanken zu identifizieren und bei Bedarf Korrekturmaßnahmen zu ergreifen. Suchen Sie nach nicht verwendeten Ressourcen, und löschen Sie sie, vorzugsweise mit Automatisierung.

Azure-Erleichterung

Verwenden von Governancerichtlinien: Verwenden Sie Azure Policy, um Governancerichtlinien zu definieren und zu erzwingen, die Ihren Kostenoptimierungszielen entsprechen. Sie können Azure Policy verwenden, um Regeln für Verwaltungsgruppen, Abonnements und Ressourcengruppen festzulegen. Diese Richtlinien können die Ressourcenbereitstellung, Die Nutzungslimits und die Kostenzuordnung regeln. Verwenden Sie Richtlinien, um die Rechteverwaltung von Ressourcen zu fördern, leerlauffähige oder nicht ausgelastete Ressourcen zu identifizieren und zu beseitigen und die Verwendung kostengünstiger Dienste und Architekturen zu fördern.

Mit Azure können Sie Grenzwerte oder Kontingente festlegen, um unerwartete Kosten zu vermeiden. Sie können Grenzwerte für die Anzahl von Ressourcen definieren, die bereitgestellt werden können, zusätzlich zur Größe und Dauer der Ressourcennutzung. Legen Sie diese Grenzwerte fest, um eine Überbereitstellung zu verhindern und die Kosten zu kontrollieren.

  • Identifizieren sie nicht ausgelastete oder im Leerlauf befindliche Ressourcen. Verwenden Sie Azure Advisor , um Ihre Azure-Gesamtkosten zu optimieren und zu reduzieren, indem Sie ressourcen im Leerlauf und zu wenig genutzte Ressourcen identifizieren. Erhalten Sie Kostenempfehlungen aus dem Kostenabschnitt im Advisor-Dashboard.

  • Fügen Sie Ressourcenmetadaten hinzu. Verwenden Sie Azure-Governance, um die Ressourcenmarkierung und -kategorisierung zu implementieren. Markieren Sie Ressourcen mit relevanten Metadaten, um Kosten für verschiedene Abteilungen, Projekte oder Kostenstellen nachzuverfolgen und zuzuordnen. Der Einblick in die Kostenzuordnung kann Ihnen helfen, Bereiche mit hohen Ausgaben zu identifizieren, die Ressourcenzuordnung zu optimieren und ein besseres Kostenmanagement zu ermöglichen.

Konfigurieren von Zugriffssteuerungen: Verwenden Sie Azure RBAC, um den Zugriff auf Ressourcen zu verwalten. Sie können RBAC verwenden, um Benutzern, Gruppen oder Anwendungen basierend auf ihren Rollen Berechtigungen zu erteilen. Implementieren Sie RBAC, um sicherzustellen, dass nur autorisierte Benutzer Zugriff auf Ressourcen haben, und verringern Sie das Risiko einer nicht autorisierten Ressourcennutzung und potenzieller Kostenauswirkungen.

Verwenden von Releasegates: Verwenden Sie die Releaseverwaltung von Azure Pipelines , um Ihre Releasegates zu definieren und zu erzwingen. Sie können manuelle oder automatisierte Prüfpunkte einrichten, um sicherzustellen, dass Sie bestimmte Kriterien erfüllen, z. B. Sicherheitsprüfungen, Complianceanforderungen und Kostenschwellenwerte.

Verwenden von Infrastruktur als Code. Sie können Azure-Tools und -Dienste verwenden, um Infrastrukturressourcen mithilfe von Code bereitzustellen und zu verwalten. Mithilfe von Tools wie Arm-Vorlagen (Azure Resource Manager), Azure Bicep und Azure DevOps können Sie Ihre Infrastrukturressourcen deklarativ definieren und bereitstellen. Azure verfügt über Bicep-, Azure Resource Manager- und Terraform-Vorlagen für jede Azure-Ressource.

Verwenden Sie Azure Pipelines oder andere CI/CD-Tools (Continuous Integration und Continuous Delivery), um die Build-, Test- und Bereitstellungsprozesse zu automatisieren. Teams können Pipelines verwenden, um eine Reihe von Schritten und Aktionen zu definieren, die automatisch ausgeführt werden, wenn Änderungen an der Codebasis vorgenommen werden. Automatisieren Sie diese Prozesse, um den manuellen Aufwand zu reduzieren, Konsistenz sicherzustellen und die Bereitstellung von Software zu beschleunigen.

Erwägen Sie die Verwendung kostengünstigerer Ressourcen für Ihre kurzlebigen oder nicht produktiven Umgebungen, um die Kosten zu optimieren. Azure bietet verschiedene Tarife für Ressourcen. Azure DevTest Labs Preise und Azure-Reservierungen sind kostensparende Methoden, die Sie für kurzlebige Umgebungen erkunden können.

Git-Repositorys wie Azure Repos und GitHub bieten Versionskontrollfunktionen zum Verwalten von Code- und Infrastrukturkonfigurationen. Teams und Entwickler können automatisierte Repositorys verwenden, um zusammenzuarbeiten, Änderungen nachzuverfolgen und einen Verlauf ihrer Codebasis zu verwalten.

Azure-Bereitstellungsumgebungen ermöglichen es Entwicklungsteams, mithilfe projektbasierter Vorlagen, die Konsistenz und bewährte Methoden schaffen und gleichzeitig die Sicherheit maximieren, schnell und einfach eine App-Infrastruktur zu erstellen. Der bedarfsgesteuerte Zugriff auf sichere Umgebungen beschleunigt die Phasen des Softwareentwicklungslebenszyklus auf konforme und kosteneffiziente Weise.

Der Azure Developer CLI ist ein Open-Source-Tool, das die Zeit beschleunigt, die Sie benötigen, um Ihre Anwendung aus einer lokalen Entwicklungsumgebung in Azure zu bringen. Die Azure Developer CLI bietet entwicklerfreundliche Befehle, die den wichtigsten Phasen ihres Workflows zugeordnet sind, unabhängig davon, ob Sie im Terminal, in einer integrierten Entwicklungsumgebung (IDE) oder CI/CD arbeiten.

Konfigurieren von Kostenwarnungen: Verwenden Sie Microsoft Cost Management , um Kosten zu optimieren und Ausgabenwarnungen zu erzwingen. Sie können Kostenverwaltungsfunktionen verwenden, um Budgets und Warnungen festzulegen, Kosteninformationen mithilfe von Tools wie Power BI zu visualisieren und Kostenmuster und Leistungsengpässe zu analysieren.

Organisationsausrichtung

Zentrale Teams sollten die Cloud Adoption Framework Anleitung verwenden, um ausgabenübergreifende Schutzmaßnahmen für die organization einzurichten, damit Workloadteams verstehen, was das zentrale Team bieten kann.

Wir empfehlen den organization, richtliniengesteuerte Leitplanken zu übernehmen. Eine Beispielimplementierung finden Sie unter Einführen richtliniengesteuerter Leitplanken.

Checkliste für die Kostenoptimierung

Sehen Sie sich den vollständigen Satz von Empfehlungen an.