使用FreeNAS软件部署ISCSI的SAN架构存储(IP-SAN)练习题
一,实验用到工具分别为:
VMware虚拟机,安装教程:VMware Workstation Pro 17 安装图文教程
FreeNAS系统,安装教程:FreeNAS-11.2-U4.1安装教程2024(图文教程)
二,新建虚拟机"IP-SAN Server",添加6块300G大小的磁盘并安装FreeNAS系统;添加两块网卡,IP地址分别设置为"10.1.1.88"、"20.1.1.88"。
前提:freenas已经安装好了,并命名为:IP-SAN Server
1,首先在网络编辑器添加两张网卡分别为VMnet5和VMnet6:









2,在IP-SAN Server虚拟机上添加6块300G大小的磁盘:







分别按照以上的步骤在添加5块300G硬盘,总共6块如以下图:

3,添加两张网卡:
由于系统已经自带了一张,我们只要添加的一张网卡就可以。


两个适配器指定不同的网卡,第一张指定为:VMnet5,第二张指定为:VMnet6


以上步骤都做好了如下图:

4,IP-SAN Server 两块网卡,IP地址分别设置为"10.1.1.88"、"20.1.1.88":

先修改第一张网卡的IP,进去系统后输入:1 (回车)

输入:1(回车)

输入:n(回车)

输入:n(回车)

输入:y(回车)

不用输入什么直接回车

输入:10.1.1.88(回车)

输入:24(回车)

输入:n(回车)
修改第二张网卡的IP输入:1 (回车)

两张网卡的ip都修改完成了,如以下图:

二,使用全部6块磁盘创建存储池"SAN_Storage",存储池布局选择"Raid-z2"。
1,使用任意一款浏览器,输入10.1.1.88进行访问freenas的web界面:

进入web界面后,使用root用户进行登录。
2,用6块磁盘创建存储池"SAN_Storage",存储池布局选择"Raid-z2":





以上做完成后,如以下图:

三,新建门户"10.1.1.88:3260"、"20.1.1.88:3260",均要求开启发现CHAP认证,用户名为:admin,密码为:163.com163.com。
1,先添加用户名为:admin,密码为:163.com163.com。


2,新建两个门户"10.1.1.88:3260"、"20.1.1.88:3260":




以上步骤都做好了,如下图:

四,新建目标"admin-winclt",为该目标配置两个区块(Extent),区块1大小为100G,区块2大小为500G,均使用Zvol格式并存储在"SAN_Storage"上,为该目标启用双向CHAP认证,正反向用户名均为admin,正向密码为163.com163.com,反向密码为:123.com123.com。
1,添加正反向用户名均为admin,正向密码为163.com163.com,反向密码为:123.com123.com:


以上都做好后,如以下图:

2,创建启动器:
注意:如果点击 Initiators 添加显示的跟我不一样,在左上有允许所有的启动器的就打勾(跟我一样就略)


以上做好如以下图:

3,新建目标"admin-winclt",为该目标配置两个区块(Extent),区块1大小为100G,区块2大小为500G,均使用Zvol格式并存储在"SAN_Storage"上,为该目标启用双向CHAP认证:






以上都做好如以下图:





都做好如以下图:

五,新建目标"admin-linuxclt",为该目标配置一个区块(Extent),区块1大小为200G,使用Zvol格式并存储在"SAN_Storage"上,为该目标启用双向CHAP认证,正向用户名为[admin-clt],反向用户名为:admin-srv,正向密码为:163.com163.com,反向密码为:123.com123.com。
1,创建组正向用户名为:admin-clt,反向用户名为:admin-srv,正向密码为:163.com163.com,反向密码为:123.com123.com。


做好如以下图:

2,新建目标 admin-linuxclt并为该目标启用双向CHAP认证:


以上做好如以下图:

3,为 admin-linuxclt 目标配置一个区块大小为200G,使用Zvol格式并存储在"SAN_Storage"上:


做好如以下图:



做好如以下图:

4,配置目标"admin-winclt"仅能通过门户"10.1.1.88:3260"进行连接,目标"admin-linuxclt"仅能通过门户"20.1.1.88:3260"进行连接。
由于我们前面 admin-winclt 和 admin-linuxclt 已经做了,这里就略了。


5,开启iscsi服务(这里非常重要):
有很多人做不成就是因为ISCSI服务没有开启。

六,安装并配置Windows Server 2019主机(iSCSI客户端),使用iSCSI发起程序通过门户"10.1.1.88:3260"连接到目标:admin-winclt。
1,安装Windows Server 2019:
转:Windows Server 2019 安装图文教程超详细(2024版)
2,配置winserver 2019跟freenas的10.1.1.88通一网段:
前提winserver2019已经安装好



进入系统后先 ping 10.1.1.88 通不通,ping通就往下做,不通就把winserver 2019的网卡改为自动获取的在ping。






没有报连接失败就是没有问题。









输入快捷 win + x :

可以看到有两块磁盘,分别为:100G和500G:

只要吧磁盘进行联机,然后在初始化,在新建卷就可以使用了
七,安装并配置Linux主机(iSCSI客户端),使用iscsi-initiator-utils程序通过门户:20.1.1.88:3260连接到目标:admin-linuxclt。
1,centos7安装教程:
转:Centos7安装教程 -- 2024(图文超详细)
2,修改centos网卡跟freenas的20.1.1.88同一张网卡:



先ping一下20.1.1.88如果通了以下的就可以略了。
如果ping不通20.1.1.88的修改ip




到桌面右键打开终端


能ping通就可以往下做了
修改iscsi配置文件:
vim /etc/iscsi/iscsid.conf

输入键盘上的 ESC 输入 :set nu 显示行号

注意我当前用的系统是centos7,因为每个系统位置都不同,修改的行号可能有偏差。
输入键盘上的 i 进行编辑,修改第57行,把前面的#去掉:

修改68,69和73,74行前面的#去掉,并添加验证密码:

修改78行前面的#去掉:

修改82,83行前面的#去掉,并添加验证密码:

以上都修改好后点击键盘上的 ESC 输入 :wq 保持并退出。
使用iscsi连接20.1.1.88的门户
iscsiadm -m discovery -t sendtargets -p 20.1.1.88

连接到20.1.1.88目标:
iscsiadm -m node -T iqn.2005-10.org.freenas.ctl:admin-linuxclt -l

