読者です 読者をやめる 読者になる 読者になる

めもぶろぐ

お勉強したこと、趣味なんかを適当に書いてます。。。

KVM上にiscsi専用のサーバを構築

前回のエントリのやつをKVM上に一から構築しておきたいと思います。

 

 

chiita01.hatenablog.com

 

 

 

まずはインストールから

 

 

virt-install --name iscsiSV --ram 512 --vcpus 1 --disk /data/kvm/iscsiSV.img,size=100,cache=writeback --location /data/iso/CentOS-7* --virt-type kvm --os-variant rhel7 --console pty,target_type=serial --extra-args='console=ttyS0,115200n8'  --nographics

 

メモリとCPU、ディスクイメージの置き場所は適当にどうぞ。

インストールも適当にどうぞ。

 

 

インストールが終わるのを待ちます。。。。

低スペックノートPCなのでじかんかかるなあ。

 

たぶん、リブートしてくださいとenterを押しますがリブートしてこないので、起動してあげます。

 

virsh start iscsiSV

pingでも打って疎通確認してください。

テキストモードでのインストールだと細かいディスクのパーティション設定ができないので、/homeあたりのパーティションサイズを縮小します。

 

[root@iscsiSV ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 50G 1.2G 49G 3% /
devtmpfs 234M 0 234M 0% /dev
tmpfs 245M 0 245M 0% /dev/shm
tmpfs 245M 4.4M 240M 2% /run
tmpfs 245M 0 245M 0% /sys/fs/cgroup
/dev/mapper/cl-home 48G 33M 48G 1% /home
/dev/vda1 1014M 123M 892M 13% /boot
tmpfs 49M 0 49M 0% /run/user/0
[root@iscsiSV ~]#

 

 

lvreduce /dev/cl/home

データ壊れますけど?って出ますが、ユーザも作ってないしyで応答しましょう。

WARNING: Reducing active and open logical volume to 1.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce cl/home? [y/n]: y
Size of logical volume cl/home changed from 47.99 GiB (12286 extents) to 1.00 GiB (256 extents).
Logical volume cl/home successfully resized.

 

lvs

LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home cl -wi-ao---- 1.00g
root cl -wi-ao---- 50.00g
swap cl -wi-ao---- 1.00g

 

 

ということで、ディスクが49Gフリーになりました。

iscsi用に論理ボリュームを作成します。

 

lvcreate -n iscsivol -L 10G cl

LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home cl -wi-ao---- 1.00g

iscsivol cl -wi-a----- 10.00g
root cl -wi-ao---- 50.00g
swap cl -wi-ao---- 1.00g

 

yum -y install iscsi-initiator-utils.x86_64 scsi-target-utils

なんと衝撃。centos7では設定方法が違う。。。

そもそもパッケージもちがう。

 

冒頭に張り付けているエントリ通りにやる場合は下記を実行してからやってください。

yum -y install epel-release.noarch
yum -y install scsi-target-utils --enablerepo=epel

 

 

うーん、まあせっかくなんで新しいほうのやり方で進めます。

認証はなし、aclありで行きます。

 

設定モードにプロンプトが変わるみたいです。

 

yum -y install install targetcli

 

# iscsiターゲット編集モードへ突入

targetcli

 

# 構造が決まっているみたい。lsを打つとわかる。タブ保管あり

# とりあえず移動

cd /iscsi

 

# ターゲットデバイスの作成。任意の値。IQNのお作法があるらしい

create iqn.2017-03.iscsiSV:iscsivol.target00

 

# 作成したターゲットデバイスの設定に移動

cd iqn.2017-03.iscsisv:iscsivol.target00/tpg1

 

# LUNの作成、というか作成済み論理ボリュームのマッピング

cd luns

create /dev/mapper/cl-iscsivol

 

# ACLの設定。

cd ../acls

 

# 受け付けるiscsiイニシエータを指定。

# クライアントでcat /etc/iscsi/initiatorname.iscsiを実行し、結果を張り付ける

create iqn.1994-05.com.redhat:d32e60acb86e

 

# ターゲット設定終わり

exit

 

 

サービスの自動起動設定して、めんどいので再起動しちゃいます。

systemctl enable target

vim /etc/selinux/config

systemctl disable firewalld

reboot

 

 

 

 

これにてターゲット側、つまりiscsiサービスを提供するサーバ側の設定が完了。

つぎはイニシエータ側、つまりクライアント側の設定。

iscsiadm -m discovery -t st -p 192.168.11.55

iscsiadm -m node -T iqn.2017-03.iscsisv:iscsivol.target00 -p 192.168.11.55 -l

 

認証の設定は指定なので、これでおわり。

 

 

おまけ

 

syslogをみたらなんのデバイスがアタッチされたか確認できるよ。

 

tail /var/log/messages

Mar 19 00:26:56 node01 kernel: scsi 27:0:0:0: alua: supports implicit and explicit TPGS
Mar 19 00:26:56 node01 kernel: scsi 27:0:0:0: alua: port group 00 rel port 01
Mar 19 00:26:56 node01 kernel: scsi 27:0:0:0: alua: port group 00 state A non-preferred supports TOlUSNA
Mar 19 00:26:56 node01 kernel: scsi 27:0:0:0: alua: Attached
Mar 19 00:26:56 node01 kernel: sd 27:0:0:0: Attached scsi generic sg2 type 0
Mar 19 00:26:56 node01 kernel: sd 27:0:0:0: [sdb] 20971520 512-byte logical blocks: (10.7 GB/10.0 GiB)
Mar 19 00:26:56 node01 kernel: sd 27:0:0:0: [sdb] Write Protect is off
Mar 19 00:26:56 node01 kernel: sd 27:0:0:0: [sdb] Write cache: enabled, read cache: enabled, supports DPO and FUA
Mar 19 00:26:56 node01 kernel: sd 27:0:0:0: [sdb] Attached SCSI disk
Mar 19 00:26:57 node01 iscsid: Connection24:0 to [target: iqn.2017-03.iscsisv:iscsivol.target00, portal: 192.168.11.55,3260] through [iface: default] is operational now

 

 

 

おわり

広告を非表示にする