安装ansible
yum -y install ansible
配置文件位置:/etc/ansible/ansible.cfg
安装ansible以后,如想修改ansible执行目录需在配置文件修改,打开你就能知道了。
默认使用ansible地址是/etc/ansible/
hosts文件使用。 ##此文件默认位置也是在/etc/ansible/目录下。
[组名]
ip
[组名]
ip
[组名:children]]
组名
[all:vars] #all就是全部的组以及分组。
ansible_user=用户名 #受控机用户
ansible_password=密码 #受控机密码
命令行使用模块以及功能:
1、shell模块 :支持shell特性,如管道、重定向执行linux基础命令。
ansible -i hosts all -m shell -a “常用linux命令”
2、script模块 :用于在远程主机上执行脚本,比如在ansible目录写一个脚本使用此模块执行。
ansible -i hosts all -m script -a “脚本名字.sh
3、file模块 : 创建文件、目录、链接等,还可以修改权限、属性等
常用的选项:
path:指定文件路径
owner:设置文件所有者
group:设置文件所属组
state:状态。touch表示创建文件,directory表示创建目录,link表示创建软链接,absent表示删除
mode:设置权限
src:source的简写,源
dest:destination的简写,目标
格式:
ansible test -m file -a "path=目录/文件 owner=所有者 group=所属组 mode='权限'" ##权限需要时0777格式的,需要带0
ansible test -m file -a "path=目录/文件 state=参数" #这个参数可以是创建,删除。
ansible test -m file -a "src=目录/文件 dest=目录/文件 state=link" 这是软连接操作格式。
4、copy模块 : 将文件从控制端拷贝到被控端,也可以直接写入被控端。
ansible test -m copy -a "src=本地文件 dest=被控端目录"
ansible test -m copy -a "content='写入文件的内容' dest=/目录/文件"
5、fetch模块:从被控端下载文件到控制端目录。
src:源。被控制端的文件路径
dest:目标。控制端的文件路径
6、lineinfile模块:确保存目标文件中有某一行内容 //如果文件中有某一行的内容 则不会作出修改
path:待修改的文件路径
line:写入文件的一行内容
regexp:正则表达式,用于查找文件中的内容 // regexp查找到了内容会替换整个一行,如果该行不存在,会在默认在文件结尾添加一行
格式:"path=/目录/文件 line='内容' regexp='查找内容'"
7、replace模块 : lineinfile会替换一行,replace可以替换关键词
格式"path=/目录/文件 regexp='查找内容' replace='替换内容'"
8、user模块:实现linux用户管理
常用选项:
name:待创建的用户名
uid:用户ID
group:设置主组
groups:设置附加组
home:设置家目录
password:设置用户密码 ##password={{'123456'|password_hash('sha512')}}密码格式设置,这是123456是密码。
state:状态。present表示创建,它是默认选项。absent表示删除
remove:删除家目录、邮箱等。值为yes或true都可以。
9、group模块 :创建、删除组
常用选项:
name:待创建的组名
gid:组的ID号
state:present表示创建,它是默认选项。absent表示删除
10、service模块:用于控制服务。启动、关闭、重启、开机自启。
常用选项:
name:控制的服务名
state:started表示启动;stopped表示关闭;restarted表示重启
enabled:yes表示设置开机自启;no表示设置开机不要自启。
11、lvg模块:创建、删除卷组,修改卷组大小
常用选项:
vg:定义卷组名。vg:volume group
pvs:由哪些物理卷构成。pvs:physical volumes
12、lvol模块:创建、删除逻辑卷,修改逻辑卷大小
常用选项:
vg:指定在哪个卷组上创建逻辑卷
lv:创建的逻辑卷名。lv:logical volume
size:逻辑卷的大小,不写单位,以M为单位
13、filesystem模块:用于格式化,也就是创建文件系统
常用选项:
fstype:指定文件系统类型
dev:指定要格式化的设备,可以是分区,可以是逻辑卷
14、mount模块:用于挂载文件系统
常用选项:
path:挂载点。如果挂载点不存在,自动创建。
src:待挂载的设备
fstype:文件系统类型
state:mounted,表示永久挂载
逻辑卷完成步骤
fdisk /dev/vdb 先用fdisk分区出来/dev/vdb1才可以。
lvg -a "vg=myvg pvs=/dev/vdb1" ##创建卷组
lvg -a "vg=myvg pvs=/dev/vdb1,/dev/vdb2" ##扩容
lvol -a "vg=myvg lv=mylv size=2G" ##创建逻辑卷
lvol –a "vg=myvg lv=mylv size=6G resizefs=yes" ##扩容
filesystem -a "fstype=xfs dev=/dev/myvg/mylv" ##格式化逻辑卷
mount -a "path=/data src=/dev/myvg/mylv state=mounted fstype=xfs" ##挂载
评论区