LINSTOR fitahirizana sy ny fampidirana azy amin'ny OpenNebula

LINSTOR fitahirizana sy ny fampidirana azy amin'ny OpenNebula

Vao tsy ela akory izay, nanolotra ny vahaolana SDS vaovao ry zalahy avy ao amin'ny LINBIT - Linstor. Ity dia fitahirizana maimaim-poana tanteraka mifototra amin'ny teknolojia voaporofo: DRBD, LVM, ZFS. Linstor dia manambatra ny fahatsorana sy ny maritrano voalamina tsara, izay ahafahanao mahazo ny fahamarinan-toerana sy ny vokatra tena mahavariana.

Androany aho dia te hiresaka momba izany amin'ny antsipiriany bebe kokoa ary hampiseho ny fomba mora azo ampidirina amin'ny OpenNebula amin'ny fampiasana linstor_un - mpamily vaovao novolavolaiko manokana ho an'ity tanjona ity.

Linstor miaraka amin'ny OpenNebula dia ahafahanao manangana rahona haingana sy azo antoka izay azo apetraka mora foana amin'ny fotodrafitrasa misy anao.

Architecture Linstor

Linstor dia tsy rafitra fichier na fanakanana fitehirizana per se, Linstor dia orkestra izay manome sosona abstraction izay ahafahanao manamboatra automatique ny famoronana boky ao amin'ny LVM na ZFS ary mamerina azy ireo amin'ny fampiasana DRBD9.

Manapaka stereotypes

Fa andraso ry DRBD? - Nahoana no manao automatique izany ary ahoana no ahafahany miasa?

Tsarovy ny lasa, fony nalaza be ny DRBD8. Ny fampiasana mahazatra azy dia ny famoronana fitaovana sakana lehibe iray ary nanapaka azy ho ampahany kely maro, mampiasa LVM mitovy. Karazana mdadm RAID-1 fa misy replication amin'ny tambajotra.

Ity fomba fiasa ity dia tsy misy tsy fahampiana, ary noho izany, miaraka amin'ny fahatongavan'ny DRBD9, niova ny fitsipiky ny famolavolana fitahirizana; ankehitriny dia misy fitaovana DRBD mitokana ho an'ny milina virtoaly tsirairay.

Ny fomba fiasa miaraka amin'ny fitaovana fanakanana tsy miankina dia mamela ny fampiasana tsara kokoa ny habaka ao amin'ny cluster, ary koa manampy endri-javatra fanampiny maromaro. Ohatra, ho an'ny fitaovana tsirairay toy izany dia azonao atao ny mamaritra ny isan'ny kopia, ny toerana misy azy ary ny toe-javatra tsirairay. Mora ny mamorona / mamafa, maka sary, manova ny habeny, mamela ny fanafenana sy ny maro hafa. Tsara ny manamarika fa ny DRBD9 koa dia manohana ny kΓ΄lejy, izay ahafahanao misoroka ny toe-javatra mampisara-bazana.

Loharano sy backend

Rehefa mamorona fitaovana fanakanana vaovao, Linstor dia mametraka ny isan'ny kopia ilaina amin'ny node samihafa ao amin'ny cluster. Hantsoinay ho loharanon'ny DRBD ny kopia tsirairay toy izany.

Misy karazany roa ny loharanon-karena:

  • Loharanom-baovao - dia fitaovana DRBD hita eo amin'ny node ao anaty dobo LVM na ZFS.
    Amin'izao fotoana izao dia misy fanohanana ho an'ny backend maromaro ary mitombo hatrany ny isan'izy ireo. Misy fanohanana ny LVM, ThinLVM ary ZFS. Ny roa farany dia ahafahanao mamorona sy mampiasa snapshots.
  • Loharano tsy misy kapila - dia fitaovana DRBD napetraka eo amin'ny node tsy misy backend, fa mamela azy ho raisina ho toy ny fitaovana fanakanana mahazatra; ny asa mamaky/manoratra rehetra dia halefa any amin'ny loharanom-baovao. Ny analogue akaiky indrindra amin'ny loharano tsy misy kapila dia iSCSI LUN.

Ny loharanon-karena DRBD tsirairay dia afaka manana kopia hatramin'ny 8, ary ny iray amin'izy ireo ihany no afaka miasa amin'ny alΓ lan'ny default - Kilonga, ny hafa rehetra dia ho faharoa ary tsy ho azo atao ny fampiasana azy ireo raha toa ka misy Kilonga iray farafahakeliny, izany hoe, hamerina ny angon-drakitra eo amin'izy ireo fotsiny izy ireo.

Amin'ny fametrahana fitaovana DRBD ao amin'ny rafitra dia lasa mandeha ho azy Kilonga, noho izany na dia loharano tsy misy diska aza, amin'ny teny DRBD, dia mety ho Kilonga.

Koa nahoana ianao no mila Linstor?

Amin'ny alΓ lan'ny fanankinana ny asa rehetra miompana amin'ny loharanon-karena amin'ny kernel, Linstor dia fampiharana Java mahazatra izay ahafahanao manao automatique mora foana ny famoronana loharanon-karena DRBD.
Ambonin'izany, ny loharanon-karena tsirairay noforoniny dia ho vondrona DRBD mahaleo tena izay miasa tsy miankina, na inona na inona toetry ny fiaramanidina fanaraha-maso sy ireo loharanon-karena DRBD hafa.

Ny Linstor dia tsy misy afa-tsy singa roa:

  • Linstor-controller - Ny mpanara-maso lehibe, izay manome API ho an'ny famoronana sy fitantanana loharano. Mifandray amin'ny zanabolana ihany koa izy io, manamarina ny habaka malalaka eo aminy, ary mandefa asa hamoronana sy hamafa loharano vaovao. Izy io dia mandeha amin'ny tranga tokana ary mampiasa tahiry iray, izay mety ho anatiny (H2) na ivelany (PostgreSQL, MySQL, MariaDB)
  • Linstor-satellite - Apetraka amin'ny node fitahirizana rehetra ary manome fampahalalana momba ny habaka malalaka ho an'ny mpanara-maso, ary manao asa azo avy amin'ny mpanara-maso hamorona sy hamafa boky vaovao sy fitaovana DRBD eo amboniny.

Linstor dia miasa miaraka amin'ireto hevi-dehibe manaraka ireto:

  • node β€” mpizara ara-batana izay hamoronana sy hampiasana loharanon-karena DRBD.
  • Dobo fitahirizana β€” LVM na ZFS dobo noforonina ao amin'ny node izay ahitana loharanon-karena DRBD. Azo atao ihany koa ny dobo tsy misy kapila - dobo ity izay tsy misy afa-tsy loharano tsy misy kapila.
  • Famaritana ny loharanon-karena - Ny famaritana ny loharano dia tena prototype izay mamaritra ny anarana sy ny toetrany rehetra.
  • Famaritana ny volume - Famaritana ny volume. Ny loharano tsirairay dia mety ahitana boky maromaro, ny boky tsirairay dia tsy maintsy manana habe.
  • Resource - Ohatra noforonina amin'ny fitaovana sakana iray, ny loharano tsirairay dia tsy maintsy apetraka amin'ny node manokana sy ao anaty dobo fitehirizana sasany.

Fametrahana Linstor

Manoro hevitra aho hampiasa Ubuntu ho rafitra, satria ... misy ho azy vonona PPA:

add-apt-repository ppa:linbit/linbit-drbd9-stack
apt-get update

Na Debian, izay ahafahana mametraka an'i Linstor avy amin'ny tahiry ofisialin'ny Proxmox:

wget -O- https://packages.linbit.com/package-signing-pubkey.asc | apt-key add -
PVERS=5 && echo "deb http://packages.linbit.com/proxmox/ proxmox-$PVERS drbd-9.0" > 
    /etc/apt/sources.list.d/linbit.list
apt-get update

maso

Tsotra ny zava-drehetra eto:

apt-get install linstor-controller linstor-client
systemctl enable linstor-controller
systemctl start linstor-controller

Nodes fitahirizana

Ny kernel Linux amin'izao fotoana izao dia alefa miaraka amin'ny module kernel in-tree DRBD8, indrisy fa tsy mety amintsika izany ary mila mametraka DRBD9:

