Otu esi edozi sava iSCSI (Ezubere) na onye ahịa (onye mbido) na Debian 9


N'ime ụwa etiti data, nnukwu ikike nchekwa mpaghara netwọkụ (SAN) abụrụla ọkọlọtọ kacha nta. Dị ka igwe ojii na-enye na virtualization na-aga n'ihu na-enwe mmetụta dị ukwuu na ụwa nkà na ụzụ, mkpa nke ọbụna SAN nchekwa ohere apụtawo ìhè.

Imirikiti ngwaike SAN nwere njikwa minimalistic (ma ọ bụ set nke ndị na-ahụ maka njikwa) yana nnukwu nchịkọta ikike draịva niile ahaziri iji kwado nnukwu nnweta data na iguzosi ike n'ezi ihe.

Ọtụtụ n'ime ngwaahịa ndị a pụrụ iche bụ ndị na-ere ahịa aha dị ka Netapp, Dell Equalogic, HP Storageworks, ma ọ bụ EMC na-emepụta ma nwee mkpado ọnụahịa agbakwunyere na naanị ụlọ ọrụ kachasị ukwuu nwere ike imeli.

N'ezie, ngwaọrụ ndị a abụghị ihe karịrị nnukwu diski diski nwere njikwa na-enye ohere nke diski ike ndị ahụ maka ndị ahịa nwere netwọk. Ọtụtụ teknụzụ adịla kemgbe afọ ndị na-enye ọrụ a ma ọ bụ ọrụ yiri ya na ọnụ ahịa dị ọnụ ala karịa.

Nkesa Debian GNU/Linux na-enye ngwugwu na-enye ohere ka sistemụ Debian rụọ ebumnuche nke ngwaọrụ nchekwa SAN ọkwa ụlọ ọrụ na obere ntakịrị nke ọnụ ahịa! Nke a na-enye onye ọ bụla ohere site n'aka ndị ọrụ ụlọ bụ isi ma ọ bụ nnukwu data-center iji nweta uru nke nchekwa SAN na-enweghị itinye ego na ngwọta nke onye na-ere ahịa.

Edemede a ga-eleba anya ka esi hazie sistemụ Debian 9 (Stretch) iji wepụta ohere diski site na iji sistemụ a maara dị ka Interface Small Computer Systems Interface ma ọ bụ iSCSI maka nkenke. iSCSI bụ ụkpụrụ dabere na Internet Protocol (IP) maka ịnye nchekwa ngọngọ (draịvụ ike) na sistemụ ndị ọzọ. iSCSI na-arụ ọrụ n'ụdị ihe nkesa ndị ahịa mana ọ na-eji aha dị iche iche iji mara onye ahịa na sava ahụ.

Na okwu iSCSI, ihe nkesa na-eje ozi na 'oghere diski' bụ nke a maara dị ka iSCSI 'Target' na usoro nke na-arịọ/na-eji ohere diski a maara dị ka iSCSI 'Initiator'. Yabụ na okwu ndị ọzọ, 'Initiator' na-arịọ maka igbochi nchekwa site na 'Target'.

Ntuziaka a ga-aga site na ntọala ntọala gụnyere ihe nkesa iSCSI dị mfe (lekwasịrị) na onye ahịa (onye mbido) na-agba ọsọ 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

Enwere ike ilele netwọkụ ahụ dị ka n'okpuru:

Nhazi Nhazi Debian iSCSI

N'ime ụwa iSCSI, a na-ahụta ebumnuche dị ka onye ọbịa nwere ngwaọrụ nchekwa nke onye mbido ga-eji.

N'isiokwu a, a na-eji ihe nkesa nwere IP nke 192.168.56.101 dị ka ebumnuche. A ga-eme nhazi niile na onye ọbịa ahụ maka ngalaba a.

Nzọụkwụ mbụ bụ ntinye nke ngwugwu ndị dị mkpa iji kwe ka usoro Debian rụpụta ebumnuche iSCSI. A maara ngwungwu ngwanrọ a dị ka Target Framework (TGT).

Ihe ọzọ a na-eji maka ntuziaka a bụ ngwaọrụ Logical Volume Management (LVM) dị ka a ga-eji mpịakọta Logical (LVs) dị ka nkwado nchekwa maka ebumnuche iSCSI.

Enwere ike ịwụnye ngwugwu abụọ a site na iwu ndị a.

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

Ozugbo etinyere ngwugwu ndị ahụ, a ga-eji LVM dozie diski ike na ebumnuche maka iji dị ka iSCSI LUN. A na-eji iwu nke mbụ akwado diski maka itinye na nhazi LVM. Jide n'aka na ị gbanwee iwu dịka achọrọ maka ọnọdụ dị iche iche!

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

Ozugbo ejiri iwu 'pvcreate' dị n'elu kwadebe diski ndị ahụ, ọ bụ oge ịmepụta otu olu na diski ndị a. A choro otu olu ka imepụta mpịakọta Logical ga-arụ ọrụ dị ka nchekwa iSCSI ma emechaa.

Iji mepụta otu olu, a chọrọ iwu 'vgcreate'.

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

Rịba ama na mmepụta dị n'elu na usoro ahụ na-aza na e mepụtara Volume Group ma ọ bụ mgbe niile ka ọ dị mma ịlele ugboro abụọ dịka a hụrụ n'elu site na iwu 'vgs'. Ikike nke otu olu a bụ naanị 9.99GB. Ọ bụ ezie na nke a bụ obere obere olu, usoro a ga-abụ otu maka diski nke ikike buru ibu!

Nzọụkwụ ọzọ bụ ịmepụta ụda ezi uche nke ga-arụ ọrụ dị ka diski nye onye ahịa iSCSI (onye mbido). Maka ọmụmaatụ a, a ga-eji mkpokọta olu otu ahụ mana ọ dịghị mkpa.

A ga-emepụta olu ezi uche dị na ya site na iji iwu 'lvcreate'.

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

Iwu 'lvcreate' dị n'elu nwere ike ịbụ ntakịrị mgbagwoju anya na nlele mbụ mana mmebi ahụ dị ka:

  • lvcreate – A na-eji iwu emepụta olu ezi uche dị na ya.
  • -l 100% FREE - Mepụta ụda ezi uche dị na ya site na iji oghere efu nke otu olu.
  • -n tecmint_lun1 - Aha nke olu ezi uche nke a ga-emepụta.
  • tecmint_iscsi - Aha otu olu iji mepụta ụda ezi uche dị n'ime.

Ozugbo e mepụtara olu ezi uche dị na ya, ọ bụ oge ịmepụta LUN (Logical Unit Number) n'ezie. LUN ga-abụ ngwaọrụ nchekwa nke onye mbido ga-ejikọta ma jiri emechaa.

Ịmepụta LUN dị nnọọ mfe ma na-achọ naanị usoro ole na ole. Nzọụkwụ mbụ ga-abụ ịmepụta faịlụ nhazi. Faịlụ a ga-ebi na ndekọ '/etc/tgt/conf.d' na maka isiokwu a, a ga-akpọ ya 'TecMint_iscsi.conf'.

Iji mepụta faịlụ a jiri editọ ederede.

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

N'ime faịlụ a, a ga-ahazi ozi nhazi niile dị mkpa maka LUN a. Enwere ọtụtụ nhọrọ enwere ike idowe na faịlụ a mana maka ugbu a, a ga-ahazi Lun isi nke nwere ihe ịma aka nke nkwenye aka (CHAP).

Nkọwa LUN ga-adị n'etiti nkwupụta 'lekwasịrị' abụọ. Maka ihe ndị ọzọ nwere ike ịbanye na nkwupụta ebumnuche, nyochaa ibe akwụkwọ ntuziaka maka faịlụ 'targets.conf' site na ịnye 'man 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>

Enwere ọtụtụ ihe na-eme n'elu. Nkọwa ngwa ngwa nwere ike inyere ọtụtụ ndị aka.

  • Ahịrị nke mbụ na-amalite nhazi nke iSCSI LUN. N'okwu a, LUN kpọrọ 'iqn.2018-02.linux-console.net: lun1'. Akụkụ 'iqn' na-egosi na nke a ga-abụ aha tozuru etozu iSCSI. '2018-02' bụ ngwakọta ụbọchị ahọpụtara aka ike. 'linux-console.net' bụ ngalaba nke otu LUN nwere. N'ikpeazụ, a na-eji 'lun1' dị ka aha maka ebumnuche a.
  • Ahịrị nke abụọ dị n'elu na-egosi nkọwa. Azịza nwere ike ịdị na faịlụ nhazi ebumnuche ma a ga-ebu ụzọ were akara '#'.
  • Ahịrị nke atọ bụ ebe ezigbo nchekwa nke onye mbido ga-eji dị. N'okwu a, nkwado nchekwa ga-abụ olu ezi uche dị na ya nke emepụtara na mbụ na ntuziaka.
  • Ahịrị nke anọ bụ adreesị IP nke a na-atụ anya n'aka onye mbido. Ọ bụ ezie na nke a abụghị ihe nhazi achọrọ, ọ nwere ike inye aka ịbawanye nchekwa.
  • Ahịrị nke ise bụ aha njirimara/paswọọdụ na-abata. Dị ka adreesị onye mbido dị n'elu, achọrọghị oke a mana ọ nwere ike inye aka chekwaa LUN. Ebe ntuziaka a na-ekpuchikwa iSCSI ibe CHAP, a chọrọ oke a. Ahịrị a na-egosi aha njirimara na paswọọdụ onye ebumnuche ga-atụ anya n'aka onye mbido iji jikọọ na LUN a.
  • Ahịrị nke isii bụ aha njirimara/paswọọdụ nke ebumnuche ga-enye onye mbido ka o kwe ka nyocha CHAP ga-eme. Dị ka ọ na-adịkarị, achọrọghị oke a mana akụkọ a na-ekpuchi nyocha ibe CHAP yabụ achọrọ oke a.
  • Akara ikpeazụ bụ nkwupụta mmechi maka nkọwapụta ebumnuche. Lezienụ anya na slash mmechi n'ihu ebumnuche isiokwu!

Ozugbo ebipụtachara nhazi kwesịrị ekwesị maka LUN, chekwaa mgbanwe ndị ahụ wee pụọ na nchịkọta akụkọ ederede. Ọ bụrụ na ị na-eji nano, kụọ ctrl+o ka ịchekwaa wee kụọ ctrl+x ka ịpụ na nano.

Ozugbo emepụtara faịlụ nhazi ahụ, ekwesịrị ịmalitegharị ọrụ tgt ka tgt mara maka ebumnuche ọhụrụ yana nhazi njikọ.

Enwere ike ime nke a site na otu n'ime iwu ndị a ma dabere na sistemụ init eji.

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

Ozugbo tgt maliteghachiri, ọ dị mkpa ịlele iji hụ na a na-eme ka ebumnuche iSCSI dị dịka faịlụ nhazi nke emepụtara.

Enwere ike imezu nke a site na iwu 'tgtadm'.

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

Nke a na-emechi nhazi nke ebumnuche. Akụkụ na-esote ga-arụ ọrụ site na nhazi nke onye mmalite.

Nhazi onye mbido Debian iSCSI

Nzọụkwụ na-esote iji ebumnuche iSCSI ahaziri na mbụ bụ nhazi nke onye mbido iSCSI.

XenServer/ESXi dị iche ma ọ bụ nkesa ndị ọzọ dị ka Red Hat, Debian, ma ọ bụ Ubuntu.

Nzọụkwụ mbụ n'ime usoro a maka onye mmalite Debian bụ ntinye nke ngwugwu kwesịrị ekwesị maka iSCSI.

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

Ozugbo apt mechara nhazi nke ngwugwu mepere emepe, iSCSI nwere ike ịmalite nhazi. Nzọụkwụ mbụ ga-abụ ịkparịta ụka na ebumnuche iji nweta ozi nhazi mbụ maka ebumnuche a kwadebere.

# iscsiadm -m discovery -t st -p 192.168.56.101

Mgbe iwu a na-agba, ọ ga-azaghachi aha nke ọnwa ahazi na mbụ maka onye ọbịa a. Iwu a dị n'elu ga-ewepụtakwa faịlụ abụọ maka ozi LUN achọpụtara ọhụrụ.

Ugbu a faịlụ emepụtara maka ọnụ ọnụ a ga-achọ ịhazi ozi CHAP ka ebumnuche iSCSI a bụrụ nke onye mbido nweta ya.

Na teknụzụ nwere ike ịhazi ozi a maka sistemụ niile n'ozuzu ya mana ọ bụrụ na onye ọbịa jikọọ na LUN dị iche iche nwere nzere dị iche iche, itinye nzere ndị ahụ na faịlụ nhazi ọnụ ọnụ nwere ike belata nsogbu ọ bụla.

Faịlụ nhazi node ga-adị na ndekọ '/etc/iscsi/nodes/' ma ga-enwe ndekọ maka LUN ọ bụla. N'ihe banyere isiokwu a (rịba ama na ụzọ ga-agbanwe ma ọ bụrụ na aha/adreesị IP gbanwere).

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

Iji faịlụ a rụọ ọrụ, enwere ike iji editọ ederede ọ bụla.

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

N'ime faịlụ a, a ga-enwe ọtụtụ nhọrọ ahaziri maka ebumnuche nke ekpebiela n'oge iwu 'iscsiadm' na-agba ọsọ na mbụ.

Ebe ọ bụ na ntọala Debian a kapịrị ọnụ/onye mbido na-eji otu CHAP, a ga-agbanwe ụfọdụ nhọrọ ndị ọzọ ma tinye ya na faịlụ a wee banye na ebumnuche iSCSI.

Mgbanwe na faịlụ a bụ:

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

Nhọrọ ndị a dị n'elu ga-enye ohere ka ebumnuche a nyochaa onye mmalite yana kwe ka onye nrụpụta ahụ nyochaa ebumnuche ya.

Enwere nhọrọ ọzọ na faịlụ a nke nwere ike gbanwee dabere na mmasị onye nchịkwa yana nke ahụ bụ 'node.startup' oke.

Ọ bụrụ na ịgbaso ntuziaka a, a ga-edozi nhọrọ 'node.startup' ka ọ bụrụ 'akwụkwọ ntuziaka' n'oge a. Nke a nwere ike ọ gaghị achọ. Ọ bụrụ na onye nchịkwa chọrọ ka ejikọrọ ebumnuche iSCSI mgbe sistemụ malitere, gbanwee 'akwụkwọ ntuziaka' ka 'akpaka' dị ka ndị a:

node.startup = automatic

Ozugbo emechara mgbanwe ndị a dị n'elu, chekwaa faịlụ wee pụọ. N'oge a kwesịrị ịmalitegharị ọrụ mmalite iscsi ka ịgụọ mgbanwe ọhụrụ ndị a wee jikọọ na ebumnuche iSCSI.

Enwere ike imezu nke a site na otu n'ime iwu ndị a dabere na sistemụ init eji.

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

Rịba ama na igbe akwụkwọ ndụ akwụkwọ ndụ dị n'elu na onye mmalite iSCSI nwere ike ịbanye n'ime ebumnuche. Iji gosi n'ihu na ebumnuche iSCSI dị maka onye mbido, anyị nwere ike lelee sistemụ maka draịva diski ndị ọzọ dị site na iji iwu 'lsblk' na ịlele mmepụta maka draịva ndị ọzọ.

# lsblk

Iwu ọzọ enwere ike iji na onye mbido iji kwado njikọ na ebumnuche bụ 'iscsiadm' dịka nke a:

# iscsiadm -m session

Ebe ikpeazụ iji kwado njikọ ga-adị na ebumnuche n'onwe ya site na iji iwu 'tgtadm' depụta njikọ iSCSI ọ bụla.

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

Site na ebe a, enwere ike iji ngwaọrụ iSCSI nke etinyere ọhụrụ dị ka diski ọ bụla a na-ejikọkarị! Enwere ike ijikwa nkewa, imepụta sistemụ faịlụ, ịrị elu na/ma ọ bụ nrịgo na-adịgide adịgide.

Otu nnukwu ịkpachara anya ka ị mara na ngwaọrụ iSCSI bụ ma ọ bụrụ na ebumnuche iSCSI nwere sistemu faịlụ dị mkpa nke achọrọ ka onye mbido na-ebugharị, jide n'aka na ị ga-eji ntinye '_netdev' na faịlụ '/etc/fstab' iji hụ na iSCSI. ejikọrọ ngwaọrụ tupu usoro ahụ aga n'ihu booting!