iSCSI简介(Internet SCSI):

iSCSI 小型计算机系统接口,IBM公司研发,用于在IP网络上运行SCSI协议;解决了 SCSI需要直连存储设备的局限性;可以不停机扩展存储容量,iSCSI 将 SCSI 接口与 Ethernet 技术结合,使服务器可与使用 IP 网络的存储装置互相交换数据;基于 TCP/IP 协议,创建 SAN,以数据块级别在多个数据存储网络间进行传输

iSCSI 主要功能:
在 TCP/IP 网络上的主机系统(initiator 启动器)和存储设备(target 目标器)之间进行数据的封装和可靠传输。
iSCSI 启动器是客户端设备,启动器可以由软件或硬件实现;
·软件:iscsi-initiator-utils(RPM 免费提供的 Linux-Open-iSCSI 驱动)
·硬件:iSCSI HBA(或 TCP 卸载引擎[TOE] 卡) -> 本质使一个专用以太网卡,
其上的 SCSI ASIC 可以从系统CPU内卸载所有工作(TCP 和 SCSI 命令)
iSCSI 目标是 iSCSI 网络的“服务器”组件。通常为一个存储设备

环境准备

两台RHEL虚拟机(拍初始化快照):

  • node1(192.168.22.77)target端( iSCSI服务端)

  • client1(192.168.22.107)initiator端( iSCSI客户端)

一、iSCSI配置

target端分区