apt-get install drbd-dkms

Araka ny asehon'ny fampiharana, ny ankamaroan'ny fahasahiranana dia mipoitra satria ny maody DRBD8 dia ampidirina ao anaty rafitra, fa tsy DRBD9. Soa ihany fa mora ny manamarina izany amin'ny alΓ lan'ny mihazakazaka:

modprobe drbd
cat /proc/drbd

Raha hitanao dikan-teny: 9 - midika izany fa tsara ny zava-drehetra raha dikan-teny: 8 - midika izany fa nisy zavatra tsy nety ary mila manao dingana fanampiny ianao hahitana ny antony.

Andeha isika hametraka linstor-satellite ΠΈ drbd-utils:

apt-get install linstor-satellite drbd-utils
systemctl enable linstor-satellite
systemctl start linstor-satellite

Mamorona cluster

Dobo fitahirizana sy nodes

Amin'ny maha-backend dia horaisinay ThinLVM, satria io no tsotra indrindra ary manohana snapshots.
hametraka lvm2, raha mbola tsy nanao izany ianao dia andao hamorona dobo ThinLVM amin'ny toerana fitahirizanay rehetra:

sudo vgcreate drbdpool /dev/sdb
sudo lvcreate -L 800G -T drbdpool/thinpool

Ny hetsika fanampiny rehetra dia azo atao mivantana amin'ny controller:

Andeha ampio ny nodesy:

linstor node create node1 127.0.0.11
linstor node create node2 127.0.0.12
linstor node create node3 127.0.0.13

Andao hamorona dobo fitehirizana:

linstor storage-pool create lvmthin node1 data drbdpool/thinpool
linstor storage-pool create lvmthin node2 data drbdpool/thinpool
linstor storage-pool create lvmthin node3 data drbdpool/thinpool

Andeha hojerentsika ny dobo noforonina:

linstor storage-pool list

Raha vita tsara ny zava-drehetra, dia tokony hahita zavatra toy izao isika:

+------------------------------------------------ --------------------------------------------------- ----+ | StoragePool | Node | Driver | PoolName | FreeCapacity | TotalCapacity | SupportsSnapshots | |------------------------------------------------ - ------------------------------------------------- - ---| | data | node1 | LVM_THIN | drbdpool/thinpool | 64 GiB | 64 GiB | marina | | data | node2 | LVM_THIN | drbdpool/thinpool | 64 GiB | 64 GiB | marina | | data | node3 | LVM_THIN | drbdpool/thinpool | 64 GiB | 64 GiB | marina | +------------------------------------------------ --------------------------------------------------- ----+

DRBD loharanon-karena

Andeha isika hanandrana hamorona loharano DRBD vaovao:

linstor resource-definition create myres
linstor volume-definition create myres 1G
linstor resource create myres --auto-place 2

Andeha hojerentsika ireo loharano noforonina:

linstor resource list 

+------------------------------------------------ --------------------------------------------------- ---+ | Node | Loharano | StoragePool | VolumeNr | MinorNr | DeviceName | Natokana | InUse | Fanjakana | |------------------------------------------------ - ------------------------------------------------- - --| | node1 | myres | data | 0 | 1084 | /dev/drbd1084 | 52 KiB | Tsy ampiasaina | UpToDate | | node2 | myres | data | 0 | 1084 | /dev/drbd1084 | 52 KiB | Tsy ampiasaina | UpToDate | +------------------------------------------------ --------------------------------------------------- ---+

Mahafinaritra! - hitantsika fa noforonina tamin'ny node roa voalohany ilay loharano, afaka manandrana mamorona loharano tsy misy kapila koa isika amin'ny fahatelo:

linstor resource create --diskless node3 myres

Amin'ny nodes dia ho hitanao foana ity fitaovana ity /dev/drbd1084 na /dev/drbd/by-res/myres/0

Izany no fomba fiasan'i Linstor, azonao atao ny mahazo fampahalalana bebe kokoa antontan-taratasy ofisialy.

Ankehitriny dia holazaiko aminao ny fomba hampidirana azy amin'ny OpenNebula

