yum安裝的ansible學習

2022-09-11 17:24:23 字數 2565 閱讀 6716

yum -y install ansible

yum安裝ansible的特點

yum安裝的ansible,配置檔案,hosts檔案,roles目錄都預設在/etc/ansible目錄下

配置檔案要點介紹

-------------------配置檔案中的sudo-user和become-user,remote_user

remote_user: 本機要通過乙個使用者名稱密碼登入到遠端機器上,remote_user指的就是這個使用者名稱

sudo_user: 本機通過乙個使用者名稱密碼登入到遠端機器機器以後,可能還要sudo到其他賬戶下進行操作,如zabbix賬戶,nginx賬戶,如果這些賬戶下的目錄設了置許可權,一定要sudo - zabbix,sudo -nginx才可以操作的,所以sudo_user指的就是值,登入以後要去那個賬戶下去幹活,用的就是提公升許可權這個操作

become-user: 和sudo_user類似,他可以在每個任務中進行定義。在1.9 ansible之前,大多數情況下都允許使用sudo和有限的su來允許登入/遠端使用者成為不同的使用者並執行任務,用第二個使用者的許可權建立資源。從1.9開始become代替舊的sudo /su,同時仍然向後相容。這個新系統也使得新增諸如pbrun(powerbroker),pfexec,dzdo(centrify)等其他特權公升級工具變得更加容易。還有乙個不同之處,sudo_user在配置檔案的default模組中,而become_user沒有,這說明become_user在提公升許可權時劃分的更加精準了。

ask_pass = true 在本機執行命令時,需不需要本機使用者的密碼,這個很無聊,因為操作者不希望每次操作時都輸入本機的密碼,這是沒有意義的,此項應該注釋掉。這個功能和命令列的-k引數的功能重疊

ask_sudo_pass = true \\每次執行ansible命令是否詢問ssh密碼,同樣的,此項也應該注釋掉。這個功能和命令列的-k引數的功能重疊

ansible常用命令

1,-i引數指定hosts目錄,

ansible -i /data/hosts all -m ping

2,使用become_user功能

2.1 通過命令列的-e引數指定become

例如:ansible

使用-k -k引數時確保配置檔案中的兩個選項注釋掉、

2.2在hosts檔案中指定become

例如:[s21]

#192.168.1.21 ansible_ssh_user=i ansible_ssh_pass=i

192.168.1.21 ansible_ssh_user=i ansible_ssh_private_key_file=/home/i/.ssh/id_rsa ansible_become=true ansible_become_user=root ansible_become_pass='i'

2.3,在roles的yml檔案中編寫,略過

2.4 在ansible的配置檔案中編寫

[privilege_escalation]

become=ture

become_method=sudo

become_user=root

become_ask_pass=false

開啟並編寫這些配置以後,程式會從上到下讀取配置檔案中的配置,become_user是三個user中的最後乙個,所以也是最後生效的結果

用以下命令可以檢查配置的結果:

ansible -i hosts all -m shell -a "whoami" -k

3,ansible配置檔案的優先順序

3.1 優先順序:

1,ansible_config: ansible命令會先檢查該環境變數

2,./ansible.cfg: 當前執行ansible命令的目錄

3,~/.ansible.cfg

4. /etc/ansible/ansible.cfg: 預設的配置檔案

3.2 從以上順序可以看出,環境變數中的配置是最優先的,配置檔案編寫以後,如果不想動,可以用環境變數最大限度的保持靈活性,比如一下的例子:

ansible -i hosts all -e "ansible_become=true ansible_ssh_user=ansibleadmin ansible_become_user=ansibleadmin" -m shell -a "whoami" -k -k (如果在前面的雙引號中加入ansible_become_pass='66666',後面的大k就不用寫)

Ansible系列(6) Yum模組

之前的文章裡提到了這個yum模組,作為承諾,這次拿它當第一了。yum 全稱為 yellow dog updater,modified 是乙個在fedora和redhat以及centos中的shell前端軟體包管理器 既然是包管理器,平時我們如何使用它?拿centos為例 yum install gi...

ansible安裝部署

一 ansible介紹 1 簡介 ansible是新出現的自動化運維工具,基於python開發,集合了眾多運維工具 puppet cfengine chef func fabric 的優點,實現了批量系統配置 批量程式部署 批量執行命令等功能。ansible是基於模組工作的,本身沒有批量部署的能力。...

Ansible簡單安裝

系統centos7.3 ip位址192.168.1.10 安裝ansible yum install epel release y yum install ansible y ssh部分 配置ssh免密碼登陸,若是用普通使用者請在普通使用者下建立ssh金鑰.且ssh統一使用乙個賬號.ssh keyg...