GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Konfigurieren Sie iSCSI Target &Initiator auf CentOS 7 / RHEL7

iSCSI steht für Internet Small Computer Systems Interface, IP-basierter Speicher, arbeitet auf dem Internetprotokoll, indem SCSI-Befehle über das IP-Netzwerk übertragen werden. iSCSI transportiert Daten auf Blockebene zwischen einem iSCSI-Initiator auf einem Client-Rechner und einem iSCSI-Ziel auf einem Speichergerät (Server).

iSCSI-Speicher wird als freigegebener Speicher im Redhat-Cluster verwendet , VMware vSphere, Redhat Enterprise Virtualization Manager, Ovirt usw.

Umgebung

Server: server.itzgeek.local

IP-Adresse: 192.168.12.20

Betriebssystem: CentOS Linux-Release 7.4.1708 (Core)

Kunde: node1.itzgeek.local

IP-Adresse: 192.168.12.11

Betriebssystem: CentOS Linux-Release 7.4.1708 (Core)

Speicherkonfiguration

Hier erstellen wir 5 GB LVM-Datenträger auf dem Zielserver, um ihn als gemeinsam genutzten Speicher für Clients zu verwenden. Lassen Sie uns die verfügbaren Festplatten auflisten, die mit dem folgenden Befehl an den Zielserver angeschlossen sind. Wenn Sie die gesamte Festplatte für LVM verwenden möchten, überspringen Sie den Schritt der Festplattenpartitionierung .

[root@server ~]# fdisk -l | grep -i sd

Ausgabe:

Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors
 /dev/sda1   *        2048     1026047      512000   83  Linux
 /dev/sda2         1026048   209715199   104344576   8e  Linux LVM
 Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors

Aus der obigen Ausgabe können Sie ersehen, dass mein System über eine 10-GB-Festplatte verfügt (/dev/sdb ). Wir erstellen eine 5-GB-Partition auf der obigen Festplatte und verwenden sie für LVM.

[root@server ~]# fdisk /dev/sdb
 Welcome to fdisk (util-linux 2.23.2).
 Changes will remain in memory only, until you decide to write them.
 Be careful before using the write command.
 Device does not contain a recognized partition table
 Building a new DOS disklabel with disk identifier 0x173dfa4d.
 Command (m for help): n  --> New partition
 Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
 Select (default p): p --> Pimary partition
 Partition number (1-4, default 1): 1 - -> Partition number
 First sector (2048-20971519, default 2048): --> Just enter
 Using default value 2048
 Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +5G  --> Enter the size
 Partition 1 of type Linux and of size 5 GiB is set
 Command (m for help): t  --> Change label
 Selected partition 1
 Hex code (type L to list all codes): 8e --> Change it as LVM label
 Changed type of partition 'Linux' to 'Linux LVM'
 Command (m for help): w --> Save
 The partition table has been altered!
 Calling ioctl() to re-read partition table.
 Syncing disks.

Erstellen Sie eine LVM mit /dev/sdb1-Partition (ersetzen Sie /dev/sdb1 durch Ihren Festplattennamen )

[root@server ~]# pvcreate /dev/sdb1
[root@server ~]# vgcreate vg_iscsi /dev/sdb1
[root@server ~]# lvcreate -l 100%FREE -n lv_iscsi vg_iscsi

iSCSI-Ziel konfigurieren

Jetzt haben Sie die Möglichkeit, ein Ziel entweder mit oder ohne Authentifizierung zu erstellen. In diesem Artikel finden Sie Schritte für beide Szenarien. Es liegt an Ihnen, zu entscheiden, welches für Ihre Umgebung geeignet ist.

Hier wird das iSCSI-Ziel ohne CHAP-Authentifizierung konfiguriert.

Installieren Sie das targetcli-Paket auf dem Server.

[root@server ~]# yum install targetcli -y

Geben Sie nach der Installation des Pakets den folgenden Befehl ein, um eine iSCSI-CLI für eine interaktive Eingabeaufforderung zu erhalten.

[root@server ~]# targetcli
Warning: Could not load preferences file /root/.targetcli/prefs.bin.
targetcli shell version 2.1.fb41
Copyright 2011-2013 by Datera, Inc and others.
For help on commands, type 'help'.
>

Verwenden Sie nun ein vorhandenes logisches Volume (/dev/vg_iscsi/lv_iscsi ) als Sicherungsspeicher vom Blocktyp für das Speicherobjekt scsi_disk1_server “.

/> cd backstores/block
/backstores/block> create scsi_disk1_server /dev/vg_iscsi/lv_iscsi
Created block storage object scsi_disk1_server using /dev/vg_iscsi/lv_iscsi.

Ziel erstellen.

/backstores/block> cd /iscsi
/iscsi> create iqn.2016-02.local.itzgeek.server:disk1
Created target iqn.2016-02.local.itzgeek.server:disk1.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
/iscsi>
lauscht

Erstellen Sie eine ACL für den Client-Rechner (es ist der IQN, den Clients verwenden, um sich zu verbinden).

