搭建iscsi存储系统(一)
(1).DAS、SAN、NAS三种存储方式
参考:https://blog.csdn.net/qq_23348071/article/details/73963407
DAS全称Direct-Attached Storage,中文名直连式存储,是一种计算机存储,它直接连接到某台计算机且其他计算机无法获取。对于个人计算机用户来说,硬盘驱动器就是直连式存储的常见形式。在企业中,服务器里的个体磁盘被称为直连式存储,作为服务器外(但可通过SCSI、SATA及SAS接口直接连在一起)的驱动组。因为服务器无需通过网络来读写数据,所以DAS能为终端用户提供比网络存储更高的性能。这也就是企业常为其有高性能需求的特定类型的应用采用DAS的原因。直连式存储的主要替代选择是网络附属存储(NAS)以及存储区域网络(SAN)。
DAS优点:使用方便,直接识别为一个块设备。
DAS缺点:消耗I/O和CPU。
NAS全称Network Attached Storage,中文名网络附属存储。NAS服务器是连接在网络上,具备资料存储功能的服务器,一种专用数据存储服务器。网络附属存储基于标准网络协议(TCP/IP)实现数据传输,为网络中的Windows/Linux/Mac OS等各种不同操作系统的计算机提供文件共享和数据备份。部分NAS系统还可以支持FTP、HTTP、SQL、SQLSERVER等等功能,例如群晖。NAS采用NFS技术实现类Unix系统之间存储共享,采用CIFS技术实现Windows与类Unix系统之间数据共享。Samba软件就是使用的CIFS技术。
国内做NAS的有群晖、希捷、西部数码、威联通;国际上做NAS的有Netapp、OUO、Dell、EMC。专业开源NAS系统:freeNAS、nas4free、OpenMediaValut、群晖。
NAS优点:I/O消耗由前端服务器转移到后端存储设备上,并且扩展方便。
NAS缺点:以前网络会成为瓶颈, 但是现在使用10G光纤卡,就可以解决这个问题。
SAN全称Storage Area Network and SAN Protocols,中文名存储区域网络。SAN是一种高速网络,提供在计算机与存储系统之间的数据传输。存储设备是指一台或多台用以存储计算机数据的磁盘设备,通常指磁盘阵列。其采用网状通道(Fibre Channel,简称FC)技术,通过FC交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。SAN存储由于其基础是一个专用网络,因此扩展性很强,不管是在一个SAN系统中增加一定的存储空间还是增加几台使用存储空间的服务器都非常方便。
目前常见的SAN有FC-SAN和IP-SAN(又称之为ISCSI,Internet小型计算机系统接口),其中FC-SAN通过光纤通道协议转发SCSI协议,IP-SAN通过TCP协议转发SCSI协议。
NAS和SAN的区别:第一,网络架构。NAS直接使用TCP/IP传输数据,而SAN使用SCSI或ISCSI协议传输数据。第二,文件读写的实现方式。NAS采用了NFS和CIFS技术实现文件共享,说明NAS是基于操作系统的“文件级”读写操作。而SAN中计算机和存储间的接口是底层的块协议,按照协议头的“块地址+偏移地址”来定位,共享的存储和前段的操作系统类型没有关系,任何操作系统都可以正常识别。
(2).配置IP-SAN服务器
1)实验环境
youxi1 192.168.5.101 服务端,添加一块盘sdb作为共享盘
youxi2 192.168.5.102 客户端
youxi3 192.168.5.103 客户端
IP-SAN以C/S模式运行,默认端口3260。
2)配置youxi1为IP-SAN存储服务器
[root@youxi1 ~]# yum -y install targetcli //安装target
[root@youxi1 ~]# targetcli //进入交互界面进行配置
Warning: Could not load preferences file /root/.targetcli/prefs.bin.
targetcli shell version 2.1.fb46
Copyright 2011-2013 by Datera, Inc and others.
For help on commands, type 'help'. //可以使用help查看帮助文档 /> /backstores/block create test1 /dev/sdb //使用/dev/sdb创建块存储对象test1,其中test1是自定义名称
Created block storage object test1 using /dev/sdb.
/> /iscsi create iqn.2019-08.youxi1:server //创建ISCSI target,target命名在同一子网内确保唯一。
WWN not valid as: iqn, naa, eui //报错了
/> /iscsi create iqn.2019-08.com.youxi1:server //命名格式:iqn.yyyy.mm.<主机名(域名)反写>:自定义名称。自定义名称内不能有下划线
Created target iqn.2019-08.com.youxi1:server.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260. //可以看到监听的IP地址和端口号
/> /iscsi/iqn.2019-08.com.youxi1:server/tpg1/acls create iqn.2019-08.com.youxi1:username
Created Node ACL for iqn.2019-08.com.youxi1:username //创建ACL规则列表,也就是客户端只能使用规则列表内的用户才可以连接target存储
/> /iscsi/iqn.2019-08.com.youxi1:server/tpg1/luns create /backstores/block/test1 指定块存储对象test1为target的逻辑单元,逻辑单元号LUN0
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.2019-08.com.youxi1:username
/> /iscsi/iqn.2019-08.com.youxi1:server/tpg1/portals/ delete 0.0.0.0 3260 //删除原本监听的IP地址和端口号
Deleted network portal 0.0.0.0:3260
/> /iscsi/iqn.2019-08.com.youxi1:server/tpg1/portals create 192.168.5.101 3260 //添加一个新的监听IP地址和端口号
Using default IP port 3260
Created network portal 192.168.5.101:3260. //注意:监控服务器端的本地IP地址和端口
LUN全称Logical Unit Number,中文名逻辑单元号,是SCSI中的概念。块存储对象只要一加入target存储系统,就分有一个代号,后期在区别块设备的时候,只要说target 中LUN几号就可以了。 块存储对象被指定了一个LUN后,成为了一个“逻辑”磁盘,供存储客户端使用。
3)配置ACL规则列表的用户名和密码
/> cd /iscsi/iqn.2019-08.com.youxi1:server/tpg1/acls/iqn.2019-08.com.youxi1:username/
/iscsi/iqn.20...uxi1:username> set auth userid=admin //创建用户
Parameter userid is now 'admin'.
/iscsi/iqn.20...uxi1:username> set auth password=123456 //设置密码
Parameter password is now '123456'.
/iscsi/iqn.20...uxi1:username> saveconfig //保存必须在根目录下执行,否则报错
Command not found saveconfig
/iscsi/iqn.20...uxi1:username> cd / //回到根目录
/> saveconfig //保存
Configuration saved to /etc/target/saveconfig.json
/> exit //退出
Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup/.
Configuration saved to /etc/target/saveconfig.json
4)启动target服务
[root@youxi1 ~]# systemctl start target && systemctl enable target //启动并设置开机自启
Created symlink from /etc/systemd/system/multi-user.target.wants/target.service to /usr/lib/systemd/system/target.service.
[root@youxi1 ~]# firewall-cmd --permanent --zone=public --add-port=3260/tcp //添加端口号
success
[root@youxi1 ~]# firewall-cmd --reload
success
(3).客户端配置
1)配置客户端youxi2
安装客户端并进行配置
[root@youxi2 ~]# yum -y install iscsi-initiator-utils
[root@youxi2 ~]# vim /etc/iscsi/initiatorname.iscsi //修改发起者配置,也就是服务端的ACL规则名称
InitiatorName=iqn.2019-08.com.youxi1:username //修改为服务端的ACL规则列表名称
[root@youxi2 ~]# vim /etc/iscsi/iscsid.conf
node.session.auth.authmethod = CHAP //第57行,取消注释
node.session.auth.username = admin //第61行,取消注释,并修改为ACL规则列表内的用户名
node.session.auth.password = 123456 //第62行,取消注释,并修改为对应用户名的密码
[root@youxi2 ~]# systemctl start iscsid
发现ISCSI设备并登录
[root@youxi2 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.5.101 //查找设备
192.168.5.101:3260,1 iqn.2019-08.com.youxi1:server
//登录方法一
[root@youxi2 ~]# iscsiadm -m node -l //登录设备
Logging in to [iface: default, target: iqn.2019-08.com.youxi1:server, portal: 192.168.5.101,3260] (multiple)
Login to [iface: default, target: iqn.2019-08.com.youxi1:server, portal: 192.168.5.101,3260] successful.
[root@youxi2 ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb //登录方法二
[root@youxi2 ~]# systemctl restart iscsid //在查找到设备后直接重启也可以
[root@youxi2 ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb
查看target存储服务器信息在客户端存储的位置
[root@youxi2 ~]# yum -y install tree
[root@youxi2 ~]# tree /var/lib/iscsi/
/var/lib/iscsi/
├── ifaces
├── isns
├── nodes
│ └── iqn.2019-08.com.youxi1:server
│ └── 192.168.5.101,3260,1
│ └── default
├── send_targets
│ └── 192.168.5.101,3260
│ ├── iqn.2019-08.com.youxi1:server,192.168.5.101,3260,1,default -> /var/lib/iscsi/nodes/iqn.2019-08.com.youxi1:server/192.168.5.101,3260,1
│ └── st_config
├── slp
└── static 10 directories, 2 file
格式化硬盘(只有第一个需要格式化),挂载使用
[root@youxi2 ~]# mkfs.xfs /dev/sdb
meta-data=/dev/sdb isize=512 agcount=4, agsize=1310720 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=5242880, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none
[root@youxi2 ~]# mkdir /share
[root@youxi2 ~]# mount /dev/sdb /share
[root@youxi2 ~]# echo youxi2 > /share/a.txt
2)配置客户端youxi3
[root@youxi3 ~]# yum -y install iscsi-initiator-utils
[root@youxi3 ~]# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2019-08.com.youxi1:username
[root@youxi3 ~]# vim /etc/iscsi/iscsid.conf
node.session.auth.authmethod = CHAP //第57行,取消注释
node.session.auth.username = admin //第61行,取消注释,并修改为ACL规则列表内的用户名
node.session.auth.password = 123456 //第62行,取消注释,并修改为对应用户名的密码
[root@youxi3 ~]# systemctl restart iscsid
[root@youxi3 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.5.101 //查找设备
192.168.5.101:3260,1 iqn.2019-08.com.youxi1:server
[root@youxi3 ~]# iscsiadm -m node -l //登录设备
Logging in to [iface: default, target: iqn.2019-08.com.youxi1:server, portal: 192.168.5.101,3260] (multiple)
Login to [iface: default, target: iqn.2019-08.com.youxi1:server, portal: 192.168.5.101,3260] successful.
[root@youxi3 ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb
[root@youxi3 ~]# mkdir /share
[root@youxi3 ~]# mount /dev/sdb /share/ //挂载
[root@youxi3 ~]# ls /share/
a.txt
注意:此时不会同步,是因为我们使用的XFS文件系统,XFS文件系统不支持多个客户端同时使用。 后期使用时,可以把sdb在youxi2上识别出来后,挂载到/share目录下,然后在youxi2安装一个nfs服务器,把/share目录共享给youxi3使用,这样就可以保障数据同步了。
搭建iscsi存储系统(一)的更多相关文章
- iscsi序列一、搭建iscsi存储系统
一.NAS和SAN服务器概述 SAS: 容量小, 300G, 600G, 900G, 价格贵. SATA:容量大,500G, 750G, 1T, 2T, 3T, 4T 不支持热插拔,价格低. 假S ...
- iSCSI存储系统知识
一.概述 SCSI 即小型计算机系统接口(Small Computer System Interface:简写:SCSI),一种用于计算机和外部设备之间(硬盘.光驱.软驱.打印机等)系统级接口的独立处 ...
- 搭建iSCSI文件服务器故障转移群集
故障转移群集(Failover Cluster)可以提供一个高可用性应用程序或服务的网络环境,本章将接受如何搭建iSCSI SAN文件服务器故障转移群集. 故障转移群集概述 我们可以将多台服务器组成一 ...
- Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式CentOS7-1810下实现
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建iSCSI共享存储的方法 TGT 方式 CentOS6.9系统下
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式 Debian9.5下实现
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建iSCSI共享存储的方法 TGT 方式 Debian9.5系统下
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建iSCSI共享存储
转至:https://www.linuxidc.com/Linux/2016-09/135655.htm Linux下搭建iSCSI共享存储 拓扑: 实验步骤: ------------------- ...
- 【原创】Centos 7利用软件Raid搭建ISCSI过程
测试机器安装了4块2T硬盘,一块320G硬盘,利用320G硬盘安装CentOS 7系统,在CentOS 7系统上利用4块2T硬盘组建Raid 0,再配置iSCSI存储.注意,本文中的RAID指的是软R ...
随机推荐
- machine learning (2)-linear regression with one variable
machine learning- linear regression with one variable(2) Linear regression with one variable = univa ...
- (java)Jsoup爬虫学习--获取网页所有的图片,链接和其他信息,并检查url和文本信息
Jsoup爬虫学习--获取网页所有的图片,链接和其他信息,并检查url和文本信息 此例将页面图片和url全部输出,重点不太明确,可根据自己的需要输出和截取: import org.jsoup.Jsou ...
- Eclipse中安装Spring IDE
====>在线安装 1.寻找Spring IDE插件更新地址:http://marketplace.eclipse.org/content/spring-ide 2.复制对应Eclipse版本的 ...
- 最小费用流模板(zkw与spfa)
"zkw" 费用流算法在哪些图上慢(摘自https://www.cnblogs.com/ECJTUACM-873284962/p/7744943.html) 实践中, 上面的这个算 ...
- 学习Spring-Data-Jpa(六)---spring-data-commons中的repository
1.spring-data-commons项目 spring-data-commons项目是所有spring-data项目的核心,我们来看一下该项目下的repository包中的接口和注解. 2.Re ...
- mysql模糊查询多个字段
SELECT * FROM nst_t_conferencehis WHERE ConferName REGEXP '军工|军资';
- 洛谷 P1199 三国游戏 题解
每日一题 day18 打卡 Analysis 贪心 假如小A先选最大的[5,4],虽然电脑必须选一个破坏, 我们可以理解为5和4都属于小A的,假如后面未被破坏的最大值无论是和5相关还是和4相关,必然还 ...
- Kubernetes 学习24 helm入门
一.概述 1.我们此前在使用kubernetes中,无论我们使用无状态的应用程序,比如myapp,nginx.以及有状态的tomcat,redis,etcd,...等等,他们部署在k8s之上会有这样的 ...
- 数组splay ------ luogu P3369 【模板】普通平衡树(Treap/SBT)
二次联通门 : luogu P3369 [模板]普通平衡树(Treap/SBT) #include <cstdio> #define Max 100005 #define Inline _ ...
- 部署K8S集群
1.Kubernetes 1.1.概念 kubernetes(通常称为k8s)用于自动部署.扩展和管理容器化应用程序的开源系统.它旨在提供“跨主机集群的自动部署.扩展以及运行应用程序容器的平台”.支持 ...