之前介绍过网络文件共享系统NFS和CIFS。在系统中,设备也是可以共享的,这就是iSCSI,它可以用来建立和管理IP存储设备、主机和客户机等之间的相互连接。下文将简要介绍这种网络设备共享系统。
       1、安装

因为iSCSI是设备共享系统,所以在进行操作之间,需要先有一个硬盘设备。本文中是使用"fdisk /dev/vdb"来新建一个分区设备"/dev/vdb1"来作为共享设备。

"yum install targetcli -y"。服务端需要安装这个软件,来提供iSCSI服务。完成后关闭防火墙,开启服务并设置开机启动。

2、服务端配置

输入"targetcli"命令,进入下图界面,输入"ls"可以查看是否有配置。

现对共享设备"/dev/vdb1"进行配置,配置步骤如下所示:

a、"/backstores/block create we:storage1 /dev/vdb1"。建立一个基于"/dev/vdb1"的共享设备。

b、"/iscsi create iqn.2017-08.com.example:storage1"。建立一个"iscsi",名称为"iqn.2017-08.com.example:storage1",用于客户端连接。

c、"/iscsi/iqn.2017-08.com.example:storage1/tpg1/luns create /backstores/block/we:storage1"。将建立的"iscsi"与建立的共享设备"we:storage1"连接起来。

d、"/iscsi/iqn.2017-08.com.example:storage1/tpg1/acls create iqn.2017-08.com.example:storage1key"。生成一个加密密钥。

e、"/iscsi/iqn.2017-08.com.example:storage1/tpg1/portals create 172.25.254.202"。打开服务的端口。

完成后输入"exit"退出。服务端的配置就完成了。
       3、客户端配置
        在服务端配置完成后,就需要在客户端挂载这个设备,如若挂载成功,那么就实现了网络设备共享。在客户端还要做如下配置:

a、"yum install iscsi-initiator-utils.x86_64 -y"。这是客户端需要安装的软件。然后关闭防火墙,开启服务"iscsi"。

b、"vim /etc/iscsi/initiatorname.iscsi"。在这个文件中编写服务端中设置的加密密钥,输入"InitiatorName=iqn.2017-08.com.example:storage1key"。配置完成后需要"systemctl restart iscsi"重启服务。

c、"iscsiadm -m discovery -t -st -p 172.25.254.202"。查看"172.25.254.202"的主机即服务端共享了什么设备。

d、"iscsiadm -m node -T iqn.2017-08.com.example:storage1 -p 172.25.254.202 -l"。加载服务端共享的设备"iqn.2017-08.com.example:storage1"。

e、"fdisk -l"。可以看到设备里多了一个设备"/dev/sda"。

f、"fdisk /dev/sda"。对这个设备分区,完成后输入"mkfs.xfs /dev/sda1"来格式化设备。

上述步骤完成后,客户端就可以挂载这个设备"/dev/sda1"了。

4、共享设备的卸载与删除
       在共享设备使用完成后,为了不占用系统资源,需要对共享设备所做的配置进行删除。具体步骤如下所示:
       a、客户端的设备卸载
       "umount /mnt"。卸载挂载的共享设备。
       "iscsiadm -m node -T iqn.2017-08.com.example:storage1 -u"。卸载之前所加载的共享设备。

"iscsiadm -m node -T iqn.2017-08.com.example:storage1 -o delete"。删除这个共享设备。因为如果只是使用卸载命令,虽然使用"fdisk -l"看不到这个设备,但是如果重启"iscsi"服务,这个设备还会自动重新加载,所以需要删除这个设备。

b、服务端的配置删除
       "targetcli"。进入共享设备配置界面。

"clearconfig confirm=True"。输入此命令删除之前所做的所有设备共享配置。

完成客户端和服务端的步骤,网络共享设备"iSCSI"就被卸载与删除了。
       5、iSCSI与LVM
        之前的LVM篇中有过介绍,LVM适用于设备大小提前未知的情况,即可以扩大和压缩磁盘空间,其本质也是一个设备,所以也可以应用于iSCSI,使得共享设备在空间不够时可以实现空间扩大。

使用的方法和普通设备类似,先配置一个LVM设备"/dev/isvg/islv0"。

完成后按照上述iSCSI的服务端配置步骤对此设备进行共享配置。

服务端配置完成后,客户端的配置方式与普通设备相同,即对其进行查询,加载,完成后就可以通过"fdisk -l"看到这个设备"/dev/sda"了,大小为5364M。

但是在LVM的空间扩大中,服务端扩大空间后,客户端并不能自动刷新。如下图所示,将这个LVM设备扩大至"6000M",需要在客户端先输入命令"iscsiadm -m node -T iqn.2017-08.com.example:storage1 -u"卸载这个加载的设备,然后"systemctl restart iscsi"重启服务,重新使用"fdisk -l"就可以看到这个共享设备的空间成功扩大至6219M了。

