云计算 基础服务 iscsi 实现

gw: 提供安装源(yum)

node05: 为node01提供数据备份业务:

node01:

iSCSI(Internet Small Computer System Interface),Internet小型计算机系统接口,又称为IP-SAN,是一种基于因特网及SCSI-3协议下的存储技术

    1) 数据传输对于用户来说是透明的, 用户在存储数据的时候, 就像是使用自己的本地硬盘

    2) 速度与稳定性受限于网络及提供共享服务的服务器性能

服务端(node05): target

    添加1块磁盘2G空间

客户端(node01): initiator

服务器端:

1) 安装对应的软件包 并设置开机启动

[root@node05 ~]# yum install targetcli -y

[root@node05 ~]# systemctl start target

[root@node05 ~]# systemctl enable target

2) 对新加的磁盘进行分区

[root@node05 ~]# fdisk /dev/sdb <<EOF

n

p

1


 

w

EOF

# 查看分区结果

[root@node05 ~]# fdisk -l | grep sdb1

/dev/sdb1            2048     4194303     2096128   83  Linux

3) 进行相关配置

3.1 建立一个块存储 www.disk2G 可以自己命名

3.2 iqn.2021-01.cn.example.www:disk

命名在同一子网内确保是唯一,命名格式为:iqn.yyyy-mm.<主机名反写>:自定义名称

    iqn.       # iscsi限定名称

    2019-05    # 时间 常用格式:yyyy-mm

    cn.example.www   # 反向域名

    disk    # 自定义标签名称 一般disk

# 进入交互模式

[root@node05 ~]# targetcli

/> 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]

# 建立一个块存储 www.disk2G 注意名字

/> /backstores/block create www.disk2G /dev/sdb1   # 名字见名知义 对应的磁盘名称

Created block storage object www.disk2G using /dev/sdb1.

/> iscsi/ create iqn.2021-01.cn.example.www:disk   #

Created target iqn.2021-01.cn.example.www:disk.

Created TPG 1.

Global pref auto_add_default_portal=true

Created default portal listening on all IPs (0.0.0.0), port 3260.

# 创建ACL

/> iscsi/iqn.2021-01.cn.example.www:disk/tpg1/acls create iqn.2021-01.cn.example.www:nodes

Created Node ACL for iqn.2021-01.cn.example.www:nodes

# 绑定块设备 前面定义的名字 www.disk2G

/> iscsi/iqn.2021-01.cn.example.www:disk/tpg1/luns create /backstores/block/www.disk2G

Created LUN 0.

Created LUN 0->0 mapping in node ACL iqn.2021-01.cn.example.www:nodes

# 删除默认的IP和端口设置

/> iscsi/iqn.2021-01.cn.example.www:disk/tpg1/portals/ delete 0.0.0.0 3260

Deleted network portal 0.0.0.0:3260

# 添加本地IP地址和端口号

/> iscsi/iqn.2021-01.cn.example.www:disk/tpg1/portals create 10.15.200.105 3260    # 10.15.200.104

Using default IP port 3260

Created network portal 10.15.200.105:3260.

# 保存配置

/> saveconfig

Configuration saved to /etc/target/saveconfig.json

客户端:

[root@node01 ~]# yum -y install iscsi-initiator-utils

# 此处InitiatorName必须与服务端配置得ACL允许ISCSI客户机连接名称一致

[root@node01 ~]# vim /etc/iscsi/initiatorname.iscsi    # 创建的ACL的名字

InitiatorName=iqn.2021-01.cn.example.www:nodes

[root@node01 ~]# systemctl enable iscsid

[root@node01 ~]# systemctl restart iscsid

# 查找ISCSI设备

[root@node01 ~]# iscsiadm -m discovery -t sendtargets -p node05   # node04

10.15.200.105:3260,1 iqn.2021-01.cn.example.www:disk

# 验证客户端存储是否已发现服务端target

[root@node01 ~]# ls /var/lib/iscsi/nodes/

iqn.2021-01.cn.example.www:disk

# 连接ISCSI设备

# -T:-target -l:Login -u:Logout

[root@node01 ~]# iscsiadm -m node -T iqn.2021-01.cn.example.www:disk -l

Logging in to [iface: default, target: iqn.2021-01.cn.example.www:disk]

Login to [iface: default, target: iqn.2021-01.cn.example.www:disk]] successful.

[root@node01 ~]#  iscsiadm -m session -P 3 | grep Attached

    Attached scsi disk sdb          State: running

[root@node01 ~]# fdisk -l | grep sdb

Disk /dev/sdb: 2146 MB, 2146435072 bytes, 4192256 sectors

[root@node01 ~]# mkfs.xfs /dev/sdb

[root@node01 ~]# blkid /dev/sdb

/dev/sdb: UUID="bab4b5ba-49a9-467e-bd39-887d1b55628d" TYPE="xfs"

[root@node01 ~]# mkdir /backup

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

UUID=c0d2eb8f-7725-4d79-a3d7-925c084a4f97 /backup xfs _netdev 0 0

# mount all filesystems mentioned in fstab

[root@node01 ~]# mount -a

[root@node01 ~]# df -h | grep backup

/dev/sdb                 2.0G   33M  2.0G   2% /backup

# 重启系统进行校验

[root@node01 ~]# init 6

[root@node01 ~]# df -h | grep backup

/dev/sdb                 2.0G   33M  2.0G   2% /backup

[root@node01 ~]# mount -a   # 出错 因为未挂载

mount: can't find UUID=bab4b5ba-49a9-467e-bd39-887d1b55628d

[root@node01 ~]# iscsiadm -m node -T iqn.2021-01.cn.example.www:disk -l   # 重新登录

Logging in to [iface: default, target: iqn.2021-01.cn.example.www:disk

Login to [iface: default, target: iqn.2021-01.cn.example.www:disk,] successful.

[root@node01 ~]# mount -a  # 重新挂载

[root@node01 ~]# df -h | grep backup

/dev/sdb                 2.0G   33M  2.0G   2% /ba

# 恢复原装 将开机启动中的选项 注释或删除

[root@node01 ~]# /etc/fstab

# 卸载挂载点

[root@node01 ~]# umount  /backup

# -u: 退出 (只有非挂载状态 才可以-u)

[root@node01 ~]# iscsiadm -m node -T iqn.2021-01.cn.example.www:disk -u

Logging out of session [sid: 1, target: iqn.2021-01.cn.example.www:disk, portal: 10.15.200.105,3260]

Logout of [sid: 1, target: iqn.2021-01.cn.example.www:disk, portal: 10.15.200.105,3260] successful.

[root@node01 ~]# systemctl stop iscsi

[root@node01 ~]# systemctl disable iscsi

# /backup挂载状态时 无法退出

iscsiadm: initiator reported error (28 - device or resource in use)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库从删库到跑路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值