本文介绍如何在Linux操作系统上连接并使用iSCSI卷。
前提条件
已创建iSCSI卷。具体操作,请参见创建iSCSI卷。
连接卷
登录云服务器ECS。
说明如果您的本地主机已通过专线和阿里云专有网络连通,您也可以使用本地主机进行操作。
连接ECS Linux实例。具体操作,请参见连接ECS实例。
执行如下命令,安装iscsi-initiator-utils。
您需要通过iscsi-initiator-utils连接到目标iSCSI卷,如果您已经安装,请跳过此步骤。
sudo yum install iscsi-initiator-utils
如果您使用的是Debian或者Ubuntu操作系统,请执行如下命令安装。
sudo apt-get install open-iscsi
验证iSCSI守护进程是否正在运行。
如果是RHEL 5/RHEL 6,请执行如下命令:
sudo /etc/init.d/iscsi status
如果是RHEL7及以上版本,请执行如下命令:
sudo systemctl status iscsid
如果执行以上命令,未返回running状态,则执行如下命令启动iSCSI守护进程。
如果是RHEL 5/RHEL 6,请执行如下命令:
sudo /etc/init.d/iscsi start
如果是RHEL7及以上版本,请执行如下命令:
sudo systemctl start iscsid
(可选)设置CHAP认证。
说明如果您在创建iSCSI卷时,启用了CHAP认证,则需要在高级设置对话框中设置CHAP认证信息后,才能使用iSCSI卷。
执行如下命令打开iscsid.conf配置文件。
vi /etc/iscsi/iscsid.conf
找到CHAP Settings,删除相关配置项前面的注释符#,并设置用户和密码。
用户为创建iSCSI卷时设置的入站CHAP用户。
密码为创建iSCSI卷时设置的入站CHAP密码。
发现iSCSI卷。
您可以在阿里云云存储网关控制台上找到对应的块网关,在卷信息页面中获取块网关IPv4地址,在服务IP第二行获取块网关IPv6地址。
IPv4方式执行如下命令:
iscsiadm -m discovery -t st -p <目标IPv4地址>:3260
IPv6方式执行如下命令:
iscsiadm -m discovery -t st -p <目标IPv6地址>:3260
3260为访问端口,保持不变;目标IPv4地址为块网关IPv4地址;目标IPv6地址为块网关IPv6地址。
说明网关从v1.6.0版本开始支持IPv6。
仅华东5(呼和浩特)地域支持IPv6方式挂载,网关所使用的VPC和vSwitch要支持使用IPv6。
使用IPv6方式挂载前请确保所使用的ECS客户端已经配置了IPv6地址。
如果已有网关所使用的VPC和vSwitch支持IPv6,可以在网关操作列表中启用IPv6后,在服务IP第二行获取IPv6地址,而在此VPC下新创建的网关默认支持IPv6,不需要进行启用操作。
挂载iSCSI卷。
IPv4方式执行如下命令:
iscsiadm -m node -T <目标名称> -p <目标IPv4地址>:3260 -l
IPv6方式执行如下命令:
iscsiadm -m node -T <目标名称> -p <目标IPv6地址>:3260 -l
目标名称为iSCSI卷的目标名称,可以从步骤6发现iSCSI卷的命令返回中获取。
说明由于iSCSI 协议限制,请勿将一个iSCSI卷挂载到多个Linux客户端。
查看卷
执行fdisk -l或lsblk命令查看iSCSI卷。
确认为如下图所示的状态,则已挂载的iSCSI卷成为一个可用的裸磁盘,您可以在本地主机上进行读写操作。
卸载卷
当不再使用iSCSI卷时可以通过以下命令行进行卸载。
IPv4方式执行如下命令:
iscsiadm -m node -T <目标名称> -p <目标IPv4地址>:3260 -u
IPv6方式执行如下命令:
iscsiadm -m node -T <目标名称> -p <目标IPv6地址>:3260 -u