linux初学者-iscsi篇的更多相关文章

  1. linux初学者-SElinux篇

    linux初学者-SElinux篇 SElinux是强制访问控制(MAC)安全系统,是linux历史上最杰出的新安全系统.对于linux安全模块来说,SElinux的功能是最全面的,测试也是最充分的, ...

  2. linux初学者-firewall篇

     linux初学者-firewall篇 firewalld是防火墙的另一种程序,与iptables相同,但是使用起来要比iptables简单的点,不需要了解3张表和5条链也可以使用. 1.firewa ...

  3. linux初学者-mail篇

     linux初学者-mail篇 邮件是在生活中比较常用的一个工具,在linux系统中的邮件也是.在linux中,邮件的发送所用的服务时postfix,邮件的接收所用的服务是pop(110端口).ima ...

  4. linux初学者-iptables篇

     linux初学者-iptables篇 iptables是防火墙的一种,是用来设置.维护和检查linux内核的IP过滤规则的,可以完成封包过滤.封包重定向和网络地址转换(NAT)等功能. iptabl ...

  5. linux初学者-Apache篇

     linux初学者-Apache篇          Apache提供了超文本传输协议http,httpd是Apache超文本传输协议的主服务器.下文将对httpd的安装和配置进行简单的叙述.     ...

  6. linux初学者-ftp篇(一)

    linux初学者-ftp篇(一) FTP是文件传输协议,是用于Internet上的控制文件的双向传输.用户可以通过客户机程序从远程主机上下载或者向远程主机上传文件. linux系统中,如果不了解SEL ...

  7. linux初学者-磁盘阵列篇

    linux初学者-磁盘阵列篇 在磁盘的使用中,有时候需要提高磁盘的读写数据速度,就要用到磁盘组——raid,也就是磁盘阵列. 磁盘阵列是由最少两块以上的磁盘组成的,raid有许多模式,在这里将介绍其中 ...

  8. linux初学者-进程篇

    linux初学者-进程篇 不管是windows还是linux,都有进程,那么什么是进程呢?进程就是cpu未完成的工作.下面会介绍一些关于系统中进程的查看以及管理的方法. 1.命令 1.1.命令使用 查 ...

  9. ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘

    本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...

随机推荐

  1. 如何保证MQ消息必达

    此文章属于笔记,原属58沈剑 一.MQ消息必达,架构上的两个核心设计点: 消息落地 消息超时.重传.确认 四大部件:发送端 接收端 服务端 固化存储组成 二.上半场消息必达以及消息重复问题 上半场的流 ...

  2. linux 磁盘控件找到大文件

    df -lh Used:已经使用的空间 Avail:可以使用的空间 Mounted on:挂载的目录 然后找到大文件 du是linux下用看查看磁盘的命令 下面我们先一个目录的来查看空间占用情况 du ...

  3. 深入理解JVM(一)虚拟机内存

    一 .前言 JVM是什么,我想诸位肯定都清楚. 好吧,我还是简答说一下JVM即Java虚拟机(够简单吧 233333). 虽然说,所有抛开操作系统,讲虚拟机的内容,都是耍流氓.但是,贫僧不修善果,就爱 ...

  4. 很多程序员都没搞明白的时间与时区知识 - 24时区/GMT/UTC/DST/CST/ISO8601

    全球24个时区的划分      相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究竟 ...

  5. 上手更快的网络文件系统 —— oxfs

    什么时候需要网络文件系统? 做嵌入式的同学经常会使用 NFS 讲 host 上的某个目录挂载到开发板上,方便 host 上编译构建后能直接在板子上运行,减少手工拷贝操作. 网站开发时,在 host 上 ...

  6. JavaWeb入门_模仿天猫整站Tmall_SSM实践项目

    Tmall_SSM 技术栈 Spring MVC+ Mybatis + Spring + Jsp + Tomcat , 是 Java Web 入门非常好的练手项目 效果展示: 模仿天猫前台 模仿天猫后 ...

  7. 六种 主流ETL 工具的比较(DataPipeline,Kettle,Talend,Informatica,Datax ,Oracle Goldengate)

    六种 主流ETL 工具的比较(DataPipeline,Kettle,Talend,Informatica,Datax ,Oracle Goldengate) 比较维度\产品 DataPipeline ...

  8. Linux 安装Nginx与使用

    最近继续整理Linux相关文档.这次整理的是Nginx,这里将自己整理的详细文档做个笔记. 1.  安装环境依赖包 1. gcc 语言编译器套件. 2. pcre 兼容正则表达式的库 rewrite ...

  9. C++类的完美单元测试方案——基于C++11扩展的friend语法

    版权相关声明:本文所述方案来自于<深入理解C++11—C++11新特性解析与应用>(Michael Wong著,机械工业出版社,2016.4重印)一书的学习. 项目管理中,C语言工程做单元 ...

  10. CentOS 操作防火墙

    1:查看防火状态 systemctl status firewalld 2:暂时关闭防火墙 systemctl stop firewalld 3:永久关闭防火墙 systemctl disable f ...