Apimties grupės momentinio vaizdo funkcija, pristatyta kaip alfa Kubernetes 1.27 versijoje, dabar pasiekė beta versiją 1.32 versijoje. Ši funkcija leidžia daryti nuoseklias kelių tomų momentines kopijas naudojant grupės momentinio vaizdo plėtinio API. „Kubernetes“ suskirsto „PersistentVolumeClaims“ (PVC) į grupes naudodamas etikečių parinkiklį, kad būtų galima fotografuoti. Pagrindinis šios funkcijos tikslas yra palengvinti darbo krūvio atkūrimą atkuriant momentinių nuotraukų rinkinį į naujus tomus iš nuoseklaus atkūrimo taško.
Ši funkcija palaikoma tik CSI garsumo tvarkyklėse.
Apimties grupės momentinių nuotraukų supratimas
Tam tikros saugojimo sistemos gali vienu metu sukurti kelių tomų momentines nuotraukas, atitinkančias gedimus. Šios „grupinės momentinės nuotraukos“ užtikrina, kad visi tomai būtų užfiksuoti tuo pačiu metu. Grupės momentinės nuotraukos gali užpildyti naujus tomus momentinės nuotraukos duomenimis arba atkurti esamus tomus į ankstesnę būseną.
Apimties grupės momentinių nuotraukų diegimo priežastys
Galimybė daryti nuoseklias grupės momentines nuotraukas yra naudinga programoms, kurios apima kelis tomus, užtikrinant, kad visi komponentai būtų užfiksuoti tuo pačiu metu. Nors galima rankiniu būdu išjungti programas prieš darant atskiras momentines nuotraukas, tam tikrais atvejais šis procesas gali užtrukti arba būti nepraktiškas. Todėl vartotojai gali pageidauti reguliariai kurti atsargines kopijas su programos ramybe ir pasikliauti nuosekliomis grupės momentinėmis nuotraukomis, kad būtų daromos dažnesnės atsarginės kopijos.
Taip pat skaitykite: Duomenų valdymas Kubernetes su Portworx
„Kubernetes“ API, skirtos apimties grupės momentinėms nuotraukoms
„Kubernetes“ valdo tomų grupių momentines nuotraukas naudodama tris API išteklius:
- VolumeGroupSnapshot: vartotojo nustatytas objektas, kuris prašo kelių PVC momentinės nuotraukos. Tai apima metaduomenis, pvz., sukūrimo laiko žymą ir parengties būseną.
- VolumeGroupSnapshotContent: Automatiškai sukuria momentinės nuotraukos valdiklis, skirtas dinamiškai sudarytoms momentinėms nuotraukoms, išsaugoma tokia informacija kaip momentinės nuotraukos ID. Kiekvienas egzempliorius yra unikaliai susietas su atitinkamu VolumeGroupSnapshot.
- VolumeGroupSnapshotClass: nustato administratoriai, norėdami nurodyti, kaip turi būti kuriamos grupės momentinės nuotraukos, įskaitant tvarkyklės informaciją ir ištrynimo strategijas.
Šios API yra įdiegtos kaip „CustomResourceDefinitions“ (CRD) ir jas reikia įdiegti „Kubernetes“ klasteriuose, kad būtų suderinamos CSI tvarkyklės.
Komponentai, palaikantys tūrio grupės momentines nuotraukas
Įdiegus apimties grupės momentines kopijas, kurios yra išorinių momentinių nuotraukų saugyklos dalis, buvo atnaujinti keli komponentai:
- Nauji „VolumeGroupSnapshot“ ir susijusių API CRD.
- Snapshot valdiklio logikos patobulinimai.
- CSI skambučio logika integruota į šoninės priekabos valdiklį.
Garsumo momentinės nuotraukos valdiklis ir CRD veikia klasterio lygiu, o momentinės nuotraukos šoninė priekaba yra įdiegta su kiekviena CSI tvarkykle. „Kubernetes“ skatina platintojus įtraukti momentinio vaizdo valdiklį ir CRD į savo grupių valdymo procesus kaip numatytąjį priedą.
Beta etapo patobulinimai
- CSI specifikacijos atnaujinimas: „VolumeGroupSnapshot“ palaikymas pasiekė bendrą prieinamumą (GA) CSI specifikacijos v1.11.0 versijoje.
- Patvirtinimo Webhook pašalinimas: Nebenaudojama išorinio momentinio vaizdo įrašo 8.0.0 versijoje, jos taisyklės dažniausiai buvo perkeltos į CRD, reikalaujančios Kubernetes v1.25 ar naujesnės versijos. Kai kurios patvirtinimo taisyklės, pvz., kelių numatytųjų tos pačios tvarkyklės momentinių nuotraukų klasių uždraudimas, lieka už CRD ribų, bet vis tiek sukelia klaidas rengiant.
- Funkcijų vartų įvadas:
--enable-volumegroup-snapshot
vėliava buvo pakeista vaizdiniais vartais (--feature-gates=CSIVolumeGroupSnapshot=true
). Pagal numatytuosius nustatymus funkcija išjungta. - RBAC taisyklių atnaujinimai: atsakomybė už dinaminių momentinių nuotraukų kūrimą perkelta iš CSI momentinių nuotraukų į bendrą momentinių nuotraukų valdiklį, atnaujinant reikiamas RBAC taisykles.
Naudojant „Kubernetes Volume Group“ momentines nuotraukas
Naujos grupės momentinės nuotraukos kūrimas
Norėdami sukurti grupės momentinę nuotrauką:
- Apibrėžkite a
VolumeGroupSnapshotClass
nurodant CSI tvarkyklę ir aprūpinimo taisykles. - Sukurti a
VolumeGroupSnapshot
kuri arba dinamiškai pateikia momentinę nuotrauką, arba nurodo jau esamąVolumeGroupSnapshotContent
.
Dinaminiam aprūpinimui naudokite parinkiklį, kad sugrupuotumėte PVC pagal etiketes. Kūrimo procesas taip pat generuoja atskiras apimties momentines nuotraukas ir a VolumeGroupSnapshotContent
su nuorodomis į pagrindinę saugyklą.
Esamos grupės momentinės nuotraukos importavimas
Norėdami importuoti esamą grupės momentinę kopiją, rankiniu būdu sukurkite:
VolumeSnapshotContent
objektus kiekvienai atskirai momentinei nuotraukai.- A
VolumeGroupSnapshotContent
su nuorodomis į atskiras momentinių nuotraukų rankenas. - A
VolumeGroupSnapshot
nuoroda įVolumeGroupSnapshotContent
.
Atkūrimas iš grupės momentinės nuotraukos
Atkūrimas apima naujų PVC kūrimą iš atskirų grupės momentinių nuotraukų. Pakartokite procesą su kiekviena momentine nuotrauka, kad visiškai atkurtumėte programos būseną.
Taip pat skaitykite: Kaip valdyti ir apsaugoti virtualizuotą ir sudėtinę aplinką naudojant masto skaičiavimą ir rubriką?
Apimties grupės momentinių nuotraukų palaikymas CSI tvarkyklėje
Norėdami įdiegti palaikymą, CSI tvarkyklės turi:
- Pristatykite naują grupės valdiklio paslaugą.
- Įdiekite RPC, kad galėtumėte kurti, ištrinti ir gauti grupės momentines nuotraukas.
- Pridėkite
CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT
pajėgumas.
„Kubernetes“ projektas rekomenduoja sujungti momentinės nuotraukos valdiklį ir CRD su klasterio valdymo procesais, nepriklausomai nuo CSI tvarkyklių. Išorinio momentinio fotografavimo šoninė priekaba stebi API serverio pakeitimus ir suaktyvina grupės momentinių nuotraukų CSI operacijas.
Apribojimai ir ateities planai
Dabartiniai apribojimai apima:
- Nepalaikomas esamų PVC grąžinimas į ankstesnes būsenas (tik naujų tomų kūrimas).
- Programos nuoseklumas apsiriboja tuo, ką suteikia saugojimo sistema (pvz., strigčių nuoseklumas).
Ateities leidimais siekiama surinkti atsiliepimus ir padidinti pritaikymą, kad funkcija būtų pasiekiama iki bendrojo prieinamumo (GA).