Der Bereitstellungsprozess für die Landing Zone besteht aus Phasen. In jeder Phase müssen Sie der Datei terraform.tfvars bestimmte Variablen hinzufügen. Nachdem Sie eine Phase abgeschlossen haben, schreibt Terraform eine STAGE_NAME-tfvar.auto.tfvars.json-Datei in den Cloud Storage-Bucket, der in der ersten Phase erstellt wird. In den nachfolgenden Phasen werden die Dateien und eine Anbieterdatei, die ein phasenspezifisches Dienstkonto imitiert, mit der Google Cloud CLI in den neuen Phasenordner kopiert.
Je nach Anzahl der Mandanten dauert die Bereitstellung einer neuen Umgebung etwa eine Stunde.
Vorbereitung
Führen Sie die folgenden Aufgaben aus, bevor Sie die Stellar Engine bereitstellen.
Einrichtung von Google Cloud
Gehen Sie folgendermaßen vor, um Google Cloudeinzurichten:
Wählen Sie eine Google Cloud Organisation aus. Wenn Sie eine neue Organisation erstellen, müssen Sie sich mindestens einmal in der Admin-Konsole anmelden.
Konfigurieren Sie mehrere Administratoren, um die Aufgabentrennung zu implementieren. In einer Testumgebung kann ein Nutzer Administratorrollen für alle Ressourcen haben. In einer Produktionsumgebung sind jedoch mehrere Administratoren erforderlich. Weitere Informationen finden Sie unter Organisationsressource einrichten.
, damit die neuen Berechtigungen angewendet werden.Aktivieren Sie die 2‑Faktor-Authentifizierung für alle Konten mit Berechtigungen.
Cloud Shell deaktivieren Cloud Shell wird für IL4- oder IL5-Umgebungen nicht unterstützt und muss von einem Google Workspace-Administrator deaktiviert werden.
Wenn Sie noch kein Projekt haben, erstellen Sie ein Bootstrap-Projekt.
Führen Sie die folgenden Aufgaben im Bootstrap-Projekt aus:
Aktivieren Sie die Abrechnung. Eine Anleitung finden Sie unter Abrechnungsstatus Ihrer Projekte prüfen.
Aktivieren Sie die Cloud Monitoring API, falls sie noch nicht aktiviert ist.
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die Berechtigung
serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen
Prüfen Sie, ob Ihr Nutzerkonto ein Super Admin ist.
Wenn Ihre Organisation kein Schema zur Datenklassifizierung hat, erstellen Sie eines.
Rollen zuweisen
Weisen Sie dem Nutzerkonto, das Stellar Engine bereitstellt, die folgenden IAM-Rollen zu.
-
Prüfen Sie, ob Sie die folgenden Rollen für die Organisation haben: Access Transparency Admin, Assured Workloads Administrator, Rechnungskontoadministrator, Logging Admin, Organisationsadministrator, Organization Policy Admin, Organization Role Administrator, Owner, Projektersteller, Service Account Admin, Service Account Token Creator, Tag Admin
Rollen prüfen
-
Rufen Sie in der Google Cloud Console die Seite IAM auf.
IAM aufrufen - Wählen Sie die Organisation aus.
-
Suchen Sie in der Spalte Hauptkonto nach allen Zeilen, in denen Sie oder eine Gruppe, zu der Sie gehören, angegeben sind. Fragen Sie Ihren Administrator, zu welchen Gruppen Sie gehören.
- Prüfen Sie in allen Zeilen, in denen Sie angegeben oder enthalten sind, die Spalte Rolle, um zu sehen, ob die Liste der Rollen die erforderlichen Rollen enthält.
Rollen zuweisen
-
Rufen Sie in der Google Cloud Console die Seite IAM auf.
IAM aufrufen - Wählen Sie die Organisation aus.
- Klicken Sie auf Zugriffsrechte erteilen.
-
Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Das ist in der Regel die E‑Mail-Adresse eines Google-Kontos.
- Klicken Sie auf Rolle auswählen und suchen Sie dann nach der Rolle.
- Klicken Sie auf Weitere Rolle hinzufügen, wenn Sie weitere Rollen zuweisen möchten.
- Klicken Sie auf Speichern.
-
Wenn Sie mit einer neuen Organisation beginnen, können Sie das folgende Skript ausführen, das sich im Ordner fast/stages-aw/0-bootstrap befindet, um die Rollen anzuwenden:
./setIAM.sh EMAIL_ADDRESS ORGANIZATION_ID
Ersetzen Sie Folgendes:
EMAIL_ADDRESS: Die E-Mail-Adresse Ihres Nutzerkontos.ORGANIZATION_ID: Ihre Organisations-ID.
Mit diesem Skript werden alle Rollen außer Rechnungskontoadministrator“ und „Super Admin“ hinzugefügt.
Gruppen hinzufügen und Dienste konfigurieren
Fügen Sie die folgenden Gruppen hinzu, wie in 2 beschrieben. Nutzer und Gruppen:
gcp-billing-admins@DOMAINgcp-developers@DOMAINgcp-devops@DOMAINgcp-hybrid-connectivity-admins@DOMAINgcp-logging-monitoring-admins@DOMAINgcp-logging-monitoring-viewers@DOMAINgcp-organization-admins@DOMAINgcp-vpc-network-admins@DOMAINgcp-security-admins@DOMAIN
Ersetzen Sie
DOMAINdurch Ihren FQDN.Überspringen Sie den Schritt mit dem Identitätsanbieter, wenn Sie dazu aufgefordert werden.
Google kann die Standardgruppennamen ändern. Sie können eine Gruppe manuell erstellen, wenn sie nicht in der Einrichtungsanleitung enthalten ist.
Aktivieren Sie die APIs für Assured Workloads, BigQuery, Cloud Billing, Cloud Logging, Cloud KMS, IAM, Pub/Sub, Resource Manager, Service Account Credentials, Service Usage und den Organisationsrichtliniendienst, falls sie noch nicht aktiviert sind.
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die Berechtigung
serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von RollenWenn Ihr Kontingent weniger als 13 Projekte umfasst, rufen Sie Google Cloud Platform/API Project: Request Billing Quota Increase (Google Cloud Platform-/API-Projekt: Abrechnungskontingenterhöhung anfordern) auf, um 13 Projekte anzufordern. Weitere Informationen finden Sie unter Kontingente aufrufen und verwalten.
Sie können die Dienste auch mit dem fast/stages-aw/0-bootstrap/enableServices.sh-Script aktivieren.
Lokale Umgebung konfigurieren
Führen Sie die folgenden Schritte aus, um Ihre lokale Umgebung zu konfigurieren:
- Klonen Sie das Stellar Engine-GitHub-Repository.
- Installieren Sie das Google Cloud SDK.
- Aktualisieren Sie Ihre lokale Terraform auf Version 1.8.1 oder höher.
- Installieren Sie die jq-Binärdatei.
Authentifizieren Sie sich und legen Sie das Bootstrap-Projekt als aktives Projekt fest:
gcloud auth login gcloud config set project BOOTSTRAP_PROJECT_ID gcloud auth application-default login
Module ändern
In den meisten Fällen können Sie das Repository ohne Änderungen verwenden. Wenn Sie ein Modul ändern müssen, kopieren Sie das gesamte Modul und verwenden Sie die Namenskonvention <module-se>, um Zusammenführungskonflikte zu vermeiden, wenn regelmäßige Updates aus dem Cloud Foundation Fabric-Repository abgerufen werden.
Phase 0 ausführen: Bootstrap
In Phase 0 werden die vorhandenen Teile des Netzwerks mit dem Terraform-Zustand abgeglichen. In Phase 0 werden die ersten IaC-Bootstrap-Dienstkonten und -Projekte erstellt. Phase 0 ist für die Umstellung von einem beliebigen Projekt, das der Nutzer ursprünglich hat, auf ein neues Kernprojekt und die Migration des Terraform-Status vorgesehen.
Wechseln Sie in das Verzeichnis
fast/stages-aw/0-bootstrap.Kopieren Sie die Datei
terraform.tfvars.sample:cp terraform.tfvars.sample terraform.tfvarsKopieren Sie die Datei
providers.tf.tmpin die Datei0-bootstrap-providers.tf:cp providers.tf.tmp 0-bootstrap-providers.tfAktualisieren Sie die Informationen in
fast/stages-aw/0-bootstrap/terraform.tfvars:billing_account = { id = "BILLING_ACCOUNT_ID" } regions = { primary = "REGION" } organization = { domain = "DOMAIN" id = "ORGANIZATION_ID" customer_id = "CUSTOMER_ID" } outputs_location = "~/fast-config" prefix = "PREFIX" log_sinks = { audit-logs = { filter = "logName:\"/logs/cloudaudit.googleapis.com%2Factivity\" OR logName:\"/logs/cloudaudit.googleapis.com%2Fsystem_event\" OR protoPayload.metadata.@type=\"type.googleapis.com/google.cloud.audit.TransparencyLog\"" type = "logging" } vpc-sc = { filter = "protoPayload.metadata.@type=\"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata\"" type = "logging" } workspace-audit-logs = { filter = "logName:\"/logs/cloudaudit.googleapis.com%2Fdata_access\" and protoPayload.serviceName:\"login.googleapis.com\"" type = "logging" } empty-audit-logs = { filter = "" type = "logging" } } org_policies_config = { constraints = { "ALLOWED_POLICY_MEMBER_DOMAINS" = [] } } fast_features = { envs = true } assured_workloads = { regime = "COMPLIANCE_REGIME" location = "LOCATION" } bootstrap_project = "BOOTSTRAP_PROJECT_ID" alert_email = "ALERT_EMAIL"Ersetzen Sie Folgendes:
BILLING_ACCOUNT_ID: Das Rechnungskonto, das für die Bereitstellung der Umgebungen verwendet werden soll. Die Rechnungskontoinformationen finden Sie in der Google Cloud -Konsole.REGION: Die primäre Region, in der Ressourcen bereitgestellt werden sollen. Der Standardwert istus-east4für IL5 und FedRAMP.Wenn Sie eine sekundäre Region hinzufügen möchten, in der Ressourcen bereitgestellt werden sollen, fügen Sie
secondary=secondaryhinzu.DOMAIN: Der voll qualifizierte Domainname (Fully Qualified Domain Name, FQDN). Führen Siegcloud organizations listaus, um den FQDN aufzurufen.ORGANIZATION: Die Organisations-ID für dieGoogle Cloud -Organisation. Führen Siegcloud organizations listaus, um die Organisations-ID aufzurufen.CUSTOMER_ID: Die Google Workspace-Kundennummer des Verzeichnisses. Führen Siegcloud organizations listaus, um die ID aufzurufen.PREFIX: Das Präfix, das an die Namen für bereitgestellte Projekte und Ressourcen angehängt werden soll. Der Projektname muss weltweit eindeutig sein und das Präfix darf maximal sechs Zeichen enthalten. Ein 409-Fehler tritt auf, wenn der Projektname nicht eindeutig ist.ALLOWED_POLICY_MEMBER_DOMAINS: Aktualisieren Sie die Liste bei Bedarf mit zusätzlichen Kunden-IDs. Weitere Informationen finden Sie unter Identitäten mit Domain-eingeschränkter Freigabe einschränken.COMPLIANCE_REGIME: Das Compliance-Regime für diese Umgebung, entwederIL4,IL5,FEDRAMP_HIGHoderCOMPLIANCE_REGIME_UNSPECIFIED. Wenn Sie Assured Workloads nicht verwenden möchten, legen Sie diesen Wert aufCOMPLIANCE_REGIME_UNSPECIFIEDfest.LOCATION: Die US-Region, in der Ressourcen bereitgestellt werden sollen. Dual-Regionen wieNAM9oder Kontinente werden nicht unterstützt.BOOTSTRAP_PROJECT_ID: Die Bootstrap-Projekt-ID, die Sie in Einrichtung Google Cloud erstellt haben.ALERT_EMAIL: Die E-Mail-Adresse, an die Benachrichtigungen zu Protokollierungsbenachrichtigungen gesendet werden sollen.
Führen Sie
terraform initaus.Führen Sie
terraform applyaus.terraform apply -var bootstrap_user=$(gcloud config list --format 'value(core.account)')Geben Sie
yesein, wenn Sie dazu aufgefordert werden.So wechseln Sie zu Ihrem neuen Projekt:
gcloud config set project PREFIX-prod-iac-core-0Kopieren Sie die neue lokale Terraform-Anbieterdatei:
gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/providers/0-bootstrap-providers.tf ./Zustand von lokal zu remote migrieren:
terraform init --migrate-stateGeben Sie
yesein, wenn Sie dazu aufgefordert werden.Führen Sie
./import.shaus.Führen Sie
terraform applynoch einmal aus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.
Phase 1: Ressourcenverwaltung
In Phase 1 werden die verschiedenen Ordner, Projekte und Dienstkonten auf Organisationsebene erstellt, die für die nachfolgenden Phasen verwendet werden. Zum Erstellen der Umgebung müssen Sie die Datei terraform.tfvars in fast/stages-aw/1-resman aktualisieren, um eine tenants-Variable einzufügen. Jeder Mandant (z. B. eine bestimmte Bundesbehörde oder interne Entwicklungsgruppe) erhält eine eigene dedizierte, isolierte Grenze für die Ausführung seiner Arbeitslasten. Jeder Mandant übernimmt die zentralisierten Sicherheitskontrollen, den Netzwerkperimeter, die Richtlinien-Guardrails und die Senken für Audit-Logs, die in Phase 0 und Phase 2 erstellt werden.
Wenn Sie ein externes Abrechnungskonto verwenden, lesen Sie den Abschnitt Abrechnung konfigurieren, wenn externe Abrechnungskonten verwendet werden.
Wechseln Sie in das Verzeichnis
fast/stages-aw/1-resman.Kopieren Sie die Datei
terraform.tfvars.sample:cp terraform.tfvars.sample terraform.tfvarsAktualisieren Sie
terraform.tfvarsso:tenants = { ten-1 = { admin_principal = "group:gcp-devops@DOMAIN" descriptive_name = "TENANT_ONE_NAME" locations = { gcs = "REGION" kms = "REGION" } }, ten-2 = { admin_principal = "group:gcp-devops@DOMAIN" descriptive_name = "TENANT_TWO_NAME" locations = { gcs = "REGION" kms = "REGION" } } } fast_features = { envs = true } envs_folders = { Prod = { admin = "gcp-organization-admins@DOMAIN" }, Int = { admin = "gcp-organization-admins@DOMAIN" }, Test = { admin = "gcp-organization-admins@DOMAIN" } }Ersetzen Sie Folgendes:
DOMAIN: Der primäre voll qualifizierte Domainname (FQDN). Führen Siegcloud organizations listaus, um den FQDN aufzurufen.TENANT_ONE_NAME: Der Name des ersten bereitgestellten Mandantenprojekts. Verwenden Sie maximal sechs Zeichen.REGION: Die primäre Region, in der Ressourcen bereitgestellt werden sollen. Der Standardwert istus-east4für IL5 und FedRAMP.TENANT_TWO_NAME: Der Name des zweiten bereitgestellten Mandantenprojekts. Verwenden Sie maximal sechs Zeichen.
Fügen Sie so viele Mandantendefinitionen hinzu, wie Sie benötigen.
Kopieren Sie die
tfvars-Dateien aus Cloud Storage:gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/providers/1-resman-providers.tf ./ && gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-globals.auto.tfvars.json ./ && gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-bootstrap.auto.tfvars.json ./Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.
Schritt 2: Netzwerk erstellen
Phase 2 umfasst zwei Netzwerkoptionen: eine für FedRAMP High und eine für IL4 oder IL5.
Netzwerk für FedRAMP High konfigurieren
Wenn Sie ein externes Abrechnungskonto verwenden, lesen Sie den Abschnitt Abrechnung konfigurieren, wenn externe Abrechnungskonten verwendet werden.
Wechseln Sie in das Verzeichnis
fast/stages-aw/2-networking-a-fedramp-high.Kopieren Sie die Dateien „provider“ und „global.tfvars“ aus den Cloud Storage-Buckets:
gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/providers/2-networking-providers.tf ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-globals.auto.tfvars.json ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-bootstrap.auto.tfvars.json ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/1-resman.auto.tfvars.json ./Kopieren Sie die Datei
terraform.tfvars.sample:cp terraform.tfvars.sample terraform.tfvarsAktualisieren Sie in der Datei
terraform.tfvarsdie benutzerdefinierten Subnetze, Proxy-Subnetze, Firewallregeln, benannten CIDRs und DNS-Antwortrichtlinienregeln.Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.
Netzwerk für IL4 oder IL5 konfigurieren
In diesem Schritt wird ein Paar von Palo Alto VM-Series Next-Generation Firewalls (NGFWs) im Netzwerk-Konto bereitgestellt. Die NGFWs verwenden das BYOL-Bereitstellungsimage (Bring Your Own License) und Sie müssen die Palo Alto-Konsole verwenden, um einen VM-Code hochzuladen und die NGFWs zu registrieren. Weitere Informationen finden Sie in der README-Datei im Ordner für die 2-networking-b-il5-ngfw-Phase.
Wenn Sie ein externes Abrechnungskonto verwenden, lesen Sie den Abschnitt Abrechnung konfigurieren, wenn externe Abrechnungskonten verwendet werden.
Wechseln Sie in das Verzeichnis
fast/stages-aw/2-networking-b-il5-ngfw.Kopieren Sie die Dateien „provider“ und „global.tfvars“ aus den Cloud Storage-Buckets:
gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/providers/2-networking-providers.tf ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-globals.auto.tfvars.json ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-bootstrap.auto.tfvars.json ./ && \ gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/1-resman.auto.tfvars.json ./Kopieren Sie die Datei
terraform.tfvars.sample:cp terraform.tfvars.sample terraform.tfvarsAktualisieren Sie in der Datei
terraform.tfvarsdie benutzerdefinierten Subnetze (einschließlich „mgmt“), Proxy-Subnetze, Firewallregeln, benannten CIDRs und DNS-Antwortrichtlinienregeln.Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.Wenn Sie eine Fehlermeldung zu einem nicht vorhandenen Dienstkonto oder Cloud Key Management Service erhalten, klicken Sie in der Konsole im
PREFIX-net-vdss-host-Speicherkonto auf Einstellungen. Das Dienstkonto wird generiert.
Phase 3: Sicherheits- und Auditkonto konfigurieren
In Phase 3 werden die Sicherheits- und Auditprojekte konfiguriert. Das Sicherheitsprojekt (prod-sec-core-0) enthält Cloud KMS und kann Secret Manager enthalten. In IL5 ist CMEK standardmäßig für Compute Engine, Google Kubernetes Engine (GKE), Cloud Storage und Cloud SQL aktiviert. Die folgenden Einschränkungen für Organisationsrichtlinien werden erzwungen:
gcp.restrictNonCmekServices:denied_values: "compute.googleapis.com"denied_values: "container.googleapis.com"denied_values: "storage.googleapis.com"denied_values: "sqladmin.googleapis.com"
gcp.restrictCmekCryptoKeyProjects:gcp.restrictCmekCryptoKeyProjectsenthält eine Liste der Projekte, die CMEK verwenden können.
Im Projekt prod-sec-core-0 sind die folgenden Elemente konfiguriert:
- Cloud KMS-Administratoren mit eingeschränkten Rechten erhalten die Rolle „Administrator mit eingeschränkten Rechten“, damit sie anderen Diensten Entschlüsselungsberechtigungen erteilen können.
- Cloud KMS-Schlüsselbunde werden an verschiedenen Standorten bereitgestellt. Die Speicherorte der Schlüsselringe müssen mit den Dienststandorten übereinstimmen. Ein multiregionaler Schlüsselbund kann beispielsweise nicht in einem Speicher-Bucket mit einer einzelnen Region verwendet werden.
Das Audit-Projekt enthält einen Logging-Bucket für Audit-Logs.
Sicherheitsadministratoren sind für das Sicherheitsprojekt und Auditoren für das Auditprojekt verantwortlich.
Wenn Sie ein externes Abrechnungskonto verwenden, lesen Sie den Abschnitt Abrechnung konfigurieren, wenn externe Abrechnungskonten verwendet werden.
Wechseln Sie in das Verzeichnis
fast/stages-aw/3-security.Kopieren Sie die Konfigurationsdateien aus den Cloud Storage-Buckets:
gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/providers/3-security-providers.tf ./ && gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-globals.auto.tfvars.json ./ && gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/0-bootstrap.auto.tfvars.json ./ && gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/1-resman.auto.tfvars.json ./Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.Wenn Sie ein Problem mit Dienstkonten haben, führen Sie
terraform applynoch einmal aus.Führen Sie
./sa_lockdown.shaus, um die Dienstkonten zu deaktivieren, die Sie während der Bereitstellung verwendet haben.
Abrechnung konfigurieren, wenn externe Rechnungskonten verwendet werden
Wenn Sie ein externes Rechnungskonto verwenden, müssen Sie den folgenden Dienstkonten die Rolle „Rechnungskontoadministrator“ hinzufügen:
PREFIX-prod-resman-0@PREFIX-prod-iac-core-0.iam.gserviceaccount.com: Dieses Konto wird in Phase 0 erstellt.PREFIX-prod-resman-net-0@PREFIX-prod-iac-core-0.iam.gserviceaccount.com: Dieses Dienstkonto wird in Phase 1 erstellt.PREFIX-security-0@PREFIX-prod-iac-core-0.iam.gserviceaccount.com: Dieses Dienstkonto wird in Phase 2 erstellt.
Wenn Sie die Rolle diesen Dienstkonten hinzufügen möchten, führen Sie die Schritte unter Auf das Feld „Berechtigungen“ für ein Cloud-Rechnungskonto zugreifen und Rollen und Hauptkonten im Feld „Berechtigungen“ aktualisieren aus.
Mandantenprojekte ändern
Führen Sie die folgenden Schritte aus, wenn Sie Mandantenprojekte für eine vorhandene Stellar Engine-Bereitstellung hinzufügen oder entfernen.
Authentifizieren Sie sich und legen Sie das aktive Projekt fest:
gcloud auth login gcloud config set project PREFIX-prod-iac-core-0 gcloud auth application-default loginAktivieren Sie die Dienstkonten für die einzelnen Phasen:
Wechseln Sie in das Verzeichnis
fast/stages-aw/3-security.Führen Sie
./sa_lockdown.sh --enableaus.
Phase 1 anwenden:
Wechseln Sie in das Verzeichnis
fast/stages-aw/1-resman.Aktualisieren Sie die Informationen in
terraform.tfvarsentsprechend Ihren neuen Anforderungen.Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.
Phase 2 anwenden:
Wechseln Sie in einen der folgenden Netzwerkordner:
Kopieren Sie die Datei
1-resman.tfvars aus dem Cloud Storage-Bucket:
gcloud storage cp gs://PREFIX-prod-iac-core-outputs-0/tfvars/1-resman.auto.tfvars.json ./Führen Sie
terraform initaus.Führen Sie
terraform applyaus. Geben Sieyesein, wenn Sie dazu aufgefordert werden.
Deaktivieren Sie die Dienstkonten für die Phasen:
Wechseln Sie in das Verzeichnis
fast/stages-aw/3-security.Führen Sie
./sa_lockdown.shaus.
Fehlerbehebung
In diesem Abschnitt werden einige häufige Fehler und Lösungen beschrieben.
Fehler „BigQuery kann nicht verwendet werden“ in Phase 1
Wenn Sie die Fehlermeldung erhalten, dass bigquery.googleapis.com in Assured Workloads nicht verwendet werden kann, gehen Sie so vor:
Rufen Sie in der Console die Seite „Assured Workloads“ auf.
Wählen Sie den Ordner
StellarEngine-COMPLIANCE_REGIMEund gegebenenfalls den Ordner „Networking“ (Netzwerk) aus.Klicken Sie auf Verfügbare Updates ansehen.
Rufen Sie Zugelassene Dienste auf.
Klicken Sie auf Dienste zulassen, um die BigQuery APIs hinzuzufügen.
Klicken Sie bei Aufforderung auf Ja, um Ihre Auswahl zu bestätigen.
Warten Sie etwa zwei Minuten und führen Sie
terraform applydann noch einmal aus:terraform apply -var bootstrap_user=$(gcloud config list --format 'value(core.account)')Geben Sie
yesein, wenn Sie dazu aufgefordert werden.
Ihr Bootstrap-Projekt verliert den Zugriff auf Ihr Rechnungskonto
Wenn Ihr Bootstrap-Projekt den Zugriff auf Ihr Rechnungskonto verliert, aktivieren Sie die Abrechnung für Ihr Bootstrap-Projekt wieder.
Cloud KMS-Schlüsselfehler
Wenn während des Build-Prozesses Schlüssel-Fehler auftreten, müssen Sie die Schlüssel möglicherweise manuell aktivieren. Eine Anleitung finden Sie unter Schlüsselversion aktivieren.
Wenn Sie diese Fehler erhalten, warten Sie etwa eine Minute und führen Sie terraform apply noch einmal aus.
Symbolische Links funktionieren auf Windows-Computern nicht
Auf einem Windows-Computer funktionieren symbolische Links möglicherweise nicht. Möglicherweise müssen Sie bestimmte Dateien manuell kopieren, insbesondere psc.tf und log-metric-alerts.tf in Phase 2.
Probleme mit der Abrechnung oder dem Kontingent
Wenn Probleme mit der Abrechnung oder dem Kontingent auftreten, prüfen Sie, ob Ihr Kontingentprojekt festgelegt ist. Sie können sie mit dem folgenden Befehl festlegen:
gcloud auth application-default set-quota-project PREFIX-prod-iac-core-0
Optional können Sie auch ein anderes Projekt verwenden.
Nächste Schritte
Weitere Informationen zur Sicherheitskonfiguration finden Sie unter Gemini-Sicherheitsstandards.
Binden Sie eine SIEM-Lösung wie Google Security Operations ein, um die Ressourcen zu überwachen. Segmentieren Sie Ihr SIEM in einem separaten Google Cloud Projekt und in einer separaten VPC, in der Daten erfasst werden.