Ceph amin'ny alàlan'ny iSCSI - na manao ski amin'ny fijoroana amin'ny fandriana

Misy amintsika (tsefovodov) ve tsy tia ny “extreme professionnel”?

Tsy azo inoana izany - raha tsy izany dia tsy hivezivezy amin'ity vokatra tena mahaliana sy mahatsikaiky ity isika.

Maro amin'ireo izay nandray anjara tamin'ny fampandehanana ny Ceph no nahita iray tsy dia matetika (na ny tena tsy fahita firy) fa indraindray amin'ny fangatahana - mampifandray Ceph amin'ny alalan'ny iSCSI na FC. Hatao inona? Ohatra, mandefa sary avy amin'i Ceph amin'ny mpizara Windows na Solaris izay tsy mbola virtoaly noho ny antony. Na virtoaly iray, fa mampiasa hypervisor izay tsy mahavita Ceph - ary, araka ny fantatsika, be dia be izy ireo. Ohatra? Eny, ohatra, HyperV na ESXi, izay ampiasaina mavitrika. Ary raha mipoitra ny asa amin'ny fanompoana sary avy amin'i Ceph ho an'ny milina vahiny, dia lasa asa tena mampientam-po izany.

Noho izany, nomena:

  1. cluster Ceph efa mandeha
  2. sary efa misy izay tsy maintsy atolotra amin'ny alalan'ny iSCSI
  3. Anaran'ny dobo mypool, anarana sary myimage

Manomboka?

Voalohany indrindra, rehefa miresaka momba ny FC na iSCSI isika dia manana sampana toy ny mpanentana sy tanjona. Ny tanjona dia mpizara raha ny marina, ny mpanatontosa dia mpanjifa. Ny andraikitray dia ny manolotra ny sarin'ny Ceph amin'ny mpanentana amin'ny ezaka kely indrindra. Midika izany fa tsy maintsy manitatra ny tanjona. Fa aiza, amin'ny ordinatera inona?

Soa ihany fa ao amin'ny kluster Ceph dia manana singa iray farafahakeliny isika izay raikitra ny adiresy IP ary misy ny iray amin'ireo singa manan-danja indrindra amin'ny Ceph, ary io singa io dia ny monitor. Noho izany, mametraka tanjona iSCSI eo amin'ny monitor izahay (sy ny mpitrandraka amin'ny fotoana iray, farafaharatsiny ho an'ny fitsapana). Nataoko tamin'ny CentOS izany, fa ny vahaolana dia mety amin'ny fizarana hafa - mila mametraka ny fonosana amin'ny fomba azo ekena amin'ny fizaranao fotsiny ianao.

# yum -y install iscsi-initiator-utils targetcli

Inona no tanjon'ireo fonosana napetraka?

  • targetcli - fampiasa amin'ny fitantanana ny tanjona SCSI natsangana tao amin'ny kernel Linux
  • iscsi-initiator-utils - fonosana miaraka amin'ny fitaovana ampiasaina amin'ny fitantanana ny iSCSI initiator natsangana tao amin'ny kernel Linux

Mba handefasana sary amin'ny alàlan'ny iSCSI ho an'ny mpandrindra, dia misy safidy roa ho an'ny fampivoarana ny hetsika - ampiasao ny backend userspace amin'ny tanjona na mampifandray ny sary ho toy ny fitaovana fanakanana hita amin'ny rafitra miasa ary manondrana azy amin'ny iSCSI. Handeha amin'ny lalana faharoa isika - mbola ao anatin'ny toetry ny “fanandramana” ny backend espace mpampiasa ary somary tsy vonona amin'ny fampiasana mamokatra. Ankoatra izany, misy ny fandrika miaraka aminy, izay ahafahanao miresaka betsaka sy (oh horohoro!) miady hevitra.

Raha mampiasa fizarana somary miorim-paka miaraka amin'ny tsingerina fanohanana lava isika, dia ny kernel ananantsika dia dikan-teny tranainy sy tranainy. Ohatra, ao amin'ny CentOS7 dia 3.10.*, ao amin'ny CentOS8 dia 4.19. Ary izahay dia liana amin'ny kernel iray farafahakeliny 5.3 (na 5.4) ary vao haingana kokoa. Nahoana? Satria amin'ny alàlan'ny default ny sary Ceph dia manana safidy azo atao izay tsy mifanaraka amin'ny kernel taloha. Midika izany fa mampifandray tahiry amin'ny kernel vaovao ho an'ny fizarana anay izahay (ohatra, ho an'ny CentOS ity dia elrepo), apetraho ny kernel vaovao ary avereno indray ny rafitra hiasa amin'ny kernel vaovao:

  • Ampifandraiso amin'ny fanaraha-maso nofantenana ho an'ny fanandramana
  • Mampifandray ireo tahiry elrepo izahay araka ny torolàlana - elrepo.org/tiki/tiki-index.php
  • Apetraho ny kernel: yum -y —enablerepo=elrepo-kernel install kernel-ml
  • Avereno indray ny mpizara miaraka amin'ny monitor (manana mpanara-maso telo izahay, sa tsy izany?)

Mampifandray ny sary ho toy ny fitaovana sakana

# rbd map mypool/myimage
/dev/rbd0

Ny hany sisa tavela dia ny manamboatra ny tanjona. Amin'ity ohatra ity dia hamboariko ny tanjona amin'ny antsoina hoe. mode demo - tsy misy authentication, hita ary azon'ny rehetra idirana. Ao amin'ny tontolon'ny famokarana, mety ho tianao ny hanitsy ny fanamarinana - saingy somary ivelan'ny sehatra izany ho an'ny fanazaran-tena ho an'ny fialamboly anio.

