Osati kale kwambiri, anyamata ochokera ku LINBIT adapereka yankho lawo latsopano la SDS - Linstor. Uku ndikusungira kwaulere kutengera matekinoloje otsimikiziridwa: DRBD, LVM, ZFS. Linstor amaphatikiza kuphweka ndi zomangamanga bwino, zomwe zimakupatsani mwayi wokhazikika komanso zotsatira zochititsa chidwi.
Lero ndikufuna kunena za izi mwatsatanetsatane ndikuwonetsa momwe zingaphatikizidwe mosavuta ndi OpenNebula pogwiritsa ntchito linstor_un - dalaivala watsopano yemwe ndidapanga makamaka chifukwa cha izi.
Linstor kuphatikiza ndi OpenNebula imakupatsani mwayi wopanga mtambo wachangu komanso wodalirika womwe ungagwiritsidwe ntchito mosavuta pazomanga zanu.
Linstor zomangamanga
Linstor si fayilo yamafayilo kapena kutsekereza kusungirako, Linstor ndi oimba omwe amapereka chosanjikiza chomwe chimakupatsani mwayi wopanga ma voliyumu mu LVM kapena ZFS ndikubwereza pogwiritsa ntchito DRBD9.
Kuthetsa malingaliro
Koma dikirani, DRBD? - N'chifukwa chiyani mumagwiritsa ntchito makina ndipo ingagwire ntchito bwanji?
Tiyeni tikumbukire zakale, pomwe DRBD8 inali yotchuka kwambiri. Kugwiritsa ntchito kwake kokhazikika kumaphatikizapo kupanga chida chimodzi chachikulu ndikuchidula m'zidutswa ting'onoting'ono, pogwiritsa ntchito LVM yomweyo. Mtundu wa mdadm RAID-1 koma ndi kubwereza pamaneti.
Njirayi ilibe zovuta zake, chifukwa chake, kubwera kwa DRBD9, mfundo zosungirako zasintha; tsopano chida chapadera cha DRBD chimapangidwa pamakina aliwonse.
Njira yokhala ndi zida zodziyimira pawokha imalola kugwiritsa ntchito bwino malo mgululi, ndikuwonjezeranso zina zambiri. Mwachitsanzo, pazida zilizonse zotere mutha kudziwa kuchuluka kwa zofananira, malo awo ndi zosintha zapayekha. Ndiosavuta kupanga / kufufuta, kujambula zithunzi, kusinthanso kukula, kuyatsa kubisa ndi zina zambiri. Ndizofunikira kudziwa kuti DRBD9 imathandiziranso quorum, yomwe imakupatsani mwayi wopewa kugawanika kwaubongo.
Zida ndi backends
Popanga chida chatsopano cha block, Linstor amayika nambala yofunikira ya zofananira pama node osiyanasiyana pagulu. Tizitcha chilichonse chofananira ngati chida cha DRBD.
Pali mitundu iwiri ya zothandizira:
- Chida cha data - ndi chipangizo cha DRBD chomwe chili pa node mu dziwe la LVM kapena ZFS.
Pakalipano pali chithandizo cha ma backend angapo ndipo chiwerengero chawo chikukula nthawi zonse. Pali chithandizo cha LVM, ThinLVM ndi ZFS. Awiri omaliza amakulolani kupanga ndi kugwiritsa ntchito zithunzithunzi. - Diskless zothandizira - ndi chipangizo cha DRBD chomwe chimayikidwa pa node popanda kumbuyo, koma kulola kuti chizigwiritsidwa ntchito ngati chipangizo chokhazikika; ntchito zonse zowerengera / kulemba zidzatumizidwa kuzinthu za data. Analogue yapafupi kwambiri kuzinthu zopanda disk ndi iSCSI LUN.
Chida chilichonse cha DRBD chikhoza kukhala ndi zofananira 8, ndipo imodzi yokha ingakhale yogwira ntchito mosakhazikika - chachikulu, ena onse adzakhala Secondary ndipo kugwiritsa ntchito kwawo kudzakhala kosatheka malinga ngati pali Pulayimale imodzi, ndiye kuti, amangobwereza deta pakati pawo.
Pakuyika chipangizo cha DRBD mudongosolo, chimangokhala chachikulu, motero ngakhale chida cha Diskless, mu terminology ya DRBD, chikhoza kukhala Choyambirira.
Ndiye n'chifukwa chiyani mukufuna Linstor?
Popereka ntchito zonse zofunika kwambiri pa kernel, Linstor ndi pulogalamu yanthawi zonse ya Java yomwe imakulolani kuti muzitha kupanga zida za DRBD mosavuta.
Komanso, gwero lililonse lopangidwa ndi iye lidzakhala gulu lodziyimira pawokha la DRBD lomwe limagwira ntchito palokha, mosasamala kanthu za momwe ndegeyo ilili komanso zida zina za DRBD.
Linstor ili ndi zigawo ziwiri zokha:
- Linstor-wolamulira - Woyang'anira wamkulu, yemwe amapereka API yopanga ndi kuyang'anira zothandizira. Imalumikizananso ndi ma satellite, kuyang'ana malo aulere pa iwo, ndikutumiza ntchito kuti mupange ndikuchotsa zatsopano. Imayendera limodzi ndikugwiritsa ntchito database, yomwe ingakhale yamkati (H2) kapena yakunja (PostgreSQL, MySQL, MariaDB)
- Linstor-satellite - Imayikidwa pazida zonse zosungiramo ndipo imapatsa wolamulirayo chidziwitso chokhudza malo aulere, komanso amachita ntchito zolandilidwa kuchokera kwa woyang'anira kuti apange ndikuchotsa ma voliyumu atsopano ndi zida za DRBD pamwamba pawo.
Linstor amagwira ntchito ndi mfundo zazikuluzikulu zotsatirazi:
- Node - seva yakuthupi yomwe zida za DRBD zidzapangidwa ndikugwiritsidwa ntchito.
- Dziwe Losungira - Dziwe la LVM kapena ZFS lopangidwa pamalo pomwe zida za DRBD zidzapezeka. Dziwe lopanda ma disks lingathenso - ili ndi dziwe momwe zinthu zopanda ma disks zidzapezeka.
- Tanthauzo la Zida - Tanthauzo la gwero kwenikweni ndi fanizo lomwe limafotokoza dzina ndi zinthu zake zonse.
- Tanthauzo la Voliyumu - Kutanthauzira kwa voliyumu. Chida chilichonse chingakhale ndi mavoliyumu angapo, voliyumu iliyonse iyenera kukhala ndi kukula kwake.
- Resource - Chitsanzo chopangidwa cha chipangizo chotchinga, gwero lililonse liyenera kuikidwa pa node inayake komanso mu dziwe lina losungira.
Kukhazikitsa kwa Linstor
Ndikupangira kugwiritsa ntchito Ubuntu ngati dongosolo, chifukwa ... alipo kwa iye
add-apt-repository ppa:linbit/linbit-drbd9-stack
apt-get update
Kapena Debian, komwe Linstor atha kukhazikitsidwa kuchokera kumalo ovomerezeka a 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
Mtsogoleri
Zonse ndi zophweka apa:
apt-get install linstor-controller linstor-client
systemctl enable linstor-controller
systemctl start linstor-controller
Malo osungira
Linux kernel pakadali pano imatumiza ndi gawo la mkati mwa mtengo Chithunzi cha DRBD8, mwatsoka sizikutiyendera ndipo tifunika kukhazikitsa Chithunzi cha DRBD9:
apt-get install drbd-dkms
Monga momwe zimasonyezera, zovuta zambiri zimachitika ndendende chifukwa module ya DRBD8 imayikidwa mu dongosolo, osati DRBD9. Mwamwayi, izi ndizosavuta kuyang'ana pothamanga:
modprobe drbd
cat /proc/drbd
Ngati mukuwona Mtundu: 9 - zikutanthauza kuti zonse zili bwino ngati Mtundu: 8 - zikutanthauza kuti china chake chalakwika ndipo muyenera kuchitapo kanthu kuti mudziwe zifukwa zake.
Tsopano tiyeni kukhazikitsa satellite ya linstor ΠΈ drbd-utils:
apt-get install linstor-satellite drbd-utils
systemctl enable linstor-satellite
systemctl start linstor-satellite
Pangani gulu
Maiwe osungira ndi mfundo
Monga backend tidzatenga ThinLVM, chifukwa ndiyosavuta komanso imathandizira zithunzithunzi.
Khazikitsani lvm2 ndi, ngati simunachite kale, tiyeni tipange dziwe la ThinLVM pa malo athu onse osungira:
sudo vgcreate drbdpool /dev/sdb
sudo lvcreate -L 800G -T drbdpool/thinpool
Zochita zina zonse zitha kuchitika mwachindunji pa owongolera:
Tiyeni tiwonjezere mfundo zathu:
linstor node create node1 127.0.0.11
linstor node create node2 127.0.0.12
linstor node create node3 127.0.0.13
Tiyeni tipange maiwe osungira:
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
Tsopano tiyeni tiwone malo omwe adapangidwa:
linstor storage-pool list
Ngati zonse zachitika molondola, tiyenera kuona zinthu monga:
+------------------------------------------------ ------------------------------------------------- ----+ | Pool | Node | Driver | Dzina la Pool | FreeCapacity | TotalCapacity | ImathandiziraSnapshots | |---------------------------------------------- - ------------------------------------------------ ---| | | data | node1 | LVM_KUTI | drbdpool/thinpool | 64 Gib | 64 Gib | zoona | | | data | node2 | LVM_KUTI | drbdpool/thinpool | 64 Gib | 64 Gib | zoona | | | data | node3 | LVM_KUTI | drbdpool/thinpool | 64 Gib | 64 Gib | zoona | +------------------------------------------------ ------------------------------------------------- ----+
Zithunzi za DRBD
Tsopano tiyeni tiyese kupanga chida chathu chatsopano cha DRBD:
linstor resource-definition create myres
linstor volume-definition create myres 1G
linstor resource create myres --auto-place 2
Tiyeni tiwone zomwe zidapangidwa:
linstor resource list
+------------------------------------------------ ------------------------------------------------- ---+ | Node | Zothandizira | Pool | VolumeNr | MinorNr | DeviceName | Adapatsidwa | Kugwiritsa | State | |---------------------------------------------- - ------------------------------------------------ --| | | node1 | mayi | data | 0 | 1084 | /dev/drbd1084 | 52KiB | Zosagwiritsidwa | UpToDate | | | node2 | mayi | data | 0 | 1084 | /dev/drbd1084 | 52KiB | Zosagwiritsidwa | UpToDate | +------------------------------------------------ ------------------------------------------------- ---+
Zabwino! - tikuwona kuti gwerolo lidapangidwa pamfundo ziwiri zoyambirira, titha kuyesanso kupanga chida chopanda diski pachitatu:
linstor resource create --diskless node3 myres
Pa mfundo nthawi zonse mudzapeza chipangizo ichi ngati /dev/drbd1084
kapena /dev/drbd/by-res/myres/0
Umu ndi momwe Linstor amagwirira ntchito, mutha kudziwa zambiri kuchokera
Tsopano ndikuuzani momwe mungaphatikizire ndi OpenNebula
Kukhazikitsa OpenNebula
Sindidzazama kwambiri pakukhazikitsa kwa OpenNebula, chifukwa ... masitepe onse akufotokozedwa mwatsatanetsatane mu
linstor_un
Kuti ndithetse vutoli, ndinalemba dalaivala wanga -
Kuyika konseko kumachitika pamagawo akutsogolo a OpenNebula ndipo sikufuna kuchitapo kanthu pazowonjezera.
Choyamba, tiyenera kuonetsetsa kuti tili nawo jq ΠΈ linstor-kasitomala:
apt-get install jq linstor-client
timu linstor node list
ayenera kusonyeza mndandanda wa mfundo. Node zonse za OpenNebula zowerengera ziyenera kuwonjezeredwa kugulu la Linstor.
Tsitsani ndikuyika pulogalamu yowonjezera:
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
Tsopano tifunika kuwonjezera pa OpenNebula config, kuti tichite izi timatsatira njira zosavuta zomwe zafotokozedwa
Kenako yambitsaninso OpenNebula:
systemctl restart opennebula
Ndipo onjezani masitolo athu, dongosolo:
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
Ndipo sitolo ya zithunzi:
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
- chizindikiro
AUTO_PLACE
ikuwonetsa kuchuluka kwa zofananira za data zomwe zidzapangidwe pa chithunzi chilichonse chatsopano mu OpenNebula. - chizindikiro
CLONE_MODE
ikuwonetsa ndendende momwe zithunzi zidzapangidwira popanga makina atsopano,snapshot
- ipanga chithunzithunzi cha chithunzicho ndikuyika makina enieni kuchokera pachithunzichi,copy
- adzapanga chithunzi chonse pa makina aliwonse. - Π
BRIDGE_LIST
Ndibwino kuti mutchule ma node onse omwe adzagwiritsidwe ntchito popanga zithunzi.
Kuti muwone mndandanda wathunthu wamagawo othandizira, onani
Izi zimamaliza kukhazikitsa, tsopano mutha kutsitsa zida zina kuchokera kwa akuluakulu
Ulalo wa polojekiti:
Source: www.habr.com