Ní fada ó shin, chuir na guys ó LINBIT a réiteach nua SDS i láthair - Linstor. Is stór saor in aisce é seo atá bunaithe ar theicneolaíochtaí cruthaithe: DRBD, LVM, ZFS. Nascann Linstor simplíocht agus ailtireacht dea-dheartha, rud a ligeann duit cobhsaíocht a bhaint amach agus torthaí go leor go hiontach.
Sa lá atá inniu ba mhaith liom labhairt faoi go mion níos mine agus a thaispeáint cé chomh héasca is féidir é a chomhtháthú le OpenNebula ag baint úsáide as linstor_un - tiománaí nua a d'fhorbair mé go sonrach chun na críche seo.
Ligeann Linstor i gcomhar le OpenNebula duit scamall tapa agus iontaofa a thógáil ar féidir é a imscaradh go héasca ar do bhonneagar féin.
ailtireacht Linstor
Ní córas comhaid ná blocstórála per se é Linstor, is ceoltóir é Linstor a sholáthraíonn ciseal astarraingthe a ligeann duit cruthú toirteanna i LVM nó ZFS a uathoibriú agus iad a mhacasamhlú le DRBD9.
Briseadh steiréitíopaí
Ach fan, DRBD? — Cén fáth é a uathoibriú agus conas is féidir leis oibriú fiú?
Déanaimis cuimhneamh ar an am atá caite, nuair a bhí an-tóir ar DRBD8. Is éard a bhí i gceist lena úsáid chaighdeánach gléas bloc mór amháin a chruthú agus é a ghearradh ina go leor píosaí beaga, ag baint úsáide as an LVM céanna. Cineál mdadm RAID-1 ach le macasamhlú thar an líonra.
Níl aon míbhuntáistí ag baint leis an gcur chuige seo, agus mar sin, le teacht DRBD9, tá athrú tagtha ar phrionsabail an dearadh stórála; anois cruthaítear feiste DRBD ar leith do gach meaisín fíorúil.
Ceadaíonn an cur chuige le feistí bloc neamhspleácha úsáid níos fearr a bhaint as spás sa bhraisle, agus cuireann sé roinnt gnéithe breise leis freisin. Mar shampla, le haghaidh gach feiste den sórt sin is féidir leat a chinneadh ar líon na macasamhla, a suíomh agus socruithe aonair. Is furasta iad a chruthú/scriosadh, grianghraif a ghlacadh, méid a athrú, criptiú a chumasú agus go leor eile. Is fiú a thabhairt faoi deara go dtacaíonn DRBD9 le córam freisin, rud a ligeann duit cásanna scoilte-inchinn a sheachaint.
Acmhainní agus cúlchláir
Agus blocghléas nua á chruthú, cuireann Linstor an líon macasamhla riachtanach ar nóid éagsúla sa bhraisle. Tabharfaimid acmhainn DRBD ar gach macasamhail dá leithéid.
Tá dhá chineál acmhainní ann:
- Acmhainn sonraí — ar feiste DRBD iad atá suite ar nód i linn LVM nó ZFS.
Faoi láthair tá tacaíocht le haghaidh roinnt inneall agus tá a líon ag méadú i gcónaí. Tá tacaíocht ann do LVM, ThinLVM agus ZFS. Ligeann an dá cheann dheireanach duit pictiúir a chruthú agus a úsáid. - Acmhainn gan diosca — is feiste DRBD í a chuirtear ar nód gan inneall, ach a cheadaíonn déileáil leis mar ghnáthfheiste bloc; déanfar gach oibríocht léite/scríofa a atreorú chuig acmhainní sonraí. Is é iSCSI LUN an analóg is gaire d'acmhainní gan diosca.
Is féidir suas le 8 macasamhail a bheith ag gach acmhainn DRBD, agus ní féidir ach ceann amháin acu a bheith gníomhach de réir réamhshocraithe - Bunscoileanna, beidh gach duine eile Den Dara Grád agus beidh sé dodhéanta iad a úsáid chomh fada agus a bhíonn Bunscoil amháin ar a laghad ann, is é sin le rá nach ndéanfaidh siad ach sonraí a mhacasamhlú eatarthu féin.
Trí fheiste DRBD a shuiteáil isteach sa chóras, éiríonn sé go huathoibríoch Bunscoileanna, mar sin is féidir fiú acmhainn gan Diosca, i dtéarmaíocht DRBD, a bheith ina Bunscoil.
Mar sin, cén fáth a bhfuil Linstor uait?
Trí gach tasc atá dian ar acmhainní a chur ar an eithne, is feidhmchlár rialta Java go bunúsach é Linstor a ligeann duit cruthú acmhainní DRBD a uathoibriú go héasca.
Ina theannta sin, beidh gach acmhainn a chruthóidh sé ina bhraisle neamhspleách DRBD a fheidhmíonn go neamhspleách, beag beann ar staid an eitleáin rialaithe agus acmhainní eile DRBD.
Níl ach dhá chomhpháirt i Linstor:
- Linstor-rialtóir - An príomh-rialtóir, a sholáthraíonn API chun acmhainní a chruthú agus a bhainistiú. Déanann sé cumarsáid freisin le satailítí, seiceáil an spás saor atá orthu, agus cuireann sé tascanna chun acmhainní nua a chruthú agus a scriosadh. Ritheann sé i gcás amháin agus úsáideann sé bunachar sonraí, is féidir a bheith inmheánach (H2) nó seachtrach (PostgreSQL, MySQL, MariaDB)
- Linstor-satailít — Suiteáilte ar gach nód stórála agus cuireann sé faisnéis ar fáil don rialtóir faoi spás saor in aisce, agus comhlíonann sé tascanna a fhaightear ón rialaitheoir chun méideanna nua agus gléasanna DRBD a chruthú agus a scriosadh ar a bharr.
Feidhmíonn Linstor leis na príomhchoincheapa seo a leanas:
- Nód — freastalaí fisiceach ar a gcruthófar agus ar a n-úsáidfear acmhainní DRBD.
- Snámha Stórála — Comhthiomsú LVM nó ZFS cruthaithe ar an nód ina mbeidh acmhainní DRBD suite. Is féidir linn gan diosca a bheith ann freisin - is linn é seo nach mbeidh ach acmhainní gan diosca lonnaithe ann.
- Sainmhíniú Acmhainne — Is fréamhshamhail é an sainmhíniú ar acmhainn go bunúsach a chuireann síos ar an ainm agus ar a hairíonna go léir.
- Sainmhíniú toirte — Sainmhíniú toirte. Is féidir méideanna iolracha a bheith i ngach acmhainn, caithfidh méid a bheith ag gach imleabhar.
- Acmhainní — Sampla cruthaithe de bhlocghléas, ní mór gach acmhainn a chur ar nód sonrach agus i roinnt linn stórála.
Suiteáil Linstor
Molaim Ubuntu a úsáid mar chóras, mar... ann di
add-apt-repository ppa:linbit/linbit-drbd9-stack
apt-get update
Nó Debian, áit ar féidir Linstor a shuiteáil ón stór oifigiúil do 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
rialtóir
Tá gach rud simplí anseo:
apt-get install linstor-controller linstor-client
systemctl enable linstor-controller
systemctl start linstor-controller
Nóid stórála
Seoltar an eithne Linux faoi láthair le modúl eithne in-crann DRBD8, ar an drochuair ní oireann dúinn agus ní mór dúinn a shuiteáil DRBD9:
apt-get install drbd-dkms
De réir mar a léiríonn an cleachtas, tagann an chuid is mó de na deacrachtaí chun cinn go beacht toisc go bhfuil an modúl DRBD8 luchtaithe isteach sa chóras, agus ní DRBD9. Go fortunately, is furasta é seo a sheiceáil trí rith:
modprobe drbd
cat /proc/drbd
Má fheiceann tú leagan: 9 - ciallaíonn sé go bhfuil gach rud go breá má leagan: 8 - ciallaíonn sé go ndeachaigh rud éigin mícheart agus go gcaithfidh tú céimeanna breise a ghlacadh chun na cúiseanna a fháil amach.
Anois, a ligean ar a shuiteáil linstor-satailít и drbd-utils:
apt-get install linstor-satellite drbd-utils
systemctl enable linstor-satellite
systemctl start linstor-satellite
Cruthaigh braisle
Linnte stórála agus nóid
Mar backend beimid ag glacadh ThinLVM, mar is é an ceann is simplí é agus tacaíonn sé le grianghraif.
Socraigh lvm2, mura bhfuil sé sin déanta agat cheana féin, cruthaimis linn ThinLVM ar ár nóid stórála go léir:
sudo vgcreate drbdpool /dev/sdb
sudo lvcreate -L 800G -T drbdpool/thinpool
Is féidir gach gníomh breise a dhéanamh go díreach ar an rialtóir:
Cuirimis ár nóid leis:
linstor node create node1 127.0.0.11
linstor node create node2 127.0.0.12
linstor node create node3 127.0.0.13
Cruthaímid linnte stórála:
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
Anois déanaimis seiceáil ar na linnte cruthaithe:
linstor storage-pool list
Má dhéantar gach rud i gceart, ba cheart dúinn rud éigin mar seo a fheiceáil:
+---------------------------------------------- ----------------------------------------------- ----+ | StoragePool | Nód | Tiománaí | Ainm Linn | Cumas Saor | Cumas Iomlán | TacaíochtaíSnapshots | |--------------------------------------------- ------------------------------------------------ ---| | sonraí | nód1 | LVM_THIN | drbdpool/tan linn | 64 GiB | 64 GiB | fíor | | sonraí | nód2 | LVM_THIN | drbdpool/tan linn | 64 GiB | 64 GiB | fíor | | sonraí | nód3 | LVM_THIN | drbdpool/tan linn | 64 GiB | 64 GiB | fíor | +---------------------------------------------- ----------------------------------------------- ----+
Acmhainní DRBD
Anois déanaimis iarracht ár n-acmhainn nua DRBD a chruthú:
linstor resource-definition create myres
linstor volume-definition create myres 1G
linstor resource create myres --auto-place 2
Déanaimis na hacmhainní cruthaithe a sheiceáil:
linstor resource list
+---------------------------------------------- ----------------------------------------------- ---+ | Nód | Acmhainn | StoragePool | ImleabharNr | MionNr | Ainm an Ghléis | Leithdháilte | InÚsáid | Stáit | |--------------------------------------------- ------------------------------------------------ --| | nód1 | mire | sonraí | 0 | 1084 | /dev/drbd1084 | 52 KiB | Gan úsáid | Uasdátú | | nód2 | mire | sonraí | 0 | 1084 | /dev/drbd1084 | 52 KiB | Gan úsáid | Uasdátú | +---------------------------------------------- ----------------------------------------------- ---+
Go hiontach! — feicimid gur cruthaíodh an acmhainn ar an gcéad dá nód, is féidir linn iarracht a dhéanamh freisin acmhainn gan diosca a chruthú ar an tríú:
linstor resource create --diskless node3 myres
Ar nóid gheobhaidh tú an gléas seo i gcónaí mar /dev/drbd1084
nó /dev/drbd/by-res/myres/0
Seo mar a oibríonn Linstor, is féidir leat tuilleadh eolais a fháil ó
Anois inseoidh mé duit conas é a chomhtháthú le OpenNebula
Socrú OpenNebula
Ní rachaidh mé ró-dhomhain isteach sa phróiseas socraithe OpenNebula, mar... tá cur síos mionsonraithe ar gach céim i
linstor_un
Chun an fhadhb seo a réiteach, scríobh mé mo thiománaí féin -
Déantar an tsuiteáil iomlán ar na nóid tosaigh OpenNebula agus ní gá gníomhartha breise a dhéanamh ar na nóid ríomh.
Ar an gcéad dul síos, ní mór dúinn a chinntiú go bhfuil jq и linstor-client:
apt-get install jq linstor-client
Foireann linstor node list
Ba chóir go mbeadh liosta de na nóid ar taispeáint. Ní mór gach nóid ríomh OpenNebula a chur le braisle Linstor.
Íoslódáil agus suiteáil an breiseán:
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
Anois ní mór dúinn é a chur leis an config OpenNebula, chun é seo a dhéanamh leanaimid na céimeanna simplí a thuairiscítear
Ansin atosaigh OpenNebula:
systemctl restart opennebula
Agus cuir ár stór sonraí, córas:
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
Agus an siopa íomhá:
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
- Paraiméadar
AUTO_PLACE
taispeánann sé líon na macasamhla sonraí a chruthófar do gach íomhá nua in OpenNebula. - Paraiméadar
CLONE_MODE
léiríonn sé go beacht conas a chlónálfar íomhánna agus meaisíní fíorúla nua á gcruthú,snapshot
— cruthófar pictiúr den íomhá agus úsáidfidh sé meaisín fíorúil ón ngrianghraf,copy
— déanfaidh sé cóip iomlán den íomhá do gach meaisín fíorúil. - В
BRIDGE_LIST
Moltar na nóid go léir a úsáidfear chun oibríochtaí clónála íomhá a dhéanamh a shonrú.
Le haghaidh liosta iomlán de pharaiméadair tacaithe, féach
Críochnaíonn sé seo an socrú, anois is féidir leat roinnt fearas a íoslódáil ón oifigeach
Nasc tionscadail:
Foinse: will.com