Mamorona backend antsoina hoe disk1 mifandray amin'ny rakitra /dev/rbd/mypool/myimage. Ny rakitra voatondro dia rohy an'ohatra noforonin'ny daemon udev mankany /dev/rbd0. Mampiasa rohy an'ohatra izahay satria ny anaran'ny fitaovana rbd dia afaka miova arakaraka ny filaharan'ireo sary Ceph mifandray amin'ny mpampiantrano.

Mamorona backend:

# targetcli /backstores/block create disk1 /dev/rbd/mypool/myimage

Mamorona tanjona iSCSI:

# targetcli /iscsi create iqn.2020-01.demo.ceph:mypool

Ampifandraisinay ho LUN amin'ny tanjona ny backend:

# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/luns create /backstores/block/disk1

Andao amboary ny tanjona ho an'ny maodely demo:

# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute demo_mode_write_protect=0
# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute generate_node_acls=1
# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute cache_dynamic_acls=1

Save the configuration:

# targetcli saveconfig

Fanamarinana ny fisian'ny tanjona:

# iscsiadm -m discovery -t st -p 127.0.0.1:3260
127.0.0.1:3260,1 iqn.2020-01.demo.ceph:mypool

Mampifandray ny tanjona izahay:

# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.2020-01.demo.ceph:mypool, portal: 127.0.0.1,3260] (multiple)
Login to [iface: default, target: iqn.2020-01.demo.ceph:mypool, portal: 127.0.0.1,3260] successful.

Raha nanao ny zava-drehetra araka ny tokony ho izy ianao, dia hisy kapila vaovao hiseho eo amin'ny mpizara, izay toa fitaovana SCSI, fa tena sary avy amin'i Ceph, miditra amin'ny alàlan'ny kendrena iSCSI. Mba hisorohana ny olana amin'ny boot dia tsara kokoa ny manaisotra ny kapila mifandray sy ny lasibatra hita amin'ny fanombohana eo an-toerana:

# iscsiadm -m node --logout
# iscsiadm -m discoverydb -o delete -t st -p 127.0.0.1:3260

Ny hany sisa tavela dia ny fikirakirana ny fanamafisam-peo mba hifandraisana ho azy ny sary ary, aorian'ny fifandraisana, dia stratified ny tanjona. Ny fandefasana lasibatra dia misy dingana roa - ny fampifandraisana ny RBD ary ny fandefasana ny tanjona.

Voalohany, andeha amboary ny fifandraisana mandeha ho azy amin'ny sary RBD amin'ny mpampiantrano. Izany dia atao amin'ny fampidirana ireto andalana manaraka ireto amin'ny rakitra /etc/ceph/rbdmap:

# cat /etc/ceph/rbdmap
# RbdDevice Parameters
mypool/myimage id=admin
# systemctl enable rbdmap

Sarotra kely kokoa ny famerenana amin'ny laoniny ny fikajiana kendrena - mila manoratra singa iray ho an'ny systemd isika izay hamerina ny fanitsiana:

# cat /usr/lib/systemd/system/scsi-target.service
[Unit] Description=Start iSCSI target

After=network-online.target rbdmap.service
Before=remote-fs-pre.target
Wants=network-online.target remote-fs-pre.target

[Service] Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/targetcli restoreconfig

[Install] WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl enable scsi-target

Ny andrana farany dia ny famerenana indray ny mpanara-maso (target iSCSI ankehitriny). Tsara homarihina fa raha tsy nodiovinay ny angon-drakitra momba ny fanombohana miaraka amin'ny baiko iscsiadm -n discoverydb -o mamafa ... mety hiafara amin'ny mpizara iray tsy mi-loading na maharitra ela ny entana.

Inona no tavela?

Ampifandraiso amin'ny mpizara izay tiantsika halefa ny tanjona.

Ahoana no hiantohana ny fandeferana amin'ny fahadisoantsika?

Azonao atao koa ny manitsy ny tanjona amin'ny mpanara-maso hafa ary manangana multipath (ho azon'ny vmware izany ary na dia miasa aza, tsy ho takatry ny Hyper-V - mila hidy SCSI). Satria ny mpanjifa Ceph avy amin'ny kernel dia tsy mampiasa caching, dia azo atao izany. Na safidy hafa dia ny mamorona loharanon-karena misy singa telo - adiresy IP kendrena manokana sy serivisy rbdmap ary scsi-target, ary mitantana ity loharano ity amin'ny alàlan'ny fitaovana fanangonana (iza no nilaza ny pacemaker?)

Raha tokony ho epilogue

Mazava ho azy fa vazivazy kely ity lahatsoratra ity - fa tao anatin'izany dia niezaka ny "haingana sy miaraka amin'ny ohatra" aho handinika lohahevitra malaza maromaro miaraka - tanjona iSCSI, izay mety tsy voatery hanondrana sary Ceph - fa ohatra, fanondranana ny volume LVM, ny fototry ny fiaraha-miasa amin'ny iSCSI initiator (ny fomba scan lasibatra, ny fomba hifandraisana amin'ny kendrena, manafoana, mamafa ny fidirana kendrena amin'ny tahiry), manoratra ny vondronao manokana ho an'ny systemd sy ny hafa

Manantena aho fa na dia tsy mamerina an'ity andrana manontolo ity amin'ny fomba feno aza ianao, farafaharatsiny zavatra iray avy amin'ity lahatsoratra ity dia hanampy anao.

Source: www.habr.com

Add a comment