Ansible playbook初始化配置Linux Centos7(五.挂载数据盘)

Ansible playbook初始化配置Linux Centos7(一.DNS)

Ansible playbook初始化配置Linux Centos7(二.YUM)

Ansible playbook初始化配置Linux Centos7(三.时钟同步)

Ansible playbook初始化配置Linux Centos7(四.防火墙)

一.挂载数据盘

1.1.目录结构

├── hosts
├── roles
│   ├── DNS
│   │   ├── handlers
│   │   │   └── main.yml
│   │   └── tasks
│   │       └── main.yml
│   ├── yum
│   │   └── tasks
│   │       └── main.yml
│   ├────── time
│   │   └─── handlers
│   │      └── main.yml
│   │   └── tasks
│   │      └── main.yml
│   ├── list
│   │   └── tasks
│   │       └── main.yml
│   ├── disk
│   │   └── tasks.yml
│   │       └── main.yml
│   └── firewall
│       └── tasks
│          └── main.yml
└── site.yml

1.2.list下任务主文件

/roles/list/tasks/main.yml

#新建表storage_device收集信息
    - name: initialize empty list for devices
      set_fact:
        storage_devices: []
#获取未挂载的硬盘(判断条件根据云平台环境自行调整)
    - name: get unparted devices
      set_fact:
        storage_devices: "{{ storage_devices + [item.key] }}"
      with_dict: "{{ ansible_devices }}"
      when: item.value.partitions == {} and not item.value.vendor is none
#查看获取到的硬盘信息
    - name: show all values for selected devices
      debug: msg="{{ ansible_devices[item] }}"
      loop: "{{ storage_devices }}"
#查看表内容
    - name: show devices names
      debug: var=storage_devices

1.3.disk下任务主文件

/roles/disk/tasks/main.yml

#安装lvm2服务
 - name: install parted
   yum:
     name: lvm*
     state: present
#挂载硬盘
 - name: mount disk
   parted:
     device: /dev/{{item}}
     number: 1
     state: present
   loop: "{{storage_devices}}"
   ignore_errors: yes
#创建卷组
 - name: create volume group
   lvg:
     vg: vg{{item}}1
     pvs: /dev/{{item}}1
   loop: "{{storage_devices}}"
#创建逻辑卷
 - name: create lv
   lvol:
     vg: vg{{item}}1
     lv: lv{{item}}1
     size: 100%VG
     resizefs: true
     force: yes
     state: present
   loop: "{{storage_devices}}"
#格式化硬盘
 - name: format disk
   filesystem:
     fstype: xfs
     dev: /dev/vg{{item}}1/lv{{item}}1
   loop: "{{storage_devices}}"
   ignore_errors: yes
#挂盘
 - name: mount lvs
   mount:
     src: /dev/vg{{item}}1/lv{{item}}1
     path: /data_{{item}}
     fstype: xfs
     state: mounted
   loop: "{{storage_devices}}"
   ignore_errors: yes
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值