robertdebock.vault

Ansibleロールバルト

Hashicorp Vaultをインストールします。パッケージまたはバイナリのいずれかです。

GitHub GitLab ダウンロード数 バージョン
github gitlab downloads Version

例のプレイブック

この例はmolecule/default/converge.ymlから引用しており、各プッシュ、プルリクエスト、リリースでテストされています。

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

  roles:
    - role: robertdebock.vault
      vault_hardening_disable_swap: false

マシンを準備する必要があります。CIでは、molecule/default/prepare.ymlを使用してこれを行います:

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

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

これらのロールの使用方法については、完全な説明と例を参照してください。

ロール変数

変数のデフォルト値はdefaults/main.ymlで設定されています:

---
# vaultのデフォルトファイル

# インストールするVaultの種類を選択します。「oss」、「ent」または「hsm」のいずれか。
# `oss`はオープンソースを意味します。
# `ent`はエンタープライズを意味します。
# `hsm`はHSMサポート付きのエンタープライズを意味します。
vault_type: oss

# インストールするパッケージのバージョンを設定します。
vault_version: "1.15.6"

# パッケージインストールには「release」が必要です。パッケージは例えば`vault-1.12.2-1`と呼ばれます。
vault_package_release: "1"

# Vaultをインストールする方法を選択します。「package」または「binary」のいずれか。
vault_installation_method: "package"

# `vault_installation_method`が「binary」に設定されている場合、Vaultを一時的にダウンロードする場所を設定します。
vault_download_path: "/tmp/vault-{{ vault_version }}"

# `vault_installation_method`が「binary」に設定されている場合、Vaultをインストールする場所を設定します。これは""または"/opt"などにできます。
vault_path: ""

# `vault_installation_method`が「binary」に設定されている場合、Vaultが実行されるユーザーを設定します。「root」ユーザーは使用できません。
vault_user: vault

# `vault_installation_method`が「binary」に設定されている場合、Vaultが実行されるグループを設定します。「root」グループは使用できません。
vault_group: vault

# `vault_installation_method`が「binary」に設定されている場合、vault_userのシェルを設定します。
vault_user_shell: /bin/false

# データを保存する場所。これはRaftデータとTLSマテリアルです。
vault_data_directory: /opt/vault

# スワップを無効にするためのハードニングアドバイス。
vault_hardening_disable_swap: true

# コアダンプを無効にするためのハードニングアドバイス。
vault_hardening_disable_core_dumps: true

# シェルコマンドの履歴を無効にするためのハードニングアドバイス。
vault_hardening_disable_shell_command_history: true

# SELinux / AppArmorを設定するためのハードニングアドバイス。
vault_hardening_configure_selinux_apparmor: true

# Vaultがリッスンする変数をこのリストに配置できます。
# 例えば:
# 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: []

要件

使用しているロールの状態

システムを準備するために次のロールが使用されます。別の方法でシステムを準備することもできます。

要件 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

コンテキスト

このロールは多くの互換性のあるロールの一部です。詳細については、これらのロールのドキュメントを参照してください。

関連するロールの概要: dependencies

互換性

このロールは、これらのコンテナイメージでテストされています:

コンテナ タグ
Amazon Candidate
Debian all
EL 9
Fedora 38, 39
Ubuntu all

必要なAnsibleの最小バージョンは2.12で、テストが行われました:

  • 前のバージョン。
  • 現在のバージョン。
  • 開発バージョン。

問題が見つかった場合は、GitHubに記載してください。

ライセンス

Apache-2.0

著者情報

robertdebock

私をスポンサーしていただけると幸いです。

プロジェクトについて

Install Hashicorp Vault, either a package or a binary.

インストール
ansible-galaxy install robertdebock.vault
ライセンス
apache-2.0
ダウンロード
127.4k
所有者
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.