Catatan perev. : Asli teks ini ditulis oleh Rob Scott, seorang insinyur SRE terkemuka di ReactiveOps, yang berada di belakang pengembangan proyek yang diumumkan. Kami sangat dekat dengan gagasan validasi terpusat dari apa yang sedang digunakan di Kubernetes, jadi kami mengikuti dengan minat inisiatif ini.
Saya senang mempersembahkan
Polaris , proyek sumber terbuka yang membantu menjaga kesehatan cluster Kubernetes. Kami menciptakan Polaris untuk mengotomatiskan beberapa praktik terbaik yang digunakan oleh ReactiveOps untuk menjaga operasi cluster yang aman dan andal di sejumlah besar klien. Sudah waktunya untuk membuka sumber.
Berkali-kali kami menyaksikan bagaimana cacat yang tampaknya kecil dalam konfigurasi menyebabkan masalah serius yang mencegah insinyur tidur di malam hari. Sesuatu yang cukup sederhana - misalnya, konfigurasi
permintaan sumber daya hilang karena pelupa - dapat memutus penskalaan otomatis dan bahkan menyebabkan beban kerja dibiarkan tanpa sumber daya. Sebelumnya, pengawasan konfigurasi kecil menyebabkan gangguan produksi, tetapi sekarang Polaris dapat sepenuhnya mencegahnya.
Polaris membantu Anda menghindari masalah konfigurasi yang memengaruhi stabilitas, keandalan, skalabilitas, dan keamanan aplikasi Anda. Itu membuatnya mudah untuk mengidentifikasi kelemahan dalam konfigurasi penempatan dan mencegah masalah di masa depan. Dengan Polaris, Anda dapat tidur nyenyak, mengetahui bahwa aplikasi dikerahkan menggunakan serangkaian standar yang telah teruji dengan baik.
Polaris memiliki dua komponen utama:
- dasbor yang menyediakan informasi tentang seberapa benar penyebaran yang ada di cluster dikonfigurasikan;
- Webhook uji eksperimental yang mencegah penyebaran tidak diluncurkan, yang tidak memenuhi standar yang diterima.
Dasbor Polaris
Panel di Polaris diciptakan untuk kesempatan yang sederhana dan jelas untuk melihat keadaan penyebaran saat ini di Kubernetes dan mendapatkan rekomendasi untuk perbaikan. Ini memberikan gambaran lengkap dari cluster, dan juga memecah hasilnya menjadi kategori, ruang nama, dan penyebaran.

Standar Polaris standar cukup tinggi, jadi jangan heran jika peringkatnya lebih rendah dari yang Anda harapkan. Tujuan utama Polaris adalah untuk menetapkan standar tinggi dan berusaha untuk konfigurasi default yang sangat baik. Jika konfigurasi yang diusulkan tampaknya terlalu kaku, itu dapat diperbaiki selama proses konfigurasi penempatan, mengoptimalkan untuk beban kerja tertentu.
Sebagai bagian dari publikasi Polaris, kami memutuskan tidak hanya untuk memperkenalkan alat itu sendiri, tetapi juga untuk menjelaskan secara rinci tes yang disertakan di dalamnya. Setiap cek menyertakan tautan ke dokumentasi yang relevan, yang menjelaskan mengapa kami menganggap ini penting, dan menyediakan tautan ke sumber daya tambahan tentang topik ini.
Webhook Polaris
Jika dasbor membantu Anda mendapatkan gambaran umum tentang konfigurasi penempatan saat ini, maka kait web memastikan kepatuhan dengan standar untuk semua penyebaran yang hanya akan diluncurkan ke dalam cluster.
Setelah masalah yang diidentifikasi oleh dasbor telah diperbaiki, Anda dapat menggunakan kait web sehingga konfigurasi tidak pernah lagi jatuh di bawah standar yang ditetapkan. Pengait web tidak akan mengizinkan penyebaran di sekelompok penyebaran yang konfigurasinya mengandung penyimpangan yang signifikan (dari tingkat "kesalahan").
Potensi pengait web ini menggembirakan, tetapi pengujian yang ketat masih diperlukan untuk membuatnya siap untuk diproduksi. Ini saat ini merupakan fitur eksperimental dan bagian dari proyek Open Source yang sepenuhnya baru. Karena dapat mengganggu pembaruan penempatan, gunakan dengan hati-hati.
Memulai
Saya harap karena Anda masih membaca pengumuman ini, Polaris adalah alat yang mungkin berguna bagi Anda. Ingin mencoba Dashboard sendiri? Menyebarkan panel dalam sebuah cluster sangat mudah. Itu diinstal dengan hak minimal (hanya baca), dan semua data tetap di dalam. Untuk menggunakan Dashboard menggunakan kubectl, lakukan:
kubectl apply -f https://raw.githubusercontent.com/reactiveops/polaris/master/deploy/dashboard.yaml
Sekarang Anda perlu mengkonfigurasi port forwarding untuk mengakses Dashboard melalui port lokal 8080:
kubectl port-forward --namespace polaris svc/polaris-dashboard 8080:80
Tentu saja, ada banyak cara lain untuk menggunakan dan menggunakan Polaris, termasuk menggunakan Helm. Anda dapat mempelajari lebih lanjut tentang ini dan lebih banyak lagi dari
repositori Polaris di GitHub .
Ini baru permulaan.
Kami senang bahwa kami telah berhasil berintegrasi ke Polaris, tetapi ceritanya tidak berakhir di sana. Ada banyak tes baru tentang cara yang ingin saya tambahkan untuk memperluas fungsionalitas. Kami juga mencari cara terbaik untuk menerapkan aturan pemeriksaan pengecualian di namespace atau tingkat sumber daya. Jika Anda ingin informasi lebih lanjut tentang rencana kami, lihat
peta jalan .
Jika Anda memiliki kesan bahwa Polaris mungkin berguna - silakan luangkan waktu sejenak untuk mencobanya. Kami senang menerima ide, umpan balik, pertanyaan, atau permintaan menarik. Anda dapat menghubungi kami di
situs web proyek , di
GitHub atau di
Twitter .
PS dari penerjemah
Baca juga di blog kami: