Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua

I whakaritea te whakamaoritanga o te tuhinga i te ahiahi o te timatanga o te akoranga "Kaiwhakahaere Linux. Mariko me te huinga".

Ko te DRBD (Distributed Replicated Block Device) he otinga rokiroki kua tohatohahia, ngawari, me te katoa mo te Linux. Ka whakaatahia nga ihirangi o nga taputapu poraka penei i nga puku pakeke, nga wehewehenga, nga pukapuka arorau, me era atu. i waenganui i nga tūmau. Ka hangaia he kape o nga raraunga i runga i nga taputapu rokiroki e rua, ki te rahua tetahi, ka taea te whakamahi i nga raraunga i te tuarua.

Ka taea e koe te kii he penei whirihoranga RAID whatunga 1 me nga kopae kua mapi ki nga kaitoro rereke. Heoi, he rereke te mahi i te RAID (ara RAID whatunga).

I te timatanga, i whakamahia te DRBD i roto i nga kohinga rorohiko teitei (HA), engari, ka timata mai i te putanga XNUMX, ka taea te whakamahi ki te tuku i nga otinga rokiroki kapua.

I roto i tenei tuhinga, ka whakamarama matou me pehea te whakauru i te DRBD ki runga i te CentOS me te whakaatu poto me pehea te whakamahi hei tarai i te rokiroki (waahanga) puta noa i nga kaitoro e rua. Koinei te tuhinga tino pai ki te tiimata me te DRBD i runga i te Linux.

Taiao Whakamātautau

Ka whakamahia e matou he huinga node e rua mo tenei tatūnga.

  • Node 1: 192.168.56.101 – tecmint.tecmint.lan
  • Node 2: 192.168.56.102 – server1.tecmint.lan

Hipanga 1: Tāutahia nga kohinga DRBD

Ka whakatinanahia te DRBD hei waahanga kernel Linux. He taraiwa mo te taputapu paraka mariko, no reira kei te pito rawa o te puranga I/O o te punaha.

Ka taea te whakauru DRBD mai i ELRepo, EPEL ranei. Me timata ma te kawemai i te taviri hainatanga mokihi ELRepo me te hono i te putunga ki runga i nga pona e rua e whakaatu ana i raro nei.

# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

Na ka hiahia koe ki te whakauru i te waahanga DRBD kernel me nga taputapu ki runga i nga waahanga e rua ma te whakamahi:

# yum install -y kmod-drbd84 drbd84-utils

Mena kua whakahohea e koe a SELinux, me whirihora e koe nga kaupapa here hei whakakore i nga tukanga DRBD mai i te mana SELinux.

# semanage permissive -a drbd_t

I tua atu, mena kei te whakahaere to punaha i te papangaahi (firewalld), ka hiahia koe ki te taapiri i te tauranga DRBD 7789 kia taea ai te tukutahi raraunga i waenga i nga pona e rua.

Whakahaerehia enei whakahau mo te pona tuatahi:

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4"  source address="192.168.56.102" port port="7789" protocol="tcp" accept'
# firewall-cmd --reload

Na ka whakahaere i enei whakahau mo te pona tuarua:

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.56.101" port port="7789" protocol="tcp" accept'
# firewall-cmd --reload

Hipanga 2: Whakaritea te Rokiroki Taumata-iti

Inaianei kua whakauruhia e matou te DRBD ki runga i nga kopuku kahui e rua, me whakarite e matou nga waahi rokiroki kia rite te rahi ki runga. Ko tenei pea he wehewehenga puku (he puku tinana katoa ranei), he taputapu RAID rorohiko, rōrahi arorau LVM tetahi atu momo taputapu poraka ranei i kitea i runga i to punaha.

Mo tenei tuhinga, ka hangaia e matou he taputapu paraka whakamatautau 2GB ma te whakamahi i te whakahau dd.

# dd if=/dev/zero of=/dev/sdb1 bs=2024k count=1024

Me whakaaro he wehewehenga kaore i whakamahia (/dev/sdb1) i runga i tetahi taputapu paraka tuarua (/dev/sdb) e hono ana ki nga pona e rua.

Hipanga 3. Te whirihora i te DRBD

DRBD kōnae whirihoranga matua − /etc/drbd.conf, ka kitea etahi atu kōnae whirihoranga i roto i te whaiaronga /etc/drbd.d.

Hei tukurua i te rokiroki, me taapiri nga whirihoranga e tika ana ki te konae /etc/drbd.d/global_common.conf, kei roto nga waahanga o te ao me nga waahanga whanui o te whirihoranga DRBD, a me tautuhi i nga rauemi i roto .res kōnae.

