ISCSI块存储-集群
ISCSI块存储-集群
1、ISCSI概述
ISCSI与SCSI原理对比
- 底层都是硬盘
- ISCSI第二层就是通过gateway/网络获取–>
- SCSI:是直连获取
常见的用于ISCSI服务的网络拓扑类型
-
SAN:Storage Area Network:存储区域网络;
- 多采用告诉光纤通道;对速率、冗余性要求很高
- 具体的拓扑环境:网络–>ISCSI服务器–>交换机–>ISCSI存储服务器
-
Network Attachment Storage,网络附加存储
- 采用普通以太网;
- 对速率、冗余没有特别的要求
- 大体上的网络拓扑:网络–>ISCSI服务器–>交换机–>ISCSI存储服务器
-
其实两者就是对速度的要求有明显的不同
ISCSI的工作方式:
- ISCSI的工作模式:
- 使用的就是C/S架构
- 服务(设备端):–>target
- 客户端(应用端):–>initator
- 工作拓扑:ISCSI客户机–>LUN(逻辑单元、逻辑磁盘空间)—>ISCSI服务器
- 使用的就是C/S架构
2、实验搭建
规划:
- 使用两台服务器
- 一台是iscsi服务器:192.168.75.110
- 多添加一块硬盘
- 硬盘做LVM处理
- 一台是iscs客户端:192.168.75.11
- 一台是iscsi服务器:192.168.75.110
实验过程:
iscsi服务器的配置:
- 先搭建LVM(这一步可做可不做–>真实服务器当中是使用硬raid)
- 创建物理卷、创建卷组、创建逻辑卷
- 格式化逻辑卷
- 挂载到一个目录上–>完成搭建
- 安装iscsi服务器软件–>
- scsi-target-utilsyum
- 启动服务–>tgtd
- 创建一个IQN标签
- 有固定的命名规则:
- 如果想要永久生效–>就得修改配文件
#虚拟机准备好一块sdb硬盘#具体的操作步骤:-->虚拟机-->设置-->添加-->添加硬盘#进入到系统之后准备做lvm逻辑硬盘
#创建物理卷
[root@node0 ~]# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created
#创建卷组
[root@node0 ~]# vgcreate vg0 /dev/sdb Volume group "vg0" successfully created
#创建逻辑卷
[root@node0 ~]# lvcreate -L 1G -n lv0 vg0Logical volume "lv0" created#对创建的逻辑卷进行格式化
[root@node0 ~]# mkfs -t ext4 /dev/vg0/lv0
[root@node0 ~]# echo $?
0
#创建好了之后等待挂载使用
- 安装服务器端–>target端创建IQN标签
#直接安装服务器端软件-->创建iscsi对象
[root@node0 ~]# yum -y install scsi-target-utils yum#然后直接开启服务
[root@node0 ~]# service tgtd start
Starting SCSI target daemon: [ OK ]#查看一下服务器状态
[root@node0 ~]# netstat -anpt | grep tgtd
tcp 0 0 0.0.0.0:3260 0.0.0.0:* LISTEN 1632/tgtd#创建target硬盘存储
[root@node0 ~]# tgtadm -L iscsi -o new -m target -t 1 -T iqn.2023-2.com.liangjiawei.www:lvm#详细的解释如下:
-->-L:指定驱动类型
-->-o:指定操作类型
-->-m:制定管理的对象
-->-t:制定当前存储资源的ID号
-->-T:指定iqn标签-->这里注意命名规则:iqn.创建年-月.域名反写:自定义#查看target创建的信息
[root@node0 ~]# tgtadm -L iscsi -o show -m target
Target 1: iqn.2023-2.com.liangjiawei.www:lvmSystem information:Driver: iscsiState: readyI_T nexus information:LUN information:LUN: 0Type: controllerSCSI ID: IET 00010000SCSI SN: beaf10Size: 0 MB, Block size: 1Online: YesRemovable media: NoPrevent removal: NoReadonly: NoBacking store type: nullBacking store path: NoneBacking store flags: Account information:ACL information:
- 接下来就要绑定IQN标签到存储设备
#直接使用命令
[root@node0 ~]# tgtadm -L iscsi -o new -m logicalunit -t 1 -l 1 -b /dev/vg0/lv0 #命令解析如下
-->-L:指定驱动类型
-->-o:指定操作类型
-->-m:指定管理对象
-->-t:指定标签好
-->-l:指定逻辑存储单元的标签
-->-b:指定具体的设备名#直接授权iscsi客户端
[root@node0 ~]# tgtadm -L iscsi -o bind -m target -t 1 -I 192.168.75.11#到这里为止-->服务器端配置成功
iscsi客户端的配置:
- 安装客户端的软件–>iscsi-initiator-utils
- 这里还需要给共享的磁盘进行分区
- 创建好了–>挂载使用即可;
#直接安装iscsi的客户端软件
[root@node1 ~]# yum -y install iscsi-initiator-utils#申请授权使用iscsi的服务器资源
[root@node1 ~]# iscsiadm -m discovery -t st -p 192.168.75.110
Starting iscsid: [ OK ]
192.168.75.110:3260,1 iqn.2023-2.com.liangjiawei.www:lvm#在客户端进行挂载使用
[root@node1 ~]# iscsiadm -m node -T iqn.2023-2.com.liangjiawei.www:lvm --login
Logging in to [iface: default, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] (multiple)
Login to [iface: default, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] successful.#卸载命令
[root@node1 ~]# iscsiadm -m node -T iqn.2023-2.com.liangjiawei.www:lvm --logout
Logging out of session [sid: 1, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260]
Logout of [sid: 1, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] successful.#如果想要实现开机自动挂载就要写入fstab文件
[root@node1 ~]# vim /etc/fstab #在末行添加-->重点就是那个挂载的格式
/dev/sdb /mnt ext4 defaults,_netdev 0 0
3、永修生效
- 修改配置文件–>生产环境使用–>永久生效
#做好备份配置文件
[root@node0 ~]# cp -a /etc/tgt/targets.conf{,.bak}
..........
<iqn.2023-2.com.liangjiawei.www>backing-store /dev/vg0/lv0inittiator-address 192.168.75.11
</target>
...................#然后直接重启服务
[root@node0 ~]# service tgtd restart
Stopping SCSI target daemon: [ OK ]
Starting SCSI target daemon: [ OK ]
iscsi客户端的配置:
- 安装客户端的软件–>iscsi-initiator-utils
- 这里还需要给共享的磁盘进行分区
- 创建好了–>挂载使用即可;
#直接安装iscsi的客户端软件
[root@node1 ~]# yum -y install iscsi-initiator-utils#申请授权使用iscsi的服务器资源
[root@node1 ~]# iscsiadm -m discovery -t st -p 192.168.75.110
Starting iscsid: [ OK ]
192.168.75.110:3260,1 iqn.2023-2.com.liangjiawei.www:lvm#在客户端进行挂载使用
[root@node1 ~]# iscsiadm -m node -T iqn.2023-2.com.liangjiawei.www:lvm --login
Logging in to [iface: default, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] (multiple)
Login to [iface: default, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] successful.#卸载命令
[root@node1 ~]# iscsiadm -m node -T iqn.2023-2.com.liangjiawei.www:lvm --logout
Logging out of session [sid: 1, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260]
Logout of [sid: 1, target: iqn.2023-2.com.liangjiawei.www:lvm, portal: 192.168.75.110,3260] successful.
相关文章:
ISCSI块存储-集群
ISCSI块存储-集群 1、ISCSI概述 ISCSI与SCSI原理对比 底层都是硬盘 ISCSI第二层就是通过gateway/网络获取–>SCSI:是直连获取 常见的用于ISCSI服务的网络拓扑类型 SAN:Storage Area Network:存储区域网络; 多采用告诉光纤…...

