2016-06-20 26 views
1

Ich verwende Terraform, um Server in einer privaten Openstack-Cloud bereitzustellen. Das Ausführen von Terraform erfordert, dass das Terraform-Skript auf meinen Benutzernamen und mein Kennwort für meine OpenStack-Cloud zugreifen kann. Also möchte ich diese Information in einer geheimen Datei speichern und diese verschlüsseln (etwas in der Art eines Tresors). Die einzigen Beispiele, die ich für die Verwendung von hashicorp Vault mit Terraform gefunden habe, sind für AWS. Wie würde ich also ein Terraform-Skript erstellen, das einen vault-Wert lesen kann, der zwei Variablen enthält, um sie für die Bereitstellung von openstack-Instanzen zu verwenden?Wie funktioniert Terraform mit Hashicorp-Vault für Openstack?

als Referenz hier ist, wie ich mein Gewölbe Geheimnis Backend montiert:

vault mount generic

Hier ist, was mein Geheimnis aussehen würde (wenn ich es nicht in eine JSON-Datei geschrieben hat):

vault write generic/logins usernames=myUserName psswrds=myPassword

+0

Was stimmt nicht mit dem, was Sie verknüpft haben? Es scheint jede Art von Geheimnissen aus dem Backend zu ziehen. Das Beispiel in der README hat in der Tat sowohl AWS-Guthaben als auch ein SSL-Zertifikat und einen SSL-Schlüssel eingezogen. – ydaetskcoR

Antwort

1

Terraform 0.8 wird eine Vault provider haben.

data "vault_generic_secret" "login" { 
    path = "generic/logins" 
} 

provider "something" { 
    user = "${data.vault_generic_secret.login.data["username"]}" 
    pass = "${data.vault_generic_secret.login.data["password"]}" 
} 
+0

Die URL des Vault-Providers wurde geändert: https://www.terraform.io/docs/providers/vault/index.html – Zlemini

Verwandte Themen