Nga tohutohu me nga tinihanga mo te mahi tahi me Ceph i roto i nga kaupapa pukumahi

Nga tohutohu me nga tinihanga mo te mahi tahi me Ceph i roto i nga kaupapa pukumahi

Ma te whakamahi i a Ceph hei rokiroki whatunga i roto i nga kaupapa me nga taumahatanga rereke, ka tupono pea tatou ki nga momo mahi kaore i te ahua ngawari, i te mea iti ranei. Hei tauira:

  • te hekenga o nga raraunga mai i te Ceph tawhito ki te mea hou me te whakamahi waahanga o nga kaitoro o mua i roto i te roopu hou;
  • otinga ki te raruraru o te tohatoha mokowā kōpae i Ceph.

Ma te pa ki nga raru penei, kei te raru tatou ki te tango tika i te OSD me te kore e ngaro nga raraunga, he mea tino nui ina pa ana ki nga raraunga nui. Ka korerohia tenei i roto i te tuhinga.

Ko nga tikanga e whakaahuahia ana i raro nei e tika ana mo tetahi putanga o Ceph. I tua atu, ko te mea ka taea e Ceph te pupuri i te nui o nga raraunga ka whakaarohia: hei aukati i te ngaro o nga raraunga me etahi atu raruraru, ka "wehea" etahi mahi ki etahi atu.

Kupu o mua mo OSD

I te mea e rua o nga tohutao e toru e korerohia ana kua whakatapua ki te OSD (Daemon Rokiroki Ahanoa), i mua i te ruku ki te waahanga mahi - poto mo te aha kei roto i a Ceph me te aha i tino nui ai.

Tuatahi, me kii ko te roopu Ceph katoa he maha nga OSD. Ko te nui ake, ka nui ake te rahinga raraunga koreutu i Ceph. He ngawari te maarama mai i konei mahi OSD matua: Kei te rongoa i nga raraunga ahanoa Ceph i runga i nga punaha konae o nga kohinga kohinga katoa me te whakarato i te uru ki te whatunga (mo te panui, te tuhi, me etahi atu tono).

I te taumata ano, ka whakatauhia nga tawhā tukurua ma te kape i nga mea i waenga i nga OSD rereke. I konei ka taea e koe te pa ki nga raru maha, ko nga otinga ka korerohia i raro nei.

Take Nama 1. Tango humarie te OSD mai i te kahui Ceph me te kore e ngaro raraunga

Ko te hiahia ki te tango i te OSD ka puta pea ma te tango i te tūmau mai i te kāhui - hei tauira, ki te whakakapi ki tetahi atu tūmau - koinei te mea i pa ki a matou, i puta ai te tuhi o tenei tuhinga. No reira, ko te tino whainga o te raweke ko te tango i nga OSD me nga mons katoa i runga i tetahi tuumau kia taea ai te aukati.

Mo te waatea me te karo i tetahi ahuatanga, i te wa e mahi ana i nga whakahau, ka he taatau ki te tohu i te OSD e hiahiatia ana, ka tautuhia e matou he taurangi motuhake, ko te uara ko te nama o te OSD ka whakakorehia. Me waea atu ki a ia ${ID} — i konei me raro, ka whakakapihia e taua taurangi te tau o te OSD e mahi nei matou.

Me titiro ki te ahuatanga i mua i te tiimata i te mahi:

root@hv-1 ~ # ceph osd tree
ID CLASS WEIGHT  TYPE NAME      STATUS REWEIGHT PRI-AFF
-1       0.46857 root default
-3       0.15619      host hv-1
-5       0.15619      host hv-2
 1   ssd 0.15619      osd.1     up     1.00000  1.00000
-7       0.15619      host hv-3
 2   ssd 0.15619      osd.2     up     1.00000  1.00000

Hei timata i te tango OSD, me pai te mahi reweight ki runga ki te kore. Ma tenei ka whakaitihia te nui o nga raraunga i roto i te OSD ma te whakataurite ki etahi atu OSD. Hei mahi i tenei, whakahaere i nga whakahau e whai ake nei:

ceph osd reweight osd.${ID} 0.98
ceph osd reweight osd.${ID} 0.88
ceph osd reweight osd.${ID} 0.78

... me te pera tonu tae noa ki te kore.

Ko te whakataurite maeneene e hiahiatia anakia kore ai e ngaro nga raraunga. He tino pono tenei mena he nui nga raraunga kei roto i te OSD. Ki te whakarite i muri i te mahi i nga whakahau reweight i pai nga mea katoa, ka taea e koe te whakaoti ceph -s i roto ranei i te oma matapihi kapeka motuhake ceph -w kia kite i nga huringa i te waa tuturu.

