Linux之ansible简但应用(如何搭建yum,创建逻辑卷)

ansible自动化

今天给大家介绍一下ansible的各种模块,下面介绍的是本人常用的一些模块及其用法,可以用于平时的一些突然要在多台服务器进行同一操作的场景。

模块

  1. yum_repository

配置yum仓库模块

shell 复制代码
ansible webservers -m yum_repository -a "file=myrepo name=myApp description='My App' baseurl=仓库路径 gpgcheck=no enabled=yes"

file:文件名

name:\[\]内容

descriotion:name内容

  1. yum

就是远程yum

name:包名

state:状态。present表示安装,如果已安装则忽略;latest表示安装或升级到最新版本;absent表示卸载。

  1. service

用于控制服务。启动、关闭、重启、开机自启。

常用选项:

name:控制的服务名

state:started表示启动;stopped表示关闭;restarted表示重启enabled:yes表示设置开机自启;no表示设置开机不要自启。

shell 复制代码
ansible webservers -m service -a "name=nginx state=started enabled=yes"
在test主机上启动nginx,并设置它开机自启

逻辑卷模块

首先先在万web1添加一块新磁盘然后分区然后用ansible操作

  1. lvg模块

    创建、删除卷组,修改卷组大小

    常用选项:

    vg:定义卷组名。vg:volume group

    pvs:由哪些物理卷构成。pvs:physical volumes

shell 复制代码
在web1上安装lvm2,state不写,默认是present
ansible web1 -m yum -a "name=lvm2"

在web1上创建名为myvg的卷组,该卷组由/dev/vdb1组成
ansible web1 -m lvg -a "vg=myvg pvs=/dev/vdb1"
  1. lvol模块

    创建、删除逻辑卷,修改逻辑卷大小

    常用选项:

    vg:指定在哪个卷组上创建逻辑卷

    lv:创建的逻辑卷名。lv:logical volume

    size:逻辑卷的大小,不写单位,以M为单位

    force是强制操作

shell 复制代码
在web1上创建名为mylv的逻辑卷,大小为2GB
ansible web1 -m lvol -a "vg=myvg lv=mylv size=2G"
  1. filesystem模块

    用于格式化,也就是创建文件系统

    常用选项:

    fstype:指定文件系统类型

    dev:指定要格式化的设备,可以是分区,可以是逻辑卷

shell 复制代码
#  在web1上,把/dev/myvg/mylv格式化为xfs
ansible web1 -m filesystem -a "fstype=xfs dev=/dev/myvg/mylv"
  1. mount模块

    用于挂载文件系统

    常用选项:

    path:挂载点。如果挂载点不存在,自动创建。

    src:待挂载的设备

    fstype:文件系统类型

    state:mounted,表示永久挂载

shell 复制代码
#在web1上,把/dev/myvg/mylv永久挂载到/data
ansible web1 -m mount -a "path=/data src=/dev/myvg/mylv state=mounted fstype=xfs"

删除

shell 复制代码
# 在web1上,卸载/dev/myvg/mylv
ansible web1 -m mount -a "path=/data state=absent"

# 在web1上,强制删除/dev/myvg/mylv
 ansible web1 -m lvol -a "lv=mylv state=absent vg=myvg force=yes"   # force是强制

# 在web1上,删除myvg卷组
ansible web1 -m lvg -a "vg=myvg state=absent"
相关推荐
阿里云大数据AI技术14 小时前
阿里云 EMR AI 助手正式发布:从问答工具到全栈智能运维助手
运维·人工智能
你好潘先生20 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
orion571 天前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站1 天前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221612 天前
Linux驱动编译与加载
linux·嵌入式
程序员老赵2 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位2 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术2 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698032 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式