远程块存储iSCSI
/* Border styles */ #table-2 thead, #table-2 tr { border-top-width: 1px; border-top-style: solid; border-top-color: rgb(230, 189, 189); } #table-2 { border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(230, 189, 189); } /* Padding and font style */ #table-2 td, #table-2 th { padding: 5px 10px; font-size: 12px; font-family: Verdana; color: rgb(177, 106, 104); } /* Alternating background colors */ #table-2 tr:nth-child(even) { background: rgb(238, 211, 210) } #table-2 tr:nth-child(odd) { background: #FFF }
简介
. Internet小型计算机系统接口(iSCSI)是一个基于TCP/IP的协议,用于通过IP网络仿真SCSI高性能本地存储总线,从而为远程块存储设备提供数据传输和管理 . 作为存储区域网络SAN协议,iSCSI跨本地和广域网络(LAN、WAN以及Internet)扩展SAN,通过分布式服务器和数组提供独立于位置的数据存储检索 . SCSI协议套件提供基于设备总线通信协议的命令描述器块CDB命令集。对于每个通道的所有设备,原始SCSI拓扑使用长度限制为20米的物理布线 . 设备使用唯一数字目标ID(-,对于双通道为0-) . 广泛实施的光纤通道(FC)已淘汰了物理SCSI磁盘和布线,FC保留了SCSI的CDB命令集,但是将磁盘和总线通信更换为协议以便进行更长且速度更快的光纤布线 . iSCSI协议还保留了CDB命令集,在通过标准TCP/IP封装的iSCSI系统之间执行总线通信 . iSCSI服务器使用文件、逻辑卷或任何类型的磁盘作为底层存储来仿真呈现为目标的SCSI设备 . iSCSI服务通常在层次高于操作系统TCP/IP堆栈或TCP卸载引擎TOE的软件中实施 . iSCSI还可以作为主机总线适配器HBA以硬件方式实施,以更大地提高性能
企业级SAN专用流量基础架构
. FC的独立光纤布线和交换机保证了隔离 . iSCSI应该在独立于标准LAN流量的布线中实施,因为性能可能会由于共享网络上的带宽拥塞而降级 . 以太网和FC现在均提供铜缆和光缆布线选项,允许网络整合与流量分类组合使用
安全性
. 存储区域网络流量通常是未加密的,因为物理服务器到存储器的布线通常密封在安全的数据中心内 . 对于WAN安全性,iSCSI和以太网光纤通道FCoE可以利用互联网协议安全性IPsec,这是一个用于保护IP网络流量的协议套件 . 选择可以提供加密的联网硬件(首先NIC、TOE和HBA) . iSCSI提供质询握手身份验证协议CHAP用户名和密码作为身份验证机制,以限制所选启动器和目标之间的连接
iSCSI协议的运行方式
类型于客户端-服务器配置
客户端系统将启动器软件配置为SCSI命令发送到远程服务器存储目标,访问的iSCSI目标在客户端系统上显示为本地且未格式化的SCSI块设备
| 术语 | 描述 |
|---|---|
| 启动器 | 一个iSCSI客户端,通常以软件提供,但是也可以作为iSCSI HBA来实施。必须为启动器授予唯一名称 |
| 目标 | 一个iSCSI存储资源,针对来自iSCSI服务器的连接而配置。必须为目标授予唯一名称。目标提供一个或多个带有编号的块设备,称为逻辑单元。一个iSCSI服务器可以同时提供多个目标 |
| ACL | 访问权限控制列表,一种使用节点IQN来验证启动器的访问权限的访问限制 |
| 发现 | 查询目标服务器以列出配置的目标。目标使用要求其他的访问步骤 |
| IQN | iSCSI限定名称,一个全球唯一名称,用于以强制命名格式来识别启动器和目标:iqn.YYYY-MM.com.reversed.domain[:optional_string](iqn表示此名称将使用域作为其标识符) |
| 登录 | 向目标或LUN进行身份验证以开始使用客户端块设备 |
| LUN | 逻辑单元号,带有编号的块设备,连接到目标并且通过目标来使用。可以有一个或多个LUN连接到单个目标,但通常一个目标仅提供一个LUN |
| 节点 | 任何iSCSI启动器或iSCSI目标,由其IQN来标识 |
| 门户 | 目标或启动器上用于建立连接的IP地址和端口。一些iSCSI实施将门户和节点互换使用 |
| TPG | 目标门户组,某个特定iSCSI目标将要侦听的接口IP地址和TCP端口的集合。可以将目标配置添加到TPG以协调多个LUN的设置 |
targetcli配置目标服务器
准备:
CentOS7服务器一台,IP:192.168.198.128
CentOS7客户端一台,IP:192.168.198.129
服务器端
# 安装
yum install -y targetcli
# 运行targetcli进入交互模式
targetcli
# 准备好一个逻辑卷
http://www.cnblogs.com/cq146637/p/7806542.html
# 创建后备存储
# 1. block 服务器上定义的块设备。磁盘驱动器、磁盘分区、逻辑卷、多路径设备以及服务器上定义的任何b类型的设备文件
# 2. fileio 在服务器的文件系统中创建一个指定大小的文件。此方法类似于使用映像文件作为虚拟机磁盘映像的存储
# 3. pscsi 物理SCSI。允许透传到连接服务器的物理SCSI设备。通常不使用此后备存储类型
# 4. ramdisk 在服务器上的内存中创建一个指定大小的ramdisk设备。重启时,所有数据都将丢失
# 创建一个块设备
/backstores/block create server.disk1 /dev/iscsi_vg/iscsi_lvm
# 为目标创建IQN
/iscsi create iqn.2018-01.com.example:server
# 在TPG中,创建一个ACL以供客户端节点稍后使用
/iscsi/iqn.2018-01.com.example:server/tpg1/acls create iqn.2018-01.com.example:client
# 在此TPG中,为每个现有后备存储创建一个LUN
/iscsi/iqn.2018-01.com.example:server/tpg1/luns create /backstores/block/server.disk1
# 在TPG中,创建一个门户配置以指定侦听IP地址和端口
/iscsi/iqn.2018-01.com.example:server/tpg1/portals create 192.168.198.128
# 保存配置
saveconfig
# 退出
exit
# 启动服务,并配置为开机自启动
systemctl enable target
systemctl restart target
客户端
# 安装
yum install -y iscsi-initiator-utils
# 修改配置中的ACL为服务器指定的ACL
vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2018-01.com.example:client
:wq
# 启动服务,并配置为开启自启动
systemctl enable iscsi iscsid
systemctl restart iscsi iscsid
# 发现一下服务器,两次iscsiadm -m node是为了防止不能正常重启的BUG
iscsiadm -m discovery -t st -p 192.168.198.128
iscsiadm -m node -T iqn.2018-01.com.example:server
iscsiadm -m node -T iqn.2018-01.com.example:server -l
# 发现到块设备以磁盘形式挂载到系统上,使用命令就可以查看到相应大小的存储设备
fdisk -l
# 使用此设备,一定要看清楚是否是相应大小的设备,如果对正在使用的磁盘制作文件系统后果不堪设想!!!
mkfs.ext4 /dev/sdb
# 追加磁盘UUID到fstab文件中,配置开机自动挂载
blkid /dev/sdb >> /etc/fstab
vim /etc/fstab
UUID="ec694b7a-9d33-4053-a4f5-a8b0cbeabad8" /mnt/iscsi ext4 defaults,_netdev 0 0
# 创建挂载点
mkdir /mnt/iscsi
# 挂载
mount -a
# 查看
df -h
# 结果: /dev/sdb 2.0G 6.0M 1.9G 1% /mnt/iscsi
# 重启客户端后依然可以看到挂载成功!!!
远程块存储iSCSI的更多相关文章
- 红帽学习记录[RHCE] ISCSI远程块储存
目录 iSCSI 定义 组件术语 启动器 目标 ACL 发现 IQN 登录 LUN 节点 门户 TPG 搭建一个iSCSI服务 提供一个iSCSI目标 配置iSCSI客户端 iSCSI 定义 SCSI ...
- 探索 OpenStack 之(9):深入块存储服务Cinder (功能篇)
继研究了Neutron之后,继续Nova的外围研究之旅.本站是研究块存储服务Cinder. 0.验证环境 环境包括: 1.一个controller节点,运行nova-api, nova-schedul ...
- 【恒天云技术分享系列10】OpenStack块存储技术
原文:http://www.hengtianyun.com/download-show-id-101.html 块存储,简单来说就是提供了块设备存储的接口.用户需要把块存储卷附加到虚拟机(或者裸机)上 ...
- 【openstack N版】——块存储服务cinder
一.块存储服务介绍 1.1块存储服务通常包含以下组件 cinder-api: 接受API请求,并将其路由到"cinder-volume"执行. cinder-volume: 与块存 ...
- cinder块存储 后端采用lvm、nfs安装配置
#cinder块存储 后端采用lvm.nfs安装配置 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html #cinder ...
- 存储那些事儿(三):OpenStack的块存储Cinder与商业存储的融合
OpenStack是一个美国国家航空航天局和Rackspace合作研发的云端运算软件,以Apache许可证授权,并且是一个自由软件和开放源代码项目.OpenStack是IaaS(基础设施即服务)软 ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 —9.块存储服务(cinder)部署配置
块存储服务部署相关块存储服务(cinder)为实例提供块存储.存储的分配和消耗是由块存储驱动器,或者多后端配置的驱动器决定的.还有很多驱动程序可用:NAS/SAN,NFS,ISCSI,Ceph等.典型 ...
- Openstack块存储cinder安装配置
openstack service create --name cinderv2 \ --description "OpenStack Block Storage" volumev ...
- 二十八. Ceph概述 部署Ceph集群 Ceph块存储
client :192.168.4.10 node1 :192.168.4.11 ndoe2 :192.168.4.12 node3 :192.168.4.13 1.实验环境 准备四台KVM虚 ...
随机推荐
- cglib源码主流程源码-我们到底能走多远系列48
扯淡 祝各位在园里的朋友新年快乐! 辛苦一年,为更好的自己也为更好的世界,很多人要感谢你们,你们也应该有很多人要感谢吧. 看了马斯克的采访视频,又想起兰迪·鲍许的最后一课,时光迁移,唯有梦想可坚持. ...
- JS中的内置对象简介与简单的属性方法
JS中的数组: 1.数组的概念: 数组是在内存中连续存储的多个有序元素的结构,元素的顺序称为下标,通过下标查找对应元素 2.数组的声明: ①通过字面量声明var arr1 = [,,,,] JS中同一 ...
- ASP.NET Core 2.0 : 四. _Layout与_ViewStart
本章我们新建一个项目,并通过这个项目熟悉一下_Layout与_ViewStart. 新建一个项目 首先, 文件->新建一个解决方案 选择.Net Core 的APP下面的ASP.NET Core ...
- web前端 ajax请求上传图片数据类型处理
form: function (url, paras, files, success) {//上传的文件类型是MultipartFile[]//如果把需要的参数直接传入,则会请求错误//设置请求参数的 ...
- [Python Study Notes] Python的安装
Windows: 1.下载安装包: 转到Python官网https://www.python.org/downloads/ ,下载最新版本的Python. 2.安装 安装到自定义的安装路径下. 3. ...
- TinyMce 使用初探
https://www.cnblogs.com/nkxyf/p/3883586.html 参考:http://www.tinymce.com/ 官网 http://www.tinymce.com ...
- nginx的负载均衡集群测试
分别在3台机子安装nginx和启动nginx服务. dir: 192.168.0.7 另外2台服务器为 192.168.0.5 ,192.168.0.6 在dir 192.168.0.7 上增加配置 ...
- 架构师入门:搭建双注册中心的高可用Eureka架构(基于项目实战)
本文的案例是基于 架构师入门:搭建基本的Eureka架构(从项目里抽取) 改写的. 在上文里,我们演示Eureka客户端调用服务的整个流程,在这部分里我们将在架构上有所改进.大家可以想象下,在上文里案 ...
- 新人学习selenium哪些资源比较有帮助?
为什么学习selenium? selenium现在基本上成了页面自动化测试的标配,具体理由我在selenium 3.0发布这篇文章里已经说明过了.当一个东西成为标准以后,那么它的能量和潜力都是巨大的. ...
- angular4升级angular5问题记录之this.location.back()
在之前的项目中,导航回上一个路由采用注入的Location服务,利用浏览器的历史堆栈,导航到上一步. 官方文档也就是这么写的 而然在升级到5.2的版本的时候,在浏览器运行的时候并没有什么问题,在项目打 ...