I te wa e "watea ana" te OSD, ka taea e koe te haere ki te mahi paerewa hei tango. Ki te mahi i tenei, whakawhiti i te OSD e hiahiatia ana ki te kawanatanga down:

ceph osd down osd.${ID}

Me "toia" te OSD ki waho o te tautau:

ceph osd out osd.${ID}

Kia whakamutua te ratonga OSD ka wetewete i tana wehenga i te FS:

systemctl stop ceph-osd@${ID}
umount /var/lib/ceph/osd/ceph-${ID}

Tango OSD mai CRUSH mapi:

ceph osd crush remove osd.${ID}

Me muku te kaiwhakamahi OSD:

ceph auth del osd.${ID}

Ka mutu, me tango te OSD ake:

ceph osd rm osd.${ID}

parau: Mena kei te whakamahi koe i te putanga Ceph Luminous teitei ake ranei, ka taea te whakaheke i nga waahanga tango OSD i runga ake nei ki nga whakahau e rua:

ceph osd out osd.${ID}
ceph osd purge osd.${ID}

Mena, i muri i te whakaoti i nga waahanga kua whakaahuahia i runga ake nei, ka whakahaere koe i te whakahau ceph osd tree, katahi ka marama kei runga i te tūmau i mahia ai te mahi kua kore he OSD i mahia i runga ake nei:

root@hv-1 ~ # ceph osd tree
ID CLASS WEIGHT  TYPE NAME     STATUS REWEIGHT PRI-AFF
-1       0.46857      root default
-3       0.15619      host hv-1
-5       0.15619      host hv-2
-7       0.15619      host hv-3
 2   ssd 0.15619      osd.2    up     1.00000  1.00000

I te ara, kia mahara ko te ahua o te roopu Ceph ka haere ki HEALTH_WARN, ka kite hoki tatou i te hekenga o te maha o nga OSD me te nui o te mokowā kōpae e waatea ana.

Ko nga mea e whai ake nei ka whakaahua i nga waahanga e hiahiatia ana mena ka hiahia koe ki te aukati i te tūmau, a, na reira, tangohia mai i a Ceph. I tenei take, he mea nui kia mahara ki tera I mua i te whakaweto i te tūmau, me tango e koe nga OSD katoa i runga i tenei tūmau.

Mena karekau he OSD e toe ana i runga i tenei tūmau, ka mutu ka tangohia e koe me whakakorehia te tūmau mai i te mahere OSD hv-2ma te whakahaere i te whakahau e whai ake nei:

ceph osd crush rm hv-2

Muputu mon mai i te tūmau hv-2ma te whakahaere i te whakahau i raro nei i runga i tetahi atu tūmau (arā, i tenei keehi, i runga hv-1):

ceph-deploy mon destroy hv-2

I muri i tenei, ka taea e koe te whakamutu i te tūmau me te timata i nga mahi o muri mai (ka tukuna ano, me etahi atu).

Take Nama 2. Te tohatoha mokowā kōpae i roto i te kāhui Ceph kua oti kē te hanga

Ka timata ahau i te korero tuarua me te korero o mua mo PG (Rōpū Whakanoho). Ko te mahi matua a PG i Ceph ko te whakahiato i nga taonga Ceph me te taapiri ano ki te OSD. Ko te tauira e taea ai e koe te tatau te nui o te PG kei roto wāhanga whai take Tuhinga Ceph. Ka korerohia ano tenei take me etahi tauira motuhake.

Na: ko tetahi o nga raruraru noa i te wa e whakamahi ana i a Ceph ko te kore taurite o te OSD me te PG i waenga i nga puna i Ceph.

Tuatahi, na tenei, ka puta ake he ahuatanga ina he maha rawa nga PG kua tohua ki roto i tetahi puna iti, he mea pohehe te whakamahi mokowā kōpae i roto i te kohinga. Tuarua, i roto i nga mahi he raru nui ake: ka puhake nga raraunga ki tetahi o nga OSD. Ko tenei ka uru te roopu ki te whakawhiti tuatahi ki te kawanatanga HEALTH_WARN, katahi HEALTH_ERR. Ko te take mo tenei ko Ceph, i te wa e tatau ana i te nui o nga raraunga e waatea ana (ka kitea e koe ma te MAX AVAIL i roto i te putanga whakahau ceph df mo ia puna motuhake) i runga i te nui o nga raraunga e waatea ana i te OSD. Ki te kore e nui te mokowā i roto i te kotahi te iti rawa o te OSD, karekau he raraunga e taea te tuhi kia tika ra ano te tohatoha o nga raraunga ki nga OSD katoa.

