Verbinden Sie AWS (CloudFormation)

Deploy the generated CloudFormation template, choose organization or single account and optional features, then verify.

Verbinden Sie AWS (CloudFormation)

Gewähren Sie CostGlass schreibgeschützten Zugriff auf Ihre AWS-Rechnung, indem Sie eine CloudFormation-Vorlage bereitstellen, die CostGlass für Sie generiert.

Where in CostGlassSettings → Cloud Accounts → Connect a New Cloud Account or Platform
PlanAll plans
Who can do thisOwner or Admin in CostGlass; someone who can create IAM roles and CloudFormation stacks in AWS
Time neededAbout 10 minutes, plus up to 24 hours for the first data
Kurz und bündig
  • Sie stellen eine Vorlage in der AWS-Region us-east-1 bereit. Es erstellt einen Kosten- und Nutzungsexport, einen S3-Bucket dafür und eine Rolle namens CostGlassCURReader, die nur CostGlass übernehmen kann.
  • Wählen Sie AWS Organization (einmal im Verwaltungskonto bereitstellen, Mitgliedskonten folgen) oder Einzelkonto.
  • Instanzplaner, Größenanpassung und Betriebszeit sind optional. Eine Funktion, die Sie nicht ankreuzen, wird in der Vorlage komplett weggelassen.
  • Nur der Instanzplaner kann alles in Ihrem Konto ändern (Starten und Stoppen). Alles andere ist schreibgeschützt.
  • AWS benötigt bis zu 24 Stunden, um den ersten Export bereitzustellen. CostGlass holt es automatisch ab.
Bevor Sie beginnen
  • Eine Anmeldung bei AWS. Für eine AWS-Organisation das Verwaltungskonto (Zahlerkonto). Bei einem Einzelkonto das Konto, das die Rechnung bezahlt.
  • Berechtigung in AWS, CloudFormation-Stacks zu erstellen, die IAM-Ressourcen enthalten (benannte IAM-Ressourcen).
  • Für eine Organisation: Der vertrauenswürdige Zugriff auf CloudFormation StackSets ist aktiviert (ein einmaliger Schritt, der unten erläutert wird).
  • öffnen Freie Kapazität in Ihrem Plan. Die Verbindungslimits finden Sie in der Übersicht.

So funktioniert die Verbindung

CostGlass fragt niemals nach einem AWS-Zugriffsschlüssel. Stattdessen erstellt die Vorlage ein IAM Rolle in Ihrem Konto. Eine Rolle ist eine Reihe von Berechtigungen, die ein vertrauenswürdiger Außenstehender für kurze Zeit ausleihen kann. Die Rolle vertraut nur dem CostGlass AWS-Konto und nur dann, wenn Ihr Externe ID.

Externe ID
Ein langes, zufälliges Geheimnis, das für diese eine Verbindung generiert wird. Die Rolle lehnt jeder ab, der sie nicht präsentiert. Dadurch wird verhindert, dass ein anderer AWS-Kunde CostGlass dazu verleitet, Ihr Konto zu lesen.
Kosten- und Nutzungsexport (CUR)
AWS Billing schreibt stündlich eine detaillierte Datei jeder Gebühr in einen S3-Bucket in Ihrem Konto. CostGlass liest diese Dateien. So gelangen Ihre Kostendaten.
StackSet
Eine CloudFormation-Funktion, die den gleichen Stack für viele Konten bereitstellt. Die Organisationsvorlage verwendet eine, um die Mitgliedskontorolle zu erstellen.

Was die Vorlage erstellt:

RessourceNameZweck
S3-Eimercostglass-cur-exports-<Ihre Konto-ID>Empfängt den Export. Verschlüsselt, jeglicher öffentlicher Zugriff gesperrt. Eine Bucket-Richtlinie ermöglicht es AWS Billing, darauf zu schreiben.
Kosten- und NutzungsexportKostenGlassCURExportStündlich, mit Ressourcen-IDs, CSV-komprimiert mit gzip, in den Ordner cur.
IAM RoleCostGlassCURReaderDie Rolle, die CostGlass übernimmt. Vertraut dem CostGlass-Konto und Ihrer externen ID.
Nur Organisation: StackSetCostGlass-Organization-Member-RolesErstellt eine Rolle mit dem Namen CostGlassReadOnly in jedem Mitgliedskonto, einschließlich Konten, die später beitreten.

Verbinden Sie AWS Schritt für Schritt

Cloud-Konten → AWS. Derselbe Assistent erscheint auch auf dem Erstausführungsbildschirm.
1
Öffnen Sie den Assistenten
Go to Settings → Cloud Accounts. In the section Connect a New Cloud Account or Platform click the AWS card under Connect a cloud. (Auf dem Erstausführungsbildschirm befindet sich der Assistent bereits in AWS.)
2
Wählen Sie den Kontotyp
Under Account type choose AWS Organization (deploy once in the management account; the role is rolled out to every member account) or Single account (an account that is not part of an Organization).
3
Wählen Sie die Funktionen
Under Features, Cost & Usage Report (CUR) is always on. Tick any of Instance Scheduler, Rightsizing recommendations and Resource uptime monitoring. Each shows a Read-only or Write access tag and lists its permissions. Siehe die Tabelle im nächsten Abschnitt.
4
Generieren Sie die Vorlage
Click Generate my template. CostGlass erstellt die Verbindung und Ihre externe ID. Wenn Sie den Vorgang verlassen und zurückkommen, bevor Sie fertig sind, werden dieselbe ausstehende Verbindung und dieselbe externe ID wiederverwendet.
5
Laden Sie die Vorlage herunter
On Deploy the CloudFormation template click Download or Copy template. Auf der Seite wird außerdem genau aufgeführt, welche Berechtigungen die Vorlage gewährt. Ihre externe ID ist in der Datei vorab ausgefüllt.
6
Wechseln Sie AWS zu us-east-1
Legen Sie in der AWS-Konsole die Region auf us-east-1 (Nord-Virginia). Dies gilt auch dann, wenn alle Ihre Server anderswo laufen: Die Exportressource „Kosten und Nutzung“ ist nur dort vorhanden.
7
Nur Organisation: Vertrauenswürdigen Zugriff aktivieren
Einmalig, vom Verwaltungskonto: CloudFormation → StackSets → Ermöglichen Sie vertrauenswürdigen Zugriff mit AWS Organizations.
8
Erstellen Sie den Stapel
Öffnen Sie in AWS CloudFormation → Stack erstellen → Mit neuen Ressourcen → Eine Vorlagendatei hochladen, choose the file, leave the parameters as generated, tick the acknowledgement that IAM resources will be created (CAPABILITY_NAMED_IAM), and create the stack. Warten Sie auf CREATE_COMPLETE, usually three to five minutes.
9
Kopieren Sie die Ausgaben
Open the stack's Ausgänge tab and copy RolleArn Und BucketName.
10
Überprüfen und verbinden Sie
Back in CostGlass click I have deployed it. Fill in the fields below and click Verify & connect.

Das Verifizierungsformular

FeldWas muss eingegeben werdenStandardmäßig
Name für diese Integration (optional)A label you will recognise, for example "Acme production organisation".AWS CUR Export (<account ID>)
Rollen-ARN (Ausgaben: RoleArn)Die RoleArn-Ausgabe. Sieht aus wie arn:aws:iam::123456789012:role/CostGlassCURReader.Keiner
S3-Bucket (Ausgaben: BucketName)Die BucketName-Ausgabe.Keiner
PräfixDer Ordner im Bucket.cur/
RegionDer Bereich des Buckets.us-east-1

CostGlass übernimmt die Rolle mit Ihrer externen ID und listet den Bucket vor sparen. Ein Tippfehler wird hier nicht einen Tag später zurückgewiesen.

Was Sie danach sehen

Der Assistent wechselt zu AWS Connected und zeigt eine dieser Meldungen an:

Nachrichteingereicht haben? Bedeutung
N Datensätze aus M Datei(en) synchronisiert.Die Daten sind bereits eingetroffen.
Der erste Import läuft im Hintergrund. Ihre Daten werden in wenigen Minuten angezeigt.Ein großer Export wird stufenweise gelesen. Für dich gibt es nichts zu tun.
Verbunden. AWS hat den ersten Export noch nicht geliefert...Normal bei einem neuen Setup. Bis zu 24 Stunden. CostGlass prüft alle 6 Stunden erneut.
Der Bucket konnte noch nicht gelesen werden: ...verbinden Lesen Sie den Grund und sehen Sie sich dann die FAQ unten an.

Bei der Scheckzustellung wird der Scheck jetzt sofort ausgeführt. Durch die Integration eines anderen entsteht eine neue Verbindung.

Was jede Funktion hinzufügt

Berechtigungen werden genau so aufgeführt, wie die Vorlage sie gewährt.

