本站介紹

本網站以 GitLab Pages / Hugo 建置。

介紹 Ansible 的使用與心得分享。

安裝 AWX 17.1.0

AWX 目前最新版本是 19.5.0,從 18.0.0 開始,安裝方法只有一種,就是以 AWX Operator 形式安裝在 k8s / OpenShift 上。

想要安裝到本機使用,只有兩種方法,第一種是安裝為開發 AWX 用的環境,第二種方法是退版,使用 17.1.0。這邊要介紹的是第二種方法,安裝 17.1.0。

Ansible Tower license 檔案的格式

在購買 Ansible Tower license 或是取得 Ansible Tower Trial license 以後,一般可以直接在 Ansible Tower 裡登入 RHN 帳號, 從而取得 license。但是在離線環境的時候,就沒辦法這樣做,這時候得從 https://acccess.redhat.com 網站上進行訂閱分配,然後取得 license 檔案。這個檔案就可以在離線環境的時候,提供給 Ansible Tower 使用。

Keepalived

主要是想試著用 vagrant 搭建 keepalived 環境來練習。

環境需要四台機器:

  • keepalived: 兩台,一台 master,一台 slave,這兩台同時也會安裝 HAProxy。
    • 主機名稱:master, 192.168.60.11
    • 主機名稱:slave: 192.168.60.12
  • Apache: 一台,當作是 HAProxy 的 backend。
    • 主機名稱:u3
  • Bastion: 一台,當作是客戶端,用來存取 VIP。
    • 主機名稱:u4

如何判別 Linux 發行版

Task 要依據 Linux 發行版來處理,該怎麼做呢?

這些資訊在 gather_facts 後,會放到 ansible_facts 裡,在寫 task 時,就可以直接使用。

主要的變數有這幾個:

  • ansible_distribution: 發行版名稱,例如 “CentOS”
  • ansible_distribution_major_version: 發行版主要版號,例如 “7”
  • ansible_distribution_version: 發行版版本,例如 “7.5.1804”
  • ansible_os_family: 發行版家族名稱,例如 CentOS 的 ansible_os_family 會是 RedHat

要看 ansible_facts 還有哪些變數可使用,可以參考 Discovering variables: facts and magic variables — Ansible Documentation