/iscsi> cd /iscsi/iqn.2016-02.local.itzgeek.server:disk1/tpg1/acls
/iscsi/iqn.20...sk1/tpg1/acls> create iqn.2016-02.local.itzgeek.server:node1node2
Created Node ACL for iqn.2016-02.local.itzgeek.server:node1node2
erstellt

Erstellen Sie eine LUN unter dem Ziel. Die LUN sollte das zuvor erwähnte Sicherungsspeicherobjekt namens „scsi_disk1_server verwenden “.

/iscsi/iqn.20...er:disk1/tpg1> cd /iscsi/iqn.2016-02.local.itzgeek.server:disk1/tpg1/luns
/iscsi/iqn.20...sk1/tpg1/luns> create /backstores/block/scsi_disk1_server 
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.2016-02.local.itzgeek.server:node1node2

Überprüfen Sie die Konfiguration des Zielservers.

/iscsi/iqn.20.../tpg1/portals> cd /
/> ls
o- / ......................................................................................................................... [...]
  o- backstores .............................................................................................................. [...]
  | o- block .................................................................................................. [Storage Objects: 1]
  | | o- scsi_disk1_server .................................................. [/dev/vg_iscsi/lv_iscsi (5.0GiB) write-thru activated]
  | o- fileio ................................................................................................. [Storage Objects: 0]
  | o- pscsi .................................................................................................. [Storage Objects: 0]
  | o- ramdisk ................................................................................................ [Storage Objects: 0]
  o- iscsi ............................................................................................................ [Targets: 1]
  | o- iqn.2016-02.local.itzgeek.server:disk1 ............................................................................ [TPGs: 1]
  |   o- tpg1 .................................................................................................. [gen-acls, no-auth]
  |     o- acls .......................................................................................................... [ACLs: 1]
  |     | o- iqn.2016-02.local.itzgeek.server:node1node2 .......................................................... [Mapped LUNs: 1]
  |     |   o- mapped_lun0 ..................................................................... [lun0 block/scsi_disk1_server (rw)]
  |     o- luns .......................................................................................................... [LUNs: 1]
  |     | o- lun0 ............................................................... [block/scsi_disk1_server (/dev/vg_iscsi/lv_iscsi)]
  |     o- portals .................................................................................................... [Portals: 1]
  |       o- 0.0.0.0:3260 ..................................................................................................... [OK]
  o- loopback ......................................................................................................... [Targets: 0]Save and exit from target CLI.
/> saveconfig
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json
/> exit
Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json

Aktivieren Sie den Zieldienst und starten Sie ihn neu.

[root@server ~]# systemctl enable target.service
[root@server ~]# systemctl restart target.service

Konfigurieren Sie die Firewall, um iSCSI-Datenverkehr zuzulassen.

[root@server ~]# firewall-cmd --permanent --add-port=3260/tcp
[root@server ~]# firewall-cmd --reload

Initiator konfigurieren

Jetzt ist es an der Zeit, einen Client-Computer so zu konfigurieren, dass er das erstellte Ziel als Speicher verwendet. Installieren Sie das folgende Paket auf dem Clientcomputer (node1 ).

[root@node1 ~]# yum install iscsi-initiator-utils -y

Bearbeiten Sie die Datei initiatorname.iscsi.

[root@node1 ~]# vi /etc/iscsi/initiatorname.iscsi

Fügen Sie den iSCSI-Initiatornamen hinzu.

InitiatorName=iqn.2016-02.local.itzgeek.server:node1node2

Entdecken Sie das Ziel mit dem folgenden Befehl.

[root@node1 ~]# iscsiadm -m discovery -t st -p 192.168.12.20

Ausgabe:

 192.168.12.20:3260,1 iqn.2016-02.local.itzgeek.server:disk1

Starten Sie den Initiatordienst neu und aktivieren Sie ihn.

[root@node1 ~]# systemctl restart iscsid.service
[root@node1 ~]# systemctl enable iscsid.service

Melden Sie sich beim entdeckten Ziel an.

[root@node1 ~]# iscsiadm -m node -T iqn.2016-02.local.itzgeek.server:disk1 -p 192.168.12.20 -l

Ausgabe:

Logging in to [iface: default, target: iqn.2016-02.local.itzgeek.server:disk1, portal: 192.168.12.20,3260] (multiple)
Login to [iface: default, target: iqn.2016-02.local.itzgeek.server:disk1, portal: 192.168.12.20,3260] successful.

Dateisystem auf ISCSI-Datenträger erstellen

Sehen Sie sich nach der Anmeldung (Verbindung) mit dem erkannten Ziel die Nachrichtendatei an. Sie würden eine ähnliche Ausgabe wie unten finden, wo Sie einen Namen der Festplatte finden können.

[root@node1 ~]# cat /var/log/messages
Feb 23 14:54:47 node2 kernel: sd 34:0:0:0: [sdb] 10477568 512-byte logical blocks: (5.36 GB/4.99 GiB)
Feb 23 14:54:47 node2 kernel: sd 34:0:0:0: [sdb] Write Protect is off
Feb 23 14:54:47 node2 kernel: sd 34:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
Feb 23 14:54:48 node2 kernel: sdb: unknown partition table
Feb 23 14:54:48 node2 kernel: sd 34:0:0:0: [sdb] Attached SCSI disk

