Birçok CentOS sunucusu için paket güncellemelerini yönetmek için iyi uygulama


13

İşimin bir parçası olarak, ana kurulum için kukla kullanarak birkaç on CentOS 5 sunucusunu yönetiyorum. Sunucularımızın yaklaşık yarısında çeşitli django sitelerini barındırmak için standartlaştırılmış bir kurulum bulunurken, geri kalanı uygulamalar bir püre.

Yavaş yavaş barındırma uygulamalarımızı çözüyorum ve şimdi güvenlik güncelleştirmelerini işletim sistemi düzeyinde nasıl yöneteceğimi anladım. Ben sadece bir cron işi yapıyor bir ihtiyatlı yum -y updateama aynı zamanda her sunucu zaman içinde gitmek ve güncellemeleri ile her paketi gözden geçirmek istemiyorum, bu biraz zaman alacak gibi.

Herhangi bir iyi kısayolları veya riskleri minimize edecek çalışma uygulamaları vardır merak ediyorum Yani ve ben harcamak gerekir süreyi en aza indirir. Ya da başka bir deyişle, hala kontrol sağlarken bir çok işi otomatikleştirebilecek araçlar veya uygulamalar var.

Şimdiye kadar karar verdiğim adımlar:

  • tüm üçüncü taraf depolarını devre dışı bırakın ve kendi depomuzu kurun, böylece hangi güncellemelerin buradan geçeceğini kontrol edebilirim.
  • üretim sunucularımız için test yapabileceğim (ama ne kadar test yeterli?)

Ayrıca yum güvenlik eklentisine baktığımı ancak CentOS'ta çalışmadığını unutmayın .

Peki heterojen bir uygulama dizisi çalıştıran önemli sayıda CentOS sunucusu için güncellemeleri nasıl yönetiyorsunuz?


2
Harika bir soru. Paket yönetimi / güncelleme prosedürümüze bakmak istiyorduk. Spacewalk'a baktınız mı ? İlk sürümden beri kontrol etmedim, ancak başka bir görünüm vermeye değer olabilir.
Belmin Fernandez

Yum güvenlik eklentisi için CentOS desteği büyüktür. Bu konuda çok fazla cevap almadan birkaç kez sordum.
Stefan Lasiewski

Ne yazık ki, Scientific Linux da yum-plugin-security'u desteklemiyor gibi görünüyor .
Stefan Lasiewski

Yanıtlar:


2

Ortamlarımın çoğunda, ana sistemi güncelleştirmek ve o anda güncellemeler almak genellikle genellikle bir başlatma ve yükleme sonrası komut dosyasıdır. Genellikle günlük veya haftalık CentOS aynasıyla senkronize edilen yerel bir repo olur. Çekirdek paketini yükleme süresi itibariyle geçerli olan her durumda dondurma ve paketleri ayrı ayrı veya gerektiği gibi güncelleme eğilimim var. Çoğu zaman, sunucularımın çekirdek sürümleriyle yakından bağlantılı sürücüleri olan çevre birimleri vardır, bu yüzden bu bir düşüncedir.

CentOS 5, sürekli güncellemelerin gerekli olmadığı noktaya kadar olgunlaştı. Ancak CentOS 5'in sona erdiğini de unutmayın. Güncelleme oranı biraz yavaşladı ve güncellemelerin doğası hata düzeltmeleri ile daha fazla ve önemli işlev değişiklikleri hakkında daha az.

Yani bu özel durumda, yapabileceğiniz ilk şey yerel bir ayna / repo inşa etmek. Üçüncü taraf depolarına erişimi kontrol etmek için mevcut yapılandırma yönetiminizi kullanın. Belki kritik ya da halka açık hizmetleri (ssh, http, ftp, dovecot, vb.) Yum güncelleştirmek için politika planlayın.


1

Bu konuda yardımcı olabilecek birçok araç var! Genel olarak paket sistemi ve hangi paketlerin konfigürasyon yönetimi tarafından ele alındığı yere gider. Bu araçlar genellikle yum ve rpms'den fazlasını kapsar ve size zaman kazandırır ve birçok baş ağrısını önler!

En tanıdığım araç, ortamımdaki hemen hemen her yapılandırmayı yönetmek için kullandığım kukla. Özellikle yum'u yönetmek için bazı kukla örnekleri:

http://people.redhat.com/dlutter/puppet-app.html

Şu anda bir dizi yapılandırma yönetimi aracı vardır, bunlar oldukça büyük kullanıcı gruplarına sahiptir:

Bunları bir ortamda uygulamak yaşamınıza yıllar katacaktır. Kötü yapılandırılmış sistemlerden kaynaklanan baş ağrısı sayısını azaltır ve kolay yükseltme / güncelleme sağlar. Bu araçların çoğu, yapılandırma hataları için onarım süresini büyük ölçüde azaltabilen bazı denetim düzeyi işlevleri de sağlayabilir.

Testle ilgili sorunuzla ilgili olarak, bazı müşterilerin yükünü (genellikle beta müşteriler veya küçük bir üretim trafiği alt kümesi) yönlendirdiğimiz bir hazırlama ortamı kullanıyorum. Genellikle bu kümeyi üretime dağıtmadan önce en az birkaç gün, bir haftaya kadar (değişikliğin ciddiyetine bağlı olarak) yeni kod çalıştırmasına izin veririz. Genellikle, çoğu hatanın keşfedilmesinin ne kadar sürdüğünü anlamaya çalışırsanız, bu kurulumun en iyi şekilde çalıştığını buldum. Çok kullanılan sistemlerde bu saatler olabilir, çoğu ortamda bir hafta, evreleme / QA'daki nadir hataları bile keşfedecek kadar uzun olduğunu gördüm.

Test ile ilgili gerçekten önemli bir parça, verilerin / kullanımın çoğaltılmasıdır. Üretim donanımınızın çoğunun hazırlama sürümlerine sahip olduğunuzdan bahsettiniz. Ayrıca üretim verilerinin aynı kopyaları var mı? Üretim yükünün herhangi birini buna karşı tekrar oynatabilir misiniz? Hatta trafik aynalama kullanarak üretim kümesinin bir parçası olabilir misiniz? Bu genellikle işletmenin test / QA için harcamak istediği kaynak miktarı arasında doğrudan bir denge olur. Daha fazla test daha iyi, kendi kendini sınırlamamaya çalışın (neden içinde) ve işletmenin neyi destekleyeceğini görün (daha sonra% 10 daha fazlasını yapmanın bir yolunu bulun).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.