Konsep Inti
Berikut adalah beberapa konsep inti dalam Cozystack.
Arsitektur Platform
Prinsip inti platform ini adalah bahwa pengguna akhir tidak pernah memiliki akses langsung ke klaster manajemen API. Sebaliknya, platform ini memfasilitasi integrasi yang mudah dengan sistem penyedia, yang pada gilirannya menciptakan semua layanan yang diperlukan bagi pengguna. Kemudian, platform ini menyediakan kredensial untuk akses pengguna ke layanan ini.
Selain layanan terkelola, platform ini memungkinkan untuk melakukan bootstrap pada klaster Kubernetes milik penyewa. Pengguna memiliki akses penuh ke klaster Kubernetes milik penyewa mereka tetapi tidak memiliki akses ke klaster manajemen.
Semua pengontrol yang melayani klaster pengguna dijalankan secara eksternal, yang memungkinkan untuk sepenuhnya mengisolasi API klaster manajemen dari penyewa dan meminimalkan potensi serangan pada klaster manajemen.
Setelah akses diberikan ke penyewa Kubernetes, pengguna dapat memesan volume fisik, penyeimbang beban, dan akhirnya layanan lainnya menggunakan API penyewa Kubernetes.
Semua kasus penggunaan disajikan di sini:
Menggunakan Cozystack untuk membangun cloud publik
Cara menggunakan Cozystack untuk membangun cloud publikMenggunakan Cozystack untuk membangun private cloud
Cara menggunakan Cozystack untuk membangun private cloudMenggunakan Cozystack sebagai distribusi Kubernetes Cara menggunakan Cozystack sebagai distribusi Kubernetes
Sistem penyewa
Penyewa adalah unit keamanan utama pada platform. Analogi terdekatnya adalah namespace kernel Linux.
Penyewa dapat dibuat secara rekursif dan tunduk pada aturan berikut:
Penyewa tingkat tinggi dapat mengakses penyewa tingkat rendah.
Penyewa tingkat yang lebih tinggi dapat melihat dan mengelola aplikasi semua anak mereka.
Setiap penyewa memiliki domainnya sendiri
Secara default (kecuali ditentukan lain), ia mewarisi domain induknya dengan awalan namanya, misalnya, jika induk memiliki domain example.org
, maka tenant-foo
akan mendapatkan domain foo.example.org
secara default.
Cluster Kubernetes yang dibuat dalam namespace penyewa ini akan mendapatkan domain seperti:kubernetes-cluster.foo.example.org
Penyewa tingkat bawah dapat mengakses layanan klaster induknya (jika mereka tidak menjalankan klaster mereka sendiri)
Secara default ada tenant-root
dengan serangkaian layanan seperti etcd
, ingress
, monitoring
. Anda dapat membuat namespace penyewa lain tenant-foo
di dalam tenant-root
dan bahkan lebih banyak lagi tenant-bar
di dalam tenant-foo
.
Mari kita lihat apa yang akan terjadi ketika Anda menjalankan Kubernetes dan Postgres di bawah tenant-bar
namespace.
Karena tenant-bar
tidak memiliki layanan klaster sendiri seperti ingress
, dan monitoring
, aplikasi akan menggunakan layanan klaster dari penyewa induk.
Ini berarti:
- Data klaster Kubernetes akan disimpan di etcd untuk
tenant-bar
. - Semua metrik akan dikumpulkan dalam pemantauan dari
tenant-foo
. - Akses ke klaster akan dilakukan melalui ingress umum
tenant-root
.
Bundel
Platform Cozystack mendukung berbagai skenario penerapan melalui sistem bundel. Setiap bundel disesuaikan untuk kasus penggunaan dan lingkungan tertentu.
Berikut adalah contoh bundelnya:
paas-full
Ini adalah konfigurasi platform Cozystack yang ditujukan untuk digunakan sebagai platform PaaS, yang dirancang untuk diinstal pada Talos Linux. Konfigurasi ini mencakup semua fitur yang tersedia, yang memungkinkan pengalaman PaaS yang komprehensif.
paas-hosted
Ini adalah konfigurasi platform Cozystack yang ditujukan untuk digunakan sebagai platform PaaS, yang didesain untuk diinstal pada kluster Kubernetes yang ada.
Konfigurasi ini dapat digunakan dengan kluster Kubernetes berbasis cloud apa pun . Konfigurasi ini tidak menyertakan plugin CNI, virtualisasi, atau penyimpanan.
distro-full
Ini adalah konfigurasi platform Cozystack yang ditujukan untuk digunakan sebagai distribusi Kubernetes, yang dirancang untuk diinstal pada Talos Linux.
Hal ini memungkinkan Anda menggunakan Cozystack sebagai distribusi Kubernetes yang andal untuk bare metal. Distribusi ini mencakup penyimpanan tetapi tidak mencakup fitur virtualisasi dan multitenancy.
distro-hosted
Ini adalah konfigurasi platform Cozystack yang ditujukan untuk digunakan sebagai distribusi Kubernetes, yang dirancang untuk diinstal pada kluster Kubernetes yang ada.
Konfigurasi ini dapat digunakan dengan kluster Kubernetes berbasis cloud apa pun . Konfigurasi ini tidak mencakup plugin CNI, virtualisasi, penyimpanan, atau multitenancy.
Tidak ada komentar:
Posting Komentar