相关文章:
使用FreeNAS软件部署ISCSI的SAN架构存储(IP-SAN)练习题
一,实验用到工具分别为: VMware虚拟机,安装教程:VMware Workstation Pro 17 安装图文教程 FreeNAS系统,安装教程:FreeNAS-11.2-U4.1安装教程2024(图文教程) 二,新建虚…...
Sql Sqserver 相关知识总结
Sql Sqserver 相关知识总结 文章目录 Sql Sqserver 相关知识总结前言优化语句查询(select)条件过滤(Where)分组处理(GROUP BY)模糊查询(like)包含(in)合集&am…...
面试题整理17----K8s中request和limit资源限制是如何实现的
面试题整理17----K8s中request和limit资源限制是如何实现的 1. 资源请求(Resource Requests)2. 资源限制(Resource Limits)3. 总结 在Kubernetes(K8s)中,Pod的资源限制(Resource Lim…...
Spring Boot @Conditional注解
在Spring Boot中,Conditional 注解用于条件性地注册bean。这意味着它可以根据某些条件来决定是否应该创建一个特定的bean。这个注解可以放在配置类或方法上,并且它会根据提供的一组条件来判断是否应该实例化对应的组件。 要使用 Conditional注解时&#…...
jpeg文件学习
相关最全的一篇文章链接:https://www.cnblogs.com/wtysos11/p/14089482.html YUV基础知识 Y表示亮度分量:如果只显示Y的话,图像看起来会是一张黑白照。 U(Cb)表示色度分量:是照片蓝色部分去掉亮度&#x…...
c++基于过程
前言: 笔记基于C黑马程序员网课视频:黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难_哔哩哔哩_bilibili 在此发布笔记,只是为方便学习,不做其他用途,原作者为黑马程序员。 1. C基础 1.1 用Visual Studio写C程…...
FOC软件 STM32CubeMX 使用
1、安装-及相关软件版本 展示版本注意事项:keil MDK和STM32CubeMX版本至少要大于等于图中版本。 2、 Motor Profiler 5.2.0使用方法...
leetcode hot 100 全排列
46. 全排列 已解答 中等 相关标签 相关企业 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 class Solution(object): def permute(self, nums): """ :type nums: List[int] :rtype: List[List[int…...
使用qrcode.vue生成当前网页的二维码(H5)
使用npm: npm install qrcode.vue 使用yarn: yarn add qrcode.vue package.json: 实现: <template><div class"code"><qrcode-vue :value"currentUrl" :size"size" render-as&…...
0055. shell命令--useradd
目录 55. shell命令--useradd 功能说明 语法格式 选项说明 选项 退出值 相关文件 /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/skel/ /etc/login.defs /etc/default/useradd 实践操作 注意事项 55. shell命令--useradd 功能说明 useradd 命令是 Lin…...
blender中合并的模型,在threejs中显示多个mesh;blender多材质烘培成一个材质
描述:在blender中合并的模型导出为glb,在threejs中导入仍显示多个mesh,并不是统一的整体,导致需要整体高亮或者使用DragControls等不能统一控制。 原因:模型有多个材质,在blender中合并的时候,…...
vue 本地自测iframe通讯
使用 postMessage API 来实现跨窗口(跨域)的消息传递。postMessage 允许你安全地发送消息到其他窗口,包括嵌套的 iframe,而不需要担心同源策略的问题。 发送消息(父应用) 1. 父应用:发送消息给…...
C++:单例模式
创建自己的对象,同时确保对象的唯一性。 单例类只能有一个实例☞静态成员static☞静态成员 必须类外初始化 单例类必须自己创建自己的唯一实例 单例类必须给所有其他对象提供这一实例 静态成员类内部可以访问 构造函数私有化☞构造函数私有外部不能创建&#x…...
SOME/IP 协议详解——信息格式
文章目录 1. 头部格式1.1 消息 ID(Message ID)1.2 长度(Length)1.3 请求 ID(Request ID)1.4 协议版本(Protocol Version):1.5 接口版本(Interface Version&am…...
C# GDI+数码管数字控件
调用方法 int zhi 15;private void button1_Click(object sender, EventArgs e){if (zhi > 19){zhi 0;}lcdDisplayControl1.DisplayText zhi.ToString();} 运行效果 控件代码 using System; using System.Collections.Generic; using System.Drawing.Drawing2D; using …...
在交叉编译中,常见的ELF(elf)到底是什么意思?
ELF 是 Executable and Linkable Format 的缩写,中文翻译为“可执行与可链接格式”。它是一种通用的文件格式,主要用于存储可执行文件、目标文件(编译后的中间文件)、动态库(.so 文件)以及内存转储文件&…...
Unity开发AR之Vuforia-MultiTarget笔记
前言 在增强现实(AR)技术蓬勃发展的今天,越来越多的开发者开始探索如何将AR应用于各种场景中。Vuforia作为一个领先的AR开发平台,为开发者提供了强大的工具和功能,使得创建AR体验变得更加简单和直观。本文将为您介绍Vuforia的基本概念、特点,以及如何配置和使用MultiTar…...
深入解析 Oracle 的聚合函数 ROLLUP
目录 深入解析 Oracle 的聚合函数 ROLLUP一、ROLLUP 函数概述二、ROLLUP 函数语法三、ROLLUP 实例详解(一)基础分组聚合(二)引入 ROLLUP 函数(三)ROLLUP 与 NULL 值(四)多列复杂分组…...
Wend看源码-Java-集合学习(List)
摘要 本篇文章深入探讨了基于JDK 21版本的Java.util包中提供的多样化集合类型。在Java中集合共分类为三种数据结构:List、Set和Queue。本文将详细阐述这些数据类型的各自实现,并按照线程安全性进行分类,分别介绍非线程安全与线程安全的实现方…...
【软件】教务系统成绩提交工具使用步骤
【软件】教务系统成绩提交工具使用步骤 零、快速开始 安装 与大多数软件一样,安装步骤很简单,一直点击“下一步”即可快速完成安装,安装完成后,在桌面会有一个软件图标,双击即可打开软件主界面。 导入成绩到Excel中…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
深入理解Optional:处理空指针异常
1. 使用Optional处理可能为空的集合 在Java开发中,集合判空是一个常见但容易出错的场景。传统方式虽然可行,但存在一些潜在问题: // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...
