Как удалить wwn targetcli
Перейти к содержимому

Как удалить wwn targetcli

  • автор:

targetcli(8) — Linux man page

The configuration layout is tree-based, similar to a filesystem, and navigated in a similar manner.

Usage

targetcli [cmd]

Invoke targetcli as root to enter the configuration shell, or follow with a command to execute but do not enter the shell. Use ls to list nodes below the current path. Moving around the tree is accomplished by the cd command, or by entering the new location directly. Objects are created using create, removed using delete. Use help <cmd> for additional usage information. Tab-completion is available for commands and command arguments.

Configuration changes in targetcli are made immediately to the underlying kernel target configuration. Settings will not be retained across reboot unless saveconfig is either explicitly called, or implicitly by exiting the shell with the global preference auto_save_on_exit set to true, the default.

Examples

Defining a Storage Object Within a Backstore

In addition to the fileio backstore for file-backed volumes, other backstore types include block for block-device-backed volumes, and pscsi for volumes backed by local SCSI devices. ramdisk backstore creates ram-based storage objects. See the built-in help for more details on the required parameters for each backstore type.

Exporting a Storage Object Via Fcoe

tcm_fc/20:00:00:19:99:a8:34:bc/
If auto_cd_after_create is set to false, change to the configuration node for the given target, equivalent to giving the command prefixed by cd.

luns/ create /backstores/fileio/disk1
Create a new LUN for the interface, attached to a previously defined storage object. The storage object now shows up under the /backstores configuration node as activated.

acls/ create 00:99:88:77:66:55:44:33
Create an ACL (access control list), for defining the resources each initiator may access. The default behavior is to auto-map existing LUNs to the ACL; see help for more information.

The LUN should now be accessible via FCoE.

Other Commands

This command is executed from the configuration root node.

restoreconfig
Restore target configuration from a file, the default is the file listed under saveconfig. This will fail if there is already an established config, unless the clear_existing option is set to true.

This command is executed from the configuration root node.

clearconfig
Clears the entire current local configuration. The parameter confirm=true must also be given, as a precaution.

This command is executed from the configuration root node.

sessions [ list | detail ] [sid]
Lists the current open sessions or a specific session, with or without details.

Сетевое хранилише iSCSI в CentOS 7

iSCSI протокол базируется на TCP/IP и разработан для установки взаимодействия и управления системами хранения данных, серверами и клиентами.

В терминах iSCSI, сервер предоставляющий ресурсы хранилища называется target , а клиент подключённый к серверу и использующий эти ресурсы initiator .

Основные термины

IQN WWID (iSCSI Qualified Name) — уникальный идентификатор устройства.

LUN — номер «части» диска, к которому идёт обращение. Ближайший аналог — раздел на жёстком диске.

Portal — несколько target’ов, которые анонсируются одним сервером.

Установка пакетов

Установим необходимые пакеты для работы iSCSI

Запустим сервис и добавим в автозагрузку:

Добавим правила на Firewall:

Первоначальная очистка настроек в случае наличия прошлых установок:

Поскольку targetcli является интерактивной оболочкой аналогичной bash , то запускаем её командой targetcli .

Просмотрим существующие ресурсы:

Подключаем блочное устройство к iSCSI ресурсу:

Отключение устройства выполняется командой:

Создание iSCSI таргета

Удаление ресурса выполняется командой:

Создание портала

Подключение устройств в качестве логических «юнитов» (LUNs):

Определение имён iSCSI-ресурсов (IQN) для узлов кластера:

Host-01

Host-02

Создаем список доступа (ACL) для узлов:

Подключение на стороне клиента (Initiator)

Установим необходимые пакеты:

Найдем доступные iSCSI устройства:

Отредактируем идентификатор устройства в соответствии с результатами выполнения предыдущей команды:

https://amdy.su/wp-admin/options-general.php?page=ad-inserter.php#tab-8

Запустим сервис и добавим в автозагрузку:

Проверяем состояние на ноде:

Для удаления связи используем команду:

Для закрытия сессии:

Для удаления доступных записей:

Данный пример подходит для настройки в локальной сети. Для работы с внешним миром лучше использовать CHAP авторизацию.

Конфигурация с CHAP авторизацией

Повторяем предыдущие действия. На шаге настроек списков доступа настриваем авторизацию по логину и паролю.

Сохраняем настройки и выходим из оболочки:

Настроим клиент для работы с CHAP, для этого изменим конфигурационный файл /etc/iscsi/iscsid.conf :

Для снижения вычислительных затрат на создание и обработку SCSI-команд был создан TCP/IP offload engine (TOE). Для достижения наилучшей производительности рекомендуется использовать iSCSI-адаптеры, в которых кроме TOE аппаратно реализован и уровень iSCSI

Настройка Linux iSCSI посредством targetcli

Хотел поделиться опытом создания iSCSI таргета на CentOS 7 посредством targetcli. Targetcli – это оболочка для управления Linux-IO Target (LIO™). LIO™ – это реализация SCSI таргета с открытым исходным кодом. LIO™ была включена в ядро Linux в версии 2.6.38.

