Bereinigung von Ressourcen und Daten
AWS Saving Plan
Die AWS Saving Plans oder Sparpakete, die es in verschiedenen Varianten gibt, wurden vor etwa 3 Jahren eingeführt. Sie bieten Preisnachlässe von bis zu 72 Prozent im Vergleich zu den On-Demand-Preisen, sofern man den „EC2 Instance Savings“-Plan wählt. Besonders der flexiblere „Compute Savings Plan“, der immer noch bis zu 66 Prozent Rabatt bietet, ist sehr attraktiv, da er nicht nur EC2, sondern auch Lambda und Fargate abdeckt.
Reserved Instances und Reserved Capacity
Leider bietet AWS keine Sparkonzepte für alle potenziellen Szenarien oder AWS-Services an, jedoch gibt es andere attraktive Rabattoptionen wie Amazon RDS Reserved Instances, die Abhilfe schaffen. Reserved Instances nutzen vergleichbare Konfigurationsoptionen wie die Sparpakete und versprechen einen ähnlichen Rabattsatz für Workloads, die permanent laufende Datenbankserver erfordern.
Automatisches Herunterfahren und Neustart von EC2- und RDS-Instanzen
Hoch- und Herunterskalieren von Instanzen in Testumgebungen
Diese Option funktioniert allerdings nicht in allen Fällen, da Testumgebungen (auch bekannt als UAT-Umgebungen) häufig die produktive Arbeitslast widerspiegeln, um bei der Durchführung manueller oder automatisierter Tests nahezu identische Bedingungen zu schaffen. Insbesondere Lasttests, aber auch andere Tests sollten daher auf produktionsähnlichen Systemen durchgeführt werden, da ihre Ergebnisse sonst nicht zuverlässig sind. Außerdem läuft nicht jede Anwendung auf kleineren EC2-Instanzen so reibungslos wie auf größeren, bzw. kann eine Änderung der Instanzgröße zusätzliche Anpassungen der Anwendungskonfiguration erfordern.
Gestaltung neuer Anwendungen mit einer Serverless-First-Mentalität
Überlegen Sie, was geloggt und an CloudWatch gesendet werden soll
Die Protokollierung (Logging) ist seit der Erfindung der Software ein wichtiger Bestandteil der Anwendungsentwicklung und des Betriebs. Nützliche Logdaten (hoffentlich in strukturierter Form) können helfen, Fehler oder andere Unzulänglichkeiten zu erkennen und einen nützlichen Einblick in ein Softwaresystem zu geben. Mit CloudWatch bietet AWS eine Plattform zur Erfassung, Speicherung und Analyse von Logs.
Einige der folgenden Ideen helfen, die CloudWatch-Kosten im Griff zu behalten:
- Ändern Sie die Log-Aufbewahrungszeit von „Never expire“ auf einen sinnvollen Wert.
- Wenden Sie Logstichproben an, wie in diesem Beitrag beschrieben und zum Beispiel von den AWS Lambda Powertools bereitgestellt
- Ziehen Sie die Verwendung eines Überwachungssystems von einem Drittanbieter wie Lumigo oder Datadog in Betracht, anstatt viele Lognachrichten auszugeben. Diese externen Systeme sind zwar nicht kostenlos und dürfen nicht immer verwendet werden (insbesondere in einem Unternehmenskontext), bieten aber viele zusätzliche Funktionen, die einen echten Unterschied machen können.
- In einigen Fällen ist es möglich, Protokolle direkt an andere Systeme zu senden (anstatt sie zuerst in CloudWatch aufzunehmen) oder sie in S3 zu speichern und Athena zu verwenden, um gewisse Erkenntnisse zu gewinnen.
- Aktivieren Sie Logging bei Bedarf und entsprechend, aber nicht immer in der Standardeinstellung – nicht jede Anwendung benötigt z. B. VPC-Flow-Protokolle oder API-Gateway-Zugriffsprotokolle, obwohl es in bestimmten Umgebungen (aus Sicherheitsgründen oder aufgrund bestimmter Vorschriften und Unternehmensregeln) dafür gute Gründe gibt.
Das Logging ist wichtig und in den meisten Fällen sehr nützlich, aber es ist sinnvoll, die Ausgaben im Auge zu behalten und das Protokollierungskonzept im Falle ausufernder Kosten anzupassen.
0 Kommentare