mpath

Mpath

Установка, монтирование или демонтаж iSCSI блочных хранилищ с использованием multipath.
Это было протестировано на блочных хранилищах SoftLayer, но также будет работать и на других конфигурациях с хранилищами iSCSI multipath.

Логика этой роли:

Во время установки
  • Установка зависимых пакетов для использования multipath и iSCSI
  • Конфигурация файла /etc/multipath.conf
  • Проброс модуля ядра dm-multipath
  • Включение и запуск multipathd
  • Список с помощью (multipath -l) для запуска обработчика multipathd
  • Конфигурация файла /etc/iscsi/initiatorname.iscsi
  • Редактирование аутентификации CHAP в /etc/iscsi/iscsid.conf
  • Попытка автоматического входа на портал, если не удается - использовать обычный вход
  • Создание псевдонима в /etc/multipath/bindings
  • Монтаж multipath "/dev/mapper/mydeviceid" на "/mnt/myaliasname"
  • Запуск iSCSI и iscsid
  • Добавление записей в /etc/fstab
Во время демонтажа
  • Получение pid'ов устройства "/dev/mapper/mydeviceid"
  • Если устройство используется, принудительно освободить устройство
  • Демонтировать устройство ленивым способом (umount -l device)
  • Демонтировать и удалить записи из fstab
  • Очистка multipath с помощью (multipath -f device)
  • Выйти из сеанса целевого портала
  • Запуск обработчика для остановки и отключения служб iSCSI, iscsid и multipathd

Требования

Вам потребуется iSCSI multipath блочное хранилище, логин и пароль для IQN. Вам также нужно будет знать полный путь IQN инициатора и ID iSCSI маппера. Например: /dev/mapper/3600...

Переменные роли

Это переменные, которые вам нужно будет настроить в вашем плейбуке.

iscsint - это имя инициатора IQN. Например:

iscsint: iqn.1994-05.com.redhat:47c98423c167

Вы можете задать несколько инициаторов в виде массива:

 iscsint:
   - iqn.1994-05.com.redhat:47c98423c167
   - iqn.1994-05.com.redhat:47c98423c167-2
   - iqn.1994-05.com.redhat:47c98423c167-3

mpathip - это IP-адрес целевого устройства

 mpathip: 10.150.10.20

filesystem - по умолчанию установлен на ext4, измените это на нужное вам.
Проверьте поддерживаемые файловые системы в модуле монтирования ansible.

map - если установлено в true, это значит, что будут выполняться все задачи установки и конфигурации.
Если установить в false, маппер устройства будет демонтирован и следовать процессу демонтажа.

wwid - это псевдоним для устройства multipath и будет использоваться для настройки файла привязки.
Эта переменная очень важна, её также будут использовать во всей роли для монтирования и демонтажа устройства
на основе id.

Синтаксис должен быть таким:

wwid:
  - { id: '360009827346', alias: 'mylun0' }
  - { id: '360782378662', alias: 'mylun1' }
...

packs - это список пакетов для установки. Установит iSCSI, multipath и lsof.

credentials необходимо настроить в вашем плейбуке с вашим логином и паролем.
Например:

 credentials:
   - name: "Мои Учетные Данные"
     login: mylogin
     pass: mypassword

ПРЕДУПРЕЖДЕНИЕ!
логин и пароль должны быть указаны без кавычек " или одинарных кавычек '.

Зависимости

Отсутствуют

Пример плейбука

Вот образец плейбука. Этот плейбук установит и смонтирует устройство multipath на somehost:

- name: "Развертывание | Запуск роли isca0.mpath"
  hosts: somehost
  become: yes
  remote_user: myuser
  vars:
    mpathip: "10.200.10.100"
    credentials:
      - name: "Multipath"
        login: MyLogin
        pass: Mypassword
    iscsint:
      - "iqn.1994-05.com.redhat:47c98423c167"
    wwid:
      - { id: '3600a0980383888835645961', alias: 'blk' }
  roles:
    - mpath

Если вы хотите демонтировать устройство на группе хостов, а затем смонтировать его на одном хосте, вы можете сначала запустить плейбук на демонтаж, а затем плейбук на "установку/монтаж".

Вот пример плейбука на демонтаж:

- name: "Развертывание | Запуск роли isca0.mpath"
  hosts: groupofhosts
  become: yes
  remote_user: myuser
  vars:
    map: false
    mpathip: "10.200.10.100"
    wwid:
      - { id: '3600a098038303631a35645961', alias: 'blk' }
  roles:
    - mpath

Как видите, просто установите map в false, чтобы роль выполняла только задачи демонтажа. :wink:

Список задач

  • Добавить поддержку автоматического монтирования

Лицензия

LGPL-3.0

Информация об авторе

Эта роль была создана в 2017 году isca

О проекте

Manage iscsi blockstorage with multipath on softlayer like a boss

Установить
ansible-galaxy install isca0/mpath
Лицензия
lgpl-3.0
Загрузки
64
Владелец