
I te Hanuere 29, te komiti hangarau o te CNCF (Cloud Native Computing Foundation), te whakahaere kei muri i a Kubernetes, Prometheus me etahi atu hua Open Source mai i te ao o nga ipu me te kapua taketake, mo te whakaaetanga o te kaupapa Rakau ki o ratou rarangi. He waahi pai ki te mohio ki tenei "kaiwhakahaere rokiroki kua tohatohahia ki Kubernetes."
He aha te ahua o Rook?
he pūmanawa kua tuhia ki te Haere ( i raro i te Raihana Apache kore utu 2.0), i hangaia hei whakarato i nga whare putunga raraunga me nga mahi aunoa hei hanga te whakahaere whaiaro, te whakatikatika me te whakaora whaiaro. Hei mahi i tenei, ka mahi aunoa a Rook (mo nga toa raraunga e whakamahia ana i roto i te taiao Kubernetes): te whakatakotoranga, te bootstrapping, te whirihoranga, te whakarato, te tauine, te whakahou, te heke, te whakaora kino, te aroturuki me te whakahaere rauemi.
Ko te kaupapa kei roto i te wahanga alpha me te tohunga ki te whakahaere i te punaha rokiroki kua tohatohahia e Ceph i roto i nga tautau Kubernetes. Ka whakapuaki ano nga kaituhi i nga mahere hei tautoko i etahi atu punaha rokiroki, engari kaore tenei e puta i nga putanga e whai ake nei.
Nga waahanga me nga taputapu hangarau
Ko nga mahi a Rook i roto o Kubernetes i ahu mai i runga i tetahi kaiwhakahaere motuhake (i tuhia e matou etahi atu korero mo Kubernetes Operators in ), e whakaaunoa ana i te whirihoranga rokiroki me te whakatinana i tana aroturuki.
Na Kaiwhakamahi Rook Ko te ahua he ipu kei roto nga mea katoa e tika ana mo te tuku me te tiaki i muri mai o te putunga. Ko nga kawenga a te kaiwhakahaere ko:
- te hanga DaemonSet mo nga daemon rokiroki Ceph () me te huinga RADOS ngawari;
- te hanga putunga mo te aroturuki Ceph (me , te tirotiro i te mana o te tautau; mo te koorum, i te nuinga o te waa e toru nga kape ka tukuna, a ki te taka tetahi, ka ara ake he kape hou);
- whakahaerenga o nga CRD () mona ake , , (he huinga rauemi me nga ratonga mo te tuku tono HTTP e mahi ana i te PUT/GET i runga i nga taonga - he hototahi ki te S3 me te Swift API)A ;
- te arawhiti i nga pene ki te whakarewa i nga ratonga katoa e tika ana;
- te hanganga o nga kaihoko Rook.
Nga Kaihoko o Rook e tohuhia ana e nga pene motuhake ka horahia ki ia node Kubernetes. Ko te kaupapa o te kaihoko he whirihoranga mono , e whakarato tautoko ana mo nga pukapuka rokiroki i Kubernetes. Ka whakatinanahia e te kaihoko te mahi o te rokiroki: ka hono i nga taputapu rokiroki whatunga, te piki i nga pukapuka, te whakahōputu i te punaha konae, aha atu.

Te waahi me te waahi o nga waahanga Rook i roto i te kaupapa huinga huinga Kubernetes
E toru nga momo rokiroki a Rook:
- (Poraka,
StorageClass) - ka whakairihia te rokiroki ki te ahi kotahi; - (ahanoa,
ObjectStore) - kei roto, kei waho hoki o te kahui Kubernetes (ma te S3 API); - (Pūnaha Kōnae tiritahi,
Filesystem) he punaha konae ka taea te whakairi mo te panui me te tuhi mai i nga putunga maha.
Ko nga roto o te Rook ko:
- Mons — pods mo te aroturuki Ceph (me te ceph-mon kua whakahuatia ake);
- Nga OSD - Pods me nga daemons ceph-osd (Daemons Rokiroki Ahanoa);
- M.G.R. - nga pene me te rewera (Kaiwhakahaere Ceph), e whakarato ana i etahi atu mana aroturuki me nga hononga mo nga punaha o waho (te aroturuki / te whakahaere);
- RGW (kōwhiringa) - nga putea me te rokiroki taonga;
- MDS (kōwhiringa) - Pods me te punaha konae tiritahi.

Ko nga daemon Rook katoa (Mons, OSDs, MGR, RGW, MDS) kua whakahiato ki te rua kotahi (rook) e rere ana i roto i te ipu.
Mo te whakataki poto mo te kaupapa Rook, ka whai hua pea tenei poto (12 kiriata). mai i Bassam Tabbara (CTO i Quantum Corp).
Te whakahaere i te Rook
Ka tautokohia e te kaiwhakahaere Rook te putanga 1.6 me te teitei ake o Kubernetes (a, tetahi waahanga, te tukunga tawhito K8s - 1.5.2). Tōna tāutanga в penei te ahua:
cd cluster/examples/kubernetes
kubectl create -f rook-operator.yaml
kubectl create -f rook-cluster.yamlI tua atu, kua rite te kaiwhakahaere Rook , na te mea ka taea te whakaurunga penei:
helm repo add rook-alpha https://charts.rook.io/alpha
helm install rook-alpha/rook Te rahinga iti e waatea ana (hei tauira, ka taea e koe te whakakore i te tautoko , ki te kore e whakamahia tenei ahuatanga ki to huinga), ka tukuna ki helm install mā te tawhā --set key=value[,key=value] (whakaahua ranei ki tetahi konae YAML motuhake ka tuku ma te -f values.yaml).
Whai muri i te whakaurunga o te Rook operator me te whakarewa i nga pota me ona kaihoko, ko nga mea katoa e toe ana ko te hanga i te roopu Rook ake, ko te whirihoranga tino ngawari penei te ahua (rook-cluster.yaml):
apiVersion: v1
kind: Namespace
metadata:
name: rook
---
apiVersion: rook.io/v1alpha1
kind: Cluster
metadata:
name: rook
namespace: rook
spec:
dataDirHostPath: /var/lib/rook
storage:
useAllNodes: true
useAllDevices: false
storeConfig:
storeType: bluestore
databaseSizeMB: 1024
journalSizeMB: 1024parau: me aro nui ki te huanga dataDirHostPath, ko te uara tika e tika ana hei whakaora i te tautau i muri i te whakaara ano. Mo nga keehi ka whakamahia hei waahi rokiroki pumau mo nga raraunga Rook i runga i nga kaihautu Kubernetes, ka kii nga kaituhi kia 5 GB o te mokowā kōpae koreutu i roto i tenei raarangi.
Ko nga mea e toe ana ko te hanga i te tautau mai i te whirihoranga me te whakarite i hangaia nga poti i roto i te tautau (i roto i te mokowā ingoa. rook):
kubectl create -f rook-cluster.yaml
kubectl -n rook get pod
NAME READY STATUS RESTARTS AGE
rook-api-1511082791-7qs0m 1/1 Running 0 5m
rook-ceph-mgr0-1279756402-wc4vt 1/1 Running 0 5m
rook-ceph-mon0-jflt5 1/1 Running 0 6m
rook-ceph-mon1-wkc8p 1/1 Running 0 6m
rook-ceph-mon2-p31dj 1/1 Running 0 6m
rook-ceph-osd-0h6nb 1/1 Running 0 5mTaukaka Ko te roopu Rook (tae atu ki te putanga hou) he tikanga i tenei wa e hiahia ana kia whakahouhia nga waahanga katoa i roto i tetahi raupapa, a ka taea e koe te timata i muri i to mohio kei te "hauora" te whakaurunga Rook o naianei. āhua. Ko nga tohutohu taipitopito ma te whakamahi i te tauira o te whakahou i te putanga Rook 0.5.0 ki te 0.5.1 ka kitea i roto .
I te marama o Whiringa-a-rangi i runga i te Rook blog whakataurite mahi me te EBS. Ko nga hua e tika ana kia tirohia, me te poto, ko enei e whai ake nei:


Tuhinga
Ko te mana o Rook o naianei ko te alpha, a ko te tukunga nui hou ki tenei ra ko , i tukuna i te Whiringa-a-rangi 2017 (whakatikatika o naianei - - i puta mai i te Hakihea 14). Kua tae ki te haurua tuatahi o te tau 2018, ko te whakaputanga o nga putanga pakeke ake e tumanakohia ana: beta me te pumau (kua rite mo te whakamahi i roto i te hanga).
E ai ki kaupapa, he tirohanga taipitopito a nga kaihanga mo te whanaketanga o Rook i roto i te iti rawa o nga putanga e rua e whai ake nei: 0.7 (kei roto i te GitHub tracker tona rite. rite 60%) me te 0.8. I roto i nga huringa e tumanakohia ana ko te whakawhiti i te tautoko mo Ceph Block me Ceph Object ki te mana putanga beta, te whakaratonga hihiri o nga pukapuka mo te CephFS, he punaha takiuru matatau, whakamohoatanga roopu aunoa, tautoko mo nga whakaahua mo nga pukapuka.
Te tango Rook ki te Tau (i tenei wa i te wa tuatahi - "taumata-whakamaramatanga" - he rite ki te и ) he momo taurangi mo te tipu haere o te hiahia ki te hua. Me pehea e whai turanga ai i roto i te ao o nga tono kapua ka marama ake i te wa ka tukuna nga putanga pumau, ka mauria mai nga kaiwhakamatautau me nga kaiwhakamahi hou ki Rook.
PS
Pānuihia hoki i runga i ta maatau blog:
- «";
- «";
- «";
- «";
- «".
Source: will.com
