22-Ansible常用模块磁盘管理模块parted、lvg、lvol、filesystem、mount

一、parted模块 可以管理磁盘

device            指定硬盘设备路径 比如 /dev/vdb
label             指定分区表类型 gpt mbr
number            指定分区序号
part_start        分区起始位置
part_end          分区结束位置
state             指定操作方式 present创建 absent删除 info查信息(默认)
ansible node2 -m parted -a 'device=/dev/vdb number=1 state=absent'      //删除vdb硬盘的现有1号分区
ansible node2 -m parted -a 'device=/dev/vdb label=gpt number=1 part_end=200MB state=present'    //在vdb创建1号新分区,分区表是gpt类型,大小是从头~200M
ansible node2 -m parted -a 'device=/dev/vdb label=gpt number=2 part_start=200MB part_end=600MB state=present'      //在vdb硬盘创建第2个分区,大小是从200M的位置到600M,相当于400M的大小
ansible node2 -m shell -a 'lsblk | grep vdb2'    远程查看结果

二 、vg模块,可以创建卷组

vg             卷组名称
state          present创建(默认) 或者 absent删除
force          可以在删除时使用
pvs            指定物理卷
pesize         设定pe大小
ansible node2 -m lvg -a 'vg=myvg state=present pvs=/dev/vdb1,/dev/vdb2'     创建卷组名字叫myvg,使用的物理卷是vdb1与vdb2
ansible node2 -m lvg -a 'vg=myvg state=absent'    删除名为myvg的卷组
ansible node2 -m lvg -a 'vg=vgtest pvs=/dev/vdb pesize=16'   创建名为vgtest的卷组,使用vdb磁盘所有空间,pe大小是16M

三、lvol模块 ,创建删除逻辑卷

lv            定义逻辑卷名称
size          定义逻辑卷大小
vg            逻辑卷的空间来自哪个vg
state         present创建(默认) 或者 absent删除
force         强制删除或者调整逻辑卷大小
ansible node2 -m lvol -a 'lv=mylv vg=/dev/myvg size=100M state=present'    利用myvg卷组创建逻辑卷 大小是100m,名字叫mylv
ansible node2 -m lvol -a 'lv=mylv vg=/dev/myvg size=100M state=absent force=yes'   删除mylv逻辑卷

四、filesystem模块 可以为硬盘格式化

dev           要格式化的分区
fstype        文件系统类型 比如 ext4 xfs
force         强制格式化,如果以前分区中有数据
ansible node2 -m filesystem -a 'dev=/dev/vdb1 fstype=xfs force=yes'       给vdb1格式化,类型是xfs
ansible node2 -m filesystem -a 'dev=/dev/vdb2 fstype=ext4 force=yes'    给vdb2格式化,类型是ext4
ansible node2 -m shell -a 'mount /dev/vdb1 /mnt'     传递挂载命令测试效果
[root@node2 ~]# blkid /dev/vdb1    还可以直接在node2主机查看该分区的文件系统类型

五、mount模块

path:       挂载点
src:        挂载的文件
fstype:     挂载的硬盘类型 比如iso9660、ext4、xfs、nfs、
            cifs samba的共享文件系统
            ntfs windows磁盘文件系统 
opts:       传递给mount命令的参数
state:      present	    开机挂载,仅将挂载配置写入/etc/fstab并不会真的挂载
	        mounted  	挂载设备,并将配置写入/etc/fstab
	        unmounted	卸载设备,不会清除/etc/fstab写入的配置
	        absent		卸载设备,并清理/etc/fstab写入的配置
ansible all -m mount -a 'path=/tmp/app src=/dev/sdb fstype=ext4 state=mounted opts=rw'
ansible all -m mount -a 'path=/mnt/dvd src=/dev/sr0 fstype=iso9660 opts=ro state=present'
ansible all -m mount -a 'path=/srv/disk src='LABEL=SOME_LABEL' state=present'
ansible all -m mount -a 'path=/home src='UUID=b3e48f45-f933-4c8e-a700-22a159ec9077' opts=noatime state=present'
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值