linux学习

使用playbook进行磁盘管理

Ansible使用parted模块管理磁盘分区。

常用选项:

device:待分区的设备
number:分区编号
state:present表示创建,absent表示删除
part_start:分区的起始位置,不写表示从开头
part_end:表示分区的结束位置,不写表示到结尾
示例如下:

[root@pubserver ansible]# vim disk.yml
---
# 在web1主机上,对/dev/vdc分区,创建1个1GB的主分区
- name: disk manage
  hosts: web1
  tasks:
    - name: create a partition
      parted:
        device: /dev/nvme0n3
        number: 1
        state: present
        part_end: 1GiB
# 再次创建一个5G的主分区
    - name: add a new partition
      parted:
        device: /dev/nvme0n3
        number: 2
        state: present
        part_start: 1GiB
        part_end: 6GiB
# 创建名为:my_vg 的卷组,由上面的 nvme0n3p1 与 nvme0n3p2 构成
    - name: create my_vg
      lvg:
        vg: my_vg
        pvs: /dev/nvme0n3p1,/dev/nvme0n3p2
# 在my_vg卷组上创建名为my_lv的逻辑卷
    - name: create my_lv
      lvol:
        vg: my_vg
        lv: my_lv
        size: 1G
# 格式化my_lv为ext4
    - name: mkfs my_lv
      filesystem:
        dev: /dev/my_vg/my_lv
        fstype: ext4
# 挂载my_lv到/data
    - name: mount my_lv
      mount:
        path: /data
        src: /dev/my_vg/my_lv
        fstype: ext4
        state: mounted

[root@pubserver ansible]# ansible-playbook disk.yml 

留言

您的电子邮箱地址不会被公开。 必填项已用 * 标注