robertdebock.vault

Ansible-Rolle für Vault

Installieren Sie Hashicorp Vault, entweder als Paket oder als Binärdatei.

GitHub GitLab Downloads Version
github gitlab downloads Version

Beispiel-Playbook

Dieses Beispiel stammt aus molecule/default/converge.yml und wird bei jedem Push, Pull-Request und Release getestet.

---
- name: Konvergenz
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: robertdebock.vault
      vault_hardening_disable_swap: false

Die Maschine muss vorbereitet werden. In CI geschieht dies mithilfe von molecule/default/prepare.yml:

---
- name: Vorbereitung
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: robertdebock.bootstrap
    - role: robertdebock.core_dependencies
    - role: robertdebock.hashicorp

Siehe auch eine vollständige Erklärung und ein Beispiel, wie man diese Rollen verwendet.

Rollen-Variablen

Die Standardwerte für die Variablen sind in defaults/main.yml festgelegt:

---
# Standarddatei für Vault

# Wählen Sie den Typ von Vault, der installiert werden soll. Entweder "oss", "ent" oder "hsm".
# `oss` bedeutet Open Source.
# `ent` bedeutet Enterprise.
# `hsm` bedeutet Enterprise mit HSM-Unterstützung.
vault_type: oss

# Setzen Sie die Version des zu installierenden Pakets.
vault_version: "1.15.6"

# Für Paketinstallationen ist ein "Release" erforderlich. Das Paket würde zum Beispiel `vault-1.12.2-1` heißen.
vault_package_release: "1"

# Wählen Sie die Methode zur Installation von Vault. Entweder "package" oder "binary".
vault_installation_method: "package"

# Wenn `vault_installation_method` auf "binary" gesetzt ist, geben Sie den Pfad an, wo Vault (vorübergehend) heruntergeladen werden soll.
vault_download_path: "/tmp/vault-{{ vault_version }}"

# Wenn `vault_installation_method` auf "binary" gesetzt ist, geben Sie den (Basis-)Pfad an, wo Vault installiert werden soll. Dies kann "" oder "/opt" sein.
vault_path: ""

# Wenn `vault_installation_method` auf "binary" gesetzt ist, geben Sie den Benutzer an, unter dem Vault ausgeführt wird. Der Benutzer "root" ist nicht erlaubt.
vault_user: vault

# Wenn `vault_installation_method` auf "binary" gesetzt ist, geben Sie die Gruppe an, unter der Vault ausgeführt wird. Die Gruppe "root" ist nicht erlaubt.
vault_group: vault

# Wenn `vault_installation_method` auf "binary" gesetzt ist, geben Sie die Shell für den vault_user an.
vault_user_shell: /bin/false

# Wo die Daten gespeichert werden sollen. Das sind Raft-Daten und TLS-Material.
vault_data_directory: /opt/vault

# Verbesserungstipps zum Deaktivieren von Swap.
vault_hardening_disable_swap: true

# Verbesserungstipps zum Deaktivieren von Core Dumps.
vault_hardening_disable_core_dumps: true

# Verbesserungstipps zum Deaktivieren der Shell-Befehls-Historie.
vault_hardening_disable_shell_command_history: true

# Verbesserungstipps zur Konfiguration von SELinux / AppArmor.
vault_hardening_configure_selinux_apparmor: true

# Hier können Variablen platziert werden, auf die Vault hört.
# Zum Beispiel:
# vault_environment_settings:
#   - name: VAULT_API_ADDR
#     value: "http://127.0.0.1:8200"
#   - name: VAULT_CLUSTER_ADDR
#     value: "http://127.0.0.1:8201"
#   - name: HTTP_PROXY
#     value: "http://proxy.example.com:8080"
#   - name: HTTPS_PROXY
#     value: "https://proxy.example.com:8080"
#   - name: NO_PROXY
#     value: "*.example.com,1.2.3.4:80,1.2.3.4/8"
vault_environment_settings: []

Anforderungen

Status der verwendeten Rollen

Die folgenden Rollen werden verwendet, um ein System vorzubereiten. Sie können Ihr System auch anders vorbereiten.

Anforderung GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab
robertdebock.core_dependencies Build Status GitHub Build Status GitLab
robertdebock.hashicorp Build Status GitHub Build Status GitLab

Kontext

Diese Rolle ist Teil vieler kompatibler Rollen. Schauen Sie sich die Dokumentation dieser Rollen für weitere Informationen an.

Hier ist eine Übersicht über verwandte Rollen: Abhängigkeiten

Kompatibilität

Diese Rolle wurde auf diesen Container-Images getestet:

Container Tags
Amazon Candidate
Debian alle
EL 9
Fedora 38, 39
Ubuntu alle

Die minimale erforderliche Version von Ansible ist 2.12. Tests wurden durchgeführt für:

  • Die vorherige Version.
  • Die aktuelle Version.
  • Die Entwicklungsversion.

Wenn Sie Probleme finden, melden Sie diese bitte bei GitHub.

Lizenz

Apache-2.0.

Autoreninformationen

robertdebock

Bitte ziehen Sie in Betracht, mich zu unterstützen.

Über das Projekt

Install Hashicorp Vault, either a package or a binary.

Installieren
ansible-galaxy install robertdebock.vault
Lizenz
apache-2.0
Downloads
127.4k
Besitzer
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.