首页 > 代码库 > iscsi

iscsi

######################

##### iscsi ##########

######################


1.

iscsi 是直接对设备进行共享的服务


2.

启动iscsi共享设备

在server上

(1)建立一个lvm设备:

 fdisk 用于创建与 LVM 结合使用的新分区。在要与LVM 结合使用的分区上 , 始终将
“ 类型 ” 设置为 “ 0x8e LinuxLVM”
pvcreate /dev/vdb1       ##把物理分区做成物理卷
pvs|pvdisplay           ##查看物理卷
vgcreate vg0 /dev/vdb1   ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
vgs|vgdisplay           ##查看物理卷组
lvcreate -L 200M -n lv0 vg0  ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字
lvs|lvdisplay           ##对逻辑卷设备进行查看

    1  fdisk /dev/vdb

    2  partprobe 

    3  pvcreate /dev/vdb1 

    4  vgcreate vg0 /dev/vdb1 

    5  vgdisplay

    6  lvctreate -l 255 -n iscsi_storage vg0

    7  lvcreate -l 255 -n iscsi_storage vg0

    8  lvs

截图:

技术分享

技术分享

技术分享

技术分享

(2)iSCSI目标配置

安装iSCSI目标软件包:

# yum install -y targetcli


启动服务:

# systemctl enable target;

# systemctl start target


进入iSCSI目标交互式配置模式:

targetcli

[root@server ~]# targetcli

/> ls

/> /backstores/block create server1storage /dev/vg0/iscsi_storage

/> /iscsi create iqn.2016-06.com.example:strage1

/> iscsi/iqn.2016-06.com.example:strage1/tpg1/luns create /backstores/block/server1storage 

/> iscsi/iqn.2016-06.com.example:strage1/tpg1/acls create iqn.2016-06.com.example:server1storagekey

/> iscsi/iqn.2016-06.com.example:strage1/tpg1/portals create 172.25.254.244

/> exit

技术分享

技术分享

技术分享


3.

访问iSCSI存储

在desktop上:

安装iSCSI发起端软件包:

# yum install -y iscsi-initiator-utils


在/etc/iscsi/initiatorname.iscsi中设置发起端的IQN:

InitiatorName=iqn.1994-05.com.redhat:9e96ff23da37----->>InitiatorName=iqn.2016-06.com.example:server1storagekey


查找iSCSI服务器所提供的iSCSI目标(目标门户)

# iscsiadm -m discovery -t st -p 172.25.254.244

[root@desktop ~]# iscsiadm -m discovery -t st -p 172.25.254.244

iscsiadm: cannot make connection to 172.25.254.244: No route to host


[root@server ~]# systemctl status firewalld

firewalld.service - firewalld - dynamic firewall daemon

   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled)

   Active: active (running) since Thu 2017-06-08 22:46:32 EDT; 17min ago

 Main PID: 484 (firewalld)

   CGroup: /system.slice/firewalld.service

           └─484 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid


Jun 08 22:46:32 server systemd[1]: Started firewalld - dynamic firewall daemon.

[root@server ~]# systemctl stop firewalld


[root@desktop ~]# iscsiadm -m discovery -t st -p 172.25.254.244

172.25.254.244:3260,1 iqn.2016-06.com.example:strage1


登录服务器上的一个或多个iscsi目标

# iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -l

[root@desktop ~]#iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -l

Logging in to [iface: default, target: iqn.2016-06.com.example:strage1, portal: 172.25.254.244,3260] (multiple)

Login to [iface: default, target: iqn.2016-06.com.example:strage1, portal: 172.25.254.244,3260] successful.


此时,可以使用iSCSI磁盘,就好像它是本地连接硬盘驱动器。可以挂载现有文件系统。如果磁盘未格式化,可以通过fdisk进行分区,例如,通过文件系统格式化分区或作为LVM物理卷。

   67  iscsiadm -m discovery -t st -p 172.25.254.244

   69  iscsiadm -m discovery -t st -p 172.25.254.244

   72  iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -l

   73  fdisk -l

   74  fdisk /dev/sda

   75  partprobe 

   77  mkfs.xfs  /dev/sda1

   78  mount  /dev/sda1 /mnt/

   79  df

   80  yum install tree.x86_64 -y

   81  tree -c /var/lib/iscsi/

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享


4.挂载:

在/etc/fstab中永久挂载文件系统

. 使用blkid确定文件系统UUID并使用UUID挂载,而不是/dev/sd*设备名称。(每次引导时显示的设备名称都不同,具体取决于iSCSI设备通过网络进行响应的顺序。如果按设备名称挂载,这会导致使用错误的设备。)

. 在/etc/fstab中使用_netdev作为挂载选项。(这将确保客户端不会尝试挂载文件系统,直至启用联网。否则,在引导时系统将出错。)

. 确保iscsi服务在引导时启动。

   83  vim /etc/fstab

   84  blkid

   85  fg

   86  mount -a

   87  df


技术分享

技术分享


5.中断使用iSCSI目标


确保没有使用目标所提供的任何设备。确保从/etc/fstab等位置中删除使用目标的所有永久挂载。登出iSCSI目标,以暂时断开连接。

# iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -u


删除iSCSI目标的本地记录,以永久断开连接。

# iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -o delete


[root@desktop ~]# umount /mnt

[root@desktop ~]# vim /etc/fstab

[root@desktop ~]# iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -u

Logging out of session [sid: 1, target: iqn.2016-06.com.example:strage1, portal: 172.25.254.244,3260]

Logout of [sid: 1, target: iqn.2016-06.com.example:strage1, portal: 172.25.254.244,3260] successful.

[root@desktop ~]# iscsiadm -m node -T iqn.2016-06.com.example:strage1 -p 172.25.254.244 -o delete

[root@desktop ~]# tree -c /var/lib/iscsi/

/var/lib/iscsi/

|-- nodes

|-- send_targets

|   `-- 172.25.254.244,3260

|       `-- st_config

|-- ifaces

|-- isns

|-- slp

`-- static

7 directories, 1 file


[root@server ~]# targetcli

targetcli shell version 2.1.fb34

Copyright 2011-2013 by Datera, Inc and others.

For help on commands, type ‘help‘.

/> clearconfig confirm=True

All configuration cleared

/> ls

o- / ...................................................................... [...]

  o- backstores ........................................................... [...]

  | o- block ............................................... [Storage Objects: 0]

  | o- fileio .............................................. [Storage Objects: 0]

  | o- pscsi ............................................... [Storage Objects: 0]

  | o- ramdisk ............................................. [Storage Objects: 0]

  o- iscsi ......................................................... [Targets: 0]

  o- loopback ...................................................... [Targets: 0]

/> exit

Global pref auto_save_on_exit=true

Last 10 configs saved in /etc/target/backup.

Configuration saved to /etc/target/saveconfig.json



iscsi