Portal społecznościowy ROGOZINO - Warunki techniczne dla uruchomienia usługi
Platforma portalu społecznościowego ROGOZINO została uruchomiona w środowisku Kubernetes® (MicroK8s), który automatyzuje proces wdrożeniowy, skalowania i zarządzania aplikacjami uruchamianymi w kontenerach. Podsumowując, MicroK8S jest to otwarto-źródłowa platforma do zarządzania, automatyzacji i skalowania aplikacji kontenerowych. Korzystanie z tego typu „zwirtualizowanej infrastruktury” może zapewnić kilka elastyczności i korzyści w zakresie bezpieczeństwa w porównaniu do tradycyjnych, monolitycznych platform oprogramowania.
Struktura kodu wdrożeniowego dla portalu społecznościowego w klastrze MicroK8s
```
├── configMap-redis.yaml
├── configMap-nginx.yaml
├── cronjobs
│ └── cronjob-php.yaml
├── ingress-rogozino.com.pl.yaml
├── ingress-rogozino.pl.yaml
├── pods
│ └── nginx-php-fpm-deployment.yaml
├── services
│ ├── nginx.yaml
│ └── redis.yaml
└── volumes
├── persistent-volume-for-etc-php.yaml
└── persistent-volume-for-application.yaml
```
Z powyższego wynika, że aplikacja korzysta z dwóch configMap, które zawierają odpowiednio konfigurację dla usługi (procesu) NGINX oraz Redis. Cyklicznie uruchamiany cronjob umożliwia wykonanie z kolejkowanych zadań przez aplikację, a obiekty ingress zapewniają dostęp do serwisów w klastrze Kubernetes, które skojarzone są z usługami kontenerów NGINX oraz Redis. Deployment dla procesów NGINX,PHP-FPM oraz Redis został przygotowany w taki sposób, aby kontenery tych usług były zgrupowane w postaci pojedynczego POD-a uruchomionego w dedykowanej przestrzeni nazw (tzw. namespace) klastra MicroK8S. Wolumeny dla kontenerów zostały wystawione na serwerze NFS (niezależny serwer) za pomocą sterownika NFS CSI. Całość rozwiązania umieszczona została na platformie wirtualizacyjnej PROXMOX.
[https://www.youtube.com/watch?v=v9KI2BAF5QU](oembed:https://www.youtube.com/watch?v=v9KI2BAF5QU)