Hubungi kami

info@serverion.com

Hubungi kami

+1 (302) 380 3902

Konfigurasi NGINX untuk DevOps: Trik Serverion untuk Penerapan Tanpa Waktu Henti

Konfigurasi NGINX untuk DevOps: Trik Serverion untuk Penerapan Tanpa Waktu Henti

Penerapan tanpa waktu henti berarti memperbarui aplikasi Anda tanpa mengganggu layanan – suatu keharusan bagi bisnis yang bahkan pemadaman singkatnya dapat merugikan jutaan dolar. NGINX memungkinkan hal ini menggunakan model proses pekerja utama dan sinyal pintar seperti Bahasa Indonesia: USR2 (memulai proses baru) dan MEMPERCEPATKAN (konfigurasi ulang). Berikut kuncinya:

  • Bagaimana cara kerjanya: NGINX mengalihkan lalu lintas dari pekerja lama ke pekerja yang diperbarui tanpa memutus koneksi.
  • Langkah-langkah kunci: Gunakan sinyal (Bahasa Indonesia: USR2, MEMPERCEPATKAN, dll.), konfigurasikan nginx.conf dengan benar, dan validasi perubahan sebelum memuat ulang.
  • TeknikGabungkan NGINX dengan metode seperti penerapan biru-hijau atau Docker untuk pembaruan yang lancar.
  • Pemeriksaan kesehatanPastikan hanya server yang sehat yang menangani lalu lintas, menggunakan pemeriksaan kesehatan pasif atau aktif NGINX.

Dengan konfigurasi yang tepat, Anda dapat menjaga layanan Anda berjalan lancar selama pembaruan, melindungi pendapatan, dan menjaga kepercayaan pelanggan.

Dasar-dasar NGINX untuk Penerapan Tanpa Waktu Henti

NGINX

Penjelasan tentang Penerapan Tanpa Waktu Henti

NGINX menggunakan model master-worker untuk menangani pembaruan tanpa mengganggu layanan. Proses master mengawasi konfigurasi dan kontrol, sementara proses worker mengelola koneksi klien. Pengaturan ini memungkinkan lalu lintas beralih dengan lancar dari worker lama ke worker baru selama pembaruan, memastikan layanan tanpa gangguan.

Manajemen Koneksi NGINX

NGINX mengandalkan sinyal tertentu untuk mengendalikan proses selama pemutakhiran atau perubahan konfigurasi:

  • Bahasa Indonesia: USR2: Memulai proses master dan pekerja baru.
  • KEREKAN: Menghentikan proses pekerja lama dengan baik.
  • MEMPERCEPATKAN: Memuat ulang konfigurasi dan mengganti pekerja.
  • BERHENTI: Mematikan master dan pekerja dengan anggun.

Saat memuat ulang, NGINX memindahkan ID proses master lama ke /jalankan/nginx.pid.oldbin, menulis ID proses master baru ke /jalankan/nginx.pid, dan memungkinkan pekerja lama untuk menyelesaikan permintaan aktif sebelum mematikannya.

Penerapan Aplikasi Modern: Cara menggunakan NGINX dan JFrog untuk …

Katak J

Menyiapkan NGINX untuk Operasi Berkelanjutan

Untuk menjaga koneksi tetap aktif selama pemuatan ulang, manfaatkan arsitektur master-worker NGINX dengan pengaturan berikut.

Langkah-Langkah Utama Konfigurasi NGINX

Menyalakan multi_terima untuk memungkinkan pekerja menangani beberapa koneksi per acara. Berikut adalah contoh konfigurasi untuk nginx.conf:

proses_pekerja otomatis; pid /jalankan/nginx.pid; peristiwa { koneksi_pekerja 1024; multi_terima aktif; } http { backend hulu { server backend1.contoh.com:8080; server backend2.contoh.com:8080; tetap hidup 32; } server { dengarkan 80; nama_server contoh.com; lokasi / { sandi_proksi http://backend; versi_http_proksi 1.1; header_set_proksi Koneksi ""; header_set_proksi Host $host; header_set_proksi X-Real-IP $remote_addr; } } } 

Memuat Ulang Konfigurasi Tanpa Waktu Henti

  1. Muat ulang pekerja saat ini untuk menerapkan perubahan:
    nginx -s muat ulang 
  2. Periksa ID proses utama yang diperbarui:
    kucing /jalankan/nginx.pid 
  3. Lakukan peningkatan biner tanpa menghentikan lalu lintas:
    kill -USR2 $(cat /run/nginx.pid) kill -WINCH $(cat /run/nginx.pid.oldbin) 

Langkah-langkah ini memungkinkan lalu lintas bertransisi lancar antara pekerja lama dan baru, sehingga menjamin layanan tanpa gangguan.

Metode Penyebaran dengan NGINX

Anda dapat menggunakan NGINX untuk mencapai penerapan tanpa waktu henti dengan memanfaatkan teknik seperti pengaturan biru-hijau atau pendekatan berbasis kontainer.

Pengaturan Penerapan Biru-Hijau

Dengan NGINX, Anda dapat mengelola lalu lintas antara dua lingkungan – yang biasa disebut biru dan hijau. Lingkungan ini identik, tetapi hanya satu yang aktif pada satu waktu. Begini cara kerjanya:

  • Terapkan versi yang diperbarui ke lingkungan yang tidak aktif (misalnya, hijau).
  • Jalankan pemeriksaan kesehatan untuk memastikan versi baru berfungsi dengan baik.
  • Setelah diverifikasi, perbarui Konfigurasi NGINX untuk mengarahkan lalu lintas ke lingkungan yang diperbarui.
  • Muat ulang konfigurasi menggunakan MEMPERCEPATKAN sinyal untuk menghindari terputusnya koneksi aktif.

Metode ini memastikan transisi yang lancar tanpa gangguan layanan.

Integrasi Docker dan NGINX

Menggunakan Docker dengan NGINX menyederhanakan penerapan dengan mempertahankan lingkungan yang konsisten untuk lapisan aplikasi dan proxy Anda. Berikut cara Anda dapat mencapai pembaruan tanpa waktu henti:

  • Luncurkan kontainer baru di samping kontainer yang aktif saat ini.
  • Lakukan pemeriksaan kesehatan untuk mengonfirmasi kontainer baru sudah siap.
  • Ubah konfigurasi hulu NGINX untuk menyertakan kontainer baru.
  • Muat ulang konfigurasi dengan MEMPERCEPATKAN sinyal, yang memungkinkan pekerja lama menyelesaikan pemrosesan sebelum mereka keluar.

Pendekatan ini memastikan layanan tidak terganggu saat memperbarui aplikasi Anda.

Pengujian dan Verifikasi

Konfigurasikan Pemeriksaan Kesehatan

Pemeriksaan kesehatan NGINX membantu memastikan bahwa hanya server yang berfungsi yang menangani lalu lintas. Pemeriksaan ini berfungsi bersamaan dengan konfigurasi hulu dan perutean biru-hijau. NGINX menawarkan dua jenis pemeriksaan kesehatan: pasif (tersedia di NGINX Open Source) dan aktif (eksklusif untuk NGINX Plus).

Untuk pemeriksaan kesehatan pasif di NGINX Open Source, atur blok hulu Anda seperti ini:

backend hulu { server backend1.serverion.com:8080 max_fails=3 fail_timeout=30dtk; server backend2.serverion.com:8080 max_fails=3 fail_timeout=30dtk; zona backend 64k; } 

Jika Anda menggunakan NGINX Plus, Anda dapat mengaktifkan pemeriksaan kesehatan aktif dengan menambahkan pemeriksaan kesehatan arahan bersama dengan cocok memblokir:

lokasi / { proxy_pass http://backend; interval pemeriksaan kesehatan=5dtk gagal=3 lolos=2 wajib persisten; cocok dengan pemeriksaan kesehatan { status 200; header Tipe-Konten = aplikasi/json; badan ~ '"status":"NAIK"'; } } 

Pastikan untuk memvalidasi konfigurasi ini sebelum memuat ulang NGINX.

Validasi Konfigurasi

Selalu uji kebenaran konfigurasi NGINX Anda sebelum memuat ulang. Gunakan perintah berikut:

nginx -t -c /path/ke/nginx.conf Anda 

Dasar-dasar Penerapan Tanpa Waktu Henti

Mencapai penerapan tanpa waktu henti bergantung pada konfigurasi NGINX yang cermat dan perencanaan infrastruktur yang solid. Elemen-elemen ini bekerja sama untuk memastikan pembaruan terjadi tanpa gangguan.

Berikut adalah faktor-faktor kunci keberhasilan:

  • Kontrol proses dan validasi konfigurasi: Manfaatkan sepenuhnya arsitektur NGINX sambil tetap berpegang pada protokol pengujian yang menyeluruh.
  • Stabilitas infrastruktur: Pertahankan kinerja yang konsisten dan jaga keamanan tetap ketat selama proses penerapan.

Untuk detail tentang pemeriksaan kesehatan dan langkah-langkah pengembalian, lihat Pengujian dan Verifikasi bagian.

ServerionPlatform ini mendukung upaya ini dengan stabilitas dan keamanan yang andal. pusat data global menjaga kinerja tetap stabil selama pembaruan, dan perlindungan DDoS bawaan memastikan keamanan tetap terjaga.

Mulailah dari yang kecil dengan menggunakan fitur pengalih pada layanan yang tidak penting. Tingkatkan secara bertahap, sambil tetap melakukan pengujian rutin, pemantauan ketat, dan rencana pembatalan yang jelas sebagai inti strategi Anda.

Artikel Blog Terkait

id_ID