Основи iSCSI:
Сервер зберігання iSCSI використовується для спільного використання блокових пристроїв, таких як розділи HDD / SSD або LVM, або блокування файлів у мережі. Клієнти iSCSI можуть використовувати ці спільні ресурси через мережу, як і будь-який звичайний жорсткий диск або твердотільний диск, встановлений на ньому. Клієнт iSCSI може форматувати ці диски, монтувати їх та зберігати файли та каталоги, як зазвичай.
Рис. 1: Архітектура сервера-клієнта iSCSI
Кожен клієнт iSCSI має ідентифікатор ініціатора, який використовується для підключення до цілей на сервері.
Цілями є спільні ресурси на сервері iSCSI. Кожна ціль складається з унікального імені (IQN), шляху до блочного пристрою (i.e. розділ диска або файл блоку), ідентифікатор ініціатора, який може підключитися до цієї цілі, та додаткова система автентифікації на основі імені користувача та пароля.
На рис. 1 сервер зберігання iSCSI дозволяє 3 ініціаторам (3 клієнтам iSCSI) підключатися до 4 цілей. ініціатор01 може підключитися до ціль01 і ціль02, ініціатор02 може підключитися до ціль03, і ініціатор03 може підключитися до ціль04.
Топологія мережі:
Топологія мережі, використана в цій статті, наведена на рис. 2. Тут я налаштую Ubuntu 18.04 LTS-сервер як сервер iSCSI. Сервер iSCSI має статичну IP-адресу 192.168.20.168. Клієнт iSCSI також знаходиться у мережі 192.168.20.0/24. Отже, він може отримати доступ до сервера iSCSI.
Конвенції щодо іменування цільової інформації та ініціатора iSCSI:
Ім'я цільового iSCSI та ім'я ініціатора повинні бути унікальними.
Цільовий формат іменування:
iqn.РРРР-ММ.зворотне ім'я домену: цільове ім'яПриклад: iqn.2020-03.ком.linuxhint: www, iqn.2020-03.ком.linuxhint: журнали,
iqn.2020-03.ком.linuxhint: user-bob тощо.
Формат іменування ініціатора:
iqn.РРРР-ММ.зворотне ім'я домену: ім'я ініціатораПриклад: iqn.2020-03.ком.linuxhint: Initiator01, iqn.2020-03.ком.linuxhint: Initiator02,
iqn.2020-03.ком.linuxhint: Initiator03 тощо.
Налаштування статичного IP:
Спочатку встановіть статичну IP-адресу на своєму сервері iSCSI. Якщо вам потрібна допомога, перегляньте мою статтю Налаштування статичного IP на Ubuntu 18.04 Операційна система для робочого столу та сервера LTS.
Встановлення сервера iSCSI:
Спочатку оновіть кеш сховища пакетів APT наступною командою:
$ sudo apt оновлення
Тепер встановіть сервер iSCSI таким чином:
$ sudo apt встановити tgt
Щоб підтвердити встановлення, натисніть Y а потім натисніть
Слід встановити сервер iSCSI.
Спільний доступ до файлових блоків через iSCSI:
Ви можете надавати спільний доступ до файлових блоків, створених командою dd, через iSCSI.
Спочатку створіть новий каталог, де ви хочете зберегти всі файлові блоки наступним чином:
$ sudo mkdir -pv / iscsi / блоки
Тепер створіть новий файл www.img в каталозі / iscsi / blocks / наступним чином:
$ sudo dd, якщо = / dev / нуль = / iscsi / blocks / www.img bs = 1M кількість = 1024 статус = прогрес
Тепер створіть новий цільовий файл конфігурації iqn.2020-03.ком.linuxhint.www.конф в / etc / tgt / conf.г / каталог наступним чином:
$ sudo nano / etc / tgt / conf.d / iqn.2020-03.ком.linuxhint.www.конф
Тепер введіть наступні рядки у файлі конфігурації та збережіть файл, натиснувши
backing-store / iscsi / blocks / www.img
ім'я ініціатора iqn.2020-03.ком.linuxhint: Initiator01
секретний вхідний користувач linuxhint
Тут цільове ім’я визначено в цільовому тегу.
backing-store встановлено шлях до файлу блоку.
ініціатор-ім'я використовується для встановлення ідентифікатора ініціатора, якому буде дозволено отримати доступ до цілі.
користувач, що входить рядок використовується для встановлення імені користувача та пароля, які ініціатор використовуватиме для автентифікації.
Обмін HDD / SSD через iSCSI:
Ви також можете поділитися всім HDD / SSD або одним або декількома розділами HDD / SSD через iSCSI. Якщо ви надаєте спільний доступ до всього HDD / SSD, розділи цього HDD / SSD також будуть доступні з ініціатора або клієнта iSCSI.
Спочатку знайдіть ім’я HDD / SSD або ім’я розділу HDD / SSD, яким ви хочете поділитися за допомогою такої команди:
$ sudo lsblk
Тепер створіть новий цільовий файл конфігурації iqn.2020-03.ком.linuxhint.даних.конф в / etc / tgt / conf.г / каталог наступним чином:
$ sudo nano / etc / tgt / conf.d / iqn.2020-03.ком.linuxhint.www.конф
Тепер введіть наступні рядки у файлі конфігурації та збережіть файл.
backing-store / dev / sdb
ім'я ініціатора iqn.2020-03.ком.linuxhint: Initiator01
секретний вхідний користувач linuxhint
Тут я поділився всім жорстким диском / dev / sdb через iSCSI. Якщо ви хочете поділитися одним розділом, тоді ви можете встановити підкладка-магазин до / dev / sdb1 або / dev / sdb2 і так далі.
Перезапуск служби iSCSI:
Якщо ви внесете будь-які зміни у файл цільової конфігурації iSCSI, запустіть таку команду, щоб зміни набрали чинності:
$ sudo systemctl перезапустіть tgt
Повинна бути запущена служба iSCSI.
$ sudo systemctl статус tgt
Порт сервера iSCSI 3260 також повинен бути відкритим, як ви можете бачити на скріншоті нижче.
$ sudo netstat -tlpn
Додавання служби iSCSI до запуску системи:
Щоб запустити службу iSCSI під час завантаження, запустіть таку команду:
$ sudo systemctl увімкніть tgt
Налаштування клієнта:
Для використання спільних ресурсів iSCSI у вас повинні бути встановлені клієнтські інструменти iSCSI.
Спочатку оновіть кеш сховища пакетів APT наступною командою:
$ sudo apt оновлення
Тепер встановіть open-iscsi пакунок з наступною командою:
$ sudo apt встановити open-iscsi
Щоб підтвердити встановлення, натисніть Y а потім натисніть
open-iscsi слід встановити.
Тепер додайте iscsid послуга для запуску системи наступним чином:
$ sudo systemctl увімкнути iscsid
Тепер відкрийте / etc / iscsi / ім'я ініціатора.iscsi файл конфігурації.
$ sudo nano / etc / iscsi / ime ініціатора.iscsi
Тепер встановіть Ім'я ініціатора до імені ініціатора та збережіть файл.
Тепер відкрийте / etc / iscsi / iscsid.конф файл із такою командою:
$ sudo nano / etc / iscsi / iscsid.конф
Тепер розкоментуйте позначений рядок.
Прокоментуйте позначений рядок.
Нарешті, Налаштування запуску має бути наступним.
Розкоментуйте позначені рядки.
Встановіть тут своє ім’я користувача та пароль та збережіть файл.
Тепер скануйте сервер iSCSI на цілі наступним чином:
$ sudo iscsiadm -m discovery -t sendtargets -p 192.168.20.168Як бачите, цілі перераховані.
Тепер ви можете увійти до певної цілі наступним чином:
$ sudo iscsiadm -m вузол -p 192.168.20.168 -T iqn.2020-03.ком.linuxhint: www --loginОсь, 192.168.20.168 - це IP-адреса сервера iSCSI та iqn.2020-03.ком.linuxhint: www - назва цілі.
Ви також можете увійти до всіх доступних цілей за допомогою наступної команди:
$ sudo iscsiadm -m вузол -p 192.168.20.168 --логін
Після входу в цілі диски iSCSI повинні бути доступні для вашого клієнта. Тепер ви можете розділити, відформатувати або змонтувати їх як завгодно.
$ sudo lsblk -e7
Ви також можете робити розділи на своїх дисках iSCSI, використовуючи fdisk, cdisk, parted, GNOME диски, GParted або будь-яке інше програмне забезпечення для розділення. Щоб дізнатись, як використовувати fdisk для розділення дисків, перегляньте мою статтю Як використовувати fdisk у Linux.
Ви також можете відформатувати свої розділи.
$ sudo mkfs.ext4 -L www / dev / sdb1
Автоматичне встановлення розділів iSCSI:
Щоб підключити розділ iSCSI, створіть точку монтування наступним чином:
$ sudo mkdir / www
Тепер відкрийте / etc / fstab файл наступним чином:
$ sudo nano / etc / fstab
Тепер введіть наступний рядок у / etc / fstab файл та збережіть файл.
/ dev / sdb1 / www / ext4 за замовчуванням, авто, _netdev 0 0
ПРИМІТКА: Не забудьте додати _netdev опція в / etc / fstab файл. В іншому випадку ваш клієнт не завантажиться.
Тепер ви можете змонтувати розділ iSCSI наступним чином:
$ sudo mount / www
Перегородка повинна бути змонтована.
Тепер ви можете змінити власника та групу точки монтування на ваше ім’я користувача для входу та ім’я групи, якщо це необхідно.
$ sudo chown -Rfv $ (whoami): $ (whoami) / www
Тепер ви можете зберігати будь-які файли у своєму розділі iSCSI.
Отже, саме так ви налаштовуєте сервер зберігання iSCSI в Ubuntu 18.04 LTS. Дякуємо, що прочитали цю статтю.