最近更新时间:2023-11-28
本文示例适用于CentOS 6.X/CentOS 7.X/Ubuntu等操作系统。本文中云主机操作系统主要以CentOS 7.6为例,并对不同操作系统之间的差异进行说明。
登录紫光云控制台。
在左侧导航栏中依次选择“产品与服务 > 存储 > 云硬盘”。
在云硬盘列表页面,单击待挂载iSCSI共享卷后操作列的“挂载”。
在挂载弹窗中,单击待挂载云主机实例后的“挂载”。
挂载完成后,在云硬盘列表页面单击硬盘ID,跳转到硬盘详情页面。
可以在“挂载信息”中看到iSCSI共享卷的“存储网段”、“控制器地址”,以及所挂载实例的网卡地址、网卡掩码、网卡网关等信息。
在操作页面输入ip addr命令,可以看到主机新增了一块网卡。
本示例中,新增网卡名称为eth1,请您根据实际的信息做相应替换,后文不再提示。
(可选)如果是裸金属实例,需要先进入如下配置。
定位当前使用的网卡,先使用ip addr命令查看当前网卡。
本示例中所使用的ens1f1为此步骤中的网卡名称,请您根据实际的信息做相应替换,后文不再提示。
然后执行批量启动命令,示例如下:
for i in `ip a |grep -E 'ens[0-9]*|eth[0-9]'| grep -v "state UP" | awk -F: '{print $2}'`;do ip link set dev $i up;done |
然后再次执行ip addr命令,与第一次ip addr命令得到的结果做对比,可知up起来的网卡为所需要定位的网卡。
接下来为此网卡配置IP地址、子网掩码和网关。
本示例中所使用的<10.0.11.26>段为上一步骤中的“网卡地址”,<255.255.255.0>为上一步骤中的“网卡掩码”,<10.0.11.1>为上一步骤中的“网卡网关”,< 10.0.44.128 25 >为上一步骤中的“存储网段”,请您根据实际的信息做相应替换,后文不再提示。
对于不同的操作系统,使用的命令有所差异,具体如下:
CentOS:
增加/etc/sysconfig/network-scripts/route-ens1f1文件。
[root@i-9Ugzds6NaA ~]# cat /etc/sysconfig/network-scripts/route-ens1f1 IPADDR=10.0.11.26 NETMASK=255.255.255.0 GATEWAY=10.0.11.1 # 配置持久化的静态路由规则,使得重启network或系统后,配置仍然保留,如果重装系统,需要重新配置该路由规则。 10.0.44.128/25 via 10.0.11.1 dev ens1f1 |
Ubuntu:
修改/etc/network/interfaces 配置文件,修改新加入的存储网卡(如示例中的eth1)相关的内容,增加静态路由配置,如果重装系统,需要重新配置该路由规则。
# 修改后: auto eth1 iface eth1 inet static #hwaddr ea:16:3e:82:32:9d address 10.0.11.26 netmask 255.255.255.0 dns-nameservers 114.114.114.114 up ip route add 10.0.44.128/25 via 10.0.11.1 // 增加内容 |
在主机内增加静态路由规则,如果重装系统,需要重新配置该路由规则。
[root@i-9Ugzds6NaA ~]# ip route add 10.0.44.128/25 via 10.0.11.1 |
配置文件保存后,对所使用的存储网卡做down/up操作,使配置生效。
[root@i-9Ugzds6NaA ~]# cd /etc/sysconfig/network-scripts/ |
安装访问iSCSI共享卷所需要的应用程序。
CentOS:
yum install iscsi-initiator-utils device-mapper-multipath -y |
Ubuntu:
apt-get update |
更新/etc/iscsi/initiatorname.iscsi文件,使其和存储后端配置一致。该文件内容格式为:
InitiatorName=iqn.2020-07.com.unicloud.iscsi:{InstanceId} |
其中的“InstanceID”为主机实例ID,此ID可以在弹性云主机控制台查看,请您根据实际的信息做相应替换,后文不再提示。
本示例中所更新的配置如下:
[root@i-9Ugzds6NaA ~]# cat /etc/iscsi/initiatorname.iscsi |
更新/etc/iscsi/iscsid.conf配置文件,取消以下auth配置的注释,并修改其中的username和password(其中 “CHAP用户名”和“CHAP密码” 为用户控制台上共享卷详情页面挂载信息中的实例对应的CHAP信息),其他CHAP设置保持为注释状态。
node.session.auth.authmethod = CHAP node.session.auth.username = <CHAP用户名> |
检查/etc/iscsi/iscsid.conf以下参数,部分系统默认值为“maual”,建议修改该配置为 "automatic",使得node节点重启后可以自动登录。
node.startup = automatic |
配置multipath,Ubuntu操作系统不需要此步骤,可以跳过。
CentOS:添加/etc/multipath.conf文件
defaults { polling_interval 10 } |
启动服务。
CentOS6:
chkconfig iscsi on service iscsi start service multipathd start |
CentOS7:
systemctl enable iscsid multipathd systemctl start iscsid multipathd |
Ubuntu:
service iscsi start service multipath-tools start |
发现iscsi Target,此步骤中使用的<10.0.44.130>和<10.0.44.131>为步骤5中的“控制器地址”,请您根据实际的信息做相应替换,后文不再提示。
[root@i-9Ugzds6NaA ~]# iscsiadm --mode discovery --type st --portal 10.0.44.130 |
登录节点。
[root@i-9Ugzds6NaA ~]# iscsiadm -m node -l |
验证iSCSI共享卷,可以看到iSCSI共享卷已经连接到多路径设备 /dev/mapper/360002ac0000000000000156d00022fc7。若您已挂载多块共享卷,则此处应该可以看到所有已挂载的共享卷。
[root@i-9Ugzds6NaA ~]# lsblk |
格式化multipath多路径设备,可以实现对iSCSI共享卷的使用。如下为展示将iSCSI共享卷格式化为ext4文件系统(非共享文件系统)的操作。
mkfs.ext4 /dev/mapper/360002ac0000000000000156d00022fc7 mount /dev/mapper/360002ac0000000000000156d00022fc7 /mnt |
如果需要配置多路径设备开机后自动挂载到指定目录,需要将挂载信息添加到 /etc/fstab 文件。另外,由于 iSCSI 协议是基于 TCP/IP 网络传输数据,因此注意添加 _netdev 参数,等待系统网络准备就绪后挂载。
将以下内容追加到 /etc/fstab 文件末尾,注意根据实际环境,更新多路径设备、挂载点、文件系统等。
/dev/mapper/360002ac0000000000000154400022fc7/mnt ext4 defaults,_netdev 0 0 |