前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >centos 使用mdadm 工具做软raid

centos 使用mdadm 工具做软raid

作者头像
jerry_huang
发布2024-05-22 08:39:43
1210
发布2024-05-22 08:39:43
举报
文章被收录于专栏:运维记录运维记录

创建raid

下面是在CentOS上使用mdadm进行软件RAID10设置的详细步骤:

在CentOS上安装mdadm软件包:

代码语言:javascript
复制
sudo yum install mdadm

查看可用的磁盘设备:

代码语言:javascript
复制
sudo fdisk -l

记下要用于RAID的磁盘设备的名称,例如/dev/sdb、/dev/sdc等。

创建分区:

代码语言:javascript
复制
sudo fdisk /dev/sdb

在fdisk命令提示符下,按下n创建一个新分区,选择分区类型为主分区或逻辑分区,然后按照提示设置分区大小。重复此步骤为每个磁盘创建分区。

创建RAID设备:

代码语言:javascript
复制
sudo mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

这里创建了一个名为/dev/md0的RAID10设备,使用了4个磁盘分区。根据实际情况修改磁盘设备和分区号。

等待RAID设备同步完成:

代码语言:javascript
复制
watch cat /proc/mdstat

使用上述命令可以实时查看RAID设备的同步状态。等待所有设备同步完成。

创建文件系统:

代码语言:javascript
复制
sudo mkfs.ext4 /dev/md0

这里使用ext4文件系统作为示例,你也可以选择其他文件系统类型。

挂载RAID设备:

代码语言:javascript
复制
sudo mkdir /mnt/raid
sudo mount /dev/md0 /mnt/raid

这里将RAID设备挂载到/mnt/raid目录,你可以选择其他目录作为挂载点。

更新/etc/fstab文件以实现开机自动挂载:

代码语言:javascript
复制
echo '/dev/md0 /mnt/raid ext4 defaults 0 0' | sudo tee -a /etc/fstab

完成!现在你已经成功设置了一个RAID10设备,并将其挂载到指定目录。

请注意,在进行磁盘操作时要小心谨慎,并确保备份重要数据。

删除raid

以下是删除RAID阵列的步骤:

首先,使用以下命令查看系统中所有的RAID阵列:

代码语言:javascript
复制
mdadm --detail --scan

这将显示所有已配置的RAID阵列的信息,包括设备名称(如 /dev/md0)和对应的设备列表。

确定要删除的RAID阵列的设备名称。

使用以下命令停止该RAID阵列:

代码语言:javascript
复制
mdadm --stop /dev/md0

/dev/md0 替换为要删除的RAID阵列的设备名称。

最后,使用以下命令将RAID阵列的配置信息从系统中删除:

代码语言:javascript
复制
mdadm --remove /dev/md0

同样,将 /dev/md0 替换为要删除的RAID阵列的设备名称。

请注意,删除RAID阵列后,相关的数据将无法恢复。确保在执行此操作之前备份重要数据,并且仔细确认要删除的RAID阵列的设备名称。

更换故障硬盘

1.检查硬盘损坏情况

代码语言:javascript
复制
# cat /proc/mdstat
Personalities : [raid1] 
md0 : active raid1 sdb[0]
      83819520 blocks super 1.2 [2/1] [U_]  #_可以看出有个硬盘故障,正常是两个U
      
unused devices: <none>

2.查看详情

代码语言:javascript
复制
# mdadm -D /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Tue Jan 30 15:10:59 2024
        Raid Level : raid1
        Array Size : 83819520 (79.94 GiB 85.83 GB)
     Used Dev Size : 83819520 (79.94 GiB 85.83 GB)
      Raid Devices : 2
     Total Devices : 1
       Persistence : Superblock is persistent

       Update Time : Tue Jan 30 16:51:27 2024
             State : clean, degraded 
    Active Devices : 1   #可以看出活跃磁盘只有一个
   Working Devices : 1
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : 4ddce06d:44158f8e:cddc4231:752ddd91
            Events : 24

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       -       0        0        1      removed    #坏盘

4.查看新加的磁盘

