برنامه نویسی

طاق Hashicorp را با Ansible نصب کنید

من یک مرد تنبل هستم و می خواهم برخی از اتوماسیون را انجام دهم که بدون مداخله انسانی گواهینامه ها را تمدید و توزیع می کند. و البته من می خواهم طاق را برای سنین امتحان کنم زیرا این یک فروشگاه مخفی عالی برای Kubernetes است.
من نصب را با Ansible انجام دادم زیرا دوست دارم کارها را خودکار کنم.

طاق را با Ansible نصب کنید

اساساً این کار سختی نبود. من مستندات را دنبال کردم و به یک دفترچه بازی تبدیل کردم.

ابتدا یک فایل مخزن اضافه کردم (از سرور فدورا استفاده می کنم):

[hashicorp]
name=Hashicorp Stable - $basearch
baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://rpm.releases.hashicorp.com/gpg

[hashicorp-test]
name=Hashicorp Test - $basearch
baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/test
enabled=0
gpgcheck=1
gpgkey=https://rpm.releases.hashicorp.com/gpg
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

در صورتی که می خواهید طاق را به عنوان یک سرویس اجرا کنید ، می توانید پرونده واحد SystemD را نیز پیدا کنید.

[Unit]
Description="HashiCorp Vault"
Documentation="https://developer.hashicorp.com/vault/docs"
ConditionFileNotEmpty="/etc/vault.d/vault.hcl"

[Service]
User=vault
Group=vault
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
CapabilityBoundingSet=CAP_SYSLOG CAP_IPC_LOCK
NoNewPrivileges=yes
ExecStart=/usr/bin/vault server -config=/etc/vault.d/vault.hcl
ExecReload=/bin/kill --signal HUP
KillMode=process
KillSignal=SIGINT

[Install]
WantedBy=multi-user.target
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

من از این فایل پیکربندی اساسی استفاده کردم:

# Full configuration options can be found at https://developer.hashicorp.com/vault/docs/configuration
ui = true

storage "file" {
  path = "/opt/vault/data"
}

# HTTP listener
listener "tcp" {
  address     = "127.0.0.1:8200"
  tls_disable = "true"
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

من به 8200 بندر به localhost از آنجا که من از یک پروکسی معکوس NGINX در مقابل طاق استفاده می کنم اما البته می توانید به تمام رابط متصل شوید.

نقش شامل وظایف زیر است:

# Create a group and user for the service because I don't want to run it as root
- name: Add 'vault' group
  ansible.builtin.group:
    name: vault
    state: present

- name: Add 'vault' user
  ansible.builtin.user:
    name: vault
    group: vault
    state: present

# Copy the repository
- name: Add Vaults repository
  ansible.builtin.copy:
    src: hashicorp.repo
    dest: /etc/yum.repos.d/

# Install Vault with DNF package manager
- name: Install Vault
  ansible.builtin.dnf:
    name: vault
    state: present

- name: Copy Vault configuration
  ansible.builtin.copy:
    src: vault.hcl
    dest: /etc/vault.d/

- name: Copy systemd unit file
  ansible.builtin.copy:
    src: vault.service
    dest: /etc/systemd/system/
    mode: '0644'

- name: Enable and start Vault service
  ansible.builtin.systemd_service:
    name: vault
    enabled: true
    daemon_reload: true
    state: restarted
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

پس از نصب طاق ، کار واقعی را برای پیکربندی دسترسی کاربر و خدمات شروع می کند. همه چیز در مستندات رسمی در اینجا شرح داده شده است.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا