1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

なお・ArchLinux インストール覚書

Last updated at Posted at 2017-04-20

ArchLinux インストール覚書より始めたArchLinuxプロジェクト。前回のも一つ・ArchLinux インストール覚書では手動でiSCSIデバイスをマウントできたものの、起動時に自動マウントする事が出来ませんでした。色々やってみて成功したので、その手順と知識をまとめました。

インストール手順としてはも一つ・ArchLinux インストール覚書の続きになります。

iSCSIイニシエータ

概要

iSCSIストレージを使えるようにする手順の概要は下記の通り。

  • iSCSIターゲットを発見する。
  • iSCSIターゲットにログイン。するとHDDデバイスとして認識される。
  • 認識されたHDDデバイスをマウント。

iSCSIターゲットの発見

手動で操作するならDNS登録してあるマシン名を指定しても良いです。しかし起動時の自動マウントでは、マシン名だと失敗するようです。その場合はIPアドレスを直接指定しましょう。例えばIPアドレスが 192.168.0.3 だったら:

# iscsiadm -m discovery -t sendtargets -p 192.168.0.3
192.168.0.3:3260,-1 iqn.2005-10.org.freenas.ctl:iscsi0

この時の指定がデータベースと呼ばれる場所に登録されます。データベースの正体は /etc/iscsi/send_targets ディレクトリです。

# find /etc/iscsi/send_targets -type f -ls
    37660      4 -rw-------   1  root     root          544 Apr 20 22:23 /etc/iscsi/send_targets/192.168.0.3,3260/st_config
# cat /etc/iscsi/send_targets/192.168.0.3,3260/st_config
# BEGIN RECORD 2.0-874
discovery.startup = manual
discovery.type = sendtargets
discovery.sendtargets.address = 192.168.0.3
discovery.sendtargets.port = 3260
discovery.sendtargets.auth.authmethod = None
discovery.sendtargets.timeo.login_timeout = 15
discovery.sendtargets.use_discoveryd = No
discovery.sendtargets.discoveryd_poll_inval = 30
discovery.sendtargets.reopen_max = 5
discovery.sendtargets.timeo.auth_timeout = 45
discovery.sendtargets.timeo.active_timeout = 30
discovery.sendtargets.iscsi.MaxRecvDataSegmentLength = 32768
# END RECORD

データベースから削除するコマンドは下記の通り。

# iscsiadm -m discovery -o delete -p 192.168.0.3
# ls -a /etc/iscsi/send_targets
.  ..

また、この操作で発見されたノードもデータベースに登録されます。このデータベースの正体は /etc/iscsi/nodes ディレクトリです。

# find /etc/iscsi/nodes -type f -ls
    37662      4 -rw-------   1  root     root         2070 Apr 20 22:23 /etc/iscsi/nodes/iqn.2005-10.org.freenas.ctl:iscsi0/192.168.0.3,3260

データベースに登録されたノードは次のコマンドで確認できます。

# iscsiadm -m node
192.168.0.3:3260,-1 iqn.2005-10.org.freenas.ctl:iscsi0

データベースから削除するコマンドは下記の通り。

# iscsiadm -m node -o delete
# iscsiadm -m node
iscsiadm: No records found
# ls -a /etc/iscsi/nodes
.  ..

iSCSIターゲットにログイン

iSCSIターゲットを発見してデータベースに登録したら、ログインします。

# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] (multiple)
Login to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] successful.

ログインに成功したら、次のコマンドで確認できます。

# iscsiadm -m session
tcp: [3] 192.168.0.3:3260,2 iqn.2005-10.org.freenas.ctl:iscsi0 (non-flash)

ログアウトは次の通り。

# iscsiadm -m node --logout
Logging out of session [sid: 3, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260]
Logout of [sid: 3, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] successful.
# iscsiadm -m session
iscsiadm: No active sessions.

マウント

/etc/fstab を設定してあれば、ログインすると同時にマウントされるようです。

# mount | grep iscsi
/dev/sdc on /iscsi type ext4 (rw,noatime,nodelalloc,nobarrier,errors=remount-ro,stripe=256,data=journal,_netdev)
# ls /iscsi
lost+found  test1

アンマウントは普通のコマンドで。

# umount /iscsi
# ls -a /iscsi
.  ..

再マウントも普通のコマンドで。

# mount /iscsi
# ls /iscsi
lost+found  test1

マシン起動時の自動マウント

systemdのserviceを、自分で作りました。上述のログインするだけのものです。

参考文献: redhat - サポート>製品マニュアル>Red Hat Enterprise Linux>7システム管理者のガイド - 9. systemd によるサービス管理 - 9.6. システムのユニットファイルの作成および変更

iSCSIログインserviceを作成

# vi /etc/systemd/system/login-iscsi.service
# cat /etc/systemd/system/login-iscsi.service
[Unit]
Description=login iSCSI node
After=open-iscsi.service

[Service]
ExecStart=/usr/bin/iscsiadm -m node --login
Type=oneshot

[Install]
WantedBy=multi-user.target

動作を確認します。

# systemctl start login-iscsi.service
# systemctl status login-iscsi.service
* login-iscsi.service - login iSCSI node
   Loaded: loaded (/etc/systemd/system/login-iscsi.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

Apr 20 23:18:23 HostName systemd[1]: Starting login iSCSI node...
Apr 20 23:18:24 HostName iscsiadm[680]: Logging in to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] (multiple)
Apr 20 23:18:24 HostName iscsiadm[680]: Login to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] successful.
Apr 20 23:18:24 HostName systemd[1]: Started login iSCSI node.

マシン再起動

# systemctl enable login-iscsi.service
Created symlink /etc/systemd/system/multi-user.target.wants/login-iscsi.service -> /etc/systemd/system/login-iscsi.service.
# reboot

起動後に確認。

# systemctl status login-iscsi.service
* login-iscsi.service - login iSCSI node
   Loaded: loaded (/etc/systemd/system/login-iscsi.service; disabled; vendor preset: disabled)
   Active: inactive (dead) since Thu 2017-04-20 23:27:46 JST; 42s ago
  Process: 264 ExecStart=/usr/bin/iscsiadm -m node --login (code=exited, status=0/SUCCESS)
 Main PID: 264 (code=exited, status=0/SUCCESS)

Apr 20 23:27:40 HostName systemd[1]: Starting login iSCSI node...
Apr 20 23:27:46 HostName iscsiadm[264]: Logging in to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] (multiple)
Apr 20 23:27:46 HostName iscsiadm[264]: Login to [iface: default, target: iqn.2005-10.org.freenas.ctl:iscsi0, portal: 192.168.0.3,3260] successful.
Apr 20 23:27:46 HostName systemd[1]: Started login iSCSI node.
# ls /iscsi
lost+found  test1

やった:thumbsup:

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?