转至:https://www.linuxidc.com/Linux/2016-09/135655.htm

Linux下搭建iSCSI共享存储

拓扑:

实验步骤:

--------------------------------------------------------------

配置iscsi server:

方案1:(命令行配置,立即有效,重启无效)

1、在target上添加两块磁盘设备,sdb,sdc

2、安装程序包、启动服务

# yum install -y scsi-target-utils

# service tgtd start

3、创建target

# tgtadm --lld /dev/sdb --mode target --op new --tid 1 --targetname iqn.2015-01.com.liaobin:i1.c2

4、创建lun

# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 --backing-store /dev/sdb

# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 2 --backing-store /dev/sdc

# tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 #删除lun的方法

5、授权

# tgtadm --lld iscsi --mode target --op bind --tid 1 --initiator-address 192.168.191.0/24 #限制只有192.168.191.0的网段可访问

6、查看已经定义的信息

# tgtadm --lld iscsi --mode target --op show

方案2:(配置文件中定义,重启有效)

1、编辑/etc/tgt/targets.conf

<target iqn.2015-01.com.liaobin:i1.c2>

backing-store /dev/sdb

backing-store /dev/sdc

initiator-address 192.168.191.0/24

</target>

2、重启tgtd服务;

# service tgtd restart

--------------------------------------------------------------

配置iscsi客户端initiator(节点1,2都需进行如下操作):

1、安装程序包

# yum install -y iscsi-initiator-utils

2、配置initiator的名字(配置文档:/etc/iscsi/initiatorname.iscsi)

# echo "InitiatorName=`iscsi-iname -p iqn.2015-01.com.liaobin`" > /etc/iscsi/initiatorname.iscsi  (使用iscsi-iname命令生成随机数)

3、启动服务

# service iscsi start

# service iscsid start

4、使用iscsiadm实现target的发现

基本格式:iscsiadm -m discovery -d # -t sendtargets -p IP[:PORT]

# iscsiadm -m discovery -d 3 -t sendtargets -p 192.168.191.113:3260

#发现target -m模式 -d调试级别 -t类型(sendtargets可简写为st)-p服务端IP

5、登入,登出

基本格式:iscsiadm -m node [ -d debug_level ]  [ [ -T targetname -p ip:port -I ifaceN ] [ -l | -u | -R | -s] ] [ [ -o  operation  ]

# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -l #登入

# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -u #登出

# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -o delete #删除指定条目

--------------------------------------------------------------

测试:

(节点上1操作)

1、查看有无磁盘设备

# fdisk -l #查看是否多出sdb,sdc,若有则说明登入成功,可分区并挂载使用

2、新建分区

# fdisk /dev/sdc  #创建一个新分区

3、格式化文件系统

# mke2fs -t ext4 /dev/sdc1

4、挂载

# mount /dev/sdc1 /mnt  #创建文件系统,并挂载到/mnt

5、创建一个测试文件,切换到另一个initiator节点挂载/dev/sdc1查看文件是否存在

# touch test.txt ; echo "this is test line"> test.txt

(节点2上操作)

1、查看有无磁盘设备,且挂载使用

# fdisk -l

2、直接挂载刚才节点1创建了文件系统的分区/dev/sdc1

# mount /dev/sdc1 /mnt

3、切换到/mnt目录下查看文件是否正常

# cd /mnt;ls

# cat test.txt

显示正常,说明创建iscsi共享存储成功,测试完成。

Linux下搭建iSCSI共享存储的更多相关文章

  1. Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式CentOS7-1810下实现

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  2. Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式 Debian9.5下实现

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  3. Linux下搭建iSCSI共享存储的方法 TGT 方式 CentOS6.9系统下

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  4. Linux下搭建iSCSI共享存储的方法 TGT 方式 Debian9.5系统下

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  5. Linux下搭建iSCSI共享存储详细步骤(服务器模拟IPSAN存储)

    一.简介 iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够 ...

  6. Linux下IP SAN共享存储操作记录

    一.简单介绍SAN,即存储区域网络(storage area network and SAN protocols),它是一种高速网络实现计算机与存储系统之间的数据传输.常见的分类是FC-SAN和IP- ...

  7. Linux下搭建企业共享目录方案之------samba

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通 ...

  8. 实验:iscsi共享存储

    实验名称: iscsi共享存储 实验环境: 我们需要准备一个磁盘,对于这个磁盘我们需要使用,将这个磁盘空间共享给iscsi客户端: 实验需求: 我们这里使用两台服务器来实现iscsi共享存储: 1.指 ...

  9. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

随机推荐

  1. 淘系工程师讲解的使用Spring特性优雅书写业务代码

    使用Spring特性优雅书写业务代码   大家在日常业务开发工作中相信多多少少遇到过下面这样的几个场景: 当某一个特定事件或动作发生以后,需要执行很多联动动作,如果串行去执行的话太耗时,如果引入消息中 ...

  2. gin中在中间件或handler中使用goroutine

    package main import ( "fmt" "github.com/gin-gonic/gin" "log" "tim ...

  3. IDEA2020.1破解

    IDEA2020.1破解 安装 下载idea idea官方下载地址:https://www.jetbrains.com/webstorm/download/other.html 下载破解插件 链接:h ...

  4. 『无为则无心』Python函数 — 39、Python中异常的传播

    目录 1.异常的传播 2.如何处理异常 1.异常的传播 当在函数中出现异常时,如果在函数中对异常进行了处理,则异常不会再继续传播.如果函数中没有对异常进行处理,则异常会继续向函数调用者传播.如果函数调 ...

  5. python删除列表重复元素

    用list类的sort方法 l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) l2.sort(key=l1.index) print l2

  6. 资本主义反抗指南精要(v0.1)

    (1)充分预估工作时间,比如一小时的开发任务,你可以加上技术调研,API/数据库设计,单元测试,联调,集成测试等等,拖到一天,同理一天的任务可以拖到一星期. (2)简历上尽一切手段来美化,最好能包装成 ...

  7. shiro-springboot整合,平行依赖

    最近在弄shiro,把shiro单独提出来,弄成一个子项目,这样可以降低项目的冗余,但是把shiro打成jar包后,另一个项目添加其依赖后,在IDE项目中正常的运行,打成jar包后运行,则不断的报错 ...

  8. vue3 最长递增子序列 diff优化

    //vue3优化版(回头我会完善下算法思路) function getSequence(arr) { const p = arr.slice() const result = [0] let i, j ...

  9. js中全局和局部变量的区别

    2 3 4 5 6 7 8 9 10 <script type="text/javascript"> var a = 1; function hehe() {      ...

  10. lua语言:时间

    转载请注明来源:https://www.cnblogs.com/hookjc/ 时间库函数 1.用数值表示时间值 用数字值来表示时间值,实际上时间值的本质就是一个数字值.例如:d = 11312864 ...