代码语言:javascript
复制
# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda      8:0    0   50G  0 disk  
├─sda1   8:1    0    1M  0 part  
├─sda2   8:2    0  800M  0 part  /boot
├─sda3   8:3    0    4G  0 part  [SWAP]
├─sda4   8:4    0    1K  0 part  
└─sda5   8:5    0 45.2G  0 part  /
sdb      8:16   0   80G  0 disk  
└─md0    9:0    0   80G  0 raid1 /data
sdc      8:32   0   80G  0 disk    #可以看出sdc是新加的磁盘

3.添加新硬盘到RAID

代码语言:javascript
复制
# mdadm /dev/md0 -a /dev/sdc
mdadm: added /dev/sdc

4.检查RAID状态

代码语言:javascript
复制
# cat /proc/mdstat 
Personalities : [raid1] 
md0 : active raid1 sdc[2] sdb[0]
      83819520 blocks super 1.2 [2/1] [U_]
      [>....................]  recovery =  1.7% (1465728/83819520) finish=17.7min speed=77143K/sec                #可以看到软raid已经以恢复正在重构。
      
unused devices: <none>               

5.查看详细状态

代码语言:javascript
复制
# mdadm -D /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Tue Jan 30 15:10:59 2024
        Raid Level : raid1
        Array Size : 83819520 (79.94 GiB 85.83 GB)
     Used Dev Size : 83819520 (79.94 GiB 85.83 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Tue Jan 30 17:18:17 2024
             State : clean, degraded, recovering 
    Active Devices : 1
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

    Rebuild Status : 53% complete

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : 4ddce06d:44158f8e:cddc4231:752ddd91
            Events : 34

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       2       8       32        1      spare rebuilding   /dev/sdc    #可以看到已经恢复

重装系统恢复raid

要实现重装系统之后恢复软raid前提是,组成软raid的磁盘不包括系统盘。是单独分开的。比如有三块磁盘/dev/sda /dev/sdb /dev/sdc 系统装在/dev/sda 软raid是由/dev/sdb 和 /dev/sdc磁盘组成。

1.查看磁盘信息

代码语言:javascript
复制
# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda      8:0    0   50G  0 disk  
├─sda1   8:1    0    1M  0 part  
├─sda2   8:2    0  800M  0 part  /boot
├─sda3   8:3    0    4G  0 part  [SWAP]
├─sda4   8:4    0    1K  0 part  
└─sda5   8:5    0 45.2G  0 part  /
sdb      8:16   0   80G  0 disk  
└─md0    9:0    0   80G  0 raid1 
sdc      8:32   0   80G  0 disk  
└─md0    9:0    0   80G  0 raid1 
sr0     11:0    1 1024M  0 rom   

从上面可以看到,sdb和sdc组的raid1

2.在新装的CentOS上安装mdadm软件包:

代码语言:javascript
复制
sudo yum install mdadm

3.挂载软raid

代码语言:javascript
复制
# blkid
/dev/sda5: UUID="4c1e0be9-02e3-4a89-a6b4-dd38b9b3dade" TYPE="xfs" 
/dev/sda2: UUID="9b005cb9-40db-4fca-8bc8-aec66bbe73da" TYPE="xfs" 
/dev/sda3: UUID="38813349-c5c2-4bf0-a030-55c393449cc5" TYPE="swap" 
/dev/sdb: UUID="4ddce06d-4415-8f8e-cddc-4231752ddd91" UUID_SUB="4a602763-a1ed-05af-2ab1-59950aee6ff7" LABEL="localhost.localdomain:0" TYPE="linux_raid_member" 
/dev/md0: UUID="d7747fb5-5e03-49e6-95e0-9bb6b537734b" TYPE="xfs" 
/dev/sdc: UUID="4ddce06d-4415-8f8e-cddc-4231752ddd91" UUID_SUB="90b6c0b6-eed0-e39a-78b0-943ac5627078" LABEL="localhost.localdomain:0" TYPE="linux_raid_member" 

echo "UUID="d7747fb5-5e03-49e6-95e0-9bb6b537734b" /data       xfs     defaults        0 0" >> /etc/fstab

下面没测试的命令

代码语言:javascript
复制
装好后,直接用mdadm -A /dev/md0 /dev/hdb /dev/hdc加载上来就行了,因为这2个raid分区的superblock都没有改变。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建raid
  • 删除raid
  • 更换故障硬盘
  • 重装系统恢复raid
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档