Немного теории

Targetcli на CentOS 7 представляет таргет в виде иерархически построенной структуры. И делит таргет на back-end и front-end части. Backstores – это back-end, fabric module – это front-end. Backstores это всегда один раздел в иерархии targetcli, внутри которого отображаются хранилища в виде объектов, в то время, как fabric module может быть не один, в нём содержатся различные настройки видимой снаружи части таргета. Существует несколько типов fabric module: Fibre Channel over Ethernet (FCoE), Fibre Channel, IEEE 1394, iSCSI, iSCSI Extensions for RDMA (iSER), SCSI RDMA Protocol (SRP), USB Gadget, Loopback. Ниже можно видеть как выглядит структура таргета с точки зрения targetcli:

Теперь по порядку по элементам

Backstores – это раздел, в котором отображаются объекты-хранилища. Backstores не видимая снаружи часть iSCSI таргета.

Block –жесткий диск, символические ссылки на диск или LVM.

PSCSI (SCSI pass-through) – любое устройство для хранения информации, поддерживающее SCSI команды напрямую, то есть без эмуляции SCSI. Этот бэкстор не нужно использовать, так как может привести к повреждениям железа.

iSCSI – это fabric module, видимая снаружи часть iSCSI таргета. Он содержит список таргетов, лунов, права доступа и т.п. Список всего этого добра появится после настройки.

Loopback – ещё один fabric module, который дает доступ к таргету локально.

Создание iSCSI таргета на linux с помощью targetcli

  1. Для начала необходимо установить targetcli
  2. Сделать доступным демона (службу) target и запустить его
  3. Открыть targetcli и посмотреть иерархию, в виде которой представлен таргет, почитать помощь. Помощь можно вызывать в любом разделе внутри targetcli, везде будут свои команды.
  4. Создать блочное устройство в бэксторе. В первом случае создано устройство на основе непосредственно жесткого диска, затем добавлено устройство на основе LVM, что гораздо удобнее в эксплуатации.

На этом таргет готов к использованию. Остается только подключиться инициатором к таргету и использовать LUN как локальный жесткий диск.

targetcli (8) — Linux Manuals

targetcli: administration shell for storage targets

Command to display targetcli manual in Linux: $ man 8 targetcli

DESCRIPTION

The configuration layout is tree-based, similar to a filesystem, and is navigated in a similar manner.

USAGE

targetcli [cmd]

Invoke targetcli as root to enter the configuration shell, or follow with a command to execute but do not enter the shell. Use ls to list nodes below the current path. Moving around the tree is accomplished by the cd command, or by entering the new location directly. Objects are created using create, removed using delete. Use help <cmd> for additional usage information. Tab-completion is available for commands and command arguments.

Configuration changes in targetcli are made immediately to the underlying kernel target configuration. Settings will not be retained across reboot unless saveconfig is either explicitly called, or implicitly by exiting the shell with the global preference auto_save_on_exit set to true, the default.

QUICKSTART

$ sudo targetcli
/> backstores/fileio create test /tmp/test.img 100m
/> iscsi/ create iqn.2006-04.com.example:test-target
/> cd iscsi/iqn.2006-04.com.example:test-target/tpg1/
tpg1/> luns/ create /backstores/fileio/test
tpg1/> set attribute generate_node_acls=1
tpg1/> exit

Although by default targetcli saves the running configuration upon exit, a distribution-specific service must be enabled to restore the saved configuration on reboot. See distribution documentation for specifics, but for example:

$ sudo systemctl enable target.service

See EXAMPLES below for more detailed information on commands and using the shell.

BACKSTORES

FILEIO

Fileio also supports using an existing file, or creating a new file. New files are sparsely allocated by default.

Please enable JavaScript

BLOCK

PSCSI

RAMDISK

It also supports «nullio» mode, which is not backed by any storage. It discards all writes, and returns all-zeroes for reads.

USERSPACE-BACKED

TARGETS

Aside from «backstores», all other top-level configuration nodes in targetcli are fabrics that may have targets created for them. Fabrics that require hardware are only listed if the hardware is present and configured properly.

CREATING A TARGET

iSCSI supports multiple WWN formats: iqn, naa, and eui. Other fabrics support single formats only.

CONFIGURING A TARGET

CONFIGURING ISCSI

PORTALS

When a target is created, targetcli automatically creates a default portal listening on all IPv4 addresses (shown as 0.0.0.0) on port 3260. If a different configuration is needed, the default portal can be removed and portals configured as desired.

If the hardware supports it, iSER (iSCSI Extensions for RDMA) may be enabled via the enable_iser command within each portal’s node. Or, if the hardware supports it, hardware offload may be enabled via the enable_offload command within each portal’s node.

create <wwn> in the acls node creates an ACL for an initiator, and create within the ACL creates a LUN mapping. (This can either refer to the TPG LUN, or to the storage object, in which case the TPG LUN will be configured as well.) Global setting auto_add_mapped_luns affects this, see below.

