Skip to content
Michael O'Brien edited this page May 29, 2024 · 15 revisions

Onboarding

For general GCP organization/quota/cloud-identity onboarding see https://github.com/GoogleCloudPlatform/pubsec-declarative-toolkit/wiki/Onboarding

Options for Landing Zone Deployment

V20240425

Deployment Options

As of 20240425 I recommend the following. If you want to get the LZ up as-is - use the CB/CSR default option below. If you need the ADO (Azure DevOps) version - this is currently the default deploy goal for the main branch and is actively being worked out but not tested yet.

20240504: Repo state: CB/CSR are the default for the main branch

The main branch is ready for Cloud Build / Cloud Source Repositories out of the box. For ADO support this is in queue via https://github.com/GoogleCloudPlatform/pbmm-on-gcp-onboarding/issues/399 after a TEF upstream merge via https://github.com/GoogleCloudPlatform/pbmm-on-gcp-onboarding/issues/387

20240502: Repo state

The current main branch has a partial switch to local deployment in prep of ado. There was a pr merged without readme adjustments and without the full retrofit towards ado support and local terraform support - as an addition not the current removal - see 399

To bring up CB/CSR for now - use the older clean branch https://github.com/GoogleCloudPlatform/pbmm-on-gcp-onboarding/tree/gh357-tef-v4-fork

With the addition of the 2nd/3rd PR before the disablement of CB.tf went in

This branch is essentially still a clean TEF copy with some readme, service, IAM changes before pulling out cloud build and csr.

Issues general to the Landing Zone

Cloud Build and CSR based Deployment

ADO based Deployment

Feature Requests in queue

  • a replacement for the transitivity VMs via Fortinet Fortigates and optionally GCP Firewall+/NGFW

Example Landing Zone Deploy with Decisions

Decide Workspace or Cloud Identity Super Admin account

Decide cloud shell, local SDK or VM/AVD

If not cloud shell - install SDK, GCP authenticate and set billing credentials on local shell/VM

Clean GCP Organization with domain registration/validation

52+ Quota required for billing and projects quota

Create LZ folder

Create bootstrap project off folder

Add service enablement to bootstrap project

Add IAM roles to super admin account

Clone base repo

Doing 0-bootstrap

Copy 0-bootstrap tfvars

Verify GCP groups set or not set

  • enterprise setup may have added them already

Fill out tfvars

  • orgid, billingid, create groups (2) flags, group emails
  • region (this one is problematic as of 202404)

Modify any hardcoded regions in the yamls

Downgrade to Terraform 1.3.10 for now

optionally skip validation - issue with main

terraform init

terraform plan

terraform apply

Triage any authentication timeout errors with exponential backoff and relogin

Triage any IAM errors with IAM role additions - raise PR

Triage any service errors with service enablements on bootstrap project - raise PR

Triage any errors on tfvars configuration errors - rerun apply

Triage any idempotent errors on existing service collisions on 2nd run - rename/orphan/delete - rerun apply

Triage any authentication timeout errors with exponential backoff and relogin

apply is complete - note terraform outputs

Triage any groups creation errors

Authentication

New PubSec login

image

Clone this wiki locally