He mea tika kia whakamaramahia enei raru ka whakatauhia i te waahanga whirihoranga a Ceph cluster. Ko tetahi o nga taputapu ka taea e koe te whakamahi Ceph PGCalc. Ma tana awhina, ka tino tatauhia te nui o te PG e hiahiatia ana. Heoi, ka taea hoki e koe te uru atu ki a ia i roto i tetahi ahuatanga kei reira te roopu Ceph kua i hē te whirihora. He mea tika ki te whakamarama i konei ko te waahanga o te mahi whakatika ka hiahia koe ki te whakaheke i te maha o nga PG, a kaore tenei waahanga i te waatea i nga waahanga tawhito o Ceph (i puta noa i te putanga. Nautilus).

Na, whakaarohia te pikitia e whai ake nei: he mana te kohinga HEALTH_WARN na te kore o tetahi o nga OSD i te waahi. Ka tohuhia tenei e tetahi hapa HEALTH_WARN: 1 near full osd. Kei raro ko te algorithm mo te puta atu i tenei ahuatanga.

Tuatahi, me tohatoha koe i nga raraunga e waatea ana i waenga i nga toenga OSD. Kua mahia e matou he mahi pera i te keehi tuatahi, i te wa i "whakaheke" te node - me te rereketanga anake inaianei me whakaitihia e matou. reweight. Hei tauira, tae atu ki te 0.95:

ceph osd reweight osd.${ID} 0.95

Ma tenei ka wewete i te mokowā kōpae i roto i te OSD me te whakatika i te hapa i te hauora ceph. Engari, i te mea kua whakahuahia ake nei, ko tenei raru ka puta mai na te he o te whirihoranga a Ceph i nga waahanga tuatahi: he mea tino nui ki te hanga i te whirihoranga kia kore ai e puta i nga ra kei mua.

I roto i ta maatau take, i heke katoa ki:

  • teitei rawa te uara replication_count i tetahi o nga puna,
  • he nui rawa te PG i tetahi puna, he iti rawa i tetahi atu.

Me whakamahi te tātaitai kua whakahuatia ake nei. E whakaatu ana i nga mea e tika ana kia whakauruhia, a, ko te tikanga, kaore he mea uaua. I te tautuhi i nga tawhā e tika ana, ka whiwhi tatou i nga taunakitanga e whai ake nei:

parau: Mena kei te whakarite koe i te kahui Ceph mai i te wahanga, ko tetahi atu mahi whai hua o te tatauranga ko te whakatipuranga o nga whakahau ka waihanga puna mai i te wahanga me nga tawhā kua tohua ki te ripanga.

Ko te pou whakamutunga ka awhina koe ki te whakatere - Kaute PG kua tohua. I roto i to maatau, he pai ano te tuarua, kei reira te tohu tukurua, na te mea i whakatau matou ki te huri i te whakareatanga tukurua.

Na, i te tuatahi me huri koe i nga tawhā tukurua - me mahi tuatahi tenei, na te mea ma te whakaiti i te whakarea, ka whakawāteahia e mātou te mokowā kōpae. I te wa e mahi ana te whakahau, ka kite koe ka piki ake te mokowā kōpae e waatea ana:

ceph osd pool $pool_name set $replication_size

A, i muri i tona otinga, ka huri tatou i nga uara tawhā pg_num и pgp_num e whai ake nei:

ceph osd pool set $pool_name pg_num $pg_number
ceph osd pool set $pool_name pgp_num $pg_number

nui: me whakarereke te maha o nga PG i ia puna, kaua e whakarereke i nga uara i etahi atu puna kia ngaro ra ano nga whakatupato. "Ko nga raraunga kua whakahekehia" и "n-tau o pgs kua heke".

Ka taea hoki e koe te tirotiro i pai nga mea katoa ma te whakamahi i nga putanga whakahau ceph health detail и ceph -s.

Take Nama 3. Te heke i te miihini mariko mai i LVM ki Ceph RBD

I roto i nga ahuatanga ka whakamahia e tetahi kaupapa nga miihini mariko kua whakauruhia ki runga i nga tuunga konganuku riihi, he maha nga wa ka ara ake te take o te rokiroki hee. He tino hiahia hoki kia nui te waahi kei roto i tenei rokiroki ... Ko tetahi atu ahuatanga noa: he miihini mariko me te rokiroki o te rohe i runga i te tūmau me te hiahia koe ki te whakawhānui ake i te kōpae, engari kaore he waahi hei haere, no te mea kaore he mokowā kōpae wātea i toe ki te tūmau.