FunktionZugriffBerechtigungen hinzugefügt
Kosten- und Nutzungsbericht (immer)Schreibgeschützts3:GetObject und s3:ListBucket nur für den Export-Bucket; Budgets:ViewBudget; Organisationen:ListAccounts; schreibgeschützte Describe- und List-Aufrufe für EC2, Elastic IPs, Snapshots, Volumes, Load Balancer, RDS, ECS, ElastiCache, Redshift, DynamoDB und EMR; cloudwatch:GetMetricStatistics; iam:SimulatePrincipalPolicy.
Instance SchedulerSchreiben Sieec2:StartInstances und ec2:StopInstances für Instanzen; autoscaling:UpdateAutoScalingGroup für Auto Scaling-Gruppen.
Empfehlungen zur GrößenanpassungSchreibgeschütztcloudwatch:GetMetricData, cloudwatch:ListMetrics; Compute-Optimierer:GetEC2InstanceRecommendations, Compute-Optimierer:GetRDSDatabaseRecommendations.
Überwachung der RessourcenverfügbarkeitSchreibgeschütztec2:DescribeInstanceStatus; cloudwatch:DescribeAlarms, cloudwatch:GetMetricData; Elasticloadbalancing:DescribeLoadBalancers, DescribeTargetGroups, DescribeTargetHealth.
Wichtig
Der Instanzplaner ist die einzige Funktion, die Ihre Umgebung ändern kann, und zwar nur durch Starten oder Stoppen von Instanzen und Auto Scaling-Gruppen. Für eine ausschließlich schreibgeschützte Rolle lassen Sie es deaktiviert.

Organization stacks also create the member-account role CostGlassReadOnly in each member account with the read-only inventory permissions and the features you ticked.

Organisation oder Einzelkonto?

AWS OrganizationRecommended for many accounts
Einmal im Verwaltungskonto bereitstellen. Ein StackSet fügt jedem Konto jetzt und in Zukunft die Rolle „Mitgliedskonto“ hinzu (die automatische Bereitstellung ist standardmäßig aktiviert). Benötigt vertrauenswürdigen StackSets-Zugriff.
Einzelkonto
Ein Stapel in einem Konto. Wählen Sie diese Option, wenn sich das Konto nicht in einer Organisation befindet oder Sie nur dieses eine Konto verbinden möchten.

The Organization template has two extra parameters you can change at deploy time: AutoDeployNewAccounts (default WAHR) Und RetainOnAccountRemoval (default FALSCH).

Beispiel
Ein Unternehmen verfügt über ein Verwaltungskonto und 12 Mitgliedskonten. They choose AWS Organization, tick Rightsizing recommendations, and deploy once from the management account. Sie verbinden eine Sache in CostGlass und alle 13 Konten werden darunter angezeigt. Ein dreizehntes Mitgliedskonto, das im nächsten Monat erstellt wird, wird automatisch übernommen.

Kosten- und Nutzungsexport: die 24-Stunden-Wartezeit

Der Export wird erstellt, sobald der Stapel fertig ist, aber AWS schreibt die erste Datei in seinem eigenen Tempo, bis zu 24 Stunden später. Bis dahin ist CostGlass verbunden, verfügt aber über keine Daten. Vom Dashboard aus können Sie „Daten jetzt abrufen“ für einen einmaligen Abruf aus dem Cost Explorer verwenden; AWS berechnet 0,01 $ pro Anfrage und die Schaltfläche gibt die Kosten an, bevor Sie sie bestätigen.

Nach der ersten Lieferung liest CostGlass alle 6 Stunden neue Dateien.

Zugriff entfernen

1
Trennen Sie die Verbindung in CostGlass
In Cloud Accounts remove the AWS connection (trash icon). CostGlass hört auf zu lesen. Bei AWS werden dadurch auch die entdeckten Ressourcen, Anomalien, Einsparvorschläge und älteren Kostenmetriken für diese Verbindung gelöscht. Die bereits in den Hauptkostentabellen gespeicherte Kostenhistorie bleibt erhalten.
2
Löschen Sie den Stack in AWS
Leeren Sie zuerst den S3-Bucket, da CloudFormation ihn sonst nicht löschen kann. Dann löschen Sie den Stapel. Dadurch wird die Rolle entfernt, sodass CostGlass sie nicht mehr übernehmen kann. Für eine Organisation entfernt CloudFormation auch das von ihm erstellte StackSet; Wenn gemeldet wird, dass das StackSet noch über Instanzen verfügt, löschen Sie diese aus CloudFormation → StackSets Erste.
Tipp
Wenn Sie nur den AWS-Schritt ausführen, wird der Zugriff ebenfalls sofort gesperrt, da die Rolle nicht mehr vorhanden ist.

