RH358访问基于块的网络存储--访问iSCSI存储

简介: RH358访问基于块的网络存储--访问iSCSI存储

RH358访问基于块的网络存储–访问iSCSI存储

本章节介绍如何访问iSCSI存储。

RH358专栏地址:https://blog.csdn.net/qq_41765918/category_11532281.html

1. 配置 iSCSI initiator

在Red Hat Enterprise Linux中,iSCSI initiator通常是在软件中实现的。使用基于软件的iSCSI initiator需要连接到现有的以太网网络,有足够的带宽来承载存储流量。

注意:作为本节中介绍的软件实现的替代方案,可以使用在专用主机总线适配器(HBA)中包含所需协议的硬件initiators。这可以将以太网、TCP和iSCSI处理转移到硬件上,从而减少其他系统资源的负载。

系统准备

配置iSCSI客户端启动器需要安装iscsi-initiator-utis包,其中包含iscsi和iscsid服务,以及/etc/iscsi/iscsid.conf和/etc/iscsi/initiatorname.iscsi配置文件。

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

作为iSCSI启动器,客户端需要自己唯一的IQN (iSCSI Qualified Name)。在安装iscsi-initiator-utils的过程中,该包会使用Red Hat的DNS域生成一个唯一的IQN,并将该IQN保存到/etc/iscsi/initiatorname.iscsi中。管理员通常将该文件中的IQN更改为他们的DNS域,除了适当的客户端名称字符串。

/etc/iscsi/iscsid.conf文件包含连接的targets的默认设置。这些设置包括iscsi超时时间、重试参数以及用于身份验证的用户名和密码。

安装包会自动配置iscsi和iscsid服务,以便启动器在系统启动时自动重新连接任何已经发现的targets。当修改启动器的配置文件时,请重新启动iscsid服务。

连接 iSCSI target

在连接和使用远端设备之前,首先需要发现target.。发现过程将目标信息和设置保存在/var/ib/iscsi/nodes/目录下,默认为/etc/iscsi/iscsid.conf。

使用如下命令发现远程目标:

[root@host ~]# iscsiadm -m discovery -t st -p portal_ip[:port]
192.168.0.10:3260,1 iqn.2014-06.com.example:disk1
192.168.0.10:3260,1 iqn.2014-06.com.example:disk2
192.168.0.10:3260,1 iqn.2014-06.com.example:target1

portal_ip为目标portal的IP地址。如果不指定端口参数,则使用默认端口3260。该命令返回可用目标器的iqn。

要使用列出的目标之一,请使用以下命令登录:

[root@host ~]# iscsiadm -m node -T iqn.2014-06.com.example:disk1 -p portal_ip[:port] -l

此时,系统会检测到一个新的SCSI块设备,就像它是一个本地连接的硬盘驱动器一样。您可以使用iscsiadm -m session -P 3命令识别新设备,该命令将在打印级别3显示当前iSCSI登录会话的信息。

[root@host ~]# iscsiadm -m session -P 3
iSCSI Transport Class version 2.0-870
version 6.2.0.877-0
Target: iqn.2014-06.com.example:disk1 (non-flash)
Current Portal: 192.168.0.10:3260,1
...output omitted...
Attached scsi disk sdc State: running

也可以查看 dmesg、tail /var/log/messages 或 ls -l /dev/disk/bypath/iscsi 命令的输出

登录过程在重新引导时是持久的。因此,块设备在启动后自动可用。

格式化iSCSI设备

如果发现的块设备已经有分区、文件系统或LVM卷,那么可以使用常用命令(如mount)访问这些数据。可以使用Isblk --fs命令检查设备来发现这样的结构。

[root@host ~]# lsblk --fs
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs f7614c41-2835-4125-bb13-50772dc2f30c /boot
├─sda2 swap 78a5f1eb-a593-4db3-b15a-f49042e182a2 [SWAP]
└─sda3 xsf ac2790c4-cfbb-409e-88a9-fe8c963fcd00 /
sdb LVM2_member 4ALe1y-oEXe-XLer-PjYW-n5ud-Ryko-XZZ2PM
├─dbdata-log ext4 bd566c1f-01a1-404d-8f01-9495004f327c /data/db/log
└─dbdata-data ext4 5640b4ae-5868-4bf5-8715-51fc18d8656b /data/db/data
sdc

其中,/dev/sda有三个分区,/dev/sdb是LVM的物理卷,/dev/sdc没有数据。

如果磁盘是空的,可以格式化它、创建分区或将它用作LVM物理卷。

当在/etc/fstab中的iSCSl目标上持久化挂载文件系统时,请确保遵循以下建议:

  • 使用带有 --fs选项的lsblk命令来确定文件系统UUID,然后使用该UUID挂载文件系统。不要使用设备名(/dev/sd*),因为它会在boot和boot之间发生变化。设备的名称取决于iSCSl设备通过网络响应的顺序。如果您使用/etc/fstab中的设备名称,并且该名称在重新引导后更改,那么系统可能会将设备挂载在错误的挂载点下。

  • 使用/etc/fstab中的_netdev挂载选项。因为iSCSl依赖于网络来访问远端设备,所以该选项确保系统不会尝试挂载文件系统,直到网络和启动器启动为止。

2. 断开与 target 的连接

如果需要停止使用iSCSI目标,请执行以下步骤。

  • 确保目标提供的设备都没有在使用中。例如,卸载文件系统。

  • 从/etc/fstab等位置删除对目标的所有持久化引用。

  • 注销 iSCSI target。

[root@host ~]# iscsiadm -m node -T iqn.2014-06.com.example:disk1 -p 192.168.0.10:3260 -u

  • 删除iSCSI目标器的本地记录,避免启动器在启动时自动登录该目标器。

[root@host ~]# iscsiadm -m node -T iqn.2014-06.com.example:disk1 -p 192.168.0.10:3260 -o delete

3. 课本练习

[student@workstation ~]$ lab iscsi-initiator start

在serverd配置iSCSl target。将使用servera的initiator连接到该target。

1. 安装iscsi-initiator-utils软件包。

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

2. 设置客户端initiator。

[root@servera ~]# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2014-06.com.example:servera
[root@servera ~]# systemctl restart iscsid

3. 发现并登录配置的target。

[root@servera ~]# iscsiadm -m discovery -t st -p 172.25.250.13
172.25.250.13:3260,1 iqn.2014-06.com.example:serverd
[root@servera ~]# iscsiadm -m node -T iqn.2014-06.com.example:serverd -p 172.25.250.13 -l
Logging in to [iface: default, target: iqn.2014-06.com.example:serverd, portal:
172.25.250.13,3260]
Login to [iface: default, target: iqn.2014-06.com.example:serverd, portal:
172.25.250.13,3260] successful.
[root@servera ~]# iscsiadm -m session -P 3
iSCSI Transport Class version 2.0-870
version 6.2.0.877-0
Target: iqn.2014-06.com.example:serverd (non-flash)
Current Portal: 172.25.250.13:3260,1
...output omitted...
Attached scsi disk sda State: running

4. 请确认新块设备没有分区和文件系统。将设备格式化为XFS,然后将其配置为在引导时持久地挂载在/data上。

[root@servera ~]# lsblk --fs
sda                                                      
vda                                                      
└─vda1 xfs          f7614c41-2835-4125-bb13-50772dc2f30c /
vdb     
[root@servera ~]# mkfs.xfs /dev/sda
meta-data=/dev/sda               isize=512    agcount=4, agsize=327680 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=1310720, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@servera ~]# mkdir /data
[root@servera ~]# lsblk --fs /dev/sda
NAME FSTYPE LABEL UUID                                 MOUNTPOINT
sda  xfs          d3da0d6a-a00f-4132-b539-5b26802ddcf5
[root@servera ~]# echo "UUID=d3da0d6a-a00f-4132-b539-5b26802ddcf5 /data xfs _netdev 0 0" >> /etc/fstab
[root@servera ~]# mount -a
[root@servera ~]# df /data
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/sda         5232640 69616   5163024   2% /data

5. 把实验清理干净。

卸载文件系统,注销iSCSI目标器,然后删除目标器的所有记录。

[root@servera ~]# umount /data
[root@servera ~]# cat /etc/fstab  # 删除挂载/data 条目
UUID=f7614c41-2835-4125-bb13-50772dc2f30c /                       xfs     defaults        0 0
[root@servera ~]# iscsiadm -m node -T iqn.2014-06.com.example:serverd -p 172.25.250.13 -u
Logging out of session [sid: 1, target: iqn.2014-06.com.example:serverd, portal: 172.25.250.13,3260]
Logout of [sid: 1, target: iqn.2014-06.com.example:serverd, portal: 172.25.250.13,3260] successful.
[root@servera ~]# iscsiadm -m node -T iqn.2014-06.com.example:serverd -p 172.25.250.13 -o delete

