iSCSI存储服务器

目录

一、ISCSI是什么?

二、ISCSI产生背景

三、存储分类

四、ISCSI架构

五、ISCSI存储服务搭建案例


一、ISCSI是什么?

ISCSI名为互联网小型计算机系统接口又称为IP-SAN,是一种新的远程存储技术,提供存储服务的目标服务器默认使用的是3260/TCP端口。使用远程存储设备的客户端(又称为initiators发起程序)通过互联网传输SCSI数据存储命令到远端存储设备服务器(又称为target目标服务器)来存储数据。ISCSI客户端连接登录到远程存储设备服务器之后,本地将产生一块虚拟的存储块设备就像是本地添加了一块硬盘一样,用户可以像使用本地磁盘设备一样对其虚拟存储设备进行操作,存储数据。但实际上客户端向虚拟设备存储的数据是被直接通过网络发给并保存在ISCSI目标服务器的本地物理存储设备内。

二、ISCSI产生背景

在早期我们的服务器、电脑有一个SCSI接口专门用于连接我们本地的外围设备如:打印机、摄像头、存储设备等。后来随着TCP/IP网络传输速率的快速发展ISCSI协议诞生,通过此协议用户可以将网络上的远程主机的存储资源映射到本地来使用,就像给本地主机添加了一块新的磁盘一样,可以对其进行格式化,创建逻辑卷、raid等。

三、存储分类

1、DAS直连附加存储

使用SCSI或SATA母线直接将磁盘与电脑主板相连给电脑系统提供存储,如:笔记本电脑、移动硬盘。

优点:配置使用简单,可以直接使用裸设备,可以块为单位交付给主机系统。

缺点:数据的读写都需要消耗主机的内存和CPU资源、磁盘直接与主机绑定不能共享,主板接口有限扩容问题。

2、NAS网络附加存储

通过互联网将主机上的文件目录共享出去,比如Samba服务就是一种NAS存储,网络附加存储解决了数据不能共享或单一性的问题。NAS一般是单一主机给多个主机共享数据,进一步拉低了数据传输效率。

硬盘--->raid---->lvm----->nfs/cifs

优点:配置使用简单、共享文件系统、由于数据的读写是在共享服务器上进行处理不消耗服务器资源、以文件为单位交付给主机系统。

缺点:不支持裸设备、无法对共享目录进行扩容。

3、SAN存储区域网络

将服务器与用户流量访问的网络与服务器与存储区域网络分开,降低服务器访问压力。服务器与存储设备使用交换机连接在一个广播域。服务器有两张网卡,分别连接公网接收用户的访问和通过交换机连接存储设备,使的用户访问服务器的流量与服务器访问后台存储设备的流量分开,降低了带宽和服务器压力,如:FC-san光纤存储、IP-san、ISCSI服务成本低、对网卡传输速率要求较高。

点:共享块设备、支持裸设备、可以块为单位供网络中主机使用、通过网络共享存储设备,数据在存储服务器上进行读写而不消耗客户端主机资源、可以进行扩容。

缺点:配置复杂、成本高

四、ISCSI架构

  • iSCSI target:就是储存设备端,存放磁盘或 RAID 的设备,目前也能够将 Linux 主机仿真成 iSCSI target 了!目的在提供其他主机使用的『磁盘』
  • iSCSI initiator:就是能够使用 target 的客户端,通常是服务器。 也就是说,想要连接到 iSCSI target 的服务器,也必须要安装 iSCSI initiator 的相关功能后才能够使用 iSCSI target 提供的磁盘就是了。

五、ISCSI存储服务搭建案例

实验环境:

iSCSI-Server:服务端 Centos 8 192.168.0.1

iSCSI-Client-Linux: 客户端 Centos8 192.168.0.10

iSCSI-Client-Windows: 客户端 Windows7 192.168.0.20

实验准备: 设置IP地址、服务端配置yum源、

一、配置iSCSI服务端

1、准备用于共享的物理存储空间

以硬盘的形式存在的:添加一块硬盘(/dev/sda)

以文件的形式存在的:

2、安装iSCSI服务端程序:targetcli

3、调用targetcli命令进行服务端配置。创建用于网络共享的iscsi虚拟磁盘。

4、创建用于共享iSCSI虚拟磁盘的目标程序

5、将刚创建的iscsi虚拟磁盘添加到目标,即创建服务卷luns。将iscsi虚拟磁盘以服务卷的形式共享给客户端发起程序。

6、设置目标存储服务器所监听的接口IP和使用的端口号(此处可省略)

7、为客户端发起程序创建名称。

说明:acls目录用于控制客户端发起程序登录iscsi目标服务器。只有客户端发起程序的名称与此目录下定义的客户端发起程序的名称一致才允许客户端登录到iscsi目标服务器。

8、iscsi目标服务器开启对客户端发起程序的chap认证。只有客户端发起程序配置的用户名和密码与目标服务器配置的一致才允许客户端发起程序访问iscis虚拟磁盘。

注意:如果设置的登录用户用于windows系统,则windows发起程序要求

chap认证的用户密码不少于12位。

9、最后检查iscsi目标服务端配置是否误。

10、防火墙放行iscsi目标服务器target服务端口、开启target服务。

二、配置iSCSI客户端

Linux客户端:

1、安装iscsi客户端发起程序iscsi-initiator-utils(红帽8默认已安装)

2、进入到iscsi客户端发起程序配置文件所在目录。

initiatorname.iscsi:设置客户端发起程序的名称

iscsid.conf: 启用chap认证

3、启动客户端发起程序iscsid服务

4、发现iscsi目标服务程序

6、设置客户端发起程序开机后自动连接iscsi目标服务器(客户端发起程序默认开机自动连接目标服务器,因此此处无需配置)

7、登录到iscsi目标服务器

8、查看iscsi“网盘”,并对/dev/sdb虚拟磁盘分区、格式化、永久挂载。

分区:

格式化:

永久挂载:

9、在挂载好的iscsi虚拟磁盘中创建文件进行测试

10、断开与iscsi目标服务器的连接

windows客户端:

1、修改iscsi客户端发起程序名称

2、启用chap认证连接到目标服务器

4、将目标服务器上的iscsi虚拟磁盘服务卷或设备永久挂载、绑定到系统。一便系统内的服务程序可以在系统开机后第一时间使用iscsi虚拟磁盘创建的分盘。

5、给iscsi虚拟磁盘分区格式化,来创建E盘。

点击控制面板----->管理工具----->计算机管理---->磁盘管理

6、进入到文件资源管理器查看通过iscsi网络虚拟磁盘创建的E盘。并创建文件测试。

@声明:“山月润无声”博主知识水平有限,以上文章如有不妥之处,欢迎广大IT爱好者指正,小弟定当虚心受教!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/65886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++】学习STL中的stack和queue

❤️前言 今天这篇博客的内容主要关于STL中的stack、queue和priority_queue三种容器。 正文 stack和queue的使用方式非常简单,我们只要根据之前学习数据结构的经验和文档介绍就可以轻松上手。于是我们直接开始对它们的模拟实现。 stack和queue的模拟实现 stack和q…

大数据HBase学习圣经:一本书实现HBase学习自由

学习目标:三栖合一架构师 本文是《大数据HBase学习圣经》 V1版本,是 《尼恩 大数据 面试宝典》姊妹篇。 这里特别说明一下:《尼恩 大数据 面试宝典》5个专题 PDF 自首次发布以来, 已经汇集了 好几百题,大量的大厂面试…

实际并行workers数量不等于postgresql.conf中设置的max_parallel_workers_per_gather数量

1 前言 本文件的源码来自PostgreSQL 14.5,其它版本略有不同并行workers并不能显箸提升性能。个人不建议使用并行worker进程,大多数情况下采用postgresql.conf默认配置即可。 PostgreSQL的并行workers是由compute_parallel_worker函数决定的&#xff0c…

Java-Optional类

概述 Optional是JAVA 8引入的一个类,用于处理可能为null的值。 利用Optional可以减少代码中if-else的判断逻辑,增加代码的可读性。且可以减少空指针异常的发生,增加代码的安全性。 常用的方法 示例 代码 public class OptionalTest {pub…

[深度学习]大模型训练之框架篇--DeepSpeed使用

现在的模型越来越大,动辄几B甚至几百B。但是显卡显存大小根本无法支撑训练推理。例如,一块RTX2090的10G显存,光把模型加载上去,就会OOM,更别提后面的训练优化。 作为传统pytorch Dataparallel的一种替代,D…

基于java+springboot+vue的交流互动系统-lw

​ 系统介绍: 随着现在网络的快速发展,网上管理系统也逐渐快速发展起来,网上管理模式很快融入到了许多企业的之中,随之就产生了“交流互动系统”,这样就让交流互动系统更加方便简单。 对于本交流互动系统的设计来说&a…

继承【C++】

文章目录 继承的概念继承的定义继承方式和访问限定符继承基类成员访问方式的变化 默认继承方式 基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元静态成员菱形继承及菱形虚拟继承继承的方式 菱形虚拟继承菱形虚拟继承原理 继承的概念 继承(inheritance)…

【Unity笔记】TimeLine的详细使用介绍

文章目录 前言素材一、timeline基础介绍1. 打开timeline轨道面板2. 创建TimeLine轨道3. Timeline常用轨道4. 修改Timeline单位5. 锁定界面 二、timeline的通用轨道使用三、Cinemeachine虚拟相机结合Timeline实现场景移动四、DialogueTrack:自定义的对话轨道(自己编写…

swagger 接口测试,用 python 写自动化时该如何处理?

在使用Python进行Swagger接口测试时,可以使用requests库来发送HTTP请求,并使用json库和yaml库来处理响应数据。以下是一个简单的示例代码: import requests import json import yaml# Swagger API文档地址和需要测试的接口路径 swagger_url …

设计模式之原型模式

文章目录 概述克隆羊问题传统方式解决克隆羊问题传统的方式的优缺点原型模式原理结构图-uml 类图原理结构图说明 原型模式解决克隆羊问题的应用实例原型模式在Spring框架中的应用深入讨论-浅拷贝和深拷贝浅拷贝的介绍深拷贝基本介绍深拷贝应用实例注意事项 概述 原型模式&…

Linux - Docker 安装使用 常用命令 教程

Docker 官方文档地址: Get Started | Docker 中文参考手册: https://docker_practice.gitee.io/zh-cn/ 1.什么是 Docker 1.1 官方定义 最新官网首页 # 1.官方介绍 - We have a complete container solution for you - no matter who you are and where you are on your contain…

Linux学习之NAS服务器搭建

NAS是Network Attached Storage的缩写,也就是网络附属存储。可以使用自己已经不怎么使用的笔记本搭建一台NAS服务器。 fdisk -l可以看一下各个磁盘的状态。 可以看到有sda、sdb、sdc和sdd等四块硬盘。 lvs、vgs和pvs结合起来看,sdb和sdc没有被使用。 …

Mac“其他文件”存放着什么?“其他文件”的清理方法

很多Mac用户在清理磁盘空间时发现,内存占用比例比较大的除了有iCloud云盘、应用程序、影片、音频、照片等项目之外,还有一个“其他文件”的项目磁盘占用比也非常大,想要清理却无从下手。那么Mac“其他文件”里存放的是什么文件?我…

文本标注技术方案(NLP标注工具)

Doccano doccano 是一个面向人类的开源文本注释工具。它为文本分类、序列标记和序列到序列任务提供注释功能。您可以创建用于情感分析、命名实体识别、文本摘要等的标记数据。只需创建一个项目,上传数据,然后开始注释。您可以在数小时内构建数据集。 支持…

并发下的Map常见面试题

HashMap 和 HashTable 有什么区别?java中的另一个线程安全的与HashMap极其类似的类是什么?同样是线程安全,它与HashTable在线程同步上有什么不同?HashMap 与 ConcurrentHashMap的区别?为什么 ConcurrentHashMap 比 Has…

开源且强大的网络嗅探分析工具——Wireshark

Wireshark是一款强大的开源网络协议分析工具,旨在帮助用户深入了解网络通信的细节。通过捕获、解析和展示网络数据包,Wireshark能够帮助工程师诊断问题、优化性能,以及解决各种网络难题。无论是深入分析还是快速调试,Wireshark都是…

封装(个人学习笔记黑马学习)

1、格式 #include <iostream> using namespace std;const double PI 3.14;//设计一个圆类&#xff0c;求圆的周长 class Circle {//访问权限//公共权限 public://属性//半径int m_r;//行为//获取圆的周长double calculateZC() {return 2 * PI * m_r;} };int main() {//通…

QT day1登录界面设计

要设计如下图片&#xff1a; 代码如下&#xff1a; main.cpp widget.h widget.cpp 运行效果&#xff1a; 2&#xff0c;思维导图

DEAP库文档教程四——操作与算法

本节将将在初始化的基础上&#xff0c;进一步说明操作与算法。 1、Using the Toolbox toolbox(base.Toolbox())是包含所有进化操作的工具箱&#xff0c;从目标初始化到适应度计算。它允许在每个算法中实现简单的构造。toolbox基本上由两种方法组成&#xff0c;register()和un…

一些自己整理的工具实用参数

工具实用参数 sqlmap -u: 指定需要测试的目标URL&#xff08;格式&#xff1a;http://www.example.com/test.php?id1&#xff09; --cookie: 设置需要发送的 HTTP Cookie&#xff0c;例如&#xff1a;--cookie"sid123456;PHPSESSID654321" --threads&#xff1a;…