Kubectl logs ile Pod Günlükleri: Temel Pratikler ve İnce Noktalar

0 Antworten 5 Aufrufe
Bewertende
Teilnehmer
Themenersteller #1
kubectl logs ile Pod Günlükleri: Temel Pratikler ve İnce Noktalar

Bir Kubernetes clusterında çalışırken günlüklar, uygulamanızın davranışını anlamanın en hızlı yoludur. Özellikle mikroservis mimarileri ve çok sayıda Pod ile karşılaşınca, hangi Pod’un hangi konteyneriyle ilgili günlükları nasıl çekeceğinizi netleştirmek gerekir. Aşağıda, günlükleri elde etmede sık karşılaşılan senaryoları ve pratik ipuçlarını sade ve uygulanabilir bir dille ele alıyorum.

  • Temel günlükleri görüntülemek: kubectl logs komutu, varsayılan olarak Pod içindeki ilk konteynerin günlüklerini getirir. Çok konteynerli Pod’larda hangi konteynerin günlüklerini görmek istiyorsanız -c veya --container seçeneğini kullanırsınız. Örneğin: kubectl logs my-pod -c api-server. Bu basit adım, hata ayıklamanın ilk basamağıdır.
  • Canlı akışı ve tarihçeler: -f/--follow ile günlükleri gerçek zamanlı olarak akış halinde izleyebilirsiniz. Özellikle dağıtım sırasında yeni log satırlarını anlık takip etmek için yararlıdır. Ayrıca --since ve --since-time ile belirli bir zaman aralığındaki günlükleri filtrelemek mümkün.
  • Çoklu pod’lar ve etiketler: belirli bir etiket aralığından gelen Pod’ların günlüklerini tek seferde görmek için kubectl logs -l app=myapp --all-containers=true --since=1h gibi bir kombinasyon kullanabilirsiniz. Tek bir anda tüm ilgili konteyner loglarını incelemek, dağıtımın farklı bölümlerinin davranışını karşılaştırmada yararlı olur.
  • Dosya boyutu ve geçmiş günlükler: loglar sürekli büyüyebildiğinden, varsayılan perik içinde sadece son satırları getirir. Eğer geçmişe dönük logları görmek için log dosya boyutunu sınırlama veya belirli bir geçmişi çekme ihtiyacı varsa, teknik olarak pod’un yeniden başlatılmasını tetiklemeden önce log yönlendirme veya dışa aktarma çözümlerine yönelmek gerekir.
  • Log seviyeleri ve yapılandırma: Uygulama log seviyeleri genelde uygulama içinde ayarlanır. Kubernetes tarafında dikkat edilmesi gereken, konteynerlerin stdout/stderr’a yazdığı log akışıdır; bu da genelde log toplama çözümlerine (ör. Fluentd, Promtail) uygun şekilde yönlendirilir. Böylece merkezi bir log depolama ve arama katmanı kurulur.


Günlükleri etkili kullanmak için bu noktaları bir araya getirerek hızlı bir hata tespiti veya davranış analizi yapabilirsiniz. Özellikle çok konteynerli Pod’larda hangi konteynerin hangi satırda hataya yol açtığını izlemek için -c seçeneğini kullanmayı unutmayın. Ayrıca günlük analizi için带 ilave ipuçları veya kullanım senaryolarını paylaşmak isterseniz, hangi durumlarda hangi komut kombinasyonlarını tercih ettiğinizi anlatabilirsiniz. Bu konudaki deneyimleriniz nasıl?

Sie müssen angemeldet sein, um zu antworten.

0 Zitate ausgewählt