linux搭建gfs系统 iscsi+GFS 实现网络存储

首先需要了解以下概念:
- GFS(Global File System):全局文件系统,可以实现多台服务器共享同一块磁盘数据的读写。
- iSCSI(Internet Small Computer System Interface):一种用于在IP网络上发送SCSI命令的协议,可以通过网络传输SCSI命令,来控制远程的SCSI设备。

下面我将详细讲解如何在Linux系统中搭建iSCSI+GFS网络存储系统。

系统要求

  • 至少两台CentOS或RHEL服务器,其中一台安装iSCSI Target,另一台安装iSCSI Initiator。
  • 安装GFS软件包。

搭建iSCSI Target

  1. 安装iSCSI Target软件:
yum -y install scsi-target-utils
  1. 编辑iSCSI Target配置文件/etc/tgt/targets.conf
nano /etc/tgt/targets.conf

添加以下内容:

<target iqn.2021-09.com.example:target>
    # 这里可以设置server的一些参数,例如iSCSI端口,数据传输方式等。
    # 省略部分配置...
    # 添加一个LUN
    <logicalunit target_backend="blockstore">
        # 配置LUN的大小,这里为10GB
        <backing-store /dev/sdb1>
            # 这里sdb1为待映射为LUN的磁盘分区
            # 如果想添加多个LUN,可以在此继续添加
        </backing-store>
    </logicalunit>
</target>
  1. 启动iSCSI Target服务:
systemctl start tgtd.service
systemctl enable tgtd.service

搭建iSCSI Initiator

  1. 安装iSCSI Initiator软件:
yum -y install iscsi-initiator-utils
  1. 配置iSCSI Initiator,添加iSCSI Target:
iscsiadm -m discovery -t sendtargets -p <iSCSI target IP>
# 这里<iSCSI target IP>为iSCSI Target所在的服务器IP地址

# 获取到iSCSI Target后,连接到iSCSI Target
iscsiadm -m node -T <IQN> -p <iSCSI target IP> -l
# 替换<IQN>为iSCSI target的IQN,<iSCSI target IP>为iSCSI Target所在的服务器IP地址
  1. 显示连接状态:
iscsiadm -m session
  1. 创建新的分区,并格式化为GFS文件系统:
# 查看LUN路径,一般在/dev/sd*路径下
cat /proc/partitions
# 这里先假设LUN路径为/dev/sdc

# 创建新的分区
fdisk /dev/sdc
# 然后根据提示依次输入n、p、1、回车、回车、w,创建一个新的20GB的分区

# 格式化分区为GFS文件系统
mkfs.gfs2 -p lock_nolock -j 2 /dev/sdc1
# 这里-p lock_nolock参数设置为lock_nolock,表示不使用锁定机制,这可以在测试或者不要求如此高的性能时使用

使用GFS文件系统

  1. 挂载GFS文件系统:
mkdir -p /mnt/gfs
mount -t gfs2 /dev/sdc1 /mnt/gfs/
  1. 在GFS文件系统上进行测试:
cd /mnt/gfs/ 
touch test
echo "Hello World" > test
cat test

经过上述步骤,我们就成功搭建了iSCSI+GFS网络存储系统,可以实现多台服务器共享同一块磁盘数据的读写。

示例1:
假设我们已经在服务器A上搭建好了iSCSI Target,服务器B上搭建好了iSCSI Initiator,现在我们需要在服务器C上挂载GFS文件系统并进行读写测试。那么,我们只需要在服务器C上按照上述步骤,将iSCSI Initiator连接到iSCSI Target,并挂载GFS文件系统,即可进行读写测试。

示例2:
假设我们有两块硬盘,一块用于搭建iSCSI Target,另一块用于搭建iSCSI Initiator。那么,在创建LUN时,我们只需要在<backing-store>标签中,将/dev/sdb1替换为待映射为LUN的磁盘分区即可,例如/dev/sdd1

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux搭建gfs系统 iscsi+GFS 实现网络存储 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • linux有趣动画–代码雨

    环境centos7 前提:centos7如果用yum安装找不到包,所以用二进制   步骤一:下载二进制包 百度网盘链接: https://pan.baidu.com/s/10RocS03RFRiOftesUid0wQ 提取码: sfd7  步骤二:安装 1.安装依赖yum install -y ncurses-devel 编译安装也不用说./configur…

    Linux 2023年4月13日
    00
  • Linux系统上创建.NET6项目(通过命令行(CTL)方式)

    前言 平时大家创建项目基本上都是借助开发工具创建,比如visual studio,visual studio code,今天我们在Linux系统上,通过命令行的形式创建.NET6项目。 版本介绍 系统版本:Ubuntu22.04 SDK版本:.NET6 安装.NET环境 # 升级系统 sudo apt-get update # 找到.NET6 sudo ap…

    Linux 2023年5月11日
    00
  • Linux下mysql 8.0安装教程

    下面我将为你详细讲解“Linux下mysql8.0安装教程”的完整攻略。 安装准备 在安装MySQL之前,你需要确保以下条件已经满足: 执行安装的操作系统已经正确安装并可以正常运行。 确保你已经具有执行命令的管理员权限。 检查操作系统的位数,选择正确的MySQL版本进行安装。 确保服务器有可用的网络连接。 步骤1:下载MySQL安装包 进入MySQL官网,选…

    Linux 2023年5月14日
    00
  • 集群时钟同步必读-NTP和chrony

      一、  前言 搭建和维护集群环境中时钟同步是非常重要一环。如果集群的时间不统一,例如ceph集群就会报错无法更新数据、CDH集群无法添加客户端等等。目前主流在Linux系统搭建集群用到NTP和chrony软件,本文简单介绍两者的集群搭建。 二、  NTP和chrony区别 根据chrony官网描述,主要区别如下图:(图太大了,截取了一部分) 详细见官网:…

    Linux 2023年4月25日
    00
  • 工作中常用的Linux命令:mkdir命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6076075.html (转载请注明出处)   在Linux系统中,mkdir命令用来创建一个目录或一个级联目录。 1. 命令格式   mkdir [选项] 目录名 2. 命令选项   -m=mode     为目录指定访问权限,与chmod类似。   -p  如果目录已…

    Linux 2023年4月12日
    00
  • 在Linux系统上安装Linux内核头文件的教程

    安装Linux内核头文件是开发和编译某些软件需要的先决条件之一。以下是在Linux系统上安装Linux内核头文件的完整攻略: 确认内核版本 在安装内核头文件之前,应首先确认当前安装的内核版本。使用以下命令确认内核版本: uname -r 输出示例: 5.4.0-92-generic 安装内核头文件命令 使用以下命令安装当前内核版本的头文件: sudo apt…

    Linux 2023年5月14日
    00
  • vs code .net core Linux下离线安装Nuget包

    linux系统,内网环境下,使用vs code 开发.net core项目,离线安装Nuget包的方法。   本人第一次使用 vs code在linux下开发.net core项目,由于处于内网,无法通过在线安装,所以在遇见离线安装Nuget包时,耗费了一番功夫,网上也没有相关的,最后还是多个思路结合才解决的,再次分享给大家,以便有需要的人,减少耗费时间。 …

    Linux 2023年4月11日
    00
  • Linux系统属性文件详解

    1)inode概述  中文意思就是索引节点(index node)第一部分是inode 第二部分是block  inode主要用来存放文件属性信息的(也就是ls – l 的结果)包含的属性信息包括文件的大小属性归属的用户组,读写权限,文件类型 修改时间,指向文件的指针但不包含文件名  block 是用来存放数据的(照片视频)有关block大小:磁盘读取数据是…

    Linux 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部