ブロックストレージ(iSCSI)の利用手順(RHEL/CentOS)
対象リージョン:東日本第3/西日本第3
ベアメタルサーバ(RHEL/CentOS)でブロックストレージ(iSCSI)を利用するために必要な手順について説明します。
始める前に
ベアメタルサーバ(RHEL/CentOS)とブロックストレージ(iSCSI)の接続構成は、以下の図のとおりです。
RHEL/CentOSサーバは、(Active/Active構成)で接続されるESXiサーバとは異なり、 iSCSI接続に必要なソフトウェアを導入し、外部ストレージと冗長経路(Active/Standby構成)で接続します。
最初にOS側の準備をします。
例として、OSがRHEL7.3、CentOS7.7の設定手順を説明します。
OSの種類やバージョンによって、ブロックストレージ(iSCSI)の利用手順が異なる場合があります。
ブロックストレージ(iSCSI)の利用手順については、お客様が契約しているOSのサポートに問い合わせてください。
- 必要なパッケージのインストール
iscsiイニシエーター利用のために必要な最新版のパッケージをインストールします。
-
iscsi-initiator-utils-x.x.x.xxx-4.el7.x86_64
-
iscsi-initiator-utils-iscsiuio-x.x.x.xxx-x.el7.x86_64
-
- iscsidサービスの設定と起動
iscsidサービスの自動起動設定をしたあと、サービスを起動します。
- iscsidサービスの自動起動の設定
# systemctl enable iscsid.service
- iscsidサービスの起動
# systemctl start iscsid.service
- iscsidサービスの自動起動の設定、および起動の確認
# systemctl status iscsid.service
- iscsidサービスの自動起動の設定
- iscsiサービスの設定と起動
iscsiサービスの自動起動設定をしたあと、サービスを起動します。
- iscsiサービスの自動起動の設定
# systemctl enable iscsi.service
- iscsiサービスの起動
# systemctl start iscsi.service
- iscsiサービスの自動起動の設定
- iSCSIイニシエータ名(IQN)の確認
/etc/iscsi/initiatorname.iscsi ファイルで iSCSIイニシエータ名(IQN)を確認します。
このタスクについて
次に、RHEL/CentOSサーバーで実施するブロックストレージ(iSCSI)の接続手順を説明します。各リソースに設定する値は、システムに合わせてください。
手順
次のタスク
再びOS側の設定をします。
- iSCSIイニシエーターのタイムアウト値の変更
iSCSI イニシエーターのタイムアウト値を120から5に変更します。
ヒント: /etc/iscsi/iscsid.conf ファイルの"node.session.timeo.replacement_timeout"に定義されている値を変更します。 - ネットワークボンディングの設定
DM-MPを使用してマルチパス構成を構築する場合、ブロックストレージ(iSCSI)との冗長経路はネットワークボンディング mode1(Active/Standby構成)で接続します。詳細な手順は以下のとおりです。なお、インタフェース名は例です。
- bond0インタフェースの作成
# nmcli connection add type bond autoconnect no con-name bond0 ifname bond0 mode active-backup
- slaveインタフェースの作成
# nmcli connection add type bond-slave autoconnect no ifname enp24s0f0 master bond0 # nmcli connection add type bond-slave autoconnect no ifname enp94s0f1 master bond0
- サーバのIPアドレスの設定(IPアドレスは任意の値)
# nmcli c mod bond0 ipv4.method manual ipv4.address "192.168.10.31/24" ipv4.gateway "192.168.10.1" ipv6.method ignore
- 元のインタフェースの自動起動停止
# nmcli c m "System enp24s0f0" connection.autoconnect no # nmcli c m "System enp94s0f1" connection.autoconnect no
- slaveインタフェースの自動起動有効化
# nmcli c m bond-slave-enp24s0f0 connection.autoconnect yes # nmcli c m bond-slave-enp94s0f1 connection.autoconnect yes
- bond0インタフェースの自動起動有効化
# nmcli c m bond0 connection.autoconnect yes
-
ネットワークボンディングの設定確認
bond0インタフェースが作成できていること、およびサーバーのIPアドレスが設定できていることを確認します。
# nmcli c # ifcomnnfig # cat /proc/net/bonding/bond0
- bond0インタフェースの作成
- 疎通確認
サーバおよび作成したブロックストレージ(iSCSI)への疎通を確認します。
- サーバへの疎通確認(IPアドレスはサーバに設定した値)
# ping 192.168.10.1
- ブロックストレージ(iSCSI)の疎通確認(IPアドレスはブロックストレージ(iSCSI)の作成時に設定した値)
# ping 192.168.10.111
- サーバへの疎通確認(IPアドレスはサーバに設定した値)
- ブロックストレージ(iSCSI)の検索
ブロックストレージ(iSCSI)の作成時に設定した プライマリ と セカンダリ のIPアドレス、およびイニシエータ名を検索します。
# iscsiadm -m discovery -t st -p 192.168.10.111:3260
- ブロックストレージ(iSCSI)への接続(ログイン)
検索したブロックストレージ(iSCSI)のIPアドレスとイニシエータ名を使用してブロックストレージ(iSCSI)へ接続(ログイン)します。
- ブロックストレージ(iSCSI)への接続(ログイン)
# iscsiadm -m node -T iqn.1992-08.com.netapp:19d52676-7adc- 452a-8c41-3a4f78c796a5 -p 192.168.10.111:3260,1026 –l # iscsiadm -m node -T iqn.1992-08.com.netapp:19d52676-7adc- 452a-8c41-3a4f78c796a5 -p 192.168.10.114:3260,1027 -l
- ブロックストレージ(iSCSI)への接続確認(2つのパスがあることを確認)
# lsblk -S
- ブロックストレージ(iSCSI)への接続(ログイン)
- マルチパスの設定
/etc/multipath.conf ファイルに以下を追加します。
defaults { user_friendly_names no find_multipaths yes flush_on_last_del yes max_fds max queue_without_daemon no dev_loss_tmo infinity } blacklist { devnode "^hd[a-z]" devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN.*" path_checker "tur" features "3 queue_if_no_path pg_init_retries 50" uid_attribute "ID_SERIAL" hardware_handler "1 alua" prio "alua" failback "immediate" rr_weight "uniform" path_selector "service-time 0" } }
ヒント: /etc/multipath.conf ファイルが存在しない場合は、/usr/share/doc/device-mapper-multipath-x.x.x/multipath.conf ファイルをコピーして利用します。 - マルチパスデーモンの起動
# systemctl start multipathd
- マルチパスの起動
mpathconf --enable --with_multipathd y
- マルチパスの作成および確認
# multipath -v2 # multipath -ll
- ブロックストレージ(iSCSI)のマウント
任意のマウントポイントに、作成したブロックストレージ(iSCSI)のボリュームをマウントして利用します。