11.Maxwell 部署
Maxwell 部署 一、环境准备 1、确保服务器上已经安装好了zookeeper、kafka、MySQL软件; (1)启动zookeeper: /usr/app/zookeeper3.4/bin/zkServer.sh start(2)启动三台主题的kafka 启动:bin/kafka-serv…...

一文速学-GBDT模型算法原理以及实现+Python项目实战
目录 前言 一、GBDT算法概述 1.决策树 2.Boosting 3.梯度提升 使用梯度上升找到最佳参数 二、GBDT算法原理 1.计算原理 2.预测原理 三、实例算法实现 1.模型训练阶段 1)初始化弱学习器 2)对于建立M棵分类回归树: 四、Python实现 …...

前端——2.HTML基本结构标签
这篇文章我们从0来介绍一下HTML的相关标签内容 目录 1.HTML语法规范 1.1基本语法概述 1.2标签关系 2.HTML的基本结构标签 2.1第一个HTML网页 2.2基本结构标签总结 1.HTML语法规范 下面,我们来看一下HTML的语法规范的内容 1.1基本语法概述 首先,…...
OAK深度相机使用不同镜头和本地视频流进行模型推理
编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ 内容可能会不定期更新,官网内容都是最新的,请查看首发地址链接。 ▌前言 Hello,大家好,这里是OAK中国,我是助手…...

[项目] Boost搜索引擎
目录 1.项目相关背景 2.项目宏观原理 3.技术栈和项目环境 4.正排索引&&倒排索引 5.去标签与数据清洗 6.构建索引模块Index 6.1正排索引 6.2 建立倒排 jiebacpp使用 建立分词 7.搜索引擎模块Searcher Jsoncpp -- 通过jsoncpp进行序列化和反序列化 处理Cont…...

解决新版QGIS找不到Georeferencer插件
目录1. 问题分析1.1 去 Raster 找,没找到1.2 去插件搜,未搜到1.3 插件库里也搜不到2. 解决办法在 QGIS 3.30中,按常规办法,找不到 Georeferencer插件,它并没有被安装,在库中也找不到它, 请问问题…...

