ansiblie命令基礎

2022-09-14 23:57:30 字數 2124 閱讀 6266

ansible -i   /home/admin/hosts

-i 指定本地的hosts主機清單檔案

如果不使用 -i 指定hosts 缺省會去用 /etc/ansible/hosts清單檔案

ansible -f  10

-f 指的是併發數,表示同時返回10臺受控主機命令的結果 需要根據實際情況調整引數值提高ansible執行命令的併發度

-m 指定呼叫的ansible模組

-a 表示給呼叫的模組傳遞的引數

主機別名

[webserver]

nginx    192.168.1.1

mysql   192.168.1.2

ansible以別名的方式來對受控端進行區分,ip位址太多的時候分不清各個ip的用途

命令模組 

command shell 模組本質上執行的都是基礎命令 預設是執行command模組

command模組 不支援管道型別的命令

shell模組 支援管道shell命令

理論上ansible -m shell 可以執行任何遠端命令操作,但是多次呼叫ansible -m shell命令的時候,ansible並不會判斷是否重複在執行.而其他模組是可以先判斷是否在重複操作。

安裝模組

yum模組

state欄位

absent        移除解除安裝指定包

present       正常安裝包

latest           安裝最新版本的包

配置模組

copy模組

受控端主機必須存在相應的目錄和檔案,並且可以設定相應的檔案許可權和屬主和屬組.

file模組

file模組和copy模組最大的不同是,copy模組只能拷貝和建立檔案.file模組是為了建立和遞迴授權遠端目錄,而不是拷貝檔案

state欄位

touch          表示建立乙個新檔案

directory     表示建立乙個新的目錄

get_url模組

url引數可以使用http,https,ftp等協議

checksum引數可以檢查網路檔案是否被修改過

服務管理模組

service模組

使用者管理模組

user模組

建立和刪除使用者

group模組

建立和刪除使用者組

定時任務模組

掛載模組

mount

防火牆模組

1.如果ansible控制機拷貝的公鑰到受控端主機上是普通使用者的公鑰,那麼執行在主控端執行ansible命令的時候也一定要用對應的普通使用者,用root執行ansible命令都不行

2.使用普通使用者執行ansible命令的時候有些情況需要用到root許可權

3.visudo 設定無密碼配置需要在被控端主機配置修改

1:vim /etc/ansible/ansible.cfg,開啟如下選項

[privilege_escalation] ##這一部分為提公升許可權的引數,如果使用普通使用者需要開啟

become=true

become_method=sudo

become_user=root

become_ask_pass=false

2:sudo visudo

admin all=(all) nopasswd:all ##無密碼登陸

ansible無法同時拷貝乙個目錄下的多個檔案,需要使用scp遠端拷貝命令

GIT 基礎 基礎命令

環境 centos7 yum install git這裡裡有個隱藏的資料夾 git 為git倉庫的配置資料夾,不可隨意修改 cd www git git init ls a git這裡和我們平時使用的git客戶端中設定使用者名稱和郵箱一樣的作用 git config global user.name...

Linux命令列基礎及基礎命令

例項1 1 root oldboy 當前使用者 分隔符 主機名 當前路徑 提示符 root oldboy 管理員root對應的提示符 oldboy oldboy 普通使用者對應的提示符 整個提示符是由乙個系統變數控制的 ps1 tab 命令或路徑的補全鍵。linux最有用的快捷鍵 ctrl a 游標...

Linux命令基礎 ls命令

1.ls的基本使用,不帶選項引數 2.ls a 顯示全部檔案,a是單詞all的縮寫 3.ls l 長格式顯示檔案資訊,l 是單詞long的縮寫 通過長格式顯示,可以看到關於檔案或者目錄更多詳細的資訊。一下用第一行解釋。1 第一列 drwxrwxr x 字母d代表目錄或者檔案,目錄directory的...