yaml是一种表达资料序列的格式,类似XML
语法简介:
在文件中用[—]开始
在文件中用[…]结尾
次行一般书写文件内容
缩进严格
大小写敏感
key/value可以多行书写也可一行书写,一行书写用逗号隔开
value 可以是个字符串,也可用list
一个play需要包括name和tasks
name是描述
tasks是动作
一个name只能包含一个task
扩展名称yml或者yaml
YAML列表
[元素1,元素2,元素3,元素4]
-元素1
-元素2
-元素3
-元素4
yaml的字典
字典作用存放键值
name:westos
age:12
jobs:linux
{name:“westos”,age:“12”,jobs:“linux”}
playbook执行命令
ansible-playbook xxx.yml
--check|-C 检测
--syntax-check check language,一般用-C
--list-hosts 列出hosts
--list-tags:列出tag
--list-tasks 列出task
--limit 指定执行主机
-v -vv 显示过程
vim /mnt/file 建立列表
- Linux
shell:bash 键值
ps:ax
westos:jin
这个列表里包含了字典,字典中可以看到有三个元素,字典前不用加-
- C++
---
- name: test yml
hosts: 172.25.254.100
tasks:
- name: action
shell:
hostname
ansible-playbook test.yml -C 实际未执行,只是检测
ansible-playbook --list-hosts test.yml
ansible-playbook --limit 172.25.254.100 test.yml -C
ansible-playbook -v tests.yml
vim ~/.vimrc
set nu ts=2 ai et
列表中的每一个元素前面必须加-,字典不加-
playbook的核心组件
name 可选,建议使用,多用于说明
hosts 受控主机列表
tasks 任务 用于选择执行部分代码
ansible-doc lineinfile | less
vim ~/.vimrc
autocmd FileType yaml setlocal ts=2 et sw=2
set nu
setlocal 设定当前文件
ai 自动退格对齐 auto indent
ts tab键长度为2空格 tabstop=2
sw 缩进长度为2 shiftwideth=2
et 把tab键变成空格expandtab
crtl w x打开两个界面
crtl w c关闭两个界面
sp /etc/passwd 在命令行输入,打开另外一个文件