c---冒泡排序模拟qsort
一、冒泡排序 二、冒泡排序优化排各种类型数据 文章目录一、冒泡排序二、冒泡排序优化排各种类型数据冒泡排序 冒泡排序原理:两两相邻元素进行比较 初级版 void bulle_sort(int* a, int sz) {int i 0;for (int i 0; i < sz-1; i){int j 0; for (j 0; j…...
Java知识复习(十四)JS
1、数据类型 基本数据类型:null、undefinde、boolean、string、number、symbol(ES6新增)引用数据类型:Function、Array、Object、Map和Set(ES6新增) 2、let、var和const的区别 var定义的变量,…...
代码随想录刷题-数组-移除元素
文章目录写在前面习题我的想法暴力解法双指针写在前面 本节对应代码随想录中:代码随想录 习题 题目链接: 27. 移除元素- 力扣(LeetCode) 给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素&a…...

聚观早报 |拼多多跨境电商业务正式登陆澳洲;中国加快6G网络研发
今日要闻:拼多多跨境电商业务正式登陆澳洲;全球自动驾驶公司排名特斯拉垫底;中国将加快 6G 网络研发;B站再次“崩”上热搜!已闪电修复;微软将必应AI聊天每次对话上限增加至8条拼多多跨境电商业务正式登陆澳…...

MDK Keil5 创建Stm32工程-理论篇(这里以Stm32F103Zet6为例)
一、文件夹创建与文件说明整个工程可以粗略的划分为几个文件夹:BSP底层驱动比如GPIO\Timer等驱动文件CMSIS内核相关的文件Firmware生成的固件下载文件Mycode用户编写的相关文件,主要编写的文件都在这个文件夹里Project工程文件startup芯片启动文件STM32F…...

应届大学生学什么技术好?哪些技术适合年轻人?
到了毕业季,应届大学生面临的就是就业问题,很多专业的大学生难以找到对口的工作,或是不得已随便就业,或者是学个技术高薪就业,那么,问题来了,应届大学生学什么技术好?哪些技术适合年…...

车企数据分类分级的实践指南出炉!“数据安全推进计划”发布,奇点云参编
日前,“数据安全推进计划”(DSI)正式发布《智能网联汽车数据分类分级实践指南》(下文简称“指南”),旨在以合规为主要导向,明确智能网联汽车数据分类分级的方法论,为数据全生命周期的…...

Nginx学习 (2) —— 虚拟主机配置
文章目录虚拟主机原理域名解析与泛域名解析(实践)配置文件中ServerName的匹配规则技术架构多用户二级域名短网址虚拟主机原理 为什么需要虚拟主机: 当一台主机充当服务器给用户提供资源的时候,并不是一直都有很大的用户量&#…...

Java 动态代理简述和实例
Java动态代理是一种在运行时动态创建代理对象的技术。它可以让我们在不修改原始代码的情况下,对原始对象进行增强或者添加额外的行为。这种代理方式可以用于很多场景,例如AOP编程、RPC框架等。动态代理是基于Java反射机制实现的,它允许程序在…...

Unity编译器扩展(Advanced Editor Scripting)
Untiy编译器扩展允许我们对编译器的增加自己编写的的功能菜单栏MenuItemContextMenu和ContextMenuItemContextMenuContextMenuItemMenuItem 该属性允许您将菜单项添加到主菜单和检查器窗口上下文菜单。 该属性将任何静态函数转换为菜单命令。只有静态函数可以使用该属性。 Men…...
AFR机制及流程介绍
AFR(Auto Fast Return)不符合3GPP协议标准,因此终端默认是disable状态。如果运营商有要求可以配置开启。 AFR有两种场景 2G或者3G AFR到4G4G AFR到5G3G AFR TO 4G AFR到LTE功能的作用就是终端从LTE Handover或者重定向到3G进行业务,等业务做完后能够快速回到LTE网络。...

9.Hbase 部署
9.Hbase部署 注意事项: 1:必须事先安装 Hadoop分布式集群,zookeeper分布式集群 2:查看版本号: hbase version1、解压文件并改名 tar -zxvf /opt/software/hbase-2.2.3-bin.tar.gz -C /usr/app/ mv hbase-2.2.3/ hba…...

【maven 学习记录】
maven 学习记录一、maven基础1. maven是什么2. maven的作用3. maven的下载安装4. maven仓库5. maven坐标6. 第一个maven项目 手工实现7. maven插件8. 依赖管理9. 生命周期二、maven进阶一、maven基础 1. maven是什么 maven的本质是一个项目管理工具,将项目开发和管…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
怎么让Comfyui导出的图像不包含工作流信息,
为了数据安全,让Comfyui导出的图像不包含工作流信息,导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo(推荐) 在 save_images 方法中,删除或注释掉所有与 metadata …...
智能职业发展系统:AI驱动的职业规划平台技术解析
智能职业发展系统:AI驱动的职业规划平台技术解析 引言:数字时代的职业革命 在当今瞬息万变的就业市场中,传统的职业规划方法已无法满足个人和企业的需求。据统计,全球每年有超过2亿人面临职业转型困境,而企业也因此遭…...