Den Stapel später aktualisieren

  • Eine Funktion ausschalten: update the stack and set its parameter to FALSCH (EnableInstanceScheduler, EnableRightsizing oder EnableUptimeMonitoring).
  • Fügen Sie eine Funktion hinzu, die Sie nicht angekreuzt haben: Eine deaktivierte Funktion ist überhaupt nicht in der Vorlage enthalten und kann daher nicht durch einen Parameter aktiviert werden. Der Assistent erstellt Vorlagen für neue Verbindungen; Es bietet keine Möglichkeit, die Funktionen einer bereits aktiven Version zu ändern. Wenden Sie sich dazu an den CostGlass-Support.
  • Wenn CostGlass neue schreibgeschützte Prüfungen hinzufügt Möglicherweise sind neue Berechtigungen erforderlich. Stellen Sie dann den Stack erneut bereit (oder aktualisieren Sie das Organisations-StackSet). For example, the unused Elastic IP and idle load balancer checks need ec2:DescribeAddresses Und elasticloadbalancing:Describe*. Bis Sie dies tun, findet diese Prüfung nichts und zeigt dies auf der Seite „Einsparungen“ an.
Hinweis
Ihre ursprünglichen Funktionsauswahlen werden bei der Überprüfung aufgezeichnet und als kleine Tags (Planer, Größenanpassung, Betriebszeit) auf der Kontokarte angezeigt. Sie werden durch spätere Stack-Updates nicht verändert.

Fehlerbehebung und FAQ

The stack fails with "Unrecognized resource types: [AWS::BCMDataExports::Export]".
Sie haben die Bereitstellung in der falschen Region durchgeführt. Löschen Sie den fehlgeschlagenen Stack, stellen Sie die Konsole auf us-east-1 (Nord-Virginia) um und erstellen Sie ihn erneut.
CloudFormation gibt an, dass es Fähigkeiten benötigt (InsufficientCapabilities).
Aktivieren Sie die Bestätigung, dass der Stack IAM-Ressourcen erstellt, oder übergeben Sie CAPABILITY_NAMED_IAM in der Befehlszeile.
Verify says "Could not verify access to ... AccessDenied".
Überprüfen Sie, ob der Stack CREATE_COMPLETE erreicht hat, dass der Rollen-ARN und der Bucket-Name genau kopiert wurden und dass Sie die Vorlage über diese Verbindung bereitgestellt haben. If you started a second connection, its External ID differs from the first template&#x27;s. Verwenden Sie die angezeigte Vorlage für die ausstehende Verbindung.
Verify sagt, dass der Rollen-ARN nicht gültig aussieht.
Fügen Sie die RoleArn-Ausgabe ein, die arn:aws:iam:: beginnt und :role/ enthält. Fügen Sie den Stack-ARN nicht ein.
Der Organisationsstapel schlägt beim Erstellen des StackSets fehl.
Der vertrauenswürdige Zugriff ist wahrscheinlich nicht aktiviert. Öffnen Sie im Verwaltungskonto CloudFormation → StackSets und wählen Sie „Vertrauenswürdigen Zugriff mit AWS Organizations aktivieren“ aus. Versuchen Sie es dann erneut.
Der Stapel besagt, dass der Bucket oder die Rolle bereits vorhanden ist.
Der Bucket (costglass-cur-exports-<Konto-ID>) und die Rolle (CostGlassCURReader) haben feste Namen, sodass ein AWS-Konto nur einen CostGlass-Stack enthalten kann. Löschen Sie zuerst den alten Stapel.
Es heißt verbunden, aber ich sehe keine Daten.
Warten Sie bis zu 24 Stunden, bis AWS den ersten Export liefert, und klicken Sie dann auf Lieferung jetzt prüfen. Dashboard → Jetzt Daten abrufen gibt Ihnen einen schnellen, einmaligen Einblick in die Zwischenzeit.
I get "You have reached your plan's connection limit".
Entfernen Sie eine Verbindung, die Sie nicht mehr benötigen, beenden oder entfernen Sie eine ausstehende Verbindung oder führen Sie ein Upgrade unter Einstellungen → Abrechnung durch.
Kann ich dies ohne CloudFormation bereitstellen?

Verwandte Anleitungen