Ausgabe:

Feb 23 14:54:48 node2 iscsid: Could not set session2 priority. READ/WRITE throughout and latency could be affected.
Feb 23 14:54:48 node2 iscsid: Connection2:0 to [target: iqn.2016-02.local.itzgeek.server:disk1, portal: 192.168.12.20,3260] through [iface: default] is operational now

Listen Sie die angeschlossenen Laufwerke auf.

[root@node1 ~]# cat /proc/partitions

Ausgabe:

major minor  #blocks  name

   8        0  104857600 sda
   8        1     512000 sda1
   8        2  104344576 sda2
  11        0    1048575 sr0
 253        0    2113536 dm-0
 253        1   52428800 dm-1
 253        2   49799168 dm-2
   8       16    5238784 sdb

Formatieren Sie die neue Festplatte (für den Artikel habe ich die gesamte Festplatte formatiert, anstatt eine Partition zu erstellen)

root@node1 ~]# mkfs.xfs /dev/sdb

Ausgabe:

meta-data=/dev/sdb               isize=256    agcount=8, agsize=163712 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0
data     =                       bsize=4096   blocks=1309696, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Mounten Sie die Festplatte.

[root@node1 ~]# mount /dev/sdb /mnt

Überprüfen Sie mit dem folgenden Befehl, ob die Festplatte gemountet ist.

[root@node1 ~]# df -hT

Ausgabe:

Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        50G  955M   50G   2% /
devtmpfs                devtmpfs  908M     0  908M   0% /dev
tmpfs                   tmpfs     914M   54M  861M   6% /dev/shm
tmpfs                   tmpfs     914M  8.5M  905M   1% /run
tmpfs                   tmpfs     914M     0  914M   0% /sys/fs/cgroup
/dev/mapper/centos-home xfs        48G   33M   48G   1% /home
/dev/sda1               xfs       497M   97M  401M  20% /boot
/dev/sdb                xfs       5.0G   33M  5.0G   1% /mnt

iSCSI-Speicher automatisch mounten

Um den iSCSI-Speicher bei jedem Neustart automatisch zu mounten, müssten Sie einen Eintrag in der Datei /etc/fstab vornehmen.

Bevor Sie die Datei /etc/fstab aktualisieren, rufen Sie die UUID der iSCSI-Festplatte mit dem folgenden Befehl ab. Ersetzen Sie /dev/sdb durch den Namen Ihrer iSCSI-Festplatte.

blkid /dev/sdb

Ausgabe:

/dev/sdb: LABEL="/" UUID="9df472f4-1b0f-41c0-a6eb-89574d2caee3" TYPE="xfs"

Bearbeiten Sie nun die Datei /etc/fstab.

vi /etc/fstab

Machen Sie einen Eintrag wie unten.

#
# /etc/fstab
# Created by anaconda on Tue Jan 30 02:14:21 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=9df472f4-1b0f-41c0-a6eb-89574d2caee3 /                       xfs     defaults        0 0
UUID=c7469f92-75ec-48ac-b42d-d5b89ab75b39 /mnt                    xfs     _netdev         0 0

iSCSI-Speicher entfernen

Falls Sie die hinzugefügte Festplatte entfernen möchten, folgen Sie bitte dem Verfahren (unmounten und abmelden).

[root@node1 ~]# umount /mnt/
[root@node1 ~]# iscsiadm -m node -T iqn.2016-02.local.itzgeek.server:disk1 -p 192.168.12.20 -u

Ausgabe:

Logging out of session [sid: 1, target: iqn.2016-02.local.itzgeek.server:disk1, portal: 192.168.12.20,3260]
Logout of [sid: 1, target: iqn.2016-02.local.itzgeek.server:disk1, portal: 192.168.12.20,3260] successful.

Das ist alles.


Cent OS
  1. So konfigurieren Sie den iSCSI-Initiator (Client) in CentOS / RHEL 6

  2. CentOS / RHEL 6,7 :So löschen Sie ein iSCSI-Target auf dem Initiator (iSCSI-Client)

  3. So konfigurieren Sie den iSCSI-Initiator (Client) in CentOS / RHEL 7

  4. So konfigurieren Sie DM-Multipath von einem iSCSI-Initiator zu einem iSCSI-Ziel in CentOS/RHEL

  5. CentOS/RHEL – So entfernen Sie veraltete ISCSI-Zielknoteninformationen vom ISCSI-Initiator-Server

Check_MK Server auf CentOS 7 installieren und konfigurieren

Wie konfiguriere ich den SFTP-Server auf CentOS?

So konfigurieren Sie NGINX auf einem CentOS 7-Server

So konfigurieren Sie das iSCSI-Ziel mit targetcli in CentOS / RHEL 7

So konfigurieren Sie VNC Server unter CentOS/RHEL 6

Centos 7:NTP-Server konfigurieren