2026-04-16 20:42:52 +02:00
2026-04-16 20:42:52 +02:00
2026-04-16 20:42:52 +02:00
2026-04-16 17:59:10 +02:00
2026-04-16 19:19:56 +02:00
2026-04-16 17:59:10 +02:00

MongoDB Sharded Deployment

Tento repozitár obsahuje konfiguráciu a inštalačné súbory pre nasadenie sharded (distribuovaného) MongoDB klastra v prostredí Kubernetes. Nasadenie využíva priložený Helm chart (založený na Bitnami) a vlastné definície pre StorageClass, Persistent Volume Claims (PVC) a prístupové údaje (Secrety).

Štruktúra repozitára

  • sc-thin-disk-ds-tp.yaml: Definícia Kubernetes StorageClass (thin-disk).
  • pvcshards-tp.yaml: Predvytvorené PersistentVolumeClaim (PVC) pre Config servery a Shardovacie uzly (data uzly).
  • mongodb-tp-sharded-secret.yaml: Secret obsahujúci root heslo a kľúč pre replika set.
  • mongodb-pmm-credentials-secret.yaml: Secret s prístupovými údajmi pre PMM (Percona Monitoring and Management).
  • mongodb-sharded/: Priečinok obsahujúci Helm chart pre nasadenie MongoDB.
  • mongodb-sharded/values.tp_v2_init.yaml: Konfiguračný súbor pre prvotnú inštaláciu (s vypnutým PMM).
  • mongodb-sharded/values.tp_v2.yaml: Konfiguračný súbor pre finálny stav (so zapnutým PMM).

Postup nasadenia (s PMM integráciou)

Nasadenie prebieha v 3 hlavných krokoch:

  1. Prvotná inštalácia MongoDB klastra.
  2. Manuálna konfigurácia používateľa pre PMM v databáze.
  3. Upgrade Helm inštalácie pre aktiváciu PMM klienta.

Časť 1: Prvotná inštalácia MongoDB

1. Vytvorenie namespace

Najprv je potrebné vytvoriť dedikovaný namespace, do ktorého budeme všetky prostriedky nasadzovať:

kubectl create ns mongodb

2. Vytvorenie StorageClass (voliteľné)

Ak vo vašom klastri ešte neexistuje požadovaný StorageClass, aplikujte ho. Tento krok spustite iba ak thin-disk StorageClass ešte neexistuje.

kubectl apply -f sc-thin-disk-ds-tp.yaml

3. Vytvorenie Persistent Volume Claims (PVC)

Aplikujte definície pre PVC. Po spustení príkazu overte, či sa PVC (a k nim prislúchajúce PV) úspešne vytvorili a naviazali.

kubectl apply -f pvcshards-tp.yaml -n mongodb

# Overenie stavu PVC (hľadajte status 'Bound'):
kubectl get pvc -n mongodb

4. Vytvorenie Secretov

Aplikujte Kubernetes secrety obsahujúce heslá a autentifikačné kľúče pre MongoDB a PMM:

kubectl apply -f mongodb-tp-sharded-secret.yaml -n mongodb # Obsahuje root heslo pre MongoDB
kubectl apply -f mongodb-pmm-credentials-secret.yaml -n mongodb # Obsahuje PMM používateľské mená a heslá

5. Nasadenie Helm chartu

Presuňte sa do priečinka s Helm chartom a spustite inštaláciu. Pri inštalácii sa použijú vami definované hodnoty zo súboru values.tp_v2.yaml:

cd mongodb-sharded
helm install mongodb -f ./values.tp_v2.yaml . -n mongodb

6. Kontrola stavu nasadenia

Po spustení inštalácie môžete sledovať proces vytvárania podov pomocou:

kubectl get pods -n mongodb -w
Description
mongo DB with percona pmm and pbm
Readme 208 KiB
Languages
Smarty 100%