配置target
target的名字是可以自定义的
1. 创建target
scstadmin -add_target -driver iscsi
:自定义的target name,一般的格式是iqn.yyyy-mm.<reversed domain name>:identifier
, iqn.年年-月.单位网域名的反转写法 :这个分享的 target 名称
2. 激活target
scstadmin -enable_target -driver iscsi
创建镜像
- 创建块设备镜像
rbd create --size <megebytes> <pool_name>/<image_name>
例如:rbd create –size 2048 foo
`rbd create scstimage -size 2042 -p pbd 在ceph cluster 上创建块设备镜像 - 罗列块设备映像
rbd ls
rbd map scstimage 把image映射成块设备 - 查看镜像信息
rbd info <pool_name>/<image_name>
例如:
rbd info foo
- 调整块设备映像大小
rbd resize --size 2048 foo (to increase)
rbd resize --size 2048 foo --allow-shrink (to decrease) - 删除块设备映像
rbd rm <image_name>/<pool_Name>
l例如:rbd rm foo - 映射块设备
rbd map <pool_name>/<IMAGE_NAME> --id <user_name>
例如:rbd map rbd/foo - 查看以映射块设备
rbd showmapped
使用块设备
- 创建并挂载文件系统
mkfs.ext3 <映射的块设备>
例如:mkfs.ext3 /dev/rbd0 - 检测块设备
使用 dd 指令
例如:dd if=/dev/zero of=/mnt/ceph-disk0/file0 count=100 bs=1M
分配lun
- 创建lun
scstadmin -open_dev <DEV_NAME> -handler vdisk_blockio -attributes filename=<IMAGE_NAME_FILE_PATH>
DEV_NAME: 设备名称(/dev/vdb1)
IMAGE_NAME_FILE_PATH:块设备镜像映射成的块设备路径
例如:
scstadmin -open_dev rbd_vsan1 -handler vdisk_blockio -attributes filename=/dev/rbd/rbd/scstimage - lun 加入target端
scstadmin -add_lun< LUN_NO > -driver iscsi -target <TARET_NAME> -device <DEV_NAME>
LUN_NO :lun 号,这个号必须在这个机器唯一
TARET_NAME :刚刚创建的 target 的名称
DEV_NAME :块设备镜像名称
执行这个指令要求先创建块设备镜像
例如:
scstadmin -add_lun 0 -driver iscsi -target? iqn.2016-08.com -device rbd_vsan1
写入配置文件
scstadmin -write_config /etc/scst.conf
执行这一指令的作用是将上面执行命令作为配置写入到配置文件中
scstadmin
- 从./iscsi-scst/etc/目录下拷贝配置文件scst.conf到/etc目录下,当然你也可以自己在/etc目录下新建一个scst.conf文件,
/etc/init./scst
脚本会在启动的时候加载并检查scst.conf
文件 scstadmin -check_config /etc/scst.conf
测试配置文件是否正确,然后使用scstadim -config /etc/scst.conf
加载配置文件- 可能出现以下错误
[root@localhost ~]# scstadmin -check_config/etc/scst.conf
Collecting current configuration: done.
-> Checking configuration file '/etc/scst.conf'for errors.
->WARNING: No TARGET_DRIVER section defined. No target drivers will beconfigured.
->WARNING: No HANDLER section defined. Only physical media will be configured fortargets.
FATAL: No target drivers orhandlers defined, aborting!
->Done, 1 errors found.
All done.
以上的错误提示告诉我们,没有定义“drivers”或“handlers”
解决:
修改scst.conf文件,在其中增加关于HANDLER定义
HANDLER vdisk_fileio{
}
SCST增加一个TARGET,并将定义写入/etc/scst.conf文件
4. scstadmin --list_target
检验一下是否有新添加的TARGET。
这几行是关于TARGET的定义内容
TARGET iqn.2012.2013.edu.cuc.storagelab.mpx.target {
enabled 0
}
- 向scst中添加设备
scstadmin -open_dev disk01 -handler vdisk_fileio -attributes filename=/dev/vdb1,nv_cacge
- 执行上面的指令后需要写入配置文件
scstadmin -write_config /etc/scst.conf
此时的配置文件cat /etc/scst.config
#Automatically generated by SCST Configurator v2.0.0.
HANDLERvdisk_fileio {
DEVICE disk01 {
t10_dev_id "disk01b8ceed65"
usn b8ceed65
filename /dev/vdb1
nv_cache 1
}
}
TARGET_DRIVERiscsi {
enabled 1
TARGETiqn.2012.2013.edu.cuc.storagelab.mpx.target {
rel_tgt_id 1
enabled 1
}
}
- 为设备指定TARGET,并分配LUN号
scstadmin -add_lun 0 -driver iscsi -target iqn.2012.2013.edu.cuc.storagelab.mpx.target-device disk01
scstadmin-write_config /etc/scst.conf
cat /etc/scst.conf
[root@localhost~]# cat /etc/scst.conf
#Automatically generated by SCST Configurator v2.0.0.
HANDLERvdisk_fileio {
DEVICE disk01 {
t10_dev_id "disk01b8ceed65"
usn b8ceed65
filename /dev/sdb4
nv_cache 1
}
}
TARGET_DRIVERiscsi {
enabled 1
TARGETiqn.2012.2013.edu.cuc.storagelab.mpx.target {
rel_tgt_id 1
enabled 1
LUN 0 disk01
}
}
initiator端 配置
iscsi initiator的配置
1. 查找target
iscsiadm -m discovery -t st -p <TARGET_IP>
例如:
iscsiadm -m discovery -t st -p 172.24.8.29
TARGET_IP:要连接 target 的 ip
2. 连接target
iscsiadm -m node -T <TATGET_NAME> -p <TARGET_IP>:3260 -l
TATGET_NAME:刚刚查询出来的所要连接的 target 名称
TARGET_IP:要连接 target 的 ip
3. 退出target
iscsiadm -m node -T <TARGET_NAME> -p <TARGET_IP>:3260 -u
4. 查看已连接的target
iscsiadm -m session
5. 储上的Target下新挂载了一个SAN资源,如何在服务器上连接并识别?
iscsiadm -m session -R
刷新iscsi session以识别新的资源
6. target端的lun映射的块设备
lsscsi
7. 断开所有targets的连接
iscsiadm -m node --logoutall=all
例如:
iscsiadm -m node -T iqn.2016-01.com.yhc:rbdtarget -p 172.24.8.29:3260 -l
通过iscsiadm -m node -t sendtargets命令发现Target以后,在/var/lib/iscsi/nodes
目录下会生成一个或多个以目的服务器上的Target名命名的文件夹,文件夹中有一个文件。此文件中是initiator登录target要使用到的配置参数
,可以通过更改此参数文件来配置登录到每个Target的CHAP认证信息。
iscsi认证
登入需验证码的节点
1. 开启认证
iscsiadm -m node -T {TARGET_NAME} -p {TARGET_IP}:{PORT,default:3260} -o update --name=node.session.auth.authmethod --value=CHAP
2. 添加用户
iscsiadm -m node -T {TARGET_NAME} -P {TARGET_IP}:{PORT, default:3260} -o update --name=node.session.auth.username --value={USERNAME}
3. 添加密码
iscsiadm -m node -T {TARGET_NAME} -P {TARGET_IP}:{PORT, default:3260} -o update --name=node.session.auth.password --value={PASSWORD} #强制至少12个字符
多路径配置
https://yq.aliyun.com/articles/313849