Kuuletko tuon hurisevan äänen? Se on lähestyvä tähtilaiva!
Cephillä on turhan järeät rautavaatimukset meidän käyttöön. Qb käyttää nykyään Longhornia Rook+Cephin asemesta, ja tämä sivu on säilytetty lähinnä historiallisesta mielenkiinnosta.
QB-klusterin storage-ratkaisuna käytetään Rookia ja Cephiä. Rook on operaattoripohjainen storage-hallintaväline, joka hallinnoi Ceph-tallennusjärjestelmän konfiguraatiota. Ceph tarjoaa block-, object- ja tiedostojärjestelmämuotoista tallennusta josta ensisijaisesti käytetään tiedostojärjestelmää (CephFS).
Ceph pyörii klusterin kaikilla nodeilla.
CephFS (qbfs)
Asennushetkellä useamman CephFS:n ajaminen samassa klusterissa oli vielä experimental-asteella, joten tehtiin yksi kaikille nodeille replikoittettu CephFS jossa kukin sovellus on omana alihakemistonaan, jonka nimi on sama kuin sovelluksen Kubernetes-nimiavaruuden nimi. Esim. Kompassin staging-ympäristön volume nimeltä kompassi-media vois olla vaikka polussa /kompassi-staging/kompassi-media.
TODO Sen vois muuten laittaa jonkun säännöllisen varmuuskopioittennan piiriin.
Esimerkkiä siitä miten CephFS mountataan konttiin voi kurkata vaikka Kompassista tai Edegalista (Conikuvat.fi:stä), polut defaults.in.yml, staging.in.yml ja sovelluksennimi/deployment.in.yml. TL;DR kirjoitushetkellä Rook ei vielä tue CephFS:n dynaamista provisointia, joten käytetään PVC:n asemesta flexVolumeja.
Ceph Toolbox
Ceph Toolbox on kontti, johon on asennettuna tarpeelliset työkalut ja salaisuudet Ceph-klusterin tökkimiseksi.
Ceph Toolboxiin kirjautuminen
Ota SSH master-koneelle. Loitsi tämmönen lyhyt, kätevä ja helposti muistettava loitsu:
kubectl -n rook-ceph exec -it $(kubectl -n rook-ceph get pod -l "app=rook-ceph-tools" -o jsonpath='{.items[0].metadata.name}') bash
Mitä sillä voi tehdä
Käytössä on mm. ceph-hallintakomento kaikkine alikomentoineen. Katto vaikka tuolta.
Ceph Toolboxin asennus
Siltä varalta, että Toolbox katoaa johonkin, saat sen asennettua Rookin ja Cephin asennuksen jälkeen tempasemalla tuolta sopivan YAML-pallon kubectl applyllä.