【Linux运维】LVM和RAID学习及实践

LVM和RAID学习及实践

  • 背景
  • LVM简介
  • 新加硬盘的操作
  • RAID-磁盘阵列
    • 应用场景
    • RAID0
    • RAID1
    • 其他结构RAID
    • 制作RAID
  • 小结

背景

某台服务器的磁盘管理需要自己动手处理,找了一些资料也踩了一些坑,在这里记录一下,先介绍一下LVM和RAID这两个东西。在计算机系统中,为了提高存储系统的性能、可用性和容量,许多技术被引入,其中包括LVM(Logical Volume Manager)和RAID(Redundant Array of Independent Disks)。

LVM简介

LVM(Logical Volume Manager)逻辑卷管理,通过封装一套逻辑层来管理磁盘空间,使用逻辑卷和逻辑卷管理可以更加轻松的管理磁盘空间,如果LVM托管的文件系统需要更多的空间,可以将其卷组中可用的空间直接分配给逻辑卷已达到扩容的目的。
LVM介绍.png

  • 物理设备(Disk A,B):提供逻辑卷实际的存储地址。
  • 物理卷(Physical Volume 1,2,3):对磁盘进行分区后,通过pvcreate为其添加标签,使其可以与LVM结合使用。
  • 卷组(Volume Group 1,2):包含多个物理卷的池,VG的大小是池内所有物理卷的总和,通过vgcreate创建。
  • 逻辑卷(Logical mVolume):从卷组中分配空间给每一个逻辑卷,通过像使用分区一样给用户使用,通过lvcreate创建。

新加硬盘的操作

这块硬盘是4T的所以不能用传统MBR分区(2T),所以用gdisk分区
gdisk /dev/sdg
# 分区后需要选择分区格式
t      Change a single partition's type code. You enter the type code using a two-byte hexadecimal number, as described earlier. You may also enter a GUID directly, if you have one and  gdisk doesn't know it
选择Linux LVM类型

pvcreate /dev/sdg1             # 创建物理卷
vgcreate vg_cros_hdd /dev/sdg1 # 创建卷组,包含物理卷sdg1
lvcreate -n jilixin -L 500G vg_cros_hdd # 创建逻辑卷
mkfs -t ext4 /dev/vg_cros_hdd/jilixin   # 初始化文件系统
mkdir /mnt/jlx  # 创建挂载目录
mount /dev/vg_cros_hdd/jilixin /mnt/jlx

RAID-磁盘阵列

RAID:独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。通过将多个硬盘驱动器组合在一起来提高性能、冗余性和容量的技术。RAID使用多种级别,每个级别提供不同的特性和权衡。

应用场景

  • 提高性能: RAID 0和RAID 5通常用于提高读/写性能。
  • 提供冗余性: RAID 1、RAID 5和RAID 6用于提供数据冗余,增加系统的可用性。

RAID0

RAID0的思想是把多个廉价的磁盘组成阵列来提升性能,也称为条带模式(striped),即把连续的数据分散到多个磁盘上存取,总线在读取数据的时候可以并行在多个磁盘上读取数据,理论上总线性能>>磁盘性能的时候,这种方式可以达到磁盘个数倍的效果。
RAID0.png

RAID1

RAID1是一个全冗余的设计,也成为镜像模式,保证数据安全,适用于对数据安全要求高的场景下,至少应该使用2的倍数块磁盘来组RAID1,并且RAID1的容量会减半,并且如果使用两块不一样大小的磁盘,RAID1的容量是小的那块。RAID1每次写入数据的时候都会给镜像中写入同样的数据作为备份。
RAID0.png

其他结构RAID

  • 可以看看这个人写的

制作RAID

RAID分为软件RAID和硬件RAID

  • 硬件RAID :服务器上必须配备有RAID卡来实现硬件RAID,直接使用物理插拔的方式配置硬盘,然后在服务器RAID配置中选用合适的RAID
  • 软件RAID :零成本的RAID制作方式,如下,将使用mdadm软件包来制作,介绍在本机实践的RAID 0