Me hanga he kape taapiri o te konae taketake ki nga pona e rua, katahi ka whakatuwhera i te konae hou hei whakatika (whakamahia he etita tuhinga e pai ana koe).

# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.conf.orig
# vim /etc/drbd.d/global_common.conf 

Tāpirihia ngā rārangi e whai ake nei ki ngā kōnae e rua:

global {
 usage-count  yes;
}
common {
 net {
  protocol C;
 }
}

Tiakina te kōnae ka kati i te ētita.

Ka titiro tatou ki te rarangi kawa C mo te wa poto. Ka tautokohia e DRBD nga momo momo tukurua e toru (ara, e toru nga nekehanga o te tukutahi tukurua), ara:

  • kawa A: kawa tukurite tukurite; te nuinga o nga wa ka whakamahia i roto i nga ahuatanga tukurua tawhiti.
  • kawa B: Kawa tukurua-ruarua, kawa mahara tukutahi ranei.
  • kawa C: i te nuinga o te wa ka whakamahia mo nga pona i roto i nga whatunga me nga tawhiti poto; koinei te kawa tukurua e whakamahia nuitia ana i nga tautuhinga DRBD.

nui: Ko te kowhiringa o te kawa tukurua e pa ana ki nga take tukunga e rua: te haumarutanga me te roanga. Engari, karekau te urunga e whakawhirinaki nui ki te kawa tukurua kua tohua.

Hipanga 4: Tāpirihia he rauemi

Ko te Rauemi he kupu whakamarumaru e tohu ana ki nga ahuatanga katoa o tetahi huingararaunga kua rite. Ka tautuhia ta maatau rauemi i roto i te konae /etc/drbd.d/test.res.

Tāpirihia nga mea e whai ake nei ki te konae i runga i nga pona e rua (mahara ki te whakakapi i nga taurangi me nga uara mo to taiao).

Kia tupato ki nga ingoa ingoa, me tohu e matou te ingoa ingoa whatunga, ka taea te tiki ma te whakamahi i te tono uname -n.

resource test {
        on tecmint.tecmint.lan {
 		device /dev/drbd0;
       		disk /dev/sdb1;
        		meta-disk internal;	
                	address 192.168.56.101:7789;
        }
        on server1.tecmint.lan  {
		device /dev/drbd0;
        		disk /dev/sdb1;
        		meta-disk internal;
                	address 192.168.56.102:7789;
        }
}
}

kei hea:

  • i runga i te ingoa manaaki: Ko te waahanga kei reira te korero whirihoranga kohanga e pa ana.
  • whakamātautau: Koinei te ingoa o te rauemi hou.
  • taputapu /dev/drbd0: E tohu ana i tetahi taputapu poraka mariko hou e whakahaerehia ana e DRBD.
  • kōpae /dev/sdb1: Ko te arai taputapu poraka tenei he taputapu taapiri mo te taputapu DRBD.
  • kōpae-meta: Ka tautuhi i te waahi e rongoa ai a DRBD i ana metadata. Ko te tikanga o roto kei te rongoa a DRBD i ana metadata ki runga i te taputapu taumata-iti o te tinana me nga raraunga tuuturu i roto i te hanga.
  • wāhitau: Ka tohu i te wāhitau IP me te tau tauranga o te kōpuku e hāngai ana.

Kia mahara ano mena he rite nga uara o nga tawhā ki nga kaihautu e rua, ka taea e koe te tohu tika ki te waahanga rauemi.

Hei tauira, ko te whirihoranga i runga ake nei ka taea te whakatikatika ki:

resource test {
	device /dev/drbd0;
	disk /dev/sdb1;
        	meta-disk internal;	
        	on tecmint.tecmint.lan {
 		address 192.168.56.101:7789;
        	}
        	on server1.tecmint.lan  {
		address 192.168.56.102:7789;
        		}
}

Hipanga 5. Arataki me te whakarewa i te rauemi

Hei taunekeneke me te DRBD ka whakamahia e matou nga taputapu whakahaere e whai ake nei (e mahi tahi ana me te kōwae kernel hei whirihora me te whakahaere rauemi DRBD):

  • drbdadm: DRBD taputapu whakahaere taumata tiketike.
  • drbdsetup: He taputapu whakahaere taumata iti mo te hono i nga taputapu DRBD ki o raatau taputapu taapiri, te whirihora takirua o nga taputapu DRBD hei whakaata i o raatau taputapu taapiri, me te manatoko i te whirihoranga o nga taputapu DRBD.
  • Drbdmeta: Utauta whakahaere metadata.

Whai muri i te taapiri i nga whirihoranga rauemi tuatahi, me tono tatou i te rauemi ki nga pona e rua.

# drbdadm create-md test

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Te whakaaraara i te Toa Metadata