[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda : 40G disk
├─sda1 : 512M part /boot
└─sda2 : .5G part
├─rhel-swap : 512M lvm [SWAP]
└─rhel-root : 25G lvm /
sr0 : .6G rom /mnt/cdrom
[root@localhost ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.). Changes will remain in memory only, until you decide to write them.
Be careful before using the write command. Command (m for help): p Disk /dev/sda: 42.9 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk label type: dos
Disk identifier: 0x0009ed86 Device Boot Start End Blocks Id System
/dev/sda1 * Linux
/dev/sda2 8e Linux LVM Command (m for help): n
Partition type:
p primary ( primary, extended, free)
e extended
Select (default p):
Using default response p
Partition number (,, default ):
First sector (-, default ):
Using default value
Last sector, +sectors or +size{K,M,G} (-, default ): +5G
Partition of type Linux and of size GiB is set Command (m for help): p Disk /dev/sda: 42.9 GB, bytes, sectors
Units = sectors of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk label type: dos
Disk identifier: 0x0009ed86 Device Boot Start End Blocks Id System
/dev/sda1 * Linux
/dev/sda2 8e Linux LVM
/dev/sda3 54544384 65030143 5242880 83 Linux Command (m for help): w
The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error : Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe() or kpartx()
Syncing disks.
[root@localhost ~]# partprobe /dev/sda

 [root@localhost ~]# lsblk
 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
 sda 8:0 0 40G 0 disk
 ├─sda1 8:1 0 512M 0 part /boot
 ├─sda2 8:2 0 25.5G 0 part
 │ ├─rhel-swap 253:0 0 512M 0 lvm [SWAP]
 │ └─rhel-root 253:1 0 25G 0 lvm /
 └─sda3 8:3 0 5G 0 part
 sr0 11:0 1 3.6G 0 rom /mnt/cdrom

配置yum仓库(all)

vim /etc/yum.repos.d/a.repo
[a]
name=a
baseurl=file:///mnt/cdrom
enabled=
gpgcheck=
[root@localhost ~]# mkdir /mnt/cdrom
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# yum repolist
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
a | 4.1 kB ::
(/): a/group_gz | kB ::
(/): a/primary_db | 3.4 MB ::
repo id repo name status
a a ,
repolist: ,

关闭防火墙及selinux(all)

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
[root@localhost ~]# setenforce

target端配置:

1.安装targetcli

[root@node1 ~]# yum -y install targetcli

2. 运行targetcli

[root@localhost ~]# targetcli

2.1 创建后端存储

/> backstores/block create  name=nsd    dev=/dev/sda3

2.2 创建target

/> iscsi/  create   iqn.-.vip.kklinux:node1

注意:IQN 的格式为:iqn.年份-月份.反向域名:自定义标识

如:iqn.2019-06.vip.kklinux:node1;其中的字母均应为小写,即使输入时包含大写,命令执行后,系统会自动转换成小写。

2.3 创建lun逻辑单元

/iscsi> cd /iscsi/iqn.-.vip.kklinux:node1/tpg1/luns 
/iscsi/iqn.20...de1/tpg1/luns> create /backstores/block/nsd 

2.4 配置acl访问控制(设置访问服务时客户端声称的名字)

/iscsi> cd /iscsi/iqn.-.vip.kklinux:node1/tpg1/acls
/iscsi/iqn.20...de1/tpg1/acls>create iqn.2019-06.vip.kklinux:client1

//客户端配置的名称应与上面一致

如果需要配置用户和密码

cd /iscsi/iqn.-.vip.kklinux:node1/tpg1/acls/iqn.-.vip.kklinux:client1
/iscsi/iqn....kklinux:client1> set auth userid=username
/iscsi/iqn....kklinux:client1> set auth password=password

2.5 退出

/iscsi/iqn.20...de1/tpg1/acls> exit

3. 重启target服务,并设置开机自启

systemctl restart target
systemctl enable target

initiator端配置:

1. 装包iscsi-initiator-utils

[root@client1 ~]# yum install -y iscsi-initiator-utils

2. 修改配置文件

[root@client1 ~]# vi /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.-.vip.kklinux:client1 //名称应与服务端acl配置的名称一致

如果target端配置了用户和密码还需添加

node.session.auth.authmethod = CHAP
node.session.auth.username = username
node.session.auth.password = password

3. 重启服务 iscsid

[root@client1 ~]# systemctl restart iscsid             //更新IQN标识。注意是:iscsid

4. 发现服务端IQN

[root@client1~]# iscsiadm -m discovery -t st -p 192.168.22.77 
192.168.22.77:, iqn.-.vip.kklinux:node1

5. 识别服务端共享

[root@client1 ~]# systemctl restart iscsi
[root@client1 ~]# systemctl enable iscsi
[root@client1 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda : 60G disk
├─sda1 : 2M part
├─sda2 : 1G part /boot
└─sda3 : 34G part
├─rhel-root : 30G lvm /
└─rhel-swap : 4G lvm [SWAP]
sdb 8:16 0 5G 0 disk
sr0 : .5G rom /mnt/cdrom

iscsi-分区类型的更多相关文章

  1. MySQL表的四种分区类型

    MySQL表的四种分区类型 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表 ...

  2. mysql表分区(摘自 MySQL表的四种分区类型)

    一.什么是表分区通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区 ...

  3. (1.5)MySQL表的5种分区类型

    (1.5)MySQL表的5种分区类型 关键词:mysql表分区    小细节: (1)Null 将会放入最小范围区间 (2)无论哪种类型的分区,要么没有主键.唯一键,要么分区表的主键/唯一键都必须包含 ...

  4. mysql分区表之二:MySQL的表的四种分区类型介绍

    一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了.如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区 ...

  5. 编写SQL查询范围分区类型,MAX分区范围

    需求 对于分区表,对于范围分区类型来说,查询MAX分区及对应的分区范围. ==查询分区表对应的最大分区信息 ==排除了自扩展分区(如果是自扩展分区,但是最大的分区不是自扩展的并未排除在外) ==排除了 ...

  6. linux磁盘之分区类型id

    我们通过命令来查看一下linux系统定义的分区类型id及其意义(更改磁盘分区类型必须掌握)系统采样: [root@fp-web-130 ~]# cat /etc/redhat-release Cent ...

  7. linux 下查看硬盘分区类型

    可以用  df 这个命令 具体 要 man df  仔细看看 实例 [root@localhost mnt]# df -Th文件系统    类型      容量  已用  可用 已用% 挂载点/dev ...

  8. Linux分区类型EXT2、EXT3、EXT4详解

    一.EXT2与EXT3 Linux之前缺省情况下使用的文件系统为Ext2,ext2文件系统的确高效稳定.但是,随着Linux系统在关键业务中的应用,Linux文件系统的弱点也渐渐显露出来了:其中系统缺 ...

  9. 各种分区类型对应的partition_Id

    ID Name Note == ==== ==== 00h empty [空] 01h DOS 12-bit FAT [MS DOS FAT12] 02h XENIX root file system ...

  10. Linux安装Gitlab,附iSCSI分区挂载说明

    因为Gitlab数据要存放在共享存储,所以本次配置的重头戏倒变成了挂载ISCSI了. OS:CentOS 7.2IP:172.16.1.191/192.168.2.191 iSCSI分Target(服 ...

随机推荐

  1. 判断是否是IE浏览器

    设置IE版本的页面渲染<meta http-equiv="x-ua-compatible"  content="ie=EmulateIE8">con ...

  2. SpringBoot 测试类 @RunWith & @SpringBootTest

    @RunWith(SpringRunner.class) @SpringBootTest public class RabbitMqTest { @Autowired RabbitMqSender r ...

  3. vundle

    vundle插件的使用方法: http://adam8157.info/blog/2011/12/use-vundle-to-manage-vim-plugins http://adam8157.in ...

  4. import torch错误解决

    import torch出现 ”from torch._C import * ImportError: DLL load failed: 找不到指定的模块“错误这里torch=1.0.1,torchv ...

  5. javaScript基础用Number()把其它类型转换为Number类型

    一:基本类型 字符串 把字符串转换为数字,只要字符串中包含任意一个非有效数字字符(第一个点除外)结果都是NaN,空字符串会变为数字零 console.log(Number("12.5&quo ...

  6. nginx的ngx_str_t

    在nginx里的ngx_tr_t结构是字符串定义如下 typedef struct { size_t len; u_char *data; }ngx_str_t; 在给这样的结构体赋值的时候,ngin ...

  7. 焦虑的 BAT、不安的编程语言,揭秘程序员技术圈生存现状!

    [程序人生编者按]在迭代不休的技术圈中,仅在过去的一个月期间,我们见证了有史以来第一张黑洞照片的诞生:经历了为让人义愤填膺的 996:思考了作为程序员的年龄之槛:膜拜了技术大神的成长历程:追逐了如编程 ...

  8. springMVC配置拦截器、过滤器、前端控制器时遇到的问题总结

    1.业务场景:使用vuejs+springMVC+spring框架搭建一个mis系统,集成SSO单点登录: 2.遇到问题:使用interceptor拦截器配置SSO单点登录,直接敲域名,或者ip+端口 ...

  9. 【零基础】入门51单片机图文教程(Proteus+Keil)

    参考资料: https://www.jianshu.com/p/88dfc09e7403 https://blog.csdn.net/feit2417/article/details/80890218 ...

  10. P1080 国王游戏 (等待高精度AC)

    P1080 国王游戏 题解 贪心策略:按照大臣左右手数字乘积从小到大排序 假设我们已经把大臣排了一个顺序 假定在这个顺序下我们可以保证  得到奖赏最多的大臣所得奖赏最少 那么我们一旦交换任意两个大臣, ...