Ka taea te whakatau i te raruraru i roto i nga huarahi rereke - hei tauira, ma te heke ki tetahi atu tūmau (mehemea he kotahi) me te taapiri i nga kōpae hou ki te tūmau. Engari kaore e taea te mahi i nga wa katoa, no reira ko te heke mai i LVM ki Ceph he otinga pai mo tenei raru. Ma te kowhiri i tenei whiringa, ka whakamaaramahia ano e matou te tikanga o te hekenga i waenga i nga kaitoro, na te mea kaore he take ki te nuku i te rokiroki o te rohe mai i tetahi hypervisor ki tetahi atu. Ko te hopu anake me whakamutua e koe te VM i te wa e mahia ana te mahi.

Ko te tunu e whai ake nei ka tangohia mai i tuhinga mai i tenei blog, ko nga tohutohu kua whakamatauria ki te mahi. Ma te ara, kua whakaahuatia ano te tikanga o te heke kore raruraru ki reira, Heoi, i roto i to maatau kaore i hiahiatia, na reira kaore i tirohia e matou. Mena he mea nui tenei mo to kaupapa, ka koa matou ki te rongo mo nga hua i roto i nga korero.

Me neke tatou ki te waahanga mahi. I roto i te tauira ka whakamahia e matou te virsh me te mea, libvirt. Tuatahi, kia mohio kei te hono atu te puna Ceph ki te whakawhiti raraunga ki te libvirt:

virsh pool-dumpxml $ceph_pool

Ko te whakaahuatanga poka wai me whai raraunga hononga ki a Ceph me nga raraunga whakamana.

Ko te taahiraa e whai ake nei ko te ahua o te LVM ka hurihia ki Ceph RBD. Ko te wa mahi e whakawhirinaki ana ki te rahi o te ahua:

qemu-img convert -p -O rbd /dev/main/$vm_image_name rbd:$ceph_pool/$vm_image_name

Whai muri i te hurihanga, ka noho tonu he ahua LVM, ka whai hua mena ka taka te heke i te VM ki te RBD ka huri koe i nga huringa. Ano hoki, kia tere te huri i nga huringa, me hanga he taapiri o te konae whirihoranga miihini mariko:

virsh dumpxml $vm_name > $vm_name.xml
cp $vm_name.xml $vm_name_backup.xml

... ka whakatika i te taketake (vm_name.xml). Me kimi poraka me te whakaahuatanga o te kōpae (ka timata ki te raina <disk type='file' device='disk'> ka mutu ki </disk>) ka whakaitihia ki te ahua e whai ake nei:

<disk type='network' device='disk'>
<driver name='qemu'/>
<auth username='libvirt'>
  <secret type='ceph' uuid='sec-ret-uu-id'/>
 </auth>
<source protocol='rbd' name='$ceph_pool/$vm_image_name>
  <host name='10.0.0.1' port='6789'/>
  <host name='10.0.0.2' port='6789'/>
</source>
<target dev='vda' bus='virtio'/> 
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>

Kia titiro tatou ki etahi taipitopito:

  1. Ki te kawa source kua tohuhia te wahitau ki te rokiroki i Ceph RBD (koinei te wahitau e whakaatu ana i te ingoa o te puna wai Ceph me te ahua RBD, i whakatauhia i te waahi tuatahi).
  2. I roto i te poraka secret kua tohua te momo ceph, me te UUID o te mea ngaro ki te hono atu ki a ia. Ka kitea tona uuid ma te whakamahi i te whakahau virsh secret-list.
  3. I roto i te poraka host kua tohua nga wahitau ki nga kaitirotiro Ceph.

I muri i te whakatika i te konae whirihoranga me te whakaoti i te hurihanga LVM ki te RBD, ka taea e koe te tono i te konae whirihoranga whakarereke me te tiimata i te miihini mariko:

virsh define $vm_name.xml
virsh start $vm_name

Kua tae ki te wa ki te tirotiro kua tika te tiimata o te miihini mariko: ka kitea e koe, hei tauira, ma te hono atu ma te SSH, ma te virsh.

Mena kei te mahi tika te miihini mariko karekau koe i kite i etahi atu raru, katahi ka taea e koe te whakakore i te ahua LVM kua kore e whakamahia:

lvremove main/$vm_image_name

mutunga

I tutuki i a maatau nga keehi katoa i whakaahuahia - ko te tumanako ka awhina nga tohutohu i etahi atu kaiwhakahaere ki te whakaoti rapanga rite. Mena kei a koe nga korero me etahi atu korero rite mai i to wheako ki a Ceph, ka koa matou ki te kite i a raatau i roto i nga korero!

PS

Pānuihia hoki i runga i ta maatau blog:

Source: will.com

Tāpiri i te kōrero