I muri mai me whakahaere e tatou, ka hono i te rauemi ki tana taputapu taapiri, ka tautuhi i nga tawhā tukurua me te hono i te rauemi ki tona hoa:

# drbdadm up test

Inaianei mena ka whakahaere koe i te whakahau lsblk, ka kite koe ko te taputapu DRBD / rōrahi drbd0 e hono ana ki te taputapu taapiri /dev/sdb1:

# lsblk

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Rarangi o nga taputapu poraka

Hei whakakore i tetahi rauemi, whakahaere:

# drbdadm down test

Hei taki i te mana o tetahi rauemi, whakahaeretia te whakahau e whai ake nei (kia mahara ko te mana o nga kopae kei te tumanako i tenei wa Korekore/Korekau):

# drbdadm status test
OR
# drbdsetup status test --verbose --statistics 	#for  a more detailed status

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Te tirotiro i te mana o tetahi rauemi kei runga
kino

Hipanga 6: Tautuhia te puna tuatahi / puna tukutahi taputapu tuatahi

I tenei wahanga, kua reri a DRBD ki te haere. Inaianei me tohu ko tehea te node me whakamahi hei puna mo te tukutahinga taputapu tuatahi.

Whakahaerehia te whakahau e whai ake nei i runga i te kotahi node hei timata i te tukutahitanga katoa:

# drbdadm primary --force test
# drbdadm status test

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Te tautuhi i te node tuatahi hei taputapu tuatahi
Kia oti te tukutahi, me UpToDate te ahua o nga puku e rua.

Hipanga 7: Te whakamatautau i te tatūnga DRBD

Ka mutu, me tirotirohia mena ka mahi te taputapu DRBD ki te penapena i nga raraunga taapiri. Kia maumahara i whakamahia e matou he rōrahi kōpae putua, no reira me hanga e matou he punaha konae ki runga i te taputapu ka whakairihia kia tirohia mena ka taea e matou te whakamahi hei penapena i nga raraunga taapiri.

Me hanga he punaha konae ki runga i te taputapu ma te whakamahi i te whakahau e whai ake nei i runga i te node i timata ai te tukutahitanga tuatahi (he rauemi kei te mahi tuatahi):

# mkfs -t ext4 /dev/drbd0

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Te hanga i te punaha konae ki te rōrahi Drbd

Na ka whakairihia kia rite ki te whakaaturanga (ka taea e koe te tohu ingoa pai mo te tohu maunga):

# mkdir -p /mnt/DRDB_PRI/
# mount /dev/drbd0 /mnt/DRDB_PRI/

Inaianei kapea, waihangahia ranei etahi konae kei runga ake i te waahi maunga ka hanga he rarangi roa ls whakahau:

# cd /mnt/DRDB_PRI/
# ls -l 

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Whakarārangihia ngā ihirangi o te rōrahi Drbd matua

Muri iho, wetewetehia te taputapu (kia mohio kaore e tuwhera te maunga, hurihia te whaiaronga i muri i te tangohanga kia kore ai e hapa) ka huri i te mahi node mai i te tuatahi ki te tuarua:

# umount /mnt/DRDB_PRI/
# cd
# drbdadm secondary test

Hangaia tetahi atu pona (he rauemi kei te mahi tuarua) hei tuatahi, ka honoa he taputapu ki runga, ka whakaputa i te rarangi roa o nga tohu whakairinga. Mena ka pai te mahi o te tatūnga, me noho nga konae katoa e penapena ana ki te rōrahi:

# drbdadm primary test
# mkdir -p /mnt/DRDB_SEC/
# mount /dev/drbd0 /mnt/DRDB_SEC/
# cd /mnt/DRDB_SEC/
# ls  -l 

Te whakatu i te DRBD mo te tukurua rokiroki i runga i nga tūmau CentOS 7 e rua
Te tirotiro i te tatūnga DRBD e rere ana i te kōpuku tuarua.

Mo etahi atu korero, tirohia nga wharangi awhina taputapu whakahaere:

# man drbdadm
# man drbdsetup
# man drbdmeta

Āwhina: DRBD Manual Kaiwhakamahi.

Whakarāpopoto

Ko te DRBD he tino ngawari me te whai kiko, ka waiho hei otinga tukurua rokiroki e tika ana mo te taapiri HA ki nga tono katoa. I roto i tenei tuhinga, i whakaatu matou me pehea te whakauru i te DRBD ki runga i te CentOS 7 me te whakaatu poto me pehea te whakamahi mo te tukurua rokiroki. Tena koa ki te whakapuaki i o whakaaro ki a matou ma te whakamahi i te puka urupare i raro nei.

Ako atu mo te akoranga.

Source: will.com

Tāpiri i te kōrero