AUTHENTICATION

Furthermore, authentication credentials may be different for each session phase (Discovery or Normal), and authentication in a Normal session may be set at the TPG level, or per-ACL.

Discovery Authentication
iSCSI Discovery sessions allow the initiator to connect to a portal and discover targets with the SendTargets command, but not access them. The four parameters userid, password, mutual_userid, and mutual_password are configured via set discovery_auth command within the top-level iscsi configuration node. 1-way authentication is enabled if userid and password are both set, and mutual authentication is enabled if all four are set. Authentication is disabled by unsetting the parameters.

Normal Authentication
Similarly, the four parameters userid, password, mutual_userid, and mutual_password are configured via set auth command within the TPG node and ACL nodes. However, LIO only uses one or the other, depending on the TPG’s generate_node_acls attribute setting. If generate_node_acls is 1, the TPG-wide settings will be used. If generate_node_acls is 0, then the user-created ACLs’ settings will be used.

Enable generate_node_acls with set attribute generate_node_acls=1 within the TPG node. This can be thought of as «ignore ACLs mode» — both authentication and LUN mapping will then use the TPG settings.

No Authentication
Authentication is disabled by clearing the TPG «authentication» attribute: set attribute authentication=0. Although initiator names are trivially forgeable, generate_node_acls still works here to either ignore user-defined ACLs and allow all, or check that an ACL exists for the connecting initiator.

CONFIGURING FIBRE CHANNEL (QLA2XXX)

CONFIGURING FIBRE CHANNEL OVER ETHERNET (TCM_FC)

CONFIGURING SRP

CONFIGURING LOOPBACK

CONFIGURING OTHER FABRICS

EXAMPLES

DEFINING A STORAGE OBJECT WITHIN A BACKSTORE

EXPORTING A STORAGE OBJECT VIA ISCSI

iqn.2003-01.org.linux-iscsi.test2.x8664:sn123456789012/tpg1/
An example of changing to the configuration node for the given target’s first target portal group (TPG). This is equivalent to giving the command prefixed by «cd». (Although more can be useful for certain setups, most configurations have a single TPG per target. In this case, configuring the TPG is equivalent to configuring the overall target.)

portals/ create
Add a portal, i.e. an IP address and TCP port via which the target can be contacted by initiators. Only required if the default 0.0.0.0:3260 portal is not present.

luns/ create /backstores/fileio/disk1
Create a new LUN in the TPG, attached to the storage object that has previously been defined. The storage object now shows up under the /backstores configuration node as activated.

acls/ create iqn.1994-05.com.redhat:4321576890
Creates an ACL (access control list) entry for the given iSCSI initiator.

acls/iqn.1994-05.com.redhat:4321576890 create 2 0
Gives the initiator access to the first exported LUN (lun0), which the initiator will see as lun2. The default is to give the initiator read/write access; if read-only access was desired, an additional «1» argument would be added to enable write-protect. (Note: if global setting auto_add_mapped_luns is true, this step is not necessary.)

EXPORTING A STORAGE OBJECT VIA FCOE

tcm_fc/20:00:00:19:99:a8:34:bc/
If auto_cd_after_create is set to false, change to the configuration node for the given target, equivalent to giving the command prefixed by cd.

luns/ create /backstores/fileio/disk1
Create a new LUN for the interface, attached to a previously defined storage object. The storage object now shows up under the /backstores configuration node as activated.

acls/ create 00:99:88:77:66:55:44:33
Create an ACL (access control list), for defining the resources each initiator may access. The default behavior is to auto-map existing LUNs to the ACL; see help for more information.

The LUN should now be accessible via FCoE.

OTHER COMMANDS

This command is executed from the configuration root node.

restoreconfig
Restore target configuration from a file, the default is the file listed under saveconfig. This will fail if there is already an established config, unless the clear_existing option is set to true.

This command is executed from the configuration root node.

clearconfig
Clears the entire current local configuration. The parameter confirm=true must also be given, as a precaution.

This command is executed from the configuration root node.

sessions [ list | detail ] [sid]
Lists the current open sessions or a specific session, with or without details.

This command is executed from the configuration root node.

exit
Leave the configuration shell.

SETTINGS GROUPS

GLOBAL

/.targetcli/ upon exit, unlike other groups, which are system-wide and kept in /etc/target/saveconfig.json.

BACKSTORE-SPECIFIC

ISCSI-SPECIFIC

parameter
/iscsi/<target_iqn>/tpgX configuration node. ISCSI-specific parameters such as AuthMethod, MaxBurstLength, IFMarker, DataDigest, and similar.

attribute
/iscsi/<target_iqn>/tpgX configuration node. Contains implementation-specific settings for the TPG, such as authentication, to enforce or disable authentication for the full-feature phase (i.e. non-discovery).

auth
/iscsi/<target_iqn>/tpgX/acls/<initiator_iqn> configuration node. Set the userid and password for full-feature phase for this ACL.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *