Heute habe ich ein weiteres IaaC (Infrastructure as Code) fur meine Bedurfnisse geschrieben. Du kannst eine sichere VPN-Verbindung (IPsec) zwischen Amazon Web Services (AWS) und Google Cloud Platform (GCP) erstellen.

Was kann das?

Erstellen eines Customer Gateway auf AWS. Erstellen eines Virtual Private Gateway auf AWS. Erstellen einer Site-to-Site VPN-Verbindung auf AWS. Erstellen einer Security Group fur VPN-Verbindungszugriff auf AWS. Erstellen einer externen IP-Adresse fur die VPN-Verbindung auf GCP. Verwalten der Firewall-Regel fur die VPN-Verbindung auf GCP. Erstellen einer Route-Regel auf GCP.

Voraussetzungen

Verwendung

  1. Repository klonen

    git clone git@github.com:flightlesstux/aws-to-gcp-vpn-w-terraform.git

  2. Bei Google Platform authentifizieren, selbst wenn das Google SDK nicht installiert ist. Das ist wirklich nutzlich fur CI/CD-Pipelines! Wenn du bereits mit gcloud auth login bei deinem Google Cloud Platform-Projekt angemeldet bist, kannst du diesen Schritt uberspringen.

    export GOOGLE_APPLICATION_CREDENTIALS="service-account-key.json"

  3. Die Project ID wird ebenfalls per Terraform deklariert, aber wenn du den Wert nicht exportierst, wirst du wahrscheinlich einen Fehler wie unten erhalten.

    export GOOGLE_PROJECT="0123456789012"

    | Error: project: required field is not set
    |
    | with google_compute_instance_group_manager.this,
    | on group_manager.tf line 1, in resource "google_compute_instance_group_manager" "this":
    | 1: resource "google_compute_instance_group_manager" "this" {



  4. Exportiere deine AWS Access Key ID und Secret Access Key, um eine Ressource in deiner AWS-Region zu erstellen.

    AWS_ACCESS_KEY_ID=AKIA1SFAESADASFASR5D
    AWS_SECRET_ACCESS_KEY=Aasdfiajfar1O9DFASDAA3rasdas02304adsq9re


  5. Variablen setzen

    Werte in variables.tf bearbeiten

  6. State-Bucket-Einstellungen

    Setze deinen Terraform-State-Bucket uber die Datei state.tf. Du kannst AWS S3 oder Google Cloud Storage verwenden.

  7. Initialisieren

    terraform init

  8. Deployen!

    terraform apply oder terraform apply -auto-approve

Repository-Adresse

https://github.com/flightlesstux/aws-to-gcp-vpn-w-terraform

Ich hoffe, dieser Artikel hat dir gefallen...