# 安装mdadm软件包
apt install update
apt-get install install mdadm -y

# 创建raid分区
fdisk /dev/sdf
# 分区完成时选择分区类型
t
fd
w
# 两个磁盘都需要进行同样的分区 sdf sdg
# 创建raid0
mdadm -C /dev/md0 -l raid0 -n 2 /dev/sd[f-g]1
# 初始化文件系统
mkfs -ext4 /dev/md0
# 创建挂载点进行挂载
mkdir /mnt/raid0
mount /dev/md0 /mnt/raid0

小结

将LVM和RAID结合使用,可以提供更灵活、可靠的存储解决方案。我们可以创建RAID数组,然后在其上使用LVM创建逻辑卷,实现动态调整大小、数据迁移以及RAID级别的选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/317911.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【爬虫实战】-爬取微博之夜盛典评论,爬取了1.7w条数据

前言: TaoTao之前在前几期推文中发布了一个篇weibo评论的爬虫。主要就是采集评论区的数据,包括评论、评论者ip、评论id、评论者等一些信息。然后有很多的小伙伴对这个代码很感兴趣。TaoTao也都给代码开源了。由于比较匆忙,所以没来得及去讲这…

Open3D 从体素网格构建八叉树(14)

Open3D 从体素网格构建八叉树(14) 一、算法简介二、算法实现1.代码2.效果一、算法简介 上一章介绍从点云构建八叉树,对点云所在体素进行了可视化显示,这里可以对体素构建八叉树,可视化显示八叉树的具体划分结构。 二、算法实现 1.代码 代码如下(示例): import op…

【python】搭配Miniconda使用VSCode

现在的spyder总是运行出错,启动不了,尝试使用VSCode。 一、在VSCode中使用Miniconda管理的Python环境,可以按照以下步骤进行: a. 确保Miniconda环境已经安装并且正确配置。 b. 打开VSCode,安装Python扩展。 打开VS…

用通俗易懂的方式讲解:Stable Diffusion WebUI 从零基础到入门

本文主要介绍 Stable Diffusion WebUI 的实际操作方法,涵盖prompt推导、lora模型、vae模型和controlNet应用等内容,并给出了可操作的文生图、图生图实战示例。适合对Stable Diffusion感兴趣,但又对Stable Diffusion WebUI使用感到困惑的同学。…

GBASE南大通用提问:如果程序检索到 NULL 值,该怎么办?

可在数据库中存储 NULL 值,但编程语言支持的数据类型不识别 NULL 状态。程序必须 采用某种方式来识别 NULL 项,以免将它作为数据来处理。 在 SQL API 中,指示符变量满足此需要。指示符变量是与可能收到 NULL 项的主变量相 关联的一个附加的变…

深度学习笔记(五)——网络优化(1):学习率自调整、激活函数、损失函数、正则化

文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 截图和程序部分引用自北京大学机器学习公开课 通过学习已经掌握了主要的基础函数之后具备了搭建一个网络并使其正常运行的能力,那下一步我们还…

Linux环境之Ubuntu安装Docker流程

今天分享Linux环境之Ubuntu安装docker流程,Docker 是目前非常流行的容器,对其基本掌握很有必要。下面我们通过阿里云镜像的方式安装: 本来今天准备用清华大学镜像安装呢,好像有点问题,于是改成阿里云安装了。清华安装…

《矩阵分析》笔记

来源:【《矩阵分析》期末速成 主讲人:苑长(5小时冲上90)】https://www.bilibili.com/video/BV1A24y1p76q?vd_sourcec4e1c57e5b6ca4824f87e74170ffa64d 这学期考矩阵论,使用教材是《矩阵论简明教程》,因为没…

Linux———ps命令详解

目录 ps 命令("process status" 的缩写。) 常用选项和参数: a:显示所有用户的进程,包括其他用户的进程。​ u:显示详细的进程信息,包括进程的所有者、CPU 使用率、内存使用量等。…

