Bii o ṣe le Ṣeto Server iSCSI (Àkọlé) ati Onibara (Initiator) lori Debian 9


Ninu agbaye ile-iṣẹ data, agbara Awọn nẹtiwọọki Awọn agbegbe Ibi Ipamọ nla (SAN) ti di boṣewa to kere julọ. Bii awọn olupese awọsanma ati agbara ipa tun tẹsiwaju lati ṣe awọn ipa nla ni agbaye imọ-ẹrọ, iwulo fun aaye ibi ipamọ SAN diẹ sii paapaa ti han.

Pupọ ohun elo SAN jẹ ti oludari oniduro (tabi ṣeto awọn olutona) ati ikojọpọ nla ti awọn iwakọ agbara giga gbogbo tunto lati ṣe atilẹyin awọn oye giga ti wiwa data ati iduroṣinṣin.

Ọpọlọpọ awọn ọja amọja wọnyi ni a ṣe nipasẹ awọn olutaja orukọ nla bi Netapp, Dell Equalogic, HP Storageworks, tabi EMC ati ni awọn ami idiyele ti a so mọ wọn ti awọn ile-iṣẹ ti o tobi julọ nikan le fun.

Ni otitọ, awọn ẹrọ wọnyi kii ṣe nkan diẹ sii ju awọn ipilẹ disiki lile nla pẹlu oludari ti n pese aaye ti awọn disiki lile wọnyẹn si awọn alabara nẹtiwọọki. Ọpọlọpọ awọn imọ-ẹrọ ti wa ni awọn ọdun ti o pese iṣẹ yii tabi iru iṣẹ ni aaye idiyele ti o din owo pupọ.

Pinpin Debian GNU/Linux n pese awọn idii ti o gba laaye eto Debian lati ṣe iṣẹ idi ti ẹrọ ibi ipamọ SAN ipele ti ile-iṣẹ ni ida kan ti idiyele naa! Eyi n gba gbogbo eniyan laaye lati awọn olumulo ile ipilẹ tabi awọn ile-iṣẹ data nla lati gba awọn anfani ti ifipamọ SAN laisi nini inawo lori ipinnu ohun-ini ataja kan.

Nkan yii yoo wo bi eto Debian 9 (Stretch) ṣe le ṣeto lati ṣe iranṣẹ aaye disiki ni lilo eto ti a mọ si Ọlọpọọmídíẹ Awọn Ẹrọ Kọmputa Intanẹẹti tabi iSCSI ni kukuru. iSCSI jẹ Ilana orisun Ayelujara (IP) ti o da lori fun ipese ibi ipamọ (dirafu lile) ibi ipamọ si awọn eto miiran. iSCSI n ṣiṣẹ ni awoṣe olupin alabara ṣugbọn lo awọn orukọ oriṣiriṣi lati ṣe iyatọ alabara lati olupin naa.

Ninu awọn ọrọ iSCSI, olupin ti n ṣiṣẹ ni ‘aaye disk’ ni a mọ bi iSCSI ‘Target’ ati eto ti n beere/lilo aaye disk ni a mọ ni iSCSI ‘Initiator’. Nitorinaa ni awọn ọrọ miiran, ‘Initiator‘ beere awọn ibeere dina ibi ipamọ lati ‘Ifojusi kan’.

Itọsọna yii yoo rin nipasẹ ipilẹ ipilẹ ti o kan olupin iSCSI ti o rọrun (ibi-afẹde) ati alabara (alakọbẹrẹ) mejeeji nṣiṣẹ Debian 9 (Stretch).

Debian iSCSI Target: 192.168.56.101/24
Storage: Contains two extra hard drives to be used as the storage in the iSCSI setup
Debian iSCSI Initiator: 192.168.56.102/24

Nẹtiwọọki le ṣee wo bi isalẹ:

Debian iSCSI Iṣeto ni Ifojusi

Ninu agbaye iSCSI, a ka ibi-afẹde si ogun ti o ni awọn ẹrọ ipamọ lati lo nipasẹ oludasile.

Ninu nkan yii olupin pẹlu IP ti 192.168.56.101 ti nlo bi afojusun. Gbogbo awọn atunto yoo ṣee ṣe lori ogun yẹn fun apakan yii.

Igbesẹ akọkọ ni fifi sori ẹrọ ti awọn idii ti o yẹ lati gba eto Debian laaye lati ṣe awọn ibi-afẹde iSCSI. Apakan sọfitiwia yii ni a mọ bi Ilana Ifojusi (TGT).

Ohun miiran ti a nlo fun itọsọna yii ni Awọn irinṣẹ Iṣakoso Iwọn didun Logan (LVM) bi Awọn iwọn Logic (LVs) yoo ṣee lo bi atilẹyin ibi ipamọ fun afojusun iSCSI.

Awọn idii mejeeji le fi sori ẹrọ pẹlu awọn ofin wọnyi.

# apt-get update
# apt-get install tgt lvm2

Lọgan ti a ba fi awọn idii sii, ao lo LVM lati ṣeto awọn disiki lile lori ibi-afẹde fun lilo bi iSCSI LUN. A lo aṣẹ akọkọ lati ṣeto awọn disiki fun ifisi ninu iṣeto LVM kan. Rii daju lati yipada aṣẹ bi o ṣe nilo fun awọn oju iṣẹlẹ oriṣiriṣi!

# lsblk (Only used to confirm disks to be used in the LVM setup)
# pvcreate /dev/sd{b,c}

Lọgan ti a ti pese awọn disiki naa pẹlu aṣẹ 'pvcreate' ti o wa loke, o to akoko lati ṣẹda ẹgbẹ iwọn didun lati awọn disiki pataki wọnyi. A nilo ẹgbẹ iwọn didun lati ṣẹda Awọn iwọn Logbon ti yoo ṣiṣẹ bi ipamọ iSCSI nigbamii.

Lati ṣẹda ẹgbẹ iwọn didun kan, aṣẹ ‘vgcreate’ ni a nilo.

# vgcreate tecmint_iscsi /dev/sd{b,c}
# vgs  (Only needed to confirm the creation of the volume group)

Akiyesi ninu iṣẹjade loke pe eto naa dahun pe a ṣẹda Ẹgbẹ Iwọn didun ṣugbọn o jẹ igbagbogbo imọran ti o dara lati ṣayẹwo ilọpo meji bi a ti rii loke pẹlu aṣẹ 'vgs'. Agbara ti ẹgbẹ iwọn didun yii jẹ 9,99GB nikan. Lakoko ti eyi jẹ ẹgbẹ iwọn didun kekere paapaa, ilana naa yoo jẹ bakanna fun awọn disiki ti agbara nla!

Igbese ti n tẹle ni ẹda ti iwọn ọgbọn ọgbọn ti yoo ṣe bi disk si alabara iSCSI (oludasile). Fun apẹẹrẹ yii gbogbo rẹ ni ẹgbẹ iwọn didun yoo ṣee lo ṣugbọn kii ṣe pataki.

A o ṣẹda iwọn didun ọgbọn nipa lilo aṣẹ 'lvcreate'.

# lvcreate -l 100%FREE tecmint_lun1 tecmint_iscsi
# lvs  (Simply used to confirm the creation of the logical volume)

Ofin ‘lvcreate’ ti o wa loke le jẹ iruju diẹ ni iwoye akọkọ ṣugbọn fifọ ni bii:

  • lvcreate - Aṣẹ ti a lo lati ṣẹda iwọn oye.
  • -l 100% ỌFẸ - Ṣẹda iwọn ọgbọn nipa lilo gbogbo aaye iye ẹgbẹ ẹgbẹ. ”
  • -n tecmint_lun1 - Orukọ iwọn didun ti ọgbọn lati ṣẹda.
  • tecmint_iscsi - Orukọ ẹgbẹ iwọn didun lati ṣẹda iwọn ọgbọn inu laarin.

Lọgan ti a ti ṣẹda iwọn didun ọgbọn, o to akoko lati ṣẹda LUN gangan (Nọmba Ẹka Ijinlẹ). LUN yoo jẹ ẹrọ ifipamọ ti oludasile yoo sopọ si ati lo nigbamii.

Ṣiṣẹda LUN jẹ irorun ati nilo awọn igbesẹ diẹ. Igbesẹ akọkọ yoo jẹ ẹda ti faili iṣeto. Faili yii yoo gbe inu itọsọna '/etc/tgt/conf.d' ati fun nkan yii yoo pe ni 'TecMint_iscsi.conf'.

Lati ṣẹda faili yii lo olootu ọrọ kan.

# nano /etc/tgt/conf.d/TecMint_iscsi.conf

Laarin faili yii, gbogbo alaye iṣeto ni pataki fun LUN yii ni yoo tunto. Awọn aṣayan pupọ wa ti o le gbe sinu faili yii ṣugbọn fun bayi LUN ipilẹ pẹlu Ilana Ipilẹ Iṣowo Iṣowo Iṣowo Iṣowo (CHAP) ni yoo tunto.

Itumọ LUN yoo wa laarin awọn alaye ‘afojusun’ meji. Fun awọn ipele diẹ sii ti o le lọ ninu alaye ibi-afẹde naa, ṣe atunyẹwo oju-iwe itọnisọna fun faili 'targets.conf' nipasẹ ipinfunni 'eniyan 5 targets.conf'.

<target iqn.2018-02.linux-console.net:lun1>
     # Provided device as an iSCSI target
     backing-store /dev/mapper/tecmint_iscsi-tecmint_lun1
     initiator-address 192.168.56.102
    incominguser tecmint-iscsi-user password
     outgoinguser debian-iscsi-target secretpass
</target>

Ọpọlọpọ n lọ loke. Alaye ni kiakia le ṣe iranlọwọ fun pupọ julọ.

  • Laini akọkọ bẹrẹ iṣeto ni pato iSCSI LUN. Ni ọran yii LUN ti a samisi 'iqn.2018-02.linux-console.net:lun1'. Apakan 'iqn' tọkasi pe eyi yoo jẹ orukọ iSCSI ti o tootun. Awọn '2018-02' jẹ idapo ọjọ ti a yan lainidii. 'linux-console.net' ni ibugbe ti pato LUN yii jẹ. Lakotan, a lo ‘lun1’ bi orukọ fun ibi-afẹde pataki yii.
  • Laini keji ti o wa loke ṣapejuwe asọye kan. Awọn asọye le wa ninu awọn faili atunto afojusun ati pe o gbọdọ jẹ iṣaaju pẹlu aami ‘#‘.
  • Laini kẹta ni ibiti aaye ibi-itọju gangan ti yoo lo nipasẹ oludasile wa. Ni ọran yii Fifẹyin ipamọ yoo jẹ iwọn ọgbọn ti o ṣẹda ni iṣaaju ninu itọsọna naa.
  • Laini kẹrin ni adiresi IP ti o nireti lati ipilẹṣẹ. Lakoko ti eyi kii ṣe nkan iṣeto iṣeto ti a beere, o le ṣe iranlọwọ alekun aabo.
  • Ila karun ni orukọ olumulo ti nwọle/ọrọ igbaniwọle. Gẹgẹ bi adirẹsi oludasile loke, a ko nilo paramita yii ṣugbọn o le ṣe iranlọwọ lati ni aabo LUN. Niwọn igba ti itọsọna yii tun n bo ipapọ iSCSI CHAP, o nilo paramita yii. Laini yii tọka orukọ olumulo ati ọrọ igbaniwọle ti ibi-afẹde yoo nireti lati ọdọ olupilẹṣẹ lati le sopọ si LUN yii.
  • Laini kẹfa ni orukọ olumulo/ọrọ igbaniwọle ti ibi-afẹde yoo pese fun oludasile lati gba laaye fun ijẹrisi CHAP papọ lati waye. Ni deede a ko nilo paramita yii ṣugbọn nkan yii n bo wiwa afọwọkọ CHAP nitorinaa o nilo paramita yii.
  • Laini ikẹhin jẹ alaye ipari fun itumọ afojusun. San ifojusi si din ku ni iwaju ibi-afẹde koko!

Lọgan ti awọn atunto ti o yẹ fun LUN ti tẹ, fi awọn ayipada pamọ ki o jade kuro ni olootu ọrọ. Ti o ba nlo nano, lu ctrl+o lati fipamọ ati lẹhinna lu ctrl+x lati jade nano.

Lọgan ti a ti ṣẹda faili iṣeto, iṣẹ tgt yẹ ki o tun bẹrẹ nitorina tgt mọ ti awọn ibi-afẹde tuntun ati iṣeto ni nkan.

Eyi le ṣee ṣe pẹlu ọkan ninu awọn ofin wọnyi ati pe o gbẹkẹle eto init ni lilo.

# service tgt restart  (For sysv init systems)
# systemctl restart tgt  (For systemd init systems)

Lọgan ti a ti tun bẹrẹ tgt, o ṣe pataki lati ṣayẹwo lati rii daju pe a ti n ṣe afojusun iSCSI ni ibamu si faili iṣeto ti a ṣẹda.

Eyi le ṣaṣeyọri pẹlu aṣẹ ‘tgtadm’.

# tgtadm --mode target --op show   (This will show all targets)

Eyi pari iṣeto ti afojusun naa. Abala ti n tẹle yoo ṣiṣẹ nipasẹ iṣeto ti oludasile.

Debian iSCSI Iṣeto Iṣeto

Igbese ti n tẹle ni lilo iSCSI ti a tunto tẹlẹ ni iṣeto ni ti oludasile iSCSI.

XenServer/ESXi ti o yatọ tabi awọn pinpin miiran bi Red Hat, Debian, tabi Ubuntu.

Igbesẹ akọkọ ninu ilana yii fun oludasile Debian yii ni fifi sori ẹrọ ti awọn idii ti o yẹ fun iSCSI.

# apt-get update
# apt-get install open-iscsi

Lọgan ti apt ba pari iṣeto ti awọn idii-iscsi ṣiṣi, iṣeto iSCSI ipilẹṣẹ le bẹrẹ. Igbesẹ akọkọ yoo jẹ lati ṣe ibasọrọ pẹlu ibi-afẹde lati gba alaye iṣeto akọkọ fun afojusun ti a mura silẹ.

# iscsiadm -m discovery -t st -p 192.168.56.101

Nigbati aṣẹ yii ba n ṣiṣẹ, yoo dahun pada pẹlu orukọ ti ọsan ti a tunto tẹlẹ ṣaaju fun ogun yii pato. Aṣẹ ti o wa loke yoo tun ṣe awọn faili meji fun alaye LUN tuntun ti a ṣe awari.

Nisisiyi faili ti a ṣẹda fun oju ipade yii yoo nilo lati tunto alaye CHAP ni ibere fun afojusun iSCSI yii lati ni iraye si ni ibẹrẹ.

Ni imọ-ẹrọ alaye yii le jẹ iṣeto fun gbogbo eto ni apapọ ṣugbọn ni iṣẹlẹ ti olugbalejo kan sopọ si oriṣiriṣi LUN pẹlu awọn iwe-ẹri oriṣiriṣi, gbigbe awọn iwe-ẹri wọnyẹn sinu faili iṣeto oju ipade pato le ṣe idinku eyikeyi awọn ọran.

Faili iṣeto oju ipade yoo wa ninu itọsọna ‘/ ati be be/iscsi/nodes /‘ ati pe yoo ni itọsọna fun LUN wa. Ninu ọran ti nkan yii (akiyesi pe awọn ọna yoo yipada ti awọn orukọ/adirẹsi IP ba yipada).

# /etc/iscsi/nodes/iqn.2018-02.linux-console.net\:lun1/192.168.56.101\,3260\,1/default

Lati ṣiṣẹ pẹlu faili yii, eyikeyi olootu ọrọ le ṣee lo.

# nano /etc/iscsi/nodes/iqn.2018-02.linux-console.net\:lun1/192.168.56.101\,3260\,1/default

Laarin faili yii ọpọlọpọ awọn aṣayan ti a ti tunto tẹlẹ yoo wa fun afojusun ọkọọkan ti o pinnu lakoko ṣiṣe aṣẹ 'iscsiadm' ni iṣaaju.

Niwon ipilẹ Debian yii/ipilẹṣẹ ipilẹṣẹ nlo CHAP ifowosowopo, diẹ ninu awọn aṣayan diẹ nilo lati yipada ati ṣafikun si faili yii ati lẹhinna buwolu wọle si ibi-afẹde iSCSI ti a ṣe.

Awọn ayipada si faili yii ni:

node.session.auth.authmethod = CHAP                    #Enable CHAP Authentication
node.session.auth.username = tecmint-iscsi-user        #Target to Initiator authentication
node.session.auth.password = password                  #Target to Initiator authentication
node.session.auth.username_in = debian-iscsi-target    #Initiator to Target authentication
node.session.auth.password_in = secretpass             #Initiator to Target authentication

Awọn aṣayan ti o wa loke yoo gba aaye yii laaye lati jẹrisi si oludasile bakanna gba laaye oludasile lati jẹrisi si ibi-afẹde naa.

Aṣayan miiran wa ninu faili pataki yii ti o le nilo lati yipada da lori awọn ayanfẹ ti oluṣakoso ati pe iyẹn ni ‘node.startup’ paramita.

Ti o ba tẹle itọsọna yii, ‘node.startup’ aṣayan yoo ṣeto si ‘itọsọna’ ni aaye yii. Eyi le ma fẹ. Ti olutọju ba fẹ lati ni ifọkansi iSCSI ti sopọ nigbati eto naa ba bẹrẹ, yi ‘itọsọna’ pada si ‘adaṣe’ bii:

node.startup = automatic

Lọgan ti a ti ṣe awọn ayipada ti o wa loke, fi faili pamọ ki o jade. Ni aaye yii iṣẹ iṣẹ ibẹrẹ-iscsi nilo lati tun bẹrẹ lati ka awọn ayipada tuntun wọnyi ki o sopọ si ibi-afẹde iSCSI.

Eyi le ṣee ṣe pẹlu ọkan ninu awọn ofin atẹle ti o da lori eto init ti o nlo.

# service open-iscsi restart   (For sysv init systems)
# systemctl restart open-iscsi (For systemd init systems)

Akiyesi ninu apoti alawọ ti o wa loke pe oludasile iSCSI ni anfani lati wọle sinu ibi-afẹde naa. Lati jẹrisi siwaju sii pe ibi-afẹde iSCSI wa nitootọ si oludasile, a le ṣayẹwo eto naa fun awọn awakọ disiki ni afikun ti o wa ni lilo pipaṣẹ 'lsblk' ati ṣayẹwo iṣagbejade fun awọn awakọ afikun.

# lsblk

Aṣẹ miiran ti o le lo lori oludasile lati jẹrisi asopọ kan si ibi-afẹde ni 'iscsiadm' bii eleyi:

# iscsiadm -m session

Ibi ikẹhin lati jẹrisi asopọ kan yoo wa lori ibi-afẹde funrararẹ ni lilo pipaṣẹ 'tgtadm' lati ṣe atokọ eyikeyi awọn isopọ iSCSI.

# tgtadm --mode conn --op show --tid 1

Lati aaye yii, ẹrọ iSCSI ti a so tuntun le ṣee lo iru si eyikeyi disiki ti a sopọ mọ deede! Ipin, ṣiṣẹda faili eto, iṣagbesori, ati/tabi iṣopọ iṣootọ gbogbo wọn le ni abojuto deede.

Išọra nla kan lati ni akiyesi pẹlu awọn ẹrọ iSCSI ni pe ifọkansi iSCSI ni awọn eto faili pataki ti o nilo bi oludasile ti n bẹrẹ, rii daju lati lo titẹsi '_netdev' ni faili '/ etc/fstab' lati rii daju pe iSCSI ẹrọ ti sopọ ṣaaju ki eto naa tẹsiwaju booting!