完成实验

[student@workstation ~]$ lab iscsi-initiator finish

总结

  • 介绍如何配置 iSCSI initiator。
  • 介绍如何连接和断开 iSCSI target。
  • 若喜欢金鱼哥的文章,顺手点个赞。也可点个关注,因为后续会不断上干货。

目录
相关文章
|
15天前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限。它通过设置一系列规则,控制谁可以访问特定资源、在什么条件下访问以及可以执行哪些操作。ACL 可以应用于路由器、防火墙等设备,分为标准、扩展、基于时间和基于用户等多种类型,广泛用于企业网络和互联网中,以增强安全性和精细管理。
78 7
|
4月前
|
消息中间件 存储 Serverless
函数计算产品使用问题之怎么访问网络附加存储(NAS)存储模型文件
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
17天前
|
存储 网络协议 安全
软件管理,磁盘存储,文件系统以及网络协议
【11月更文挑战第9天】本文介绍了软件管理、磁盘存储和网络协议等内容。软件管理包括软件生命周期管理和软件包管理,涉及需求分析、设计、实现、测试、发布、维护等阶段,以及软件包的安装、升级和依赖关系处理。磁盘存储部分讲解了磁盘的物理结构、分区与格式化、存储管理技术(如 RAID 和存储虚拟化)。网络协议部分涵盖了分层模型、重要协议(如 HTTP、TCP、IP)及其应用与安全。
|
2月前
|
网络协议 Ubuntu 前端开发
好好的容器突然起不来,经定位是容器内无法访问外网了?测试又说没改网络配置,该如何定位网络问题
本文记录了一次解决前端应用集成到主应用后出现502错误的问题。通过与测试人员的沟通,最终发现是DNS配置问题导致的。文章详细描述了问题的背景、沟通过程、解决方案,并总结了相关知识点和经验教训,帮助读者学习如何分析和定位网络问题。
105 0
|
3月前
|
数据采集 存储 JavaScript
构建您的第一个Python网络爬虫:抓取、解析与存储数据
【9月更文挑战第24天】在数字时代,数据是新的金矿。本文将引导您使用Python编写一个简单的网络爬虫,从互联网上自动抓取信息。我们将介绍如何使用requests库获取网页内容,BeautifulSoup进行HTML解析,以及如何将数据存储到文件或数据库中。无论您是数据分析师、研究人员还是对编程感兴趣的新手,这篇文章都将为您提供一个实用的入门指南。拿起键盘,让我们开始挖掘互联网的宝藏吧!
|
2月前
|
存储 网络协议 数据挖掘
|
4月前
|
存储 机器学习/深度学习 分布式计算
HDFS与网络附加存储(NAS)的比较
【8月更文挑战第31天】
110 0
|
4月前
|
数据采集 存储 JavaScript
构建你的首个Python网络爬虫:抓取、解析与存储数据
【8月更文挑战第31天】在数字时代的浪潮中,数据成为了新的石油。了解如何从互联网的海洋中提取有价值的信息,是每个技术爱好者的必备技能。本文将引导你通过Python编程语言,利用其强大的库支持,一步步构建出你自己的网络爬虫。我们将探索网页请求、内容解析和数据存储等关键环节,并附上代码示例,让你轻松入门网络数据采集的世界。
|
4月前
|
JSON 安全 网络协议
【Azure Policy】添加策略用于审计Azure 网络安全组(NSG)规则 -- 只能特定的IP地址允许3389/22端口访问
为了确保Azure虚拟机资源的安全管理,只有指定IP地址才能通过RDP/SSH远程访问。解决方案包括使用Azure Policy服务扫描所有网络安全组(NSG),检查入站规则中的3389和22端口,并验证源地址是否在允许的IP列表中。不符合条件的NSG规则将被标记为非合规。通过编写特定的Policy Rule并定义允许的IP地址参数,实现集中管控和合规性检查。
|
8天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的知识,并提供一些实用的技巧和建议,帮助读者更好地保护自己的网络安全和信息安全。