LUN Mapping和ZONE

本文介绍了在多业务系统中如何利用LUNMasking、LUNMapping及ZONE功能实现主机对不同卷的安全访问。通过详细解释这三种技术的概念、工作原理及其应用场景,帮助读者理解存储系统中的访问控制机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在多业务系统中,存储上的LUN MappingLUN Masking要与FC SWITCH上的ZONE功能配合起来使用,目的是使用不同的主机只能访问到不同的卷。

LUN MappingLUN Masking是存储设备自身具有的功能,也需要在存储设备的管理设置软件或设置工具中来完成。

LUN Masking

LUN masking是指LUN与主机HBA卡的WWN地址绑定,与主机HBA卡建立一对一或多对一的连接和访问关系。无论主机跳线到同一个FABRIC(无zone设置)的哪一个端口上,主机都能识别到相同的LUN。存储设备一般默认在卷和主机间建立多对一的对应关系,即一台主机可访问存储设备上的多个卷。

在非共享的应用系统中,一般在卷和主机建立一(主机)对多(卷)的关系,不同业务类型的工作站分别访问不同的LUN。在共享式的应用系统中,一般采用多(主机)对一(卷)关系。

LUN Mapping

LUN MappingLUN与存储设备的主机端口进行绑定,工作站连接不同的主机端口时所能访问的LUN不同。

当一个存储系统同时为多个应用系统提供数据存储服务,且不同应用系统的主机分别处于不同的地理地址时,有可能用到第二种LUN Mapping方式。即将不同的LUN与不同的存储主机端口绑定,不同的主机端口与不同的FC交换机或者不同的ZONE连接,从而实现不同的工作站只能访问不同的端口。

一个LUN Mapping中所对应的LUN和存储主机端口成为一个分区。由于存储设备的主机端口数量是一定的,如果划分的LUN Mapping分区越多,分区中存储主机端口就会越少。存储设备的冗余链路连接功能就越小,当一个分区里只能设置一个主机端口是,存储就失去了冗余链路连接功能,整个系统极易因存储主机端口和交换机端口的故障而发生单点故障。

当系统无FC交换机,主机与存储设备的主机端口直连时,通过LUN Mapping实现起来LUN分区非常方便。当所有主机端口都连接到同一个FABRIC时,就需要与 FCswitch的ZONE结合起来一起使用。

不同厂商对LUN Masking和LUN Mapping的定义和解释不完全相同。有的甚至就定义成一个名称,如SAN SHARE,而有的存储干脆就没有LUN Masking和LUN Mapping功能。

ZONE

FC SWITCH上的ZONE功能类似于以太网交换机上的VLAN功能,它是将连接在SAN网络中的设备(主机和存储),逻辑上划到为不同的区域内,使得不同区域中的设备相互间不能FC网络直接访问,从而实现网络中的设备之间的相互隔离。

例如下图:

假设两台FC交换机通过级连线连接成一个fabric。红色区域的交换机端口属于ZONE 1,绿色区域属于zone 2,蓝色区域属于zone 3,橙色区域既属于zone 1又属于zone 3,白色为扩张端口区域,不需要定义zone

在这两台FC交换机组成的fabric中,凡是红色区域zone 1中的设备之间都可以相互访问,但是不能访问绿色区域和蓝色区域中的设备,但可以访问橙色区域中的设备,因为橙色也属于zone 1。

蓝色区域与红色区域相似。

绿色区域zone 2中的设备之间只能可以相互访问,别的任何区域的设备。

橙色区域中的设备既可以访问红色区域中的设备,又可以访问狼色区域中的设备,但不能访问绿色区域中的设备。

按照中方法,无论存储系统的结构有多么复杂,都可以通过画图的方式把LUN、存储设备主机端口,交换机端口和工作站之间的关系分析清楚。

### Thin LUN Thick LUN 的概念 #### 基本定义 Thick LUN 是一种预先分配全部所需存储空间的技术,在创建逻辑单元号 (Logical Unit Number, LUN) 时会立即占用指定大小的空间,无论该空间是否被实际使用[^1]。这种机制确保了数据写入时无需额外的时间来分配磁盘块,从而提高了性能。 相比之下,Thin LUN 则采用按需分配的方式,仅在有数据写入时才真正分配所需的存储空间[^3]。这种方式能够显著提升存储资源的利用率,因为未使用的部分不会占据任何物理存储位置。 --- ### 性能对比分析 #### Thick LUN 的优势与局限性 由于 Thick LUN 在初始化阶段就完成了所有必要的空间预留工作,因此其读写操作通常具有更高的效率更低的延迟。然而,这种方法可能导致大量的存储空间闲置,尤其是在初期部署或业务负载较低的情况下,造成资源浪费。 #### Thin LUN 的灵活性代价 尽管 Thin LUN 提供了一种更加灵活且高效的存储管理方式,但由于它依赖于动态分配策略,可能会遇到碎片化问题——即随着频繁的数据增删改查活动,所分配的存储区域变得零散而不连续,进而影响整体 I/O 性能表现。 --- ### 应用场景探讨 对于那些对响应速度极为敏感的应用程序来说,比如数据库管理系统或者在线交易处理平台,选用 Thick LUN 可以更好地满足它们严格的 SLA 要求[^2]。而在虚拟机环境或其他需要快速扩展但又难以预测确切需求量的地方,则更适合利用 Thin LUN 来优化成本控制并简化运维流程。 此外,通过现代存储系统的智能化功能支持下(例如自动分层存储),即使选择了初始类型的某种形式之后也有可能调整为另一种模式以适应新的业务挑战发展趋势。 ```python # 示例代码展示如何模拟两种不同类型的LUN创建过程 class StorageSystem: def __init__(self): self.thick_luns = {} self.thin_luns = {} def create_thick_lun(self, name, size_gb): """ 创建厚LUN """ allocated_space = size_gb * 1024 ** 3 # 即刻分配整个请求的空间 self.thick_luns[name] = {"size": size_gb, "allocated": allocated_space} def create_thin_lun(self, name, max_size_gb): """ 创建精简LUN """ initial_allocation = 0 # 开始时不分配任何实际空间 self.thin_luns[name] = { "max_size": max_size_gb, "current_allocated": initial_allocation, } storage_system = StorageSystem() storage_system.create_thick_lun("lun_01", 100) storage_system.create_thin_lun("thin_lun_01", 50) print(storage_system.thick_luns["lun_01"]) print(storage_system.thin_luns["thin_lun_01"]) ``` 上述脚本简单演示了一个假设性的类 `StorageSystem` 中分别用于实例化 thick thin 类型 LUNs 方法的设计思路及其差异之处。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值