之前介绍过网络文件共享系统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. property的使用(事件可能就是回调函数)

    TOnUserInfoShow = procedure(userName:string;userAge:Integer)of object;//定义事件模型中的回调函数原型 TUserInfo = c ...

  2. GTest翻译词汇表

    版本号:v_0.1 词汇表 Assertion: 断言. Bug: 不翻译. Caveat: 警告. Error bound: 误差范围. Exception: 异常. Flag: 标志位. Floa ...

  3. BITED数学建模七日谈之一:参加全国大学生数学建模比赛前你需要积累哪些

    大家好,我是数学中国的版主magic2728,非常高兴能够借助数学中国这个平台分享一些自己的经验,帮助大家在国赛的最后备战中能够最后冲刺提高.分享一共分为七个部分,分七天写给大家,下面是第一个部分:参 ...

  4. 移动端数据爬取和Scrapy框架

    移动端数据爬取 注:抓包工具:青花瓷 1.配置fiddler 2.移动端安装fiddler证书 3.配置手机的网络 - 给手机设置一个代理IP:port a. Fiddler设置 打开Fiddler软 ...

  5. java集合框架collection(5)HashMap和TreeMap

    上图转载自:http://www.cnblogs.com/vamei/archive/2013/04/15/3000913.html 一.区别和联系 1.迭代器 迭代器是一种设计模式,它是一个对象,它 ...

  6. 30255Java_5.5 GUI

    GUI GUI的各种元素(如:窗口,按钮,文本框等)由Java类来实现 1.AWT 使用AWT所涉及的类一般在java.awt包及其子包中 AWT(Abstract Window Toolkit)包括 ...

  7. 一道经典的js面试题

    # 声明:学习编程语言最好的方式就是通过实例学习 ## 下面是我在博客上看到的一道js面试题,可以说非常经典,下面会以最简单的方式让你理解题目:```bashfunction Foo() { getN ...

  8. Spring Boot:整合JdbcTemplate

    综合概述 Spring对数据库的操作在jdbc上面做了更深层次的封装,而JdbcTemplate便是Spring提供的一个操作数据库的便捷工具.我们可以借助JdbcTemplate来执行所有数据库操作 ...

  9. Zookeeper详解-基础(二)

    在深入了解ZooKeeper的运作之前,让我们来看看ZooKeeper的基本概念.我们将在本章中讨论以下主题: Architecture(架构) Hierarchical namespace(层次命名 ...

  10. Fabric1.4源码解析: 链码容器启动过程

    想写点东西记录一下最近看的一些Fabric源码,本文使用的是fabric1.4的版本,所以对于其他版本的fabric,内容可能会有所不同. 本文想针对Fabric中链码容器的启动过程进行源码的解析.这 ...