网络驱动器装置:iSCSI服务器

网络驱动器装置:iSCSI服务器
NAS(Network Attached Storage,网络附加储存服务器):提供可储存的网络文件系统给用户,只能立即使用,不可进行格式化
SAN(Storage Area Networks,储存局域网络):来自区网内的其他存储设备提供磁盘给用户

iSCSI target/initiator的设定:Centos使用的是tgt这个软件,下面以这个软件来接受iSCSI的设定
tgt软件名称:scsi-target-utils用来将Linux系统仿真成为iSCSI target的功能使用yum去安装
initiator软件名称:iscsi-initiator-utils 挂载来自target的磁盘到Linux本机上

scsi-target-utils 提供的档案:
/etc/tgt/targets.conf :主要配置文件,设定要分享的磁盘格式是哪几颗;
/usr/sbin/tgt-admin :在线查询、删除target等功能的设定工具;
/usr/sbin/tgt-setup-lun :建立target 以及设定分享的磁盘与可使用的客户端等工具软件
/usr/sbin/tgtadm :手动直接管理的管理员工具(可使用配置文件取代)
/usr/sbin/tgtd :主要提供iscsi target 服务的主程序;
/usr/sbin/tgtimg :建置预计分享的映像文件装置的工具(以映像文件仿真磁盘)

target的实际设定:可分享的磁盘类型
使用dd指令所建立的大型档案可供仿真为磁盘(无须预先格式化);
使用单一分隔槽(partition)分享为磁盘;
使用单一完整的磁盘(无须预先分隔);
使用磁盘阵列分享(其实与单一磁盘相同方式);
使用软件磁盘阵列(software raid)分享成单一磁盘;
使用LVM的LV装置分享为磁盘;
要分享出去的数据,最好不要被使用,也最好不要开机就被挂载

规划分享的iSCSI target 档名:
借由iSCSI分享出来的target都是以 iqn 为开头,意思是:
iSCSI Qualified Name(iSCSI 合格名称)
在iqn 后面接的档名,通常是:
iqn.yyyy-mm.<reversed domain name>:identifier
iqn.年年-月.单位网域名的反转写法 :这个分享的target名称
target能够拥有数个磁盘装置,每个在同一个target上头的磁盘可以定义为逻辑单位编号(Logical Unit Number)LUN
iSCSI initiator 就是跟target协调后才取得LUN的存取权

设定tgt的配置文件 /etc/tgt/tatgets.conf
该配置文件的语法如下:
<target iqn.相关装置的target 名称>
backing-store /你的/虚拟设备/完整档名-1
backing-store /你的/虚拟设备/完整档名-2
</target>
例如:
<target iqn.2011-08.vbird.centos:vbirddisk>
backing-store /srv/iscsi/disk1.img <== LUN 1
backing-store /dev/sda10 <== LUN 2
backing-store /dev/server/iscsi01 <== LUN 3 LUN的编号通常照顺序
<target>

配置文件中,除了参数backing-store之外,还有其他参数(man tgt-admin可查看):
backing-store(虚拟的装置),direct-store(实际的装置);建议使用backing-store即可
initiator-address(用户端地址):如果要限制使用这个target的客户端来源,才需要填写这个设定值;基本上,不用设定它(代表所有人都能使用的意思)
incominguser(用户账号密码设定):使用账号密码才能使用iSCSI target
write-cache [off|on] (是否使用快取):预设会使用快取来增加速度;数据比较重要时加建议不要使用快取

启动 iSCSI target : systemctl start tgtd
观察target相关信息:tgt-admin --show

iSCSI target是使用TCP/IP传输数据的,在防火墙设定可以联机的客户端:
iSCSI仅开启3260端口
iptables -A INPUT -p tcp -s 192.168.100.0/24 --dport 3260 -j ACCEPT

iSCSI initiator 的设定:
ISCSI initiator 的主要文件:
/etc/iscsi/iscsid.conf :主要的配置文件,用来连接到iSCSI target 的设定;
/sbin/iscsid :启动iSCSI initiator 的主要服务程序;
/sbin/iscsiadm :用来管理 iSCSI initiator 的主要设定程序;
/etc/init.d/iscsid :让本机模拟成为iSCSI initiator 的主要服务;
/etc/init.d/iscsi : 在本机成为 iSCSI initiator 之后,启动此脚本,让我们可以登入iSCSI target

target 搜寻、设定、取得的方法直接使用指令:iscsiadm
iscsiadm侦测到的结果会直接写入 /var/lib/iscsi/nodes 中

initiator 的实际设定:
1、修改/etc/iscsi/iscsid.conf内容,并启动iscsi
在discovery 侦测; node 联机 项下添加target里设置的账号和密码
2、使用iscsiadm侦测target与写入系统信息
iscsiadm -m discovery -t sendtargets -p IP:port
选项与参数:
-m discovery : 使用侦测的方式进行 iscsiadm 指令功能;
-t sendtargets : 透过iscsi 的协议,侦测后面的设备所拥有的target数据
-p IP:port :就是那部iscsi设备的IP与端口,不写端口预设是3260
-m node : 找出目前本机上面所有侦测到的target信息,有可能并未登入
-T target名称:仅使用后面接的那部target,target名称可用上个指令查到
--login : 就是登入

例如:iscsiadm -m discovery -t sendtargets -p 侦测192.168.100.254这部iscsi设备的相关数据
侦测到的信息会写入 /var/lib/iscsi/nodes/iqn.年-月.网域名反写:分享资源名/监测的IP,端口,targe端口号码 目录内的default档案中;若信息有修改过的话,可以到这个档案内修改,
也可以透过iscsiadm的update 功能处理相关参数

开始进行联机iscsi target :
systemctl restart iscsi
iSCSI target 每次都要比 iSCSI initiator 这部主机还要早开机,否则 initiator 就会出问题

更新/删除/新增 target 数据的方法:
取消不要的target的指令 :
iscsiadm -m node -T targetname --logout
iscsiadm -m node -o [delete|new|update] -T targetname
选项与参数:
--logout :就是注销target ,但是并没有删除 /var/lib/iscsi/nodes/内的数据
-o delete :删除后面接的那部target 链接信息(/var/lib/iscsi/nodes/*)
-o update :更新相关的信息
-o new : 增加一个新的target 信息
先登出,再删除,先使用 --logout 参数登出,再使用 -o delete 参数删除

/etc/fstab 开机启动配置文件里的 :defaults后的参数 _netdev 表示开机启动完成后才挂载
例如: /dev/iscsi/disk /data/iscsi ext4 defaults,_netdev 1 2

修改tat-admin --show 指令显示的连接上target的客户端的名字:
修改 /etc/iscsi/initiatorname.iscsi 文件
例如: initiatorName=iqn.2011-08.vbird.centos:initiator 加粗的字体就是修改后的名字
修改后需要重启 iscsi 服务

总结:iSCSi协议主要分为iSCSI target (提供磁盘装置者) 及 iSCSI initiator(存取target磁盘)
iscsi target 主要使用scsi-target-utils 软件达成主要利用tgt-admin及tgtadm指令完成;
一般定义target名称为:iqn.yyyy-mm.<reversed domain name>:identifier
一部target里面可分享多个磁盘,每个磁盘都是一个LUN;
iscsi initiator主要透过iscsi-initiator-utils 软件达成链接到target的任务;
iscsi-initiator-utils 主要提供 iscsiadm 指令来完成所有的动作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章