はじめに
本記事ではSAN環境におけるLinuxのLUN移行について記載します。
LUN移行は、ストレージの効率的な管理だけでなく、ストレージ機器の更新の際に必要となる内容になります。多くの移行では、初期移行から最後の差分切り替えまでの方法や上位I/Oへの影響を減らす事に注力する事になるかと思いますが、本記事ではオンラインで可能な移行としてLVM環境におけるpvmoveを使用したLUN移行の基本的な手順、注意点について記載します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F8d0330fd-3aef-d7c3-2126-e67b3b4e19d0.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=1c70ef575ec18a081ab377eb7f91ab23)
何をしたい?できる?
SAN環境におけるオンラインデータ移行
LVM環境におけるpvmoveを使ったLUN移行
pvmoveとは
LVM(Logical Volume Manager)はLinuxでディスクを管理するためのシステムで、HDD/SSD/LUNを一つ以上のPhysical volumeに分割し、それらを一つ以上のVolume Group(VG)にまとめ、それらから一つ以上のLogical volumeを作成することができます。
pvmoveコマンドは、LVMのPhysical volume間でデータを移動するためのコマンドで、HDD/SSD/LUNの移動や新規機器へのLUN移行時にデータを安全に移動する為に利用できます。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F91ba8b86-923f-b7da-8c28-9b1faac8481e.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=e59d925fb2c6a1fede69279fb3ed0c2e)
記事における環境情報
本記事では、以下の環境で実施した内容となります。
- AlmaLinux release 9.4
- 移行元 Storage : NetApp HCI(旧名:Solidfire)
- 移行先 Storage : ONTAP 9.14.1
本記事では、既に移行元が構築及び利用されている環境を前提としています。
環境のイメージとしては以下の通りで、
Solidfire=>ONTAPという方向のオンラインデータ移行を実施します。
Storage機能としてNetApp HCI(Solidfire)とONTAP間でSnapMirrorは設定できますが、オンラインデータ移行ではない為、ここでは割愛致します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F95a9f6ae-31ad-2036-f0fd-4aa8a4d6c600.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=0f365d74a35d72ea7f12ff021a8b50e2)
設定手順
1. ONTAP側における設定
1-1. ONTAP側でLUN利用の為の設定
ONTAP側でLUNを提供する為の仮想ストレージ(SVM)の作成及びLUNの作成を実施します。
詳細手順としては、過去の記事を参照頂ければ図解ありの内容となる為、理解し易いと思います。(OSの種類をLinuxに変えたりIPの数値を変えるだけでほぼ同等の手順になります)
本記事の環境用に設定した内容は以下になります。
# iSCSI LIFの設定値
> net int show -vserver vs_iscsi01
(network interface show)
Logical Status Network Current Current Is
Vserver Interface Admin/Oper Address/Mask Node Port Home
----------- ---------- ---------- ------------------ ------------- ------- ----
vs_iscsi01
data01 up/up 172.16.22.13/24 PS-C250-01 a0a-22 true
data02 up/up 172.16.22.14/24 PS-C250-02 a0a-22 true
2 entries were displayed.
# iSCSI用SVMの情報
> iscsi show -vserver vs_iscsi01
Vserver: vs_iscsi01
Target Name: iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
Target Alias: vs_iscsi01
Administrative Status: up
# SVMに作成したigroupの設定値
# Linux側のinitiarot名はcat /etc/iscsi/initiatorname.iscsiで確認できます
> igroup show -vserver vs_iscsi01 -igroup ig01
Vserver Name: vs_iscsi01
Igroup Name: ig01
Protocol: iscsi
OS Type: linux
Portset Binding Igroup: -
Igroup UUID: bd565d27-3472-11ef-b600-d039ea5905a2
ALUA: true
Initiators: iqn.1994-05.com.redhat:d12eba6e51b (not logged in)
# SVMに作成したVolumeの設定値
> vol show -vserver vs_iscsi01 -volume iscsi0*
Vserver Volume Aggregate State Type Size Available Used%
--------- ------------ ------------ ---------- ---- ---------- ---------- -----
vs_iscsi01 iscsi01 aggr1_node1 online RW 5GB 5.00GB 0%
vs_iscsi01 iscsi02 aggr1_node1 online RW 5GB 5.00GB 0%
2 entries were displayed.
# SVMに作成したLUNの設定値
> lun show -vserver vs_iscsi01
Vserver Path State Mapped Type Size
--------- ------------------------------- ------- -------- -------- --------
vs_iscsi01 /vol/iscsi01/lun01 online mapped linux 3GB
vs_iscsi01 /vol/iscsi02/lun02 online mapped linux 3GB
2 entries were displayed.
# SVMに作成したLUNのMapping設定値
> lun show -m -vserver vs_iscsi01
Vserver Path Igroup LUN ID Protocol
---------- ---------------------------------------- ------- ------ --------
vs_iscsi01 /vol/iscsi01/lun01 ig01 0 iscsi
vs_iscsi01 /vol/iscsi02/lun02 ig01 1 iscsi
2 entries were displayed.
2. Linux側でONTAPのLUNを認識
2-1. SolidfireのLUN容量について確認
まず、Linuxで認識しているSolidfireのLUNについて確認します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F89e6a219-d0d6-b754-1e12-46fb4091e4c1.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=de37556990fe8ea7a0e45b4fdb862e3a)
Solidfire上では3GBのLUNを2つ作成していますが、LinuxではLVMを利用して認識したLUNから小さいサイズのVolumeを切っているので、2GBの領域が存在します。
> df -h |grep mapper
/dev/mapper/almalinux-root 115G 5.2G 110G 5% /
/dev/mapper/vg001-lvm_vol001 2.0G 1.4G 444M 76% /solid_vol001
/dev/mapper/vg001-lvm_vol002 2.9G 2.1G 732M 74% /solid_vol002
2-2. ONTAP向けのiSCSIターゲットの探索
Linux側からONTAPのSVMに設定したiSCSI用LIFのIPアドレスを指定して探索を実施します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2Ffa3d5a41-ccc0-0c3a-5bc2-ac3e77cf8696.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=c7de9caa40c8e097a179a46506203707)
> iscsiadm --mode discovery --type sendtargets --portal 172.16.22.13
172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
#現状の確認
> iscsiadm --mode node
172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol01.7
172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8
> iscsiadm -m session
tcp: [1] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol01.7 (non-flash)
tcp: [2] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8 (non-flash)
2-3. iSCSIログインの実施
探索したしたiSCSIターゲットに対して、それぞれログインを実施します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2Fd8f51c0b-439b-b36e-57c1-22caddd5caa2.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=6a01f20edb3d4502d08826168b661003)
> iscsiadm -m node --login -p 172.16.22.13
Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8, portal: 172.16.22.13,3260]
Login to [iface: default, target: iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8, portal: 172.16.22.13,3260] successful.
> iscsiadm -m node --login -p 172.16.22.14
Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8, portal: 172.16.22.14,3260]
Login to [iface: default, target: iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8, portal: 172.16.22.14,3260] successful.
> iscsiadm -m session
tcp: [1] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol01.7 (non-flash)
tcp: [2] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8 (non-flash)
tcp: [3] 172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
tcp: [4] 172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
2-4. ONTAPのLUNデバイスの確認
この時点で、fdiskコマンドを実行するとONTAPに作成してあるLUNが見えますので
確認できたデバイスのwwidを確認しておきます。
(後のマルチパス設定の部分で利用する)
# wwidを確認
> /lib/udev/scsi_id --whitelisted --device=/dev/sdd
3600a098038313951683f576a526d3137
> /lib/udev/scsi_id --whitelisted --device=/dev/sde
3600a098038313951683f576a526d3138
> /lib/udev/scsi_id --whitelisted --device=/dev/sdf
3600a098038313951683f576a526d3137
> /lib/udev/scsi_id --whitelisted --device=/dev/sdg
3600a098038313951683f576a526d3138
2-5. Multipathの設定
Linuxのroot領域は外部ストレージのLUNに作成していないので、複数経路から同じデバイスを確認する必要がありません。MultiPath設定にする必要が無いので、multipath.confのblacklistの項目に追記が必要になりますので、root領域のwwidを確認しておきます。
# sbaのwwidを確認
> /lib/udev/scsi_id --whitelisted --device=/dev/sda
360022480240a2fe865efd073be91bc6d
multipath.confの修正を実施しますが、本記事では以下の内容を加味して修正しています。
- root領域は対象外なので、black listに追記
- 認識するONTAP LUNに対してmpathXXというマルチパスデバイス名となるように設定
(指定しない場合は、長い英数字で表示されます)
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F33266c33-7c48-b450-24f5-aed462f7fc2c.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=fa2d40369ba6730ff1e825fc1809738e)
# multipathの設定ファイルを編集
> cat /etc/multipath.conf
defaults {
user_friendly_names yes
find_multipaths yes
}
devices {
device {
vendor "NETAPP "
product "LUN.*"
no_path_retry queue
path_checker tur
}
}
blacklist {
wwid 360022480240a2fe865efd073be91bc6d
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
devnode "^cciss.*"
}
multipaths {
multipath {
wwid 3600a098038313951683f576a526d3137
alias mpath0
}
multipath {
wwid 3600a098038313951683f576a526d3138
alias mpath1
}
}
2-6. Multipathの認識
マルチパスデバイスの一覧を更新してから、パスの状態を確認します。
> multipath -r
> multipath -ll
mpath0 (3600a098038313951683f576a526d3137) dm-4 NETAPP,LUN C-Mode
size=3.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| `- 4:0:0:0 sdd 8:48 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
`- 5:0:0:0 sdf 8:80 active ready running
mpath1 (3600a098038313951683f576a526d3138) dm-5 NETAPP,LUN C-Mode
size=3.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| `- 4:0:0:1 sde 8:64 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
`- 5:0:0:1 sdg 8:96 active ready running
3. pvmoveによる移行
3-1. 移行元LUNの確認
移行元SolidfireのLUNが、Linux上に於いてどのようなパーティションで切られているか確認します。
> fdisk -l /dev/sdb
ディスク /dev/sdb: 2.79 GiB, 3001024512 バイト, 5861376 セクタ
ディスク型式: SSD SAN
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xcedf91c6
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/sdb1 2048 5861375 5859328 2.8G 8e Linux LVM
> fdisk -l /dev/sdc
ディスク /dev/sdc: 2.79 GiB, 3001024512 バイト, 5861376 セクタ
ディスク型式: SSD SAN
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x96d00fdc
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/sdc1 2048 5861375 5859328 2.8G 8e Linux LVM
3-2. 移行先LUNへパーティション作成
移行元と移行先の構成を同じにする為、sfdisk -dコマンドで移行元の情報を抜き出し、移行先へ内容を反映させます。本記事の環境では、LUNを2つ利用しているので、以下の内容を対象を変えて2回実施しています。
以下のイメージ図では、本項でPhysical volumeが作成されているように見えますが、正確には次項のvgextend実行時に合わせてPhysical volumeの作成も実施されます。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2Fc85b8fa9-89b8-d060-5552-307982f4d97b.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=0fd5dafc74b84985ba126cdf4aedf720)
> sfdisk -d /dev/sdb | sfdisk /dev/mapper/mpath0 --force
このディスクを使用しているユーザがいないかどうかを調べています ... OK
ディスク /dev/mapper/mpath0: 3 GiB, 3221225472 バイト, 6291456 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 65536 バイト
>>> スクリプトのヘッダを受け付けました。
>>> スクリプトのヘッダを受け付けました。
>>> スクリプトのヘッダを受け付けました。
>>> スクリプトのヘッダを受け付けました。
>>> スクリプトのヘッダを受け付けました。
>>> 新しい DOS ディスクラベルを作成しました。識別子は 0xcedf91c6 です。
/dev/mapper/mpath0-part1: 新しいパーティション 1 をタイプ Linux LVM、サイズ 2.8 GiB で作成しました。
/dev/mapper/mpath0-part2: 終了。
新しい状態:
ディスクラベルのタイプ: dos
ディスク識別子: 0xcedf91c6
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/mapper/mpath0-part1 2048 5861375 5859328 2.8G 8e Linux LVM
(中略)
# 移行先LUNに反映されているか確認
> fdisk -l /dev/mapper/mpath0
ディスク /dev/mapper/mpath0: 3 GiB, 3221225472 バイト, 6291456 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 65536 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xcedf91c6
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/mapper/mpath0p1 2048 5861375 5859328 2.8G 8e Linux LVM
3-3. 既存のVolume Groupへ追加
パーティション設定済みの移行先ディスクを既存のVolume Groupへ追加(拡張)します。
# 既存のVolume group情報の確認
> vgdisplay
--- Volume group ---
VG Name vg001
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size <5.59 GiB
PE Size 4.00 MiB
Total PE 1430
Alloc PE / Size 1280 / 5.00 GiB
Free PE / Size 150 / 600.00 MiB
VG UUID LPPMTp-nXAL-HA82-s24A-FNF8-d6Fk-4m6mf1
(中略)
# Volume groupの拡張(移行先ディスクを追加)
> vgextend vg001 /dev/mapper/mpath0p1
Physical volume "/dev/mapper/mpath0p1" successfully created.
Volume group "vg001" successfully extended
> vgextend vg001 /dev/mapper/mpath1p1
Physical volume "/dev/mapper/mpath1p1" successfully created.
Volume group "vg001" successfully extended
# Volume group情報の確認
> vgdisplay
--- Volume group ---
VG Name vg001
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 4
Act PV 4
VG Size 11.17 GiB
PE Size 4.00 MiB
Total PE 2860
Alloc PE / Size 1280 / 5.00 GiB
Free PE / Size 1580 / 6.17 GiB
VG UUID LPPMTp-nXAL-HA82-s24A-FNF8-d6Fk-4m6mf1
3-4. pvmoveコマンドを使用してデータを移行
pvmoveコマンドで移行元のPhysical volumeから移行先のPhysical volumeを指定し、データを移行します。また、pvmove中のWrite処理も反映されます。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F9fb71a8c-acda-5963-dc40-1a0cc5b55589.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=85c531fa1fec67432cfe1fdcaaa9fd3e)
# 既存Physical volumeと移行先Physical volumeの空き容量を比較
# 移行元のsdb1やsdc1の空きが少ないことが確認できる
> pvs |grep -v "/dev/sda3"
PV VG Fmt Attr PSize PFree
/dev/mapper/mpath0p1 vg001 lvm2 a-- 2.79g 2.79g
/dev/mapper/mpath1p1 vg001 lvm2 a-- 2.79g 2.79g
/dev/sdb1 vg001 lvm2 a-- 2.79g 600.00m
/dev/sdc1 vg001 lvm2 a-- 2.79g 0
# 移行の実施(5秒ごとに状態を確認)
> pvmove -i 5 /dev/sdb1 /dev/mapper/mpath0p1
/dev/sdb1: Moved: 4.96%
/dev/sdb1: Moved: 10.09%
/dev/sdb1: Moved: 14.34%
/dev/sdb1: Moved: 20.00%
/dev/sdb1: Moved: 24.78%
/dev/sdb1: Moved: 29.38%
/dev/sdb1: Moved: 35.04%
/dev/sdb1: Moved: 38.76%
(中略)
# 既存Physical volumeと移行先Physical volumeの空き容量を比較
# 移行元のsdb1の空きが増えたことが確認できる
> pvs |grep -v "/dev/sda3"
PV VG Fmt Attr PSize PFree
/dev/mapper/mpath0p1 vg001 lvm2 a-- 2.79g 600.00m
/dev/mapper/mpath1p1 vg001 lvm2 a-- 2.79g 2.79g
/dev/sdb1 vg001 lvm2 a-- 2.79g 2.79g
/dev/sdc1 vg001 lvm2 a-- 2.79g 0
ユーザアクセスへの影響を減らすために移行速度に対して制約を掛ける場合には、ONTAPのQoSを利用し移行先のLUNへの帯域制限を実施する事で実現できます。
(移行後にQoS解除等の操作は必要)
以下はONTAPのLUNにQoSを設定後にpvmoveを実行した際のVolumeのThroughputを確認した例になります。
# QoS Policyの作成
> qos policy-group create -policy-group migration-policy -vserver vs_iscsi01 -is-shared false -max-throughput 20mbps
> qos policy-group show -policy-group migration-policy
Policy Group Name: migration-policy
Vserver: vs_iscsi01
Uuid: 34b79c24-4fd0-11ef-xxxxxx
Policy Group Class: user-defined
Policy Group ID: 13966
Maximum Throughput: 20MB/s
Minimum Throughput: 0
Number of Workloads: 1
Throughput Policy: 0-20MB/s
Is Shared: false
Is Policy Auto Generated: -
# LUNに作成したQoS Policyの設定(SVMやVolumeのQoSはnoneに変更済)
> lun modify -vserver vs_iscsi01 -path /vol/iscsi02/lun02 -qos-policy-group migration-policy
# pvmove実行中のONTAP上のLUNへのThroughput確認
# LUNの作成されているVolumeの Throughputが20MB/secで推移している事が確認できる
> qos statistics volume characteristics show -vserver vs_iscsi01 -volume iscsi02
Workload ID IOPS Throughput Request Size Read Concurrency
--------------- ------ -------- ---------------- ------------ ---- -----------
-total- - 321 20.00MB/s 65331B 0% 13
iscsi02-wid20.. 20303 320 20.00MB/s 65536B 0% 13
-total- - 323 20.19MB/s 65536B 3% 11
iscsi02-wid20.. 20303 317 19.81MB/s 65536B 1% 11
-total- - 320 20.00MB/s 65536B 0% 12
iscsi02-wid20.. 20303 320 20.00MB/s 65536B 0% 12
-total- - 323 20.19MB/s 65536B 0% 14
iscsi02-wid20.. 20303 323 20.19MB/s 65536B 0% 14
(中略)
4. 既存のLUNのやiSCSI設定の削除処理
4-1. 既存Physical volumeをVolume Groupから削除
移行前に使っていたPhysical volume(移行元LUN)をVolume Groupから削除します。
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2Fbbf7496d-15b7-d9d0-1686-c35eab72ab9e.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=b2068c7841c15e060a862b1166aa58ef)
# Volume GroupからPhysical volumeを削除
> vgreduce vg001 /dev/sdb1
Removed "/dev/sdb1" from volume group "vg001"
> vgreduce vg001 /dev/sdc1
Removed "/dev/sdc1" from volume group "vg001"
# VG Sizeが小さくなっている事の確認
> vgdisplay
--- Volume group ---
VG Name vg001
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 14
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size <5.59 GiB
PE Size 4.00 MiB
Total PE 1430
Alloc PE / Size 1280 / 5.00 GiB
Free PE / Size 150 / 600.00 MiB
VG UUID LPPMTp-nXAL-HA82-s24A-FNF8-d6Fk-4m6mf1
(中略)
4-2. Physical volumeを削除
Volume Groupから削除したPhysical volumeを削除を削除します。
(削除対象分実施します)
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2Fe1c00f9d-272f-edf1-ed39-aff2a7066ddd.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=685b1896f0f9ff43b2ba2383a6b0a81b)
# Physical volumeを削除
> pvremove /dev/sdb1
Labels on physical volume "/dev/sdb1" successfully wiped
4-3. デバイス設定及びiSCSI設定を削除
認識しているデバイスのパーティション削除及びSolidfireから認識しているiSCSI経路を削除します。
(削除対象分実施します)
![qiita-square](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F1268577%2F2dfc4327-95fa-91b4-8e1e-a7de6fbfc4b6.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=99e8b79f2b620e07d6ec31db6016319a)
# パーティションを削除
> fdisk /dev/sdb
fdisk (util-linux 2.37.4) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。
コマンド (m でヘルプ): d
パーティション 1 を選択
パーティション 1 を削除しました。
コマンド (m でヘルプ): w
パーティション情報が変更されました。
ioctl() を呼び出してパーティション情報を再読み込みします。
ディスクを同期しています。
#Linux上で認識しているSolidfireデバイスの削除
> echo offline > /sys/block/sdb/device/state
> echo 1 > /sys/block/sdb/device/delete
LinuxとSolidfire間で設定していたiSCSI接続の解除及び削除を実施します。
Solidfireの場合は接続しているLUN数分の削除処理が必要になります。
# 現状の確認
> iscsiadm --mode session
tcp: [1] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol01.7 (non-flash)
tcp: [2] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8 (non-flash)
tcp: [3] 172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
tcp: [4] 172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
> iscsiadm --mode node
172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol01.7
172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8
# iSCSI Target(Solidfire)からのLogout
> iscsiadm --mode node --target iqn.2010-01.com.solidfire:1ikc.linuxvol01.7 --logout
Logging out of session [sid: 1, target: iqn.2010-01.com.solidfire:1ikc.linuxvol01.7, portal: 172.16.22.15,3260]
Logout of [sid: 1, target: iqn.2010-01.com.solidfire:1ikc.linuxvol01.7, portal: 172.16.22.15,3260] successful.
# Logout後のSession情報の確認
> iscsiadm --mode session
tcp: [2] 172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8 (non-flash)
tcp: [3] 172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
tcp: [4] 172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8 (non-flash)
# iSCSI Target情報の削除
> iscsiadm --mode node --target iqn.2010-01.com.solidfire:1ikc.linuxvol01.7 --op delete
# 削除後のTarget情報の確認
> iscsiadm --mode node
172.16.22.13:3260,1032 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.14:3260,1033 iqn.1992-08.com.netapp:sn.814b2072347111efb600d039ea5905a2:vs.8
172.16.22.15:3260,1 iqn.2010-01.com.solidfire:1ikc.linuxvol02.8
参考及びリンク
How to setup an optimal iSCSI connection from Linux with ONTAP