Fametrahana OpenNebula

Tsy hiditra lalina loatra amin'ny fizotry ny fametrahana OpenNebula aho, satria... ny dingana rehetra dia voalaza amin'ny antsipiriany ao antontan-taratasy ofisialy, izay manoro hevitra anao hifandraisana, ny fampidirana ny OpenNebula amin'ny Linstor ihany no holazaiko anao.

linstor_un

Mba hamahana ity olana ity dia nanoratra ny mpamily ahy manokana aho - linstor_un, azo alaina amin'ny maha-plugin azy amin'izao fotoana izao ary tsy maintsy apetraka misaraka.

Ny fametrahana manontolo dia atao amin'ny node OpenNebula frontend ary tsy mitaky hetsika fanampiny amin'ny node compute.

Voalohany indrindra, mila mahazo antoka isika fa manana jq ΠΈ linstor-client:

apt-get install jq linstor-client

ekipa linstor node list tokony hampiseho lisitry ny nodes. Ny node compute OpenNebula rehetra dia tsy maintsy ampidirina amin'ny cluster Linstor.

Misintona sy mametraka ny plugin:

curl -L https://github.com/OpenNebula/addon-linstor_un/archive/master.tar.gz | tar -xzvf - -C /tmp

mv /tmp/addon-linstor_un-master/vmm/kvm/* /var/lib/one/remotes/vmm/kvm/

mkdir -p /var/lib/one/remotes/etc/datastore/linstor_un
mv /tmp/addon-linstor_un-master/datastore/linstor_un/linstor_un.conf /var/lib/one/remotes/etc/datastore/linstor_un/linstor_un.conf

mv /tmp/addon-linstor_un-master/datastore/linstor_un /var/lib/one/remotes/datastore/linstor_un
mv /tmp/addon-linstor_un-master/tm/linstor_un /var/lib/one/remotes/tm/linstor_un

rm -rf /tmp/addon-linstor_un-master

Ankehitriny dia mila manampy azy amin'ny config OpenNebula isika, mba hanaovana izany dia manaraka ireo dingana tsotra voalaza eto.

Avy eo avereno indray ny OpenNebula:

systemctl restart opennebula

Ary ampio ny datastores, rafitra:

cat > system-ds.conf <<EOT
NAME="linstor-system"
TYPE="SYSTEM_DS"
STORAGE_POOL="data"
AUTO_PLACE="2"
CLONE_MODE="snapshot"
CHECKPOINT_AUTO_PLACE="1"
BRIDGE_LIST="node1 node2 node3"
TM_MAD="linstor_un"
EOT

onedatastore create system-ds.conf

Ary ny fivarotana sary:

cat > images-ds.conf <<EOT
NAME="linstor-images"
TYPE="IMAGE_DS"
STORAGE_POOL="data"
AUTO_PLACE="2"
BRIDGE_LIST="node1 node2 node3"
DISK_TYPE="BLOCK"
DS_MAD="linstor_un"
TM_MAD="linstor_un"
EOT

onedatastore create images-ds.conf

  • fikirana AUTO_PLACE mampiseho ny isan'ny replica data izay hoforonina ho an'ny sary vaovao tsirairay ao amin'ny OpenNebula.
  • fikirana CLONE_MODE manondro tsara ny fomba hanaovana klona ny sary rehefa mamorona milina virtoaly vaovao, snapshot - hamorona sarin'ny sary ary hametraka milina virtoaly avy amin'ny sary, copy β€” dia hanao dika mitovy ny sary ho an'ny milina virtoaly tsirairay.
  • Π’ BRIDGE_LIST Amporisihina ny mamaritra ny nodes rehetra izay hampiasaina amin'ny fampandehanana ny fakΓ na sary.

Raha mila lisitra feno amin'ny masontsivana tohanana dia jereo README tetikasa.

Mamita ny fanamboarana izany, afaka misintona fitaovana avy amin'ny ofisialy ianao izao OpenNebula Marketplace ary mamorona milina virtoaly avy aminy.

Rohy tetikasa:
https://github.com/OpenNebula/addon-linstor_un

Source: www.habr.com

Add a comment