模組
yum 安裝 yum模組
pip 安裝python相關模組
service 啟動服務
enabled 設定開機自啟動
不能都是* 那也會導致每分鐘都執行相同的命令 會撐爆伺服器
group 建立組
user 使用者
ad-hoc 這些模組是這樣稱呼的
yaml
傳參 動態的
yaml
ansible all -m setup
ansible_all_ipv4_addresses
# ipv4的所有位址
ansible_all_ipv6_addresses
# ipv6 的所有位址
ansible_date_time
# 獲取到節點控制時間
ansible_default_ipv4
# 預設的ipv4位址
ansible_distribution
# 系統
ansible_distribution_major_version
# 系統的版本號
ansible_domain
# 系統所在的域
ansible_env
# 系統的環境變數
ansible_hostname
# 系統的主機名
ansible_fqdn
# 系統的全名
ansible_machine
# 系統的架構
ansible_memory_mb
# 系統的記憶體資訊
ansible_os_family
# 系統的家族
ansible_pkg_mgr
# 系統的包管理工具
ansible_processor_cores
# 系統的cpu的核數(每顆)
ansible_processor_count
# 系統cpu的顆數
ansible_processor_vcpus
# 系統cpu的總個數= core * count 核數乘顆數
ansible_python
# 系統上的python
ansible cache -m setup -a 'filter=*processor*'
# 用來搜尋filter後面的字段
*匹配數量,表示(0,+%)
? 匹配數量,便是 0 | 1 二者之一
.除了換行符以外的所有字元
+至少一次(1,+%)
[12365] 匹配內容,存在即可 or 關係
() 分組
次數,出現m次
至少m次
出現m-n次
a*.b 可以匹配db
a.*匹配不了db
- hosts: db
remote_user: root
tasks:
- name: createfile
copy: content='風蕭蕭兮易水寒' dest=/tmp/a.txt
when: a=='3'
- name: createfile
copy: content='壯士一去兮不復還' dest=/tmp/a.txt
when: a=='4'
- hosts: db
tasks:
- name: wadong
tieqiao: wadong
- name: tk
dong: tk
tags: tk
- hosts: web
tasks:
- name: install_nginx
yum: name=nginx
- name: copyfile
copy: src=/etc/nginx/nignx.conf dest=/etc/nginx/nginx.conf
tags: copyfile
- name: start
service: mame=nginx state=started
ansible-playbook -t copyfile p1.py
# 只執行標籤的動作 其餘的不執行
一次性建立多個
- hosts: gb
tasks:
- name: gbqc
dong: }
with_items:
- qbqc
- cyf
- ssfj
- hosts: web
task:
- name: createuser
user: name=}
with_items:
- max20
- max21
- max22
- host: web
tasks:
- name: createuser
user: name=}
with_items:
- eral11
- eral12
- eral13
- hosts: web
tasks:
- name: crategroup
group: name=}
with_items:
- max30
- max31
- max32
- name: createuser
user: name=} group=}
with_items:
- -
-
jinja2
- hosts: web
tasks:
- name: installredis
yum: name=redis
- name: copyfile
template: src=/etc/redis.conf dest=/etc/redis.conf
- name: start
service: name=redis state=started
配置檔案:bind }
- hosts: web
tasks:
- name: installredis
yum: name=redis
- name: copyfile
template: src=redis.conf dest=/etc/redis.conf
- name: start
service: name=redis state=started
tips: 可以寫相對路徑,在當下目錄新建乙個templates目錄,
然後把檔案放在templates目錄中
修改配置檔案
- hosts: web
tasks:
- name: installredis
yum: name=redis
- name: copyfile
template: src=redis.conf dest=/etc/redis.conf
tags:copyfile
nofity:restart
- name:start
service: name=redis state=restarted
handlers:
- name: restart
service: name=redis state=restarted
roles 資料夾
資料夾裡面是要建立的每乙個角色,每乙個資料夾
每乙個角色裡面都要有tasks(must),templates,files,handlers,
vars目錄
每個目錄都要有main.yml檔案,通過import_tasks來呼叫
其中templates資料夾中的檔案可以通過相對路徑來呼叫
其中files資料夾是否可以通過相對路徑來呼叫
hodoop 大資料
setenforce 0
# 用來臨時關閉selinux
iptables -f
# 臨時關閉防火牆
# 這個需要yum install iptables
/etc/seliunx/config
# 永久關閉
Ansible流程控制
在開發中,經常會編寫一些流程控制相關的邏輯,如條件判斷 迴圈等,ansible也提供了對條件判斷 迴圈等的操作。ansible的模板配置是基於jinja2的,如變數的定義 關於when的更多示例 hosts proxy tasks name deploying to development.debu...
ansible遠端控制
環境 一台centos7,一台centos6.5 實驗步驟 centos7的伺服器上 一.準備工作 1.關閉selinux 清空缺省防火牆策略,橋接物理網路。setenforce 0 ifconfig systemctl restart sshd iptables f 2.安裝遠端登陸的依賴關係包。...
mysql流程控制 MySQL 流程控制
流程控制 1 順序結構 程式從上往下依次執行 2 分支結構 多條路徑選擇一條 3 迴圈結構 在規定範圍內重複執行 一 分支結構 1 if函式 功能 實現分支流 語法 if 表示式1,表示式2,表示式3 執行順序 執行表示式1,成立返回表示式2的值,不成立則返回表示式3的值 應用 任何地方 例 if ...