Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme
Düğümleri güvenle çıkarıp yeniden ekleyin.
Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, DevOps Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
Canlı Trafiği Güncellemek Risklidir
Kullanıcılar sunucuya erişirken sunucuyu güncellerseniz istekler başarısız olur. Çözüm, önce düğümün trafiğini yük dengeleyiciden boşaltmaktır. 🚦
Trafiği Boşaltmak Ne Anlama Gelir
Bir düğümün trafiğini boşaltmak, devam eden isteklerin tamamlanmasına izin verirken düğüme yeni trafik göndermeyi durdurmak anlamına gelir. Bundan sonra güncelleme yapmak güvenlidir.
Boşaltma, Güncelleme ve Yeniden Etkinleştirme Döngüsü
Güvenli yöntem üç adımdan oluşur: düğümün trafiğini boşaltın, değişikliğinizi dağıtın, ardından düğümü yük dengeleyicide yeniden etkinleştirin.
HAProxy'de Bir Düğümü Devre Dışı Bırakın
community.general.haproxy modülü, bir arka uç düğümünü devre dışı olarak ayarlar ve HAProxy'ye trafiği bu düğüme yönlendirmeyi durdurmasını bildirir.
- name: Drain web node
community.general.haproxy:
state: disabled
host: "{{ inventory_hostname }}"
socket: /var/run/haproxy.sockLB Görevini LB'den Çalıştırın
HAProxy yuvası yük dengeleyicide bulunur. Bu nedenle, boşaltılan web düğümünü belirtmeye devam ederken delegate_to ile LB ana makinesine devredin.
delegate_to: lb01Bağlantıların Boşalmasını Bekleyin
Etkin isteklerin tamamlanması için zaman tanıyın. Kullanıcıların isteklerinin ortasında bağlantısını kesmemek için wait_for veya kısa bir bekleme kullanın.
- name: Let traffic drain
ansible.builtin.wait_for:
timeout: 30
delegate_to: localhostŞimdi Güvenle Dağıtın
Düğüm döngüden çıkarıldığında güncelleme görevlerinizi çalıştırın: paketleri yükleyin, yapılandırmayı gönderin ve uygulamayı yeniden başlatın. Canlı trafik etkilenmez. 🔧
Düğümü Yeniden Etkinleştirin
Güncellemeden sonra düğümü yeniden etkin olarak ayarlayın; böylece HAProxy trafiği yeni dağıtılmış sunucunuza yönlendirmeye devam eder.
- name: Re-enable web node
community.general.haproxy:
state: enabled
host: "{{ inventory_hostname }}"
socket: /var/run/haproxy.sock
delegate_to: lb01Yeniden Etkinleştirmeden Önce Sağlık Denetimi
Düğümü yeniden eklemeden önce uygulamanın gerçekten çalıştığını doğrulayın. Sağlık uç noktasında yapılacak bir wait_for veya uri denetimi, bozuk bir düğümden hizmet sunmanızı önler.
- ansible.builtin.uri:
url: http://localhost:8080/health
status_code: 200
retries: 5
delay: 3Her Seferinde Tek Bir Düğümle Çalışın
Bu döngüyü serial ile birleştirerek aynı anda yalnızca bir veya iki düğümün trafiğini boşaltın. Diğerleri hizmet vermeye devam eder ve böylece kesinti yaşanmaz.
- hosts: web
serial: 1Hata Olsa Bile Her Zaman Yeniden Etkinleştirin
Dağıtımı block ve always içeren bir blok içine alın; böylece başarısız bir güncelleme bile düğümü döngüye geri koyar ve düğüm atıl durumda kalmaz.
Hızlı Kontrol
Güvenli dağıtım yöntemini kontrol edelim.
Özet
Sıfır kesinti için bir düğümün trafiğini boşaltın, dağıtın, sağlık denetimi yapın ve ardından serial ile always bloğunu kullanarak düğümü her seferinde bir tane olacak şekilde yeniden etkinleştirin. ✅
Sıkça Sorulan Sorular
“Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme” dersi ücretsiz mi?
Evet — “Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve DevOps Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
“Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme” dersinde ne öğreneceğim?
Düğümleri güvenle çıkarıp yeniden ekleyin. DevOps Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
DevOps Bootcamp öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te DevOps Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu DevOps Bootcamp dersinde kod yazıp çalıştırabilir miyim?
Evet. Her DevOps Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- cli_command ile Ağ Cihazlarını Otomatikleştirme
- Orkestrasyon için delegate_to ve run_once
- Web, Uygulama ve DB Katmanlarını Eşgüdümleme
- Yük Dengeleyiciden Çıkarma ve Yeniden Etkinleştirme