Cozystack 0.40, bazasında Kubernetes olan bir serbest PaaS platforması yayımlanmışdır. Layihənin məqsədi hosting provayderlərinə tamamlanmış platforma və özəl və açıq buludların yaradılması üçün çərçivə təqdim etməkdir. Platforma birbaşa serverlərə quraşdırılır və idarə olunan xidmətləri təqdim etmək üçün infrastrukturun hazırlanmasının bütün aspektlərini əhatə edir. Cozystack, Kubernetes klasterlərini, verilənlər bazalarını və virtual maşınları işə salmağa və təqdim etməyə imkan verir. Platformanın kodu GitHub-da mövcuddur və Apache-2.0 lisenziyası ilə yayılır.
Əsas texnologiya yığını olaraq Talos Linux və Flux CD istifadə olunur. Sistem, nüvə və lazım olan modullarla görüntülər əvvəlcədən hazırlanır və atomik şəkildə yenilənir ki, bu da dkms və paket meneceri kimi komponentlərdən istifadə etməyə ehtiyac olmadan sabit fəaliyyət təmin edir. Boş data mərkəzində PXE və debian-tipli talos-bootstrap quraşdırıcıdan istifadə edərək quraşdırma üçün sadə bir metod təqdim edilir. Platforma daxilində Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics və digər xidmətlər yalnız bir kliklə yayımlana bilər.
Platforma sərbəst icrası daxil edir şəbəkə infrastrukturunu (fabric) Kube-OVN üzərində qurulmuşdur və xidmət şəbəkəsini təşkil etmək üçün Cilium-dan, xidmətlərin xaricə elan olunması üçün isə MetalLB-dan istifadə edir. Saxlama, ZFS-in saxlanma üçün əsas qat olaraq təklif edildiyi və verilmə (DRBD) üçün replikasiya alan LINSTOR üzərində həyata keçirilir. VictoriaMetrics və Grafana əsasında əvvəlcədən konfiqurasiya edilmiş monitorinq steki mövcuddur. Klassik virtual maşınları Kubernetes konteynerləri içərisində işə salmağa imkan verən KubeVirt texnologiyası istifadə edilir və artıq idarə olunan Kubernetes klasterlərini
Yeni buraxılışda:
- LINSTOR üçün optimal pod yerləşdirməsi üçün planlayıcı əlavə edildi. Kubernetes üçün öz "scheduler extender" standart Kubernetes planlayıcısı ilə birlikdə işləyir və pod-ları LINSTOR saxlanması olan düyünlərdə optimal olaraq yerləşdirməyə kömək edir. Pod LINSTOR həcmini tələb etdikdə, planlayıcı LINSTOR kontrolçusundan tələb olunan həcmlərin müvafiq düyünlərdə yer alan yerli replikalarının harada olduğunu öyrənir. Məlumatların artıq olması olan düyünlərə prioritet verilir ki, bu da şəbəkə trafikini minimize edir və I/O məhsuldarlığını artırır. Əlavə olaraq, automatik olaraq LINSTOR CSI həcmlərini istifadə edən pod-ları öz planlayıcısına yönləndirən admission webhook-u mövcuddur, bu da əllə tənzimləmə olmadan problemsiz inteqrasiya təmin edir.
- SeaweedFS Saxlama SeaweedFS 4.05 versiyasına yüksəldilmişdir, burada S3 trafikinin optimallaşdırılması (traffic locality) həyata keçirilmişdir: sorğular indi ən yaxın serverlərə yönəlir ki, bu da gecikmələri azaldır və saxlanmanın işini sürətləndirir. Eyni zamanda, yeni bir admin-komponent web interfeysi və autentifikasiya dəstəyi ilə təqdim edilmişdir, habelə paylanmış tapşırıqları yerinə yetirmək üçün worker-lar hazırlanmışdır. Grafana-da bucket-lar, API çağırışları və məhsuldarlıq üzrə izləmə üçün inkişaf etmiş dashboard-lar əlavə edilmişdir. Dəstək əlavə olunmuşdur TLS sertifikatları admin və işçi komponentləri üçün.
- FluxCD-dən valuesFrom mexanizmi Helm chart-larında lookup-funksiyalarını əvəz etdi. Bu arxitektura təkmilləşdirilməsi parametr ötürülməsinin daha səlis aparılması və məcburi sinxronizasiya (reconciliation) kontrolçülərinə ehtiyacın aradan qaldırılmasını təmin edir. ConfigMaps-dan və xidmət istinadlarından konfiqurasiya artıq hər bir ad məkanında cozystack-values açarı vasitəsilə mərkəzləşdirilmiş şəkildə idarə olunur.
- LINSTOR inteqrasiyası üçün komponentə auto-diskful funksiyası əlavə edilib, bu funksiya diskdə olmayan (diskless) düyünləri diskdə olan (diskful) düyünlərə çevirir, əgər onlar DRBD resurslarını 30 dəqiqədən çox Primary vəziyyətində saxlayırlarsa.
- PostgreSQL, Kubernetes, MariaDB və Redis üçün avtomatik versiya idarəetmə sistemləri tətbiq edilib, bu sistemlər upstream-repozitoriyalardakı yeniləmələri izləyir və versiyaların avtomatik yenilənməsi üçün mexanizmlər təqdim edir.
Mənbə: opennet.ru
