iSCSI远程块存储
简介
本博客涵盖的主题:
iSCSI概念
提供iSCSI目标
访问iSCSI存储
iSCSI概念
iSCSI(Internet
SCSI)支持从客户端(发起端)通过IP向远程服务器上的SCSI存储设备(目标)发送SCSI命令。iSCSI限定名称用于确定发起端和目标,并采用iqn.yyyy-mm.{reverse
domain}:label的格式。默认情况下,网络通信是至iSCSI目标上的端口3260/tcp的明文。
iSCSI发起端:需要访问原始SAN存储的客户端。
iSCSI目标:从iSCSI服务器提供的远程硬盘磁盘,或“目标门户”
iSCSI目标门户:通过网络向发起端提供目标的服务器。
IQN:“iSCSI限定名称”。每个发起端和目标需要唯一名称进行标识,最好的做法是使用一个在Internet上可能独一无二的名称。
2.iSCSI目标配置
安装iSCSI目标软件包:
# yum install -y targetcli
启动服务:
# systemctl enable target; systemctl start target
进入iSCSI目标交互式配置模式:
# targetcli
www.bkjia.com
8Demo
/> ls
o- /
……………………………………………………………
[…]
o- backstores ………………………………………………….
[…]
| o- block ………………………………………. [Storage
Objects: 0]
| o- fileio ……………………………………… [Storage
Objects: 0]
| o- pscsi ………………………………………. [Storage
Objects: 0]
| o- ramdisk …………………………………….. [Storage
Objects: 0]
o- iscsi ………………………………………………..
[Targets: 0]
o- loopback ……………………………………………..
[Targets: 0]
/> /backstores/block create server0.disk1 /dev/iSCSI_vg/disk1_lv
Created block storage object server0.disk1 using
/dev/iSCSI_vg/disk1_lv.
/> /iscsi create iqn.2016-09.com.example:server0
Created target iqn.2016-09com.example:server0.
Created TPG 1.
www.bkjia.com
9/> /iscsi/iqn.2016-09.com.example:server0/tpg1/acls create
iqn.2016-09.com.example:desktop0
Created Node ACL for iqn.2016-09.com.example:desktop0
/> /iscsi/iqn.2016-09.com.example:server0/tpg1/luns create
/backstores/block/server0.disk1
Created LUN 0.
Created LUN 0->0 mapping in node ACL
iqn.2016-09.com.example:desktop0
/> /iscsi/iqn.2016-09.com.example:server0/tpg1/portals create
172.25.0.11
Using default IP port 3260
Created network portal 172.25.0.11:3260.
/> exit
3.访问iSCSI存储
安装iSCSI发起端软件包:
# yum install -y iscsi-initiator-utils
在/etc/iscsi/initiatorname.iscsi中设置发起端的IQN:
InitiatorName=iqn.2016-09.com.example:desktop0
查找iSCSI服务器所提供的iSCSI目标(目标门户)
# iscsiadm -m discovery -t st -p 172.25.0.11
登录服务器上的一个或多个iscsi目标
# iscsiadm -m node -T iqn.2016-09.com.example:server0 -p
172.25.0.11 -l
www.bkjia.com
此时,可以使用iSCSI磁盘,就好像它是本地连接硬盘驱动器。
可以挂载现有文件系统。如果磁盘未格式化,可以通过fdisk进行分区,例如,通过
文件系统格式化分区或作为LVM物理卷。
在/etc/fstab中永久挂载文件系统
1.
使用blkid确定文件系统UUID并使用UUID挂载,而不是/dev/sd*设备名称。(每次
引导时显示的设备名称都不同,具体取决于iSCSI设备通过网络进行响应的顺序。
如果按设备名称挂载,这会导致使用错误的设备。)
2.
在/etc/fstab中使用_netdev作为挂载选项。(这将确保客户端不会尝试挂载文件系
统,直至启用联网。否则,在引导时系统将出错。)
中断使用iSCSI目标
确保没有使用目标所提供的任何设备。
确保从/etc/fstab等位置中删除使用目标的所有永久挂载。
登出iSCSI目标,以暂时断开连接。
# iscsiadm -m node -T iqn.2016-09.com.example:rdisks.demo -p
172.25.0.11 -u
删除iSCSI目标的本地记录,以永久断开连接。
# iscsiadm -m node -T iqn.2016-09.com.example:rdisks.demo -p
172.25.0.11 -o delete
本文永久更新链接地址:
配置 ISCSI 详解 iSCSI远程块存储 简介
本博客涵盖的主题: iSCSI概念 提供iSCSI目标 访问iSCSI存储 iSCSI概念
iSCSI(Internet SCSI)支持从客户端…
RHCE7认证学习笔记34——配置ISCSI
一、存储设备类型
二、配置iscsi服务器端
这里举例子说明,假如服务器有2个分区/dev/sdb7,/dev/sdb8要共享出去:
/dev/sdb7 1230848 1640447 200M Linux filesyste
/dev/sdb8 1640448 2459647 400M Linux filesyste
安装target包:
[root@linuxidc ~]# yum install target\* -y
启动target服务
[root@linuxidc ~]# systemctl start target
配置步骤:
1、准备要共享的块;
使用targetcli命令进入target配置界面:
[root@linuxidc ~]# targetcli
/> pwd
/
/> ls
o- /
………………………………………………………………………………………………………….
[…]
o- backstores
………………………………………………………………………………………………..
[…]
| o- block
……………………………………………………………………………………..
[Storage Objects: 0]
| o- fileio
…………………………………………………………………………………….
[Storage Objects: 0]
| o- pscsi
……………………………………………………………………………………..
[Storage Objects: 0]
| o- ramdisk
……………………………………………………………………………………
[Storage Objects: 0]
o- iscsi
………………………………………………………………………………………………
[Targets: 0]
o- loopback
……………………………………………………………………………………………
[Targets: 0]
进入backstores/block目录创建要共享的块,创建block1和block2:
/> cd backstores/
/backstores> ls
o- backstores
………………………………………………………………………………………………….
[…]
o- block
……………………………………………………………………………………….
[Storage Objects: 0]
o- fileio
………………………………………………………………………………………
[Storage Objects: 0]
o- pscsi
……………………………………………………………………………………….
[Storage Objects: 0]
o- ramdisk
……………………………………………………………………………………..
[Storage Objects: 0]
/backstores/block> create block1 dev=/dev/sdb7
Created block storage object block1 using /dev/sdb7.
/backstores/block> create block2 dev=/dev/sdb8
Created block storage object block2 using /dev/sdb8.
/backstores/block> ls
o- block
…………………………………………………………………………………………
[Storage Objects: 2]
o- block1
………………………………………………………………..
[/dev/sdb7 (200.0MiB) write-thru deactivated]
o- block2
………………………………………………………………..
[/dev/sdb8 (400.0MiB) write-thru deactivated]
exit退出保存targetcli,并重新进入:
/backstores/block> exit
Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json
[root@linuxidc ~]# targetcli
2、创建一个target;
target标准名字格式:
年 月 域名倒写 名字
iqn.2015-02.com.sg:disk1
进入iscsi目录,创建target:
/iscsi> create iqn.2015-02.com.sg:disk1
/iscsi> ls
o- iscsi
………………………………………………………………………………………………..
[Targets: 1]
o- iqn.2015-02.com.sg:disk1
………………………………………………………………………………..
[TPGs: 1]
3、在target上面创建一个lun;
进入/iscsi/iqn.2015-02.com.sg:disk1/tpg1目录:
/iscsi/iqn.20…sg:disk1/tpg1> ls
o- tpg1
………………………………………………………………………………………..
[no-gen-acls, no-auth]
o- acls
………………………………………………………………………………………………….
[ACLs: 0]
o- luns
………………………………………………………………………………………………….
[LUNs: 0]
o- portals
…………………………………………………………………………………………….
[Portals: 0]
acls目录创建共享密码:
/iscsi/iqn.20…sg:disk1/tpg1> acls/ create
iqn.2015-02.com.sg:diskpasswd
创建lun:
/iscsi/iqn.20…sg:disk1/tpg1> luns/ create
/backstores/block/block1
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.2015-02.com.sg:diskpasswd
金沙4066官网,/iscsi/iqn.20…sg:disk1/tpg1> luns/ create
/backstores/block/block2
Created LUN 1.
Created LUN 1->1 mapping in node ACL iqn.2015-02.com.sg:diskpasswd
o- luns
…………………………………………………………………………………………….
[LUNs: 2]
| | o- lun0
……………………………………………………………………………
[block/block1 (/dev/sdb7)]
| | o- lun1
……………………………………………………………………………
[block/block2 (/dev/sdb8)]
portal创建共享端口和地址:
/iscsi/iqn.20…sg:disk1/tpg1> portals/ create 10.35.89.32
Using default IP port 3260
Created network portal 10.35.89.32:3260.
exit退出并保存:
Configuration saved to /etc/target/saveconfig.json
配置文件保存在:/etc/target/saveconfig.json,可以直接修改配置文件
三、客户端配置iscsi连接
安装target包:
[root@client ~]# yum install target\* -y
查看fuw服务器端共享的内容:
[root@client ~]# iscsiadm -m discovery -t st -p 10.35.89.32
10.35.89.32:3260,1 iqn.2015-02.com.sg:disk1
编辑/etc/iscsi/initiatorname.iscsi文件,配置服务器端共享的名字和密码:
InitiatorName=iqn.2015-02.com.sg:diskpasswd
重启iscscid服务:
[root@client ~]# systemctl restart iscsid.service
挂载服务器端共享的内容:
[root@client ~]# iscsiadm -m node -T iqn.2015-02.com.sg:disk1 -p
10.35.89.32 -l
挂载成功后,使用fdisk命令即可查看到新增加的两块磁盘:
断开挂载的连接:
[root@client ~]# iscsiadm -m node -T iqn.2015-02.com.sg:disk1 -p
10.35.89.32 -u
使用fdisk命令划分共享的磁盘,格式化,并挂载文件夹,编辑fstab文件设置开机自动挂载:
[root@client ~]# fdisk /dev/sdb
Device Boot Start End Blocks Id System
/dev/sdb1 8192 114687 53248 83 Linux
[root@client ~]# mkfs.xfs /dev/sdb1
[root@client /]# mount /dev/sdb1 /aa
编辑fstab文件时候,将default换成_netdev参数:
/dev/sdb1 /aa xfs _netdev 0 0
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-04/116093.htm