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配置

配置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/fileio create disk01 /iscsi_disks/disk01.img 2G

2.2 创建target

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

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

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

2.3 创建lun逻辑单元

/> cd /iscsi/iqn.-.vip.kklinux:node1/tpg1/luns
/iscsi/iqn....de1/tpg1/luns> create /backstores/fileio/disk01

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 2G 0 disk
sr0 : .5G rom /mnt/cdrom

iscsi-文件类型的更多相关文章

  1. Linux文件类型

    1.windows系统和Linux系统的区别 windows通过问价扩展名来区分文件类型,例如*.txt是一个文本文件, linux系统文件的扩展名和文件类型没有关系 为了容易区分文件类型,linux ...

  2. 获取pe文件的文件类型

    工程文件petype.cpp通过调用pefile类中的函数获取文件类型. 文件类型的判断通过5个监测点完成. 监测点1:dos头的e_magic 监测点2:nt头的Signature 监测点3:文件头 ...

  3. WebStorm文件类型关联设置

    无意中创造了一个没有扩展名的文件,我选择了错误的文件类型关联.是js类型的,我却选成了文本,Ws每次编辑类型就成了txt文本,这个问题让我很苦恼,以下是我的解决方案. 错选的弹出框如下: 解决方案如下 ...

  4. JavaScript根据文件名判断文件类型

    //JavaScript根据文件名判断文件类型 var imgExt = new Array(".png",".jpg",".jpeg",& ...

  5. input file控件限制上传文件类型

    网页上添加一个input file HTML控件: <input id="File1" type="file" /> 默认是这样的,所有文件类型都会 ...

  6. struts文件上传,获取文件名和文件类型

    struts文件上传,获取文件名和文件类型   Action中还有两个属 性:uploadFileName和uploadContentType,这两个属性分别用于封装上传文件的文件名.文件类型.这是S ...

  7. UNIX中的文件类型

    Unix的文件类型信息包含在stat结构的st_mode成员中可以用宏确定文件类型: 普通文件(S_ISREG()):包含某种形式数据的常用文件类型 目录文件(S_ISDIR()):这种文件包含其他文 ...

  8. C# 文件类型

    C# 中一些常用文件类型: designer.cs 是窗体设计器生成的代码文件,作用是对窗体上的控件做初始化工作(在函数InitializeComponent()中).VS2003以前都把这部分代码放 ...

  9. php上传文件类型

    下面提供一张IE和火狐浏览器的文件类型对照表: ie 火狐 id 后缀名 php识别出的文件类型 0 gif image/gif 1 jpg image/jpeg 2 png image/png 3 ...

  10. linux命令:文件类型和扩展名

    在linux系统中,一切皆是文件.Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.数据接口文件,符号链接文件,数据传送文件等. 1. 普通文件 用 ls -lh 来查看某个文 ...

随机推荐

  1. 进程通过内核缓存区请求设备I/O的一些事情

    请求进程,内核缓存区,设备I/O 请求进程无法直接访问设备I/O,而是通过内核缓冲区提交请求数据,等数据就绪后,数据从设备缓冲区提交至进程空间 请求进程把数据提交给内核缓存空间需要等待,内核把数据复制 ...

  2. Codeforces Round #588 (Div. 2) A. Dawid and Bags of Candies

    链接: https://codeforces.com/contest/1230/problem/A 题意: Dawid has four bags of candies. The i-th of th ...

  3. DataGrip 配置连接mysql8.0的注意事项

    在mysql8.0版本之后,依赖驱动文件不同,使用之前的连接配置,会无法正常的连接数据库. 已连接本地Mysql数据库为例,需在 URL配置项 jdbc:mysql://localhost:3306? ...

  4. py操作mongodb总结

    python使用的版本 python3. python操作mongodb使用的是pymongo,安装方法: pip install pymongo 测试 PyMongo 接下来我们可以创建一个测试文件 ...

  5. [Docker] Run a command inside Docker container

    For example you are working in a backend project, you have setup Dockerfile: FROM node:10.16.0-stret ...

  6. 015_linuxC++之_覆写

    34.类成员函数的重载.覆盖和隐藏区别?答案:a.成员函数被重载的特征:(1)相同的范围(在同一个类中):(2)函数名字相同:(3)参数不同:(4)virtual 关键字可有可无.b.覆盖是指派生类函 ...

  7. TTTTTTTTTTTTTTTT hdu 5727 Necklace 阴阳珠 二分图匹配+暴力全排列

    Necklace Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...

  8. 第四届西安邮电大学acm-icpc校赛 流浪西邮之寻找火石碎片 多体积条件背包

    题目描述 众所周知,由于木星引力的影响,世界各地的推进发动机都需要进行重启.现在你接到紧急任务,要去收集火石碎片,重启西邮发动机.现在火石碎片已成为了稀缺资源,获得火石碎片需要钱或者需要一定的积分.火 ...

  9. 北京清北 综合强化班 Day2

    a [问题描述] 你是能看到第一题的 friends呢.                                                —— hja世界上没有什么比卖的这 贵弹丸三还令 ...

  10. Go中&和*的区别

    & 返回变量的内存地址 * 返回变量的值, * 只能作用在指针上 package main import "fmt" func main() { var a = 5 var ...