【LabVIEW FPGA入门】模拟输入和模拟输出

1.简单模拟输入和输出测试 1.打开项目,在FPGA终端下面新建一个VI 2.本示例以模拟输入卡和模拟输出卡同时举例。 3.新建一个VI编写程序,同时将卡1的输出连接到卡2的输入使用物理连线。 4.编译并运行程序,观察是否能从通道中采集和输出信号。 5…

【天龙八部】攻略day6

关键字: 灵武、寻宝要求、雁门 1】灵武选择 西凉枫林,锦带,短匕 白溪湖,明镜,双刺 竹海,玉钩,锁甲 2】楼兰寻宝需求 等级80级,40级前6本心法 3】雁门奖励 简单35*4元佑碎金 普…

PyCharm连接服务器 - 1

文章目录 利用PyCharm实现远程开发使用认证代理连接服务器 利用PyCharm实现远程开发 【注】该连接服务器的方法适用于代码在服务器,我们是通过 GateWay 打开远程服务器的代码进行操作。 该功能只有在PyCharm专业版下才可以使用,并且必须是官方的正版许…

不方便拉网线,房间又没Wifi信号?按照这个教程,让你家里每个角落都有网

前言 前段时间去了一个朋友家里,她老是和我叨叨说她家的卧室一点Wifi信号都没有。每次一躺床上都只能用手机流量上网。 家里明明有拉宽带,为什么在某一些地方还是得用自己手机流量?哎,有钱人的痛就是房子太大了。 我问她为啥不多…

LeetCode264. 丑数 II(相关话题:多重指针动态规划)

题目描述 给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数 就是质因子只包含 2、3 和 5 的正整数。 示例 1: 输入:n 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。示例 2&am…

MySQL数据库入门到大牛_高级_00_MySQL高级特性篇的内容简介

文章目录 一、整个MySQL的思维导图二、MySQL高级特性篇大纲1. MySQL架构篇2. 索引及调优篇3. 事务篇4. 日志与备份篇 一、整个MySQL的思维导图 下图为整个MySQL内容,01-05是基础篇,06-09是高级篇 二、MySQL高级特性篇大纲 MySQL高级特性分为4个篇章&…

鸿蒙开发现在就业前景怎样?

随着科技的不断进步,鸿蒙系统逐渐崭露头角,成为智能设备领域的一颗新星。作为华为自主研发的操作系统,鸿蒙系统拥有着广阔的市场前景和就业机会。那么,鸿蒙开发的就业前景究竟怎样呢? 一、市场需求持续增长 随着鸿蒙…

【Docker】Linux中Docker镜像结构及自定义镜像,并且上传仓库可提供使用

目录 一、镜像结构 1. 基本结构 2. 常用命令 二、自定义镜像 1. 基本镜像 2. 进阶镜像 3. 完善镜像 三、镜像上传仓库 每篇一获 一、镜像结构 自定义 Docker 镜像有很多用途,以下是一些主要的应用场景: 一致性环境:通过自定义镜像&a…

如何实现接口重试

重试机制 在复杂的接口业务中,API请求数量很多,并且业务处理复杂,便难免会遇到一些网络问题(timeout)或者未知错误(error),这时候需要加入重试机制了。让我们来回顾一下都有什么实现机制吧。 8种重试机制实现 1. 循环重试 这是最…

Hive命令行运行SQL将数据保存到本地如何去除日志信息

1.场景分析 先有需求需要查询hive数仓数据并将结果保存到本地,但是在操作过程中总会有日志信息和表头信息一起保存到本地,不符合业务需要,那如何才能解决该问题呢? 废话不多少,直接上代码介绍: 2.问题解决…

计算机毕业设计 | SpringBoot+vue的家庭理财 财务管理系统(附源码)

1,绪论 1.1 项目背景 网络的发展已经过去了七十多年,网络技术的发展,将会影响到人类的方方面面,网络的出现让各行各业都得到了极大的发展,为整个社会带来了巨大的生机。 现在许多的产业都与因特网息息相关&#xff…