CentOS

Конфигурирайте iSCSI сървър за съхранение на CentOS 8

Конфигурирайте iSCSI сървър за съхранение на CentOS 8
В тази статия ще ви покажа как да конфигурирате iSCSI сървър за съхранение на CentOS 8. И така, нека започнем.

Основи на iSCSI:

iSCSI сървърът за съхранение се използва за споделяне на блокови устройства като HDD / SSD дялове или LVM дялове или за блокиране на файлове в мрежата. iSCSI клиентите могат да използват тези споделяния в мрежата, точно както всеки обикновен HDD или SSD, монтиран към него. Клиентът iSCSI може да форматира тези дискове, да ги монтира и да съхранява файлове и директории както обикновено.

Фигура 1: Архитектура iSCSI сървър-клиент

Всеки iSCSI клиент има инициатор ID, който се използва за свързване към целите на сървъра.

Целите са споделяния на iSCSI сървъра. Всяка цел се състои от уникално име (IQN), пътя на блоковото устройство (т.е.д. диск дял или блок файл), инициатор ID, който може да се свърже с тази цел и незадължителна система за удостоверяване, базирана на потребителско име и парола.

На фигура 1 iSCSI сървърът за съхранение позволява на 3 инициатора (3 iSCSI клиенти) да се свържат с 4 цели. инициатор01 може да се свърже с цел01 и цел02, инициатор 02 може да се свърже с цел03, и инициатор 03 може да се свърже с цел04.

Конвенции за имена на iSCSI за целеви и инициатори:

Името на iSCSI и името на инициатора трябва да са уникални.

Целевият формат за именуване е:

iqn.ГГГГ-ММ.име на обратен домейн: име на цел

Пример:

iqn.2020-03.com.linuxhint: www, iqn.2020-03.com.linuxhint: дневници,
iqn.2020-03.com.linuxhint: user-bob и т.н.

Форматът за именуване на инициатора е:

iqn.ГГГГ-ММ.reverse-domain-name: име на инициатор

Пример:

iqn.2020-03.com.linuxhint: Initiator01, iqn.2020-03.com.linuxhint: Initiator02,
iqn.2020-03.com.linuxhint: Initiator03 и т.н.

Мрежова топология:

Фигура 2: Мрежова топология, използвана в тази статия за iSCSI сървър

Топологията на мрежата, използвана в тази статия, е дадена на фигура 2. Тук ще конфигурирам машина CentOS 8 като iSCSI сървър. ISCSI сървърът има статичен IP адрес 192.168.20.197. Клиентът iSCSI също е в мрежата 192.168.20.0/24. Така че той може да има достъп до iSCSI сървъра.

Настройване на статичен IP адрес:

Трябва да настроите статичен IP адрес на вашата машина CentOS 8, който ще конфигурирате като iSCSI сървър. За да настроите статичен IP адрес на CentOS 8, проверете статията ми Конфигуриране на статичен IP на CentOS 8.

Устройството CentOS 8, което ще конфигурирам като iSCSI сървър в тази статия, има статичен IP адрес 192.168.20.197. За вас ще е различно. Така че, не забравяйте да го замените от сега нататък.

$ ip a

Инсталиране на iSCSI сървърни инструменти:

Първо актуализирайте кеша на хранилището на DNF, както следва:

$ sudo dnf makecache

Трябва да имаш targetcli инструмент, инсталиран на машината CentOS 8, който искате да конфигурирате като iSCSI сървър.

Да инсталираш targetcli, изпълнете следната команда:

$ sudo dnf инсталира targetcli

За да потвърдите инсталацията, натиснете Y и след това натиснете .

targetcli трябва да се инсталира.

Сега, за да проверите дали targetcli инструментът работи, започнете targetcli както следва:

$ sudo targetcli

targetcli трябва да започне.

targetcli работи перфектно.

> ls

Сега излезте от инструмента targetcli.

> излез

Сега започнете мишена услуга, както следва:

$ sudo systemctl начална цел

