Bekerja banyak dengan tim pengembangan yang baru saja beralih ke OpenShift, kami berusaha keras untuk memberi mereka rekomendasi dan praktik terbaik agar berhasil membangun dan menerapkan aplikasi di platform ini. Berdasarkan hasil kerja ini, kami telah memilih 14 kunci, menurut pendapat kami, praktik, yang dapat dibagi menjadi dua kategori: keandalan aplikasi dan keamanan aplikasi. Kategori ini tumpang tindih karena semakin tinggi keandalannya, semakin baik keamanannya, dan sebaliknya, dan daftar praktik terbaiknya adalah sebagai berikut.
Keandalan aplikasi
Bagian ini mengumpulkan 9 praktik terbaik untuk membantu Anda meningkatkan ketersediaan aplikasi, waktu beroperasi, dan pengalaman pengguna yang lebih baik.
1. Jangan menyimpan konfigurasi aplikasi di dalam wadah
Jika image container berisi konfigurasi untuk lingkungan tertentu (Dev, QA, Prod), itu tidak akan berfungsi untuk mentransfernya antar lingkungan tanpa perubahan. Ini buruk dari sudut pandang keandalan proses rilis, karena gambar yang telah diuji pada tahap sebelumnya tidak akan lagi diproduksi. Oleh karena itu, jangan simpan konfigurasi aplikasi untuk lingkungan tertentu di dalam container, tetapi simpan secara terpisah, misalnya, menggunakan ConfigMaps dan Secrets.
2. Tetapkan persyaratan sumber daya dan batasan dalam definisi pod
Tanpa penyetelan yang tepat pada kebutuhan sumber daya, aplikasi dapat membuat permintaan yang berlebihan pada memori dan prosesor. Sebaliknya, dengan persyaratan memori dan CPU eksplisit aplikasi, cluster dapat mengirimkan secara efisien untuk menyediakan aplikasi dengan resource yang diminta.
3. (liveness) (readiness) pod’
: , liveness, , readiness. . OpenShift Platform.
4. PodDisruptionBudget
pod’ , , , autoscaler , . , PodDistruptionBudget.
5. pod’
pod , pod', , , .
6. –
, . -, . . OpenShift Platform.
7.
Prometheus Grafana - .
8. stdout/stderr
OpenShift (ELK, Splunk). – -. , , , , .
9. Circuit breakers, Timeouts, Retries, Rate Limiting
, (Rate Limiting, Circuit Breakers) (Timeouts, Retries). OpenShift Service Mesh, , .
5 , , , .
10.
- , , , . community-, , . , , Docker Hub, – !
11.
. , , .
12. build- , runtime-
Build- , , . runtime- , , .
13. Restricted security context constraint (SCC) – ,
, restricted SCC ( . ). , , restricted SCC .
14. TLS
. , OpenShift, , TLS-, OpenShift Service Mesh , .