iSCSI服务器

iSCSI磁盘阵列
服务端
yum install targetcli.noarch
systemctl start target
fdisk /dev/vdb

targetcli


/> /backstores/block create westos:storage1 /dev/vdb1  #给设备命名
Created block storage object westos:storage1 using /dev/vdb1.
/> iscsi/ create iqn.2017-12.com.example:storage1 #创建共享目录
Created target iqn.2017-12.com.example:storage1.
Created TPG 1.
/> /iscsi/iqn.2017-12.com.example:storage1/tpg1/acls create iqn.2017-12.com.example:westoskey
Created Node ACL for iqn.2017-12.com.example:westoskey
/> /iscsi/iqn.2017-12.com.example:storage1/tpg1/luns create /backstores/block/westos:storage1     #加密
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.2017-12.com.example:westoskey
/> iscsi/iqn.2017-12.com.example:storage1/tpg1/portals create 172.25.254.127 #设置连接
Using default IP port 3260   

Created network portal 172.25.254.127:3260.


/> exit
Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup.

Configuration saved to /etc/target/saveconfig.json


 firewall-cmd --permanent --add-port=3260/tcp   #添加端口
success
[root@127 ~]# firewall-cmd --reload
success
客户端
systemctl start iscsi    

[root@227 ~]# vim /etc/iscsi/initiatorname.iscsi  #配置客户端名称 

root@227 ~]# cat /etc/iscsi/initiatorname.iscsi

InitiatorName=iqn.2017-12.com.example:westoskey


[root@227 ~]# systemctl restart iscsi
iscsiadm -m discovery -t st -p 172.25.254.127  #发现设备

172.25.254.127:3260,1 iqn.2017-12.com.example:storage1


 iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.127 -l #登陆设备

注:第一次登陆失败后,修改后需先重启主服务再启子服务

[root@227 ~]# systemctl restart iscsid

[root@227 ~]# systemctl restart iscsi


文件系统挂载
fdisk /dev/sda

mkfs.xfs /dev/sda1


[root@227 ~]# blkid
/dev/vda1: UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" TYPE="xfs"
/dev/vdb1: UUID="SIaPf4-OdHu-OzAW-NlQG-vZ3D-X8ZO-1FK3Ih" TYPE="LVM2_member"
/dev/mapper/vg0-vo: UUID="12294be2-bdad-4817-b162-038e22313d9f" TYPE="ext4"
/dev/sda1: UUID="3f8ccea4-04d0-4ff6-93fc-03913d2dc0d8" SEC_TYPE="ext2" TYPE="ext3"
df


永久挂载

vim /etc/fstab

UUID="38ccea4-04d0-4ff6-93fc-03913d2dc0d8"  /mnt  xfs  defaults,_netdev 0 0  #注,此时用id 防止名称串绕,defaults,_netdev这是为了在启动时让网络在分区前启动,否则会启动不起来


mount -a 


reboot

删除
vim /etc/fstab
 umount /mnt
 df
 yum install tree -y

  184  tree /var/lib/iscsi/ #查看目录树结构


  185  iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.127 -u #退出
  186  fdisk -l
  187  tree /var/lib/iscsi/

 iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.127 -o delete #删除


  191  tree /var/lib/iscsi/
  192  fdisk -l
  193  systemctl restart iscsi
服务端删除共享:
targetcli

/> clearconfig confirm=true

-

动态逻辑卷共享
制作逻辑卷
fdisk /dev/vdb
partprobe
 pvcreate /dev/vdb1
vgcreate iscsi_vg /dev/vdb1

lvcreate -l 225 -n iscsi_lv iscsi_vg


 targetcli

/> /backstores/block create westos:storage1 /dev/iscsi_vg/iscsi_lv
/> /iscsi create iqn.2017-12.com.example:storage1
/> /iscsi/iqn.2017-12.com.example:storage1/tpg1/acls create iqn.2017-12.com.example:key1
/> /iscsi/iqn.2017-12.com.example:storage1/tpg1/luns create /backstores/block/westos:storage1

scsi/iqn.2017-12.com.example:storage1/tpg1/portals create 172.25.254.127


客户端:
 rm -fr /var/lib/iscsi/*
 vim /etc/iscsi/initiatorname.iscsi
 systemctl restart iscsid.service
 systemctl restart iscsi
 iscsiadm -m discovery -t st -p 172.25.254.150

 iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.150 -l


fdisk -l
mkfs.ext3 /dev/sda

mount /dev/sda /mnt/


动态扩容:

服务端

lvm 扩容

 fdisk /dev/vdb
 partprobe
 pvcreate /dev/vdb2
 vgextend iscsi_vg /dev/vdb2
 lvextend -L 1500M /dev/iscsi_vg/iscsi_lv

 lvs


 客户端
   iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.150 -u
   systemctl restart iscsid.service
   systemctl restart iscsi
   iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.150 -l

   fdisk -l


查看磁盘大小:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux上搭建iSCSI服务器,需要进行以下步骤: 1. 安装iSCSI软件包:在Linux系统上安装iSCSI软件包,例如open-iscsiiscsi-target。 2. 配置iSCSI Target:使用iscsi-target软件包创建iSCSI Target,配置iSCSI Target的名称、IP地址、端口等信息。 3. 创建iSCSI LUN:使用iscsi-target软件包创建iSCSI LUN(逻辑单元),并将其映射到物理存储设备上。 4. 配置iSCSI Initiator:在客户端上安装iSCSI Initiator软件包,并配置iSCSI Initiator的名称、IP地址、端口等信息。 5. 连接iSCSI Target:在客户端上使用iSCSI Initiator连接iSCSI Target,并将iSCSI LUN映射到客户端上。 6. 测试iSCSI连接:使用客户端上的工具测试iSCSI连接是否正常,例如使用dd命令在iSCSI LUN上创建文件。 以上是在Linux上搭建iSCSI服务器的基本步骤,具体操作可以参考相关文档或教程。 ### 回答2: 先介绍一下iSCSI的基本概念吧:iSCSI是一种存储协议,它是一种基于网络的存储协议,通过网络将远程存储设备映射到本地主机上,使得本地主机可以像使用本地硬盘一样使用远程存储设备。iSCSI协议在网络存储领域应用广泛,特别是在虚拟化环境下,iSCSI存储是实现共享存储的重要方式之一。 搭建iSCSI服务器需要准备两个方面的工作,第一是准备一个可用的Linux服务器,第二是安装和配置iSCSI软件。 一、准备Linux服务器 1. 首先要安装Linux系统,这里我们以CentOS系统为例; 2. 确认服务器硬件配置符合iSCSI的要求; 3. 安装和配置网络环境; 4. 创建一个LUN(Logical Unit Number)存储单元,这是iSCSI存储的最小单位。 二、安装和配置iSCSI软件 1. 安装iSCSI软件,Linux下主流的iSCSI软件有多种,比如open-iscsi、tgt等,这里我们以open-iscsi为例; 2. 配置iSCSI服务器参数,包括iSCSI服务名称、存储密码等; 3. 创建iSCSI Target,这是iSCSI存储的核心部分,它是定义好的LUN逻辑单元映射到物理存储单元的过程; 4. 配置iSCSI Target的参数,包括存储IP地址、端口等; 5. 配置iSCSI Initiator,这是客户端连接iSCSI Target的过程; 6. 测试iSCSI存储的可用性。 综上,搭建iSCSI服务器并不是很复杂,但是需要较多的Linux操作技能。如果您不熟悉Linux操作,建议参考相关的教程或请专业技术人员操作。 ### 回答3: iSCSI是基于以太网的存储网络协议,可以将存储器虚拟化为IP网络资源。Linux搭建iSCSI服务器可以提供高效、稳定、灵活的存储资源服务,并且可以支持多种操作系统的访问,如Windows、Linux、Unix等。 步骤如下: 1. 安装iSCSI-target软件 Linux上的iSCSI-target软件有多种可选,如SCST、tgt、LIO等。在这里以tgt为例,它是Linux下使用最广泛的一个iSCSI-target软件。 在Ubuntu中,可以使用命令sudo apt-get install tgt安装tgt软件包。在CentOS中,可以使用命令yum install scsi-target-utils安装。 2. 配置tgt tgt的配置文件为/etc/tgt/targets.conf,在配置文件中,首先需要定义一个iSCSI Target,如下所示: <target iqn.2019-12.com.example:server.target1> backing-store /dev/sdb # 这里指定了iSCSI Target的存储设备 initiator-address 192.168.0.10 # 指定发起者的IP地址 incominguser user password # 指定iSCSI登录的用户名和密码 </target> 以上配置文件表示定义了一个名称为iqn.2019-12.com.example:server.target1的iSCSI Target,使用/dev/sdb设备作为存储设备,指定发起者IP地址为192.168.0.10。同时定义了一个iSCSI登录的用户名和密码。 3. 启动tgt服务 在tgt服务配置好后,需要使用命令systemctl start tgt启动tgt服务,使之生效。同时可以使用命令systemctl enable tgt设置开机启动服务。 4. 配置发起者 在Windows中,可以使用Microsoft iSCSI Initiator软件来作为iSCSI客户端进行连接。在Linux中,可以使用open-iscsi软件包来配置iSCSI客户端。 在Ubuntu中,可以使用命令sudo apt-get install open-iscsi安装open-iscsi软件包,在CentOS中,可以使用命令yum install iscsi-initiator-utils安装。 在配置iSCSI Initiator时,需要指定以下参数: - 目标iSCSI Target的名称或IP地址 - 登录iSCSI Target时需要用到的用户名和密码 - iSCSI Target的LUN ID(逻辑单元号),表示iSCSI Target中的哪个存储设备 对于open-iscsi,在Ubuntu中配置文件为/etc/iscsi/initiatorname.iscsi,在CentOS中为/etc/iscsi/initiatorname.iscsi,在配置文件中定义以下配置项: InitiatorName=iqn.2020-01.com.example:client # 定义iSCSI Initiator的名称 NodeStartUp=automatic # 设置开机启动 在配置好iSCSI Initiator后,可以使用命令iscsiadm -m discovery -P1来发现iSCSI Target。使用命令iscsiadm -m node -l可以登录iSCSI Target,并使用命令lsblk来查看iSCSI Target中的存储设备。 总结 搭建Linux iSCSI服务器并不复杂,需要操作者掌握基本的Linux系统操作和熟悉iSCSI的相关知识。通过一个简单的例子,我们可以了解到如何安装iSCSI-target软件、配置tgt,并使用iSCSI Initiator来连接iSCSI Target。同时,还需注意一些安全和性能的问题,如防火墙设置、安全登录、并发连接等,以保障服务的可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值