当前位置: 首页 > news >正文

使用ansible剧本进行lvm分盘

使用 Ansible 剧本(Playbook)进行 LVM 分区管理是一种自动化的方式,可以帮助管理员在多台主机上批量管理逻辑卷。

 部署环境

3台主机,添加硬盘

ansible-galaxy collection install community.general      联网执行,下载兼容parted模块的模块吧
显示:
Starting galaxy collection install process
Process install dependency map
Starting collection install process
Downloading https://galaxy.ansible.com/download/community-general-7.2.1.tar.gz to /root/.ansible/tmp/ansible-local-33201jai89ehw/tmplhtqs594/community-general-7.2.1-kh48eyd5
Installing 'community.general:7.2.1' to '/root/.ansible/collections/ansible_collections/community/general'
community.general:7.2.1 was installed successfully

操作

1.执行前奏脚本(格式非常重要,格式不对无法执行,)

- name: create volume group                   #任务名hosts: group1                            tasks:- name: Create partition for LVM        community.general.parted:                 #引用模块device: /dev/nvme0n2                   #硬盘设备路径number: 1						 # 分区序号flags: [ lvm ]								#分区标记state: present									#操作方式present创建 absent删除 info查信息(默认part_start: 1MiB                            #分区起始位置part_end: 2GiB								#分区结束位置- name: create research vg			lvg:vg: research												#卷组名称pvs: /dev/nvme0n2p1										#指定物理卷
- name: create volume grouphosts: group2tasks:- name: Create partition for LVMcommunity.general.parted:device: /dev/nvme0n2number: 1flags: [ lvm ]state: presentpart_start: 1MiBpart_end: 1GiB- name: create research vglvg:vg: researchpvs: /dev/nvme1n2p1

2.创建脚本lv.yml 按照以下的格式  data(lvm逻辑卷名称)(research卷组名称)

---
- name: create lvhosts: alltasks:- name: error  ##当不存在vg时报错debug:msg: Volume group done not existwhen: ansible_facts['lvm']['vgs']['research'] is undefined- name: create lvblock:  ##创建1000M的lv- name: create 1500m lvlvol:vg: researchlv: datasize: 1500mwhen: ansible_facts['lvm']['vgs']['research'] is definedrescue:  ##创建1000M失败时,先报错,再创建800M的lv- name: debugdebug:msg: Could not create logical volume of that sizewhen: ansible_facts['lvm']['vgs']['research'] is defined- name: create 800m lvlvol:vg: researchlv: datasize: 800mwhen: ansible_facts['lvm']['vgs']['research'] is definedalways:  ##对创建的lv进行格式化- name: filesystemfilesystem:fstype: ext4dev: /dev/research/datawhen: ansible_facts['lvm']['vgs']['research'] is defined

解析

---
- name: create lvhosts: all	##主机tasks:- name: error  ##当不存在vg时报错debug:msg: Volume group done not exist		##显示的信息when: ansible_facts['lvm']['vgs']['research'] is undefined		##不存在时- name: create lvblock:  ##创建1000M的lv- name: create 1500m lvlvol:vg: research		##卷组名lv: data			##逻辑卷名size: 1500m		##内存大小when: ansible_facts['lvm']['vgs']['research'] is defined	##存在时rescue:  ##创建1000M失败时,先报错,再创建800M的lv- name: debugdebug:msg: Could not create logical volume of that size		##显示的信息when: ansible_facts['lvm']['vgs']['research'] is defined- name: create 800m lv			##创建800m的lvlvol:vg: research      ##卷组名lv: data			##逻辑卷名size: 800m		##内存大小when: ansible_facts['lvm']['vgs']['research'] is defined	##存在时always:  ##对创建的lv进行格式化- name: filesystemfilesystem:fstype: ext4		##ext4格式dev: /dev/research/data			##dev文件when: ansible_facts['lvm']['vgs']['research'] is defined		##存在时

http://www.lryc.cn/news/320675.html

相关文章:

  • 【排序】快速排序
  • Python大数据实践:selenium爬取京东评论数据
  • 信息系统项目管理师019:存储和数据库(2信息技术发展—2.1信息技术及其发展—2.1.3存储和数据库)
  • Python基础(六)之数值类型元组
  • Chrome历史版本下载地址:Google Chrome Older Versions Download (Windows, Linux Mac)
  • ROS2纯跟踪实现(C++)
  • uniapp微信小程序随机生成canvas-id报错?
  • 爬虫 Day2
  • 达梦数据库SQL
  • python教程——把视频转成gif
  • 深入浅出Go的`encoding/xml`库:实战开发指南
  • 深度学习之扩散模型(Diffusion model)
  • Tomcat Session ID---会话保持
  • Session会话绑定
  • win7、win10、win11 系统能安装的.net framework 版本以
  • RediSearch比Es搜索还快的搜索引擎
  • mybatis-plus 的saveBatch性能分析
  • python异常:pythonIOError异常python打开文件异常
  • 电话机器人语音识别用哪家更好精准度更高。
  • 【Unity动画】Unity如何导入序列帧动画(GIF)
  • uniapp APP 上传文件
  • arcgis数据导出到excel
  • 吴恩达深度学习环境本地化构建wsl+docker+tensorflow+cuda
  • R语言:microeco:一个用于微生物群落生态学数据挖掘的R包:第七:trans_network class
  • ubuntu下在vscode中配置matplotlibcpp
  • Vue面试题,背就完事了
  • centos创建并运行一个redis容器 并支持数据持久化
  • nvm安装和使用保姆级教程(详细)
  • 跳绳计数,YOLOV8POSE
  • 阿里云ecs服务器配置反向代理上传图片