Informationen zur Konfiguration von Terraform auf Windows-Systemen
Um Terraform zur Erstellung von Oracle Cloud Infrastructure-Komponenten zu verwenden, müssen Sie Terraform herunterladen und installieren. Außerdem laden Sie die Terraform-Module herunter, die die Konfigurationsdateien erstellen, mit denen Sie die erforderlichen Infrastrukturkomponenten erstellen.
Das System, in dem Sie Terraform installieren und die Teraform-Module speichern, kann entweder On Premise oder in der Cloud sein. Der Verweis wird als lokales System oder vom lokalen Host vorgenommen.
Bevor Sie Terraform ausführen:
-
Generieren Sie ein SSH-Schlüsselpaar, mit dem Sie auf Ihre Compute-Instanzen zugreifen können
-
API-Signaturschlüssel generieren, der zur Authentifizierung der von Terraform erstellten API-Aufrufe verwendet wird
-
Umgebungsvariablen festlegen, die von Terraform zur Authentifizierung des Zugriffs und der Ausführung seiner Pläne verwendet werden
Nachdem Sie diese Schritte ausgeführt haben, können Sie die Terraform-Konfigurationsdateien anwenden, um Ihre Infrastrukturkomponenten auf Oracle Cloud Infrastructure zu erstellen.
Terraform installieren
Um Terraform auf einem Windows-System zu installieren, laden Sie das entsprechende Package von der Terraform-Website herunter.
Terraform-Module herunterladen
Laden Sie die Terraform-Module herunter, um mit dem Erstellen von Infrastrukturkomponenten in Oracle Cloud Infrastructure mit Terraform zu beginnen.
SSH-Schlüsselpaar generieren, um auf die Bastion-Hosts zuzugreifen
Mit einem SSH-Schlüsselpaar können Sie sicher auf Instanzen zugreifen, die in öffentlichen Subnetzen erstellt werden. Sie generieren ein SSH-Schlüsselpaar auf dem lokalen Host. Die Terraform-Module fügen dann den SSH-Public Key den Bastion-Hosts hinzu. Wenn Sie über das öffentliche Internet eine Verbindung zum Bastion-Host herstellen müssen, geben Sie den SSH-Private Key an, um den Zugriff zu authentifizieren.
Sie können ein SSH-Schlüsselpaar mit PuTTYgen generieren. Legen Sie keine Passphrase für Ihren SSH-Schlüssel fest.
SSH-Schlüsselpaar für den Zugriff auf andere Instanzen generieren
Bastion-Hosts werden verwendet, um die SSH-Weiterleitung an andere Instanzen zu aktivieren, die keine öffentlichen IP-Adressen haben und den Zugriff über das öffentliche Internet nicht zulassen. Um sicher von dem Basishost auf andere Instanzen zuzugreifen, verwenden Sie ein SSH-Schlüsselpaar, bei dem der auf Instanzen in privaten Subnetzen gespeicherte Public Key mit einem Private Key übereinstimmt, der auf dem lokalen Rechner gespeichert ist.
Das SSH-Schlüsselpaar, mit dem der Zugriff vom Bastion-Host auf andere Instanzen aktiviert wird, muss mit einem Utility wie OpenSSL oder ssh-keygen.
generiert werden. Sie können kein SSH-Schlüsselpaar verwenden, das unter Windows mit PuTTY generiert wurde, da das von PuTTY verwendete .ppk
-Format auf Oracle Linux oder anderen UNIX-ähnlichen Betriebssystemen nicht unterstützt wird. Beachten Sie, dass der Basishost, der den SSH-Datenverkehr an andere Instanzen weiterleitet, ein Oracle Linux-Image verwendet.
API-Signaturschlüssel generieren
Sie müssen ein RSA-Schlüsselpaar im PEM-Format "Privacy Enhanced Mail (Privacy Enhanced Mail)" angeben, um Ihr Terraform-Skript mit Oracle Cloud Infrastructure zu authentifizieren. Beachten Sie, dass dieser API-Signaturschlüssel nicht mit dem SSH-Schlüsselpaar identisch ist, das Sie für den Zugriff auf Ihre Instanzen verwenden. Sie können dieses Schlüsselpaar mit OpenSSL in Git Bash generieren. Sie sollten bereits Git Bash im lokalen System installiert haben.
- Git-Bash starten.
- Erstellen Sie einen ausgeblendeten Ordner zum Speichern des PEM-Schlüssels. Sie können den PEM-Schlüssel an einem beliebigen Ort speichern. Für eine Vereinfachung können Sie diesen Ordner unter dem Ordner erstellen, in dem Terraform-Module gespeichert sind. Stellen Sie sicher, dass Sie den Speicherort des Schlüsselpaares notieren. Navigieren Sie zu diesem Speicherort, und geben Sie Folgendes ein:
mkdir ./.oci
- Um den API-Signaturschlüssel zu erstellen, geben Sie
openssl genrsa-out ./.oci/key_name.pem 2048
ein. - Ändern Sie die Berechtigungen für den Private Key, um sicherzustellen, dass nur Sie den Private Key lesen können. Geben Sie Folgendes ein:
chmod go-rwx ./.oci/key_name.pem
- Um den Public Key für den angegebenen Private Key zu generieren, geben Sie Folgendes ein:
openssl rsa-pubout-in ./.oci/key_name.pem-out ./.oci/key_name_public.pem
API-Signaturschlüssel mit der Konsole hochladen
Nachdem Sie einen API-Signaturschlüssel generiert haben, müssen Sie den Public Key für den verknüpften Benutzer in Oracle Cloud Infrastructure hochladen. Wenn Sie zum ersten Mal einen API-Signaturschlüssel hochladen, müssen Sie die Konsole verwenden. Danach können Sie auch mit der API einen API-Schlüssel hochladen.
- Melden Sie sich bei der Oracle Cloud Infrastructure-Konsole an.
- Klicken Sie auf Identität und dann auf Benutzer.
- Klicken Sie auf den Benutzer, dem Sie den API-Signaturschlüssel hinzufügen möchten.
- Klicken Sie auf der Seite "Benutzerdetails" auf Public Key hinzufügen.
- Starten Sie auf Ihrem lokalen System den Git-Bash. Navigieren Sie zu dem Ordner, in dem Sie das Signaturschlüsselpaar der API gespeichert haben.
- Geben Sie Folgendes ein, um den Public Key zu kopieren:
cat ./key_name_public.pem.
Der Public Key-Wert wird angezeigt. Kopieren Sie diesen Wert, einschließlich der Zeilen-----BEGIN PUBLIC KEY-----
und-----END PUBLIC KEY-----.
- Fügen Sie In der Konsole den Public Key-Wert ein, und klicken Sie auf Hinzufügen.
Umgebungsvariablen festlegen
Mit den hier bereitgestellten Terraform-Modulen können Sie Umgebungsvariablen festlegen, indem Sie die erforderlichen Werte in einer Textdatei angeben. Sie können die Datei dann einfach als Quelle definieren, um sicherzustellen, dass alle erforderlichen Umgebungsvariablen ordnungsgemäß festgelegt werden.
Bevor Sie beginnen, melden Sie sich bei der Oracle Cloud Infrastructure-Konsole an. Sie finden die folgenden Informationen mit der Konsole.
-
Die Mandanten-Oracle Cloud Infrastructure-ID (OCID)
-
Benutzer-OCID
-
Der Fingerprint des API-Signaturschlüssels, den Sie verwenden möchten
-
Die Region
-
Die Compartment-OCID
Stellen Sie außerdem sicher, dass Sie den Speicherort, in dem der API-Signaturschlüssel und das SSH-Schlüsselpaar im lokalen System gespeichert sind, kennen.