实验环境:修改两台虚拟机防火墙默认区域为trusted

[root@server0 ~]# firewall-cmd --set-default-zone=trusted

[root@desktop0 ~]# firewall-cmd --set-default-zone=trusted

1、parted

划分分区的指令:parted (专门做大空间划分 2T)

GPT: 突破了4个主分区限制,可以有很多主分区

1.1交互式分区

[root@server0 ~]# parted /dev/vdb  #为磁盘分区

(parted) print                      #输出分区表

(parted) mktable gpt          #设置分区模式为GPT

(parted) mkpart                  #划分新的分区

分区名称?  []? haha           #分区名称随便起:

文件系统类型?  [ext2]? ext4   #文件系统不起作用

起始点? 0                      #上一个分区的结束,是下一个分区的开始

结束点? 2G

忽略/Ignore/放弃/Cancel? Ignore  #忽略,分区表信息会占用一部分空间

(parted) print                   #输出分区表

(parted) quit 

[root@server0 ~]# ls /dev/vdb1

 

1.2非交互式分区

parted -s /dev/vdc mklabel gpt

parted -s /dev/vdc mkpart primary  0G  10240M

mkfs.ext4 /dev/vdc1


2、iSCSI网络磁盘

• Internet SCSI,网际SCSI接口

 一种基于C/S架构的虚拟磁盘技术

 服务器提供磁盘空间,客户机连接并当成本地磁盘使用

服务端思路:

1.划分分区

2.运行targetcli命令

------>建立后端存储

------>建立共享磁盘起名

------>关联将共享磁盘名字与后端存储联系起来

------>做ACL 允许客户端通过那个名字来访问

------>启用端口和IP


• ISCSI Qualified Name 名称规范

 iqn.yyyy-mm.倒序域名:自定义标识

用来识别 target 磁盘组,也用来识别客户机身份

 

服务端server0:

1.服务端软件,targetcli

2.运行targetcli命令进行配置

[root@server0 ~]# targetcli

/> ls

/> backstores/block create  nsd  /dev/vdb1   #创建后端存储并起名

/> iscsi/ create iqn.2017-12.com.example:server0 #为共享磁盘起名

/> iscsi/iqn.2017-12.com.example:server0/tpg1/luns     create  /backstores/block/nsd                 #关联后端存储

/> iscsi/iqn.2017-12.com.example:server0/tpg1/acls      create iqn.2017-12.com.example:desktop0          #设置客户端名称

/> iscsi/iqn.2017-12.com.example:server0/tpg1/portals     create  172.25.0.11                              #启用端口与IP

Using default IP port 3260

Created network portal 172.25.0.11:3260.

/> saveconfig                  //保存配置结果(缺省

/> exit

3.重起服务,设置为开机自起

[root@server0 ~]# systemctl restart target

[root@server0 ~]# systemctl enable target

 

客户端desktop0:

1.安装一个客户端软件

[root@desktop0 ~]# yum repolist

[root@desktop0 ~]# yum -y install iscsi-initiator-utils.i686

2.指定客户端自称的名字

[root@desktop0 ~]# vim /etc/iscsi/initiatorname.iscsi

#指明访问服务端,客户端自称的名字,是服务端ACL指定的名称

InitiatorName=iqn.2017-12.com.example:desktop0

[root@desktop0 ~]# systemctl restart iscsid

3.发现服务端位置

[root@desktop0 ~]# man  iscsiadm

[root@desktop0 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover

[root@desktopX ~]# iscsiadm -m discovery -t st -p serverX  //发现磁盘

[root@desktopX ~]# iscsiadm -m node -L all     //连接磁盘

 

[root@desktopX ~]# vim /var/lib/iscsi/nodes/iqn.2016-02.com.example\:server0/*/default

node.conn[0].startup = automatic

//把 manual 改成 automatic

.. ..

[root@desktopX ~]# systemctl enable iscsid

//将 iscsi 服务设开机自启

 

4.加载共享存储

[root@desktop0 ~]# lsblk

[root@desktop0 ~]# systemctl restart iscsi

[root@desktop0 ~]# systemctl daemon-reload

[root@desktop0 ~]# systemctl restart iscsi

[root@desktop0 ~]# systemctl enable iscsi

[root@desktop0 ~]# lsblk

 

5.开机自动挂载

[root@desktopX ~]# lsblk               //确认多出的磁盘,比如/dev/sda

[root@desktopX ~]# fdisk /dev/sda

Command (m for help): n                // n 新建分区

 

[root@desktopX ~]# partprobe /dev/sda   //刷新分区表

[root@desktopX ~]# mkfs.ext4 /dev/sda1  //按要求格式化分区

[root@desktopX ~]# mkdir /mnt/data      //创建挂载点

[root@desktopX ~]# blkid /dev/sda1      //找到分区 UUID

/dev/sda1: UUID="6ff20bb3-7543-4fa0-b4fa-bdc99a1e63ce" .. ..

[root@desktopX ~]# vim /etc/fstab    //开机自挂载

UUID="6ff20bb3-7543-4fa0-b4fa-bdc99a1e63ce" /mnt/data ext4 _netdev 0 0

[root@desktopX ~]# mount -a

[root@desktopX ~]# sync ; reboot -f         //先存盘再强制重启,避免关机卡死

 

客户端:刷新/etc/iscsi/initiatorname.iscsi文件的服务

[root@desktop0 ~]# systemctl restart iscsid

[root@desktop0 ~]# systemctl restart iscsi