Сега добавете целевата услуга към стартирането на системата, както следва:

$ sudo systemctl активира целта

Споделяне на файлови блокове:

Можете да споделяте файлови блокове като устройства за съхранение чрез iSCSI.

Първо, създайте нова директория, в която искате да запазите всички файлови блокове, както следва:

$ sudo mkdir -pv / iscsi / блокира

Сега започнете targetcli, както следва:

$ sudo targetcli

Сега създайте нов 1 GB fileio backstore web1 по пътя / iscsi / blocks / web1.img както следва:

> / backstores / fileio създава web1 / iscsi / blocks / web1.img 1G

Файловият блок web1 1GB трябва да бъде създаден в пътя / iscsi / blocks / web1.img

> ls /

Сега създайте нова цел на iSCSI iqn.2020-03.com.linuxhint: уеб както следва:

> / iscsi създава iqn.2020-03.com.linuxhint: уеб

Целта на iSCSI iqn.2020-03.com.linuxhint: уеб трябва да се създаде.

> ls /

Сега отидете до целевата TPG (Target Portal Group), както следва:

> / iscsi / iqn.2020-03.com.linuxhint: web / tpg1 /

Ето как трябва да изглежда TPG на целта.

> ls

Сега създайте LUN ​​от web1 fileio backstore, който сте създали по-рано.

> luns / create / backstores / fileio / web1

LUN 0 трябва да бъде създаден.

> ls

Сега създайте ACL за инициатора iqn.2020-03.com.linuxhint: init1 така че iSCSI клиентът да има достъп до LUNS в тази цел.

> acls / създайте iqn.2020-03.com.linuxhint: init1

Трябва да се създаде ACL и LUN 0 да се прикачи към него.

> ls

Сега запазете конфигурацията.

> / saveconfig

Сега излезте от интерфейса targetcli.

> излез

Споделяне на HDD / SSD или HDD / SSD дялове:

Можете също да споделите целия HDD / SSD или един или повече HDD / SSD дял чрез iSCSI. Ако споделите целия HDD / SSD, дяловете на този HDD / SSD също ще бъдат достъпни от инициатора или iSCSI клиента.

Първо намерете името на HDD / SSD или името на дяла на HDD / SSD, което искате да споделите със следната команда:

$ sudo lsblk

Тук, nvme0n2 е името на SSD и nvme0n2p1, nvme0n2p2 и nvme0n2p3 са дяловете на този SSD.

Сега започнете targetcli, както следва:

$ sudo targetcli

Сега създайте блоково хранилище данни1 използване на HDD / SSD или HDD / SSD дял, както следва.

> / backstores / block create data1 / dev / nvme0n2p1

ЗАБЕЛЕЖКА: Тук използвах SSD дяла / dev / nvme0n2p1.

The данни1 блок backstore трябва да бъде създаден.

> ls /

Сега създайте нова цел на iSCSI iqn.2020-03.com.linuxhint: данни както следва:

> / iscsi / създайте iqn.2020-03.com.linuxhint: данни

Трябва да се създаде нова цел на iSCSI.

> ls /

Сега отидете до TPG на целта, както следва:

> / iscsi / iqn.2020-03.com.linuxhint: data / tpg1 /

TPG на целта трябва да изглежда както следва.

> ls

Сега създайте нов LUN от данни1 блокирайте хранилището, което сте създали по-рано.

> luns / create / backstores / block / data1

Трябва да се създаде нов LUN.

> ls

Сега създайте ACL за инициатора iqn.2020-03.com.linuxhint: init1 така че iSCSI клиентът да има достъп до LUNS в тази цел.

> acls / създайте iqn.2020-03.com.linuxhint: init1

Трябва да се създаде ACL и LUN 0 да се отнесе към него.

> ls

Сега запазете конфигурацията.

> / saveconfig

Сега излезте от интерфейса targetcli.

> излез

Конфигуриране на защитна стена:

Сега разрешете достъп до iSCSI порт 3260 през защитната стена, както следва:

$ sudo firewall-cmd --add-service = iscsi-target --permanent

За да влязат в сила промените, изпълнете следната команда:

$ sudo firewall-cmd --reload

Инсталиране на iSCSI клиентски инструменти:

На iSCSI клиента трябва да имате iscsi-инициатор-утили пакет, инсталиран за достъп до споделените iSCSI устройства за съхранение.

Първо актуализирайте кеша на хранилището на DNF, както следва:

$ sudo dnf makecache

Сега инсталирайте iscsi-инициатор-утили пакет на клиентската машина, както следва:

$ sudo dnf инсталира iscsi-initiator-utils

За да потвърдите инсталацията, натиснете Y и след това натиснете .

iSCSI клиентски помощни програми трябва да бъдат инсталирани.

Сега отворете / etc / iscsi / ime на инициатора.iscsi конфигурационен файл, както следва:

$ sudo vi / etc / iscsi / ime на инициатора.iscsi

Сега задайте името на вашия инициатор на InitiatorName и запазете файла.

Сега сканирайте за целите, както следва:

$ sudo iscsiadm -m discovery -t sendtargets -p 192.168.20.197

Сега можете да влезете в целите, както следва:

$ sudo iscsiadm -m възел --login

Устройствата за съхранение iSCSI трябва да бъдат прикрепени към вашия клиент, както можете да видите на екранната снимка по-долу.

$ sudo lsblk

Сега започнете iscsi и iscsid услуги, както следва:

$ sudo systemctl start iscsi
$ sudo systemctl стартира iscsid

The iscsi и iscsid услугите трябва да работят.

$ sudo systemctl статус iscsi iscsid

Сега добавете iscsi и iscsid услуга за стартиране на системата, както следва:

$ sudo systemctl активира iscsi
$ sudo systemctl активира iscsid

Монтиране на iSCSI диск:

Можете да монтирате iSCSI дисковете за постоянно на iSCSI клиента с помощта на / и т.н. / fstab файл.

Първо, форматирайте iSCSI диска, ако още не е форматиран.

$ sudo mkfs.ext4 -L данни / dev / sda

Сега създайте директория (точка на монтиране) за iSCSI диска, както следва:

$ sudo mkdir / данни

Сега намерете UUID на iSCSI диска, който искате да монтирате, както следва:

$ sudo blkid

UUID в моя случай е c1cbfa44-a8a9-4343-a88e-769b63a6e006. За вас ще е различно. Така че, не забравяйте да го замените с вашия в / и т.н. / fstab файл.

Сега отворете / и т.н. / fstab файл, както следва:

$ sudo vi / etc / fstab

Сега добавете следния ред към / и т.н. / fstab файл.

UUID = c1cbfa44-a8a9-4343-a88e-769b63a6e006
/ data ext4 по подразбиране, _netdev 0 0

Не забравяйте да добавите _netdev опция в / и т.н. / fstab файл при монтиране на iSCSI дискове. В противен случай вашият CentOS 8 iSCSI клиент може да не се стартира.

Сега можете да монтирате iSCSI диска за първи път, както следва:

$ sudo mount / data

Както можете да видите, iSCSI дискът е монтиран правилно.

И така, вие конфигурирате iSCSI сървър за съхранение и клиент на CentOS 8. Благодаря, че прочетохте тази статия.

Най-добрите дистрибуции на Linux за игри през 2021 г
Операционната система Linux е изминала дълъг път от първоначалния си, прост, базиран на сървъра външен вид. Тази операционна система се подобри неимов...
Как да заснемете и поточно предадете игралната си сесия на Linux
В миналото играта на игри се смяташе само за хоби, но с течение на времето игралната индустрия отбеляза огромен ръст по отношение на технологиите и бр...
Най-добрите игри за игра с ръчно проследяване
Oculus Quest наскоро представи страхотната идея за ръчно проследяване без контролери. С непрекъснато нарастващия брой игри и дейности, които изпълнява...