{"id":2679,"date":"2025-02-08T10:09:00","date_gmt":"2025-02-08T07:09:00","guid":{"rendered":"https:\/\/www.bircloud.com\/cloud\/index.php\/2025\/02\/08\/kubernetes-prometheus-operator-otomatik-izleme\/"},"modified":"2025-02-08T10:09:00","modified_gmt":"2025-02-08T07:09:00","slug":"kubernetes-prometheus-operator-otomatik-izleme","status":"publish","type":"post","link":"https:\/\/www.bircloud.com\/cloud\/index.php\/2025\/02\/08\/kubernetes-prometheus-operator-otomatik-izleme\/","title":{"rendered":"Kubernetes Ortamlar\u0131nda Otomatik \u0130zleme: Prometheus Operator ile U\u00e7tan Uca \u00c7\u00f6z\u00fcm"},"content":{"rendered":"<h2>Giri\u015f<\/h2>\n<p>Mikroservis mimarisi ve konteyner teknolojilerinin y\u00fckseli\u015fiyle birlikte, Kubernetes (K8s) orkestrasyon platformu, modern uygulamalar\u0131n vazge\u00e7ilmez bir par\u00e7as\u0131 haline geldi. Ancak, Kubernetes ortamlar\u0131n\u0131n karma\u015f\u0131kl\u0131\u011f\u0131, izleme ve y\u00f6netim s\u00fcre\u00e7lerini zorla\u015ft\u0131rabilir. Geleneksel izleme y\u00f6ntemleri, dinamik ve \u00f6l\u00e7eklenebilir Kubernetes k\u00fcmelerinde yetersiz kalabilir. \u0130\u015fte bu noktada, Prometheus Operator devreye girerek Kubernetes ortamlar\u0131nda otomatik izleme ve alarm kurma s\u00fcre\u00e7lerini basitle\u015ftirir ve optimize eder.<\/p>\n<p>Bu blog yaz\u0131s\u0131nda, Prometheus Operator&#8217;\u00fcn ne oldu\u011funu, avantajlar\u0131n\u0131, kullan\u0131m senaryolar\u0131n\u0131 ve nas\u0131l kurulup yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Ayr\u0131ca, BirCloud Teknoloji \u00c7\u00f6z\u00fcmleri A.\u015e. olarak, Kubernetes ortamlar\u0131ndaki izleme ihtiya\u00e7lar\u0131n\u0131z\u0131 nas\u0131l kar\u015f\u0131lad\u0131\u011f\u0131m\u0131z\u0131 ve Prometheus Operator&#8217;\u00fc nas\u0131l entegre etti\u011fimizi de payla\u015faca\u011f\u0131z.<\/p>\n<h2>Prometheus Operator Nedir?<\/h2>\n<p>Prometheus Operator, Kubernetes ortamlar\u0131nda Prometheus ve Alertmanager gibi izleme ara\u00e7lar\u0131n\u0131n y\u00f6netimini kolayla\u015ft\u0131ran bir Kubernetes operat\u00f6r\u00fcd\u00fcr. Operat\u00f6rler, belirli bir uygulamay\u0131 veya servisi Kubernetes \u00fczerinde \u00e7al\u0131\u015ft\u0131rmak, yap\u0131land\u0131rmak ve y\u00f6netmek i\u00e7in kullan\u0131lan yaz\u0131l\u0131m uzant\u0131lar\u0131d\u0131r. Prometheus Operator, Prometheus kurulumunu, yap\u0131land\u0131rmas\u0131n\u0131 ve g\u00fcncellemelerini otomatikle\u015ftirerek, operasyonel y\u00fck\u00fc azalt\u0131r ve izleme altyap\u0131s\u0131n\u0131n daha verimli bir \u015fekilde y\u00f6netilmesini sa\u011flar.<\/p>\n<p>Temel olarak, Prometheus Operator, a\u015fa\u011f\u0131daki \u00f6zel Kubernetes kaynaklar\u0131n\u0131 (Custom Resource Definitions &#8211; CRDs) kullanarak \u00e7al\u0131\u015f\u0131r:<\/p>\n<ul>\n<li><b>Prometheus:<\/b> Prometheus sunucusunun yap\u0131land\u0131rmas\u0131n\u0131 tan\u0131mlar. Operator, bu tan\u0131ma g\u00f6re Prometheus sunucusunu otomatik olarak olu\u015fturur, g\u00fcnceller ve y\u00f6netir.<\/li>\n<li><b>ServiceMonitor:<\/b> Prometheus&#8217;un hangi servisleri izleyece\u011fini tan\u0131mlar. Operator, bu tan\u0131ma g\u00f6re Prometheus&#8217;un izleme yap\u0131land\u0131rmas\u0131n\u0131 otomatik olarak g\u00fcnceller.<\/li>\n<li><b>PodMonitor:<\/b> Prometheus&#8217;un hangi pod&#8217;lar\u0131 izleyece\u011fini tan\u0131mlar. ServiceMonitor&#8217;e benzer \u015fekilde \u00e7al\u0131\u015f\u0131r, ancak pod seviyesinde izleme sa\u011flar.<\/li>\n<li><b>PrometheusRule:<\/b> Prometheus kurallar\u0131n\u0131 (alerting ve recording rules) tan\u0131mlar. Operator, bu tan\u0131ma g\u00f6re Prometheus&#8217;un kural dosyas\u0131n\u0131 otomatik olarak g\u00fcnceller.<\/li>\n<li><b>Alertmanager:<\/b> Alertmanager yap\u0131land\u0131rmas\u0131n\u0131 tan\u0131mlar. Operator, bu tan\u0131ma g\u00f6re Alertmanager sunucusunu otomatik olarak olu\u015fturur, g\u00fcnceller ve y\u00f6netir.<\/li>\n<\/ul>\n<h2>Prometheus Operator&#8217;\u00fcn Avantajlar\u0131<\/h2>\n<p>Prometheus Operator&#8217;\u00fcn Kubernetes ortamlar\u0131nda sundu\u011fu ba\u015fl\u0131ca avantajlar \u015funlard\u0131r:<\/p>\n<ul>\n<li><b>Otomatikle\u015ftirilmi\u015f Kurulum ve Yap\u0131land\u0131rma:<\/b> Prometheus ve Alertmanager&#8217;\u0131n kurulumu ve yap\u0131land\u0131rmas\u0131 otomatikle\u015ftirilir, b\u00f6ylece manuel m\u00fcdahale ihtiyac\u0131 azal\u0131r ve operasyonel y\u00fck hafifler.<\/li>\n<li><b>Basitle\u015ftirilmi\u015f Y\u00f6netim:<\/b> Prometheus ve Alertmanager&#8217;\u0131n g\u00fcncellemeleri, yedeklemeleri ve \u00f6l\u00e7eklendirmesi gibi y\u00f6netim i\u015flemleri kolayla\u015ft\u0131r\u0131l\u0131r.<\/li>\n<li><b>Dinamik \u0130zleme Yap\u0131land\u0131rmas\u0131:<\/b> ServiceMonitor ve PodMonitor kaynaklar\u0131 sayesinde, Prometheus&#8217;un izleme yap\u0131land\u0131rmas\u0131 dinamik olarak g\u00fcncellenir. Yeni servisler ve pod&#8217;lar otomatik olarak izlemeye dahil edilir.<\/li>\n<li><b>Bildirim Y\u00f6netimi:<\/b> PrometheusRule kayna\u011f\u0131 sayesinde, alarm kurallar\u0131 merkezi olarak y\u00f6netilir ve g\u00fcncellenir.<\/li>\n<li><b>Artan G\u00fcvenilirlik:<\/b> Operator, Prometheus ve Alertmanager&#8217;\u0131n s\u00fcrekli olarak \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar ve olas\u0131 sorunlar\u0131 otomatik olarak giderir.<\/li>\n<li><b>En \u0130yi Uygulamalara Uyum:<\/b> Operator, Prometheus ve Alertmanager&#8217;\u0131n en iyi uygulama prensiplerine g\u00f6re yap\u0131land\u0131r\u0131lmas\u0131n\u0131 sa\u011flar.<\/li>\n<\/ul>\n<h2>Prometheus Operator Kullan\u0131m Senaryolar\u0131<\/h2>\n<p>Prometheus Operator, Kubernetes ortamlar\u0131nda \u00e7e\u015fitli kullan\u0131m senaryolar\u0131nda etkili bir \u015fekilde kullan\u0131labilir:<\/p>\n<ul>\n<li><b>Kapsaml\u0131 \u0130zleme:<\/b> Kubernetes k\u00fcmelerindeki t\u00fcm servislerin, pod&#8217;lar\u0131n ve d\u00fc\u011f\u00fcmlerin kaynak kullan\u0131m\u0131n\u0131, performans\u0131n\u0131 ve sa\u011fl\u0131\u011f\u0131n\u0131 izlemek i\u00e7in kullan\u0131labilir.<\/li>\n<li><b>Alarm Kurma:<\/b> Kritik metrikler i\u00e7in alarm kurallar\u0131 tan\u0131mlanarak, olas\u0131 sorunlar erken a\u015famada tespit edilebilir ve m\u00fcdahale edilebilir.<\/li>\n<li><b>Kapasite Planlama:<\/b> Kaynak kullan\u0131m trendleri analiz edilerek, gelecekteki kapasite ihtiya\u00e7lar\u0131 belirlenebilir ve buna g\u00f6re \u00f6l\u00e7eklendirme yap\u0131labilir.<\/li>\n<li><b>Performans Optimizasyonu:<\/b> Performans darbo\u011fazlar\u0131 tespit edilerek, uygulamalar\u0131n ve altyap\u0131n\u0131n performans\u0131 optimize edilebilir.<\/li>\n<li><b>Hata Ay\u0131klama:<\/b> Uygulamalardaki hatalar\u0131n kayna\u011f\u0131 tespit edilerek, sorunlar\u0131n \u00e7\u00f6z\u00fcm\u00fc h\u0131zland\u0131r\u0131labilir.<\/li>\n<li><b>Uyumluluk \u0130zleme:<\/b> G\u00fcvenlik ve uyumluluk gereksinimlerini kar\u015f\u0131lamak i\u00e7in, sistem etkinlikleri ve loglar izlenebilir.<\/li>\n<\/ul>\n<h2>Prometheus Operator Kurulum ve Ba\u015flang\u0131\u00e7 Rehberi<\/h2>\n<p>Prometheus Operator&#8217;\u00fc Kubernetes k\u00fcmenize kurmak i\u00e7in a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izleyebilirsiniz:<\/p>\n<h3>Ad\u0131m 1: Operator&#8217;\u00fcn Kurulumu<\/h3>\n<p>Prometheus Operator&#8217;\u00fc kurmak i\u00e7in, \u00f6ncelikle Operator Lifecycle Manager (OLM) veya Helm gibi bir paket y\u00f6neticisine ihtiyac\u0131n\u0131z olacakt\u0131r. Bu \u00f6rnekte, OLM&#8217;yi kullanaca\u011f\u0131z.<\/p>\n<pre><code>kubectl create -f https:\/\/operatorhub.io\/install\/prometheus-operator.yaml\n<\/code><\/pre>\n<p>Bu komut, Prometheus Operator&#8217;\u00fc Kubernetes k\u00fcmenize kuracakt\u0131r.<\/p>\n<h3>Ad\u0131m 2: Prometheus Kayna\u011f\u0131n\u0131n Olu\u015fturulmas\u0131<\/h3>\n<p>Prometheus Operator kurulduktan sonra, bir Prometheus kayna\u011f\u0131 olu\u015fturman\u0131z gerekir. A\u015fa\u011f\u0131daki YAML dosyas\u0131, basit bir Prometheus yap\u0131land\u0131rmas\u0131n\u0131 tan\u0131mlar:<\/p>\n<pre><code>apiVersion: monitoring.coreos.com\/v1\nkind: Prometheus\nmetadata:\n  name: prometheus-example\n  namespace: monitoring\nspec:\n  replicas: 2\n  serviceAccountName: prometheus-example\n  serviceMonitorSelector:\n    matchLabels:\n      release: prometheus-example\n<\/code><\/pre>\n<p>Bu dosyay\u0131 `prometheus.yaml` olarak kaydedin ve a\u015fa\u011f\u0131daki komutla uygulay\u0131n:<\/p>\n<pre><code>kubectl apply -f prometheus.yaml -n monitoring\n<\/code><\/pre>\n<h3>Ad\u0131m 3: ServiceMonitor Kayna\u011f\u0131n\u0131n Olu\u015fturulmas\u0131<\/h3>\n<p>Prometheus&#8217;un hangi servisleri izleyece\u011fini tan\u0131mlamak i\u00e7in bir ServiceMonitor kayna\u011f\u0131 olu\u015fturman\u0131z gerekir. A\u015fa\u011f\u0131daki YAML dosyas\u0131, Kubernetes API sunucusunu izleyen bir ServiceMonitor \u00f6rne\u011fini tan\u0131mlar:<\/p>\n<pre><code>apiVersion: monitoring.coreos.com\/v1\nkind: ServiceMonitor\nmetadata:\n  name: kubernetes-apiservers\n  namespace: monitoring\n  labels:\n    release: prometheus-example\nspec:\n  selector:\n    matchLabels:\n      component: apiserver\n  namespaceSelector:\n    matchNames:\n    - kube-system\n  endpoints:\n  - port: https\n    scheme: https\n    tlsConfig:\n      insecureSkipVerify: true\n<\/code><\/pre>\n<p>Bu dosyay\u0131 `servicemonitor.yaml` olarak kaydedin ve a\u015fa\u011f\u0131daki komutla uygulay\u0131n:<\/p>\n<pre><code>kubectl apply -f servicemonitor.yaml -n monitoring\n<\/code><\/pre>\n<h3>Ad\u0131m 4: Prometheus&#8217;a Eri\u015fim<\/h3>\n<p>Prometheus sunucusuna eri\u015fmek i\u00e7in, bir port-forwarding i\u015flemi yapabilirsiniz:<\/p>\n<pre><code>kubectl port-forward -n monitoring svc\/prometheus-example 9090:9090\n<\/code><\/pre>\n<p>Art\u0131k taray\u0131c\u0131n\u0131zda `http:\/\/localhost:9090` adresine giderek Prometheus aray\u00fcz\u00fcne eri\u015febilirsiniz.<\/p>\n<h3>\u00d6rnek PrometheusRule Tan\u0131m\u0131<\/h3>\n<p>A\u015fa\u011f\u0131daki \u00f6rnek PrometheusRule, CPU kullan\u0131m\u0131n\u0131n y\u00fcksek olmas\u0131 durumunda alarm \u00fcretecek bir kural tan\u0131mlar:<\/p>\n<pre><code>apiVersion: monitoring.coreos.com\/v1\nkind: PrometheusRule\nmetadata:\n  name: high-cpu-usage\n  namespace: monitoring\nspec:\n  groups:\n  - name: cpu-usage\n    rules:\n    - alert: HighCPUUsage\n      expr: sum(rate(process_cpu_seconds_total{job=\"kubernetes-nodes\"}[5m])) by (instance) &gt; 0.8\n      for: 1m\n      labels:\n        severity: critical\n      annotations:\n        summary: \"Y\u00fcksek CPU Kullan\u0131m\u0131\"\n        description: \"{{ $labels.instance }} \u00fczerindeki CPU kullan\u0131m\u0131 %80'i a\u015ft\u0131.\"\n<\/code><\/pre>\n<h2>BirCloud Perspektifi<\/h2>\n<p>BirCloud Teknoloji \u00c7\u00f6z\u00fcmleri A.\u015e. olarak, m\u00fc\u015fterilerimize bulut bili\u015fim \u00e7\u00f6z\u00fcmleri sunarken, izleme ve y\u00f6netim s\u00fcre\u00e7lerinin \u00f6neminin fark\u0131nday\u0131z. Kubernetes ortamlar\u0131ndaki karma\u015f\u0131kl\u0131\u011f\u0131 azaltmak ve m\u00fc\u015fterilerimizin uygulamalar\u0131n\u0131 daha verimli bir \u015fekilde y\u00f6netmelerine yard\u0131mc\u0131 olmak i\u00e7in Prometheus Operator&#8217;\u00fc aktif olarak kullan\u0131yoruz.<\/p>\n<p>BirCloud olarak sundu\u011fumuz Kubernetes \u00e7\u00f6z\u00fcmlerinde, Prometheus Operator&#8217;\u00fc entegre ederek m\u00fc\u015fterilerimize a\u015fa\u011f\u0131daki avantajlar\u0131 sa\u011fl\u0131yoruz:<\/p>\n<ul>\n<li><b>Otomatik \u0130zleme Kurulumu:<\/b> M\u00fc\u015fterilerimizin Kubernetes k\u00fcmelerinde Prometheus ve Alertmanager&#8217;\u0131 otomatik olarak kuruyor ve yap\u0131land\u0131r\u0131yoruz.<\/li>\n<li><b>\u00d6zelle\u015ftirilmi\u015f \u0130zleme Panelleri:<\/b> M\u00fc\u015fterilerimizin ihtiya\u00e7lar\u0131na \u00f6zel izleme panelleri olu\u015fturarak, kritik metrikleri kolayca takip etmelerini sa\u011fl\u0131yoruz.<\/li>\n<li><b>Proaktif Alarm Y\u00f6netimi:<\/b> M\u00fc\u015fterilerimiz i\u00e7in proaktif alarm kurallar\u0131 tan\u0131mlayarak, olas\u0131 sorunlar\u0131 erken a\u015famada tespit ediyor ve m\u00fcdahale ediyoruz.<\/li>\n<li><b>Uzman Deste\u011fi:<\/b> Kubernetes ve Prometheus konusunda uzman ekibimizle, m\u00fc\u015fterilerimize s\u00fcrekli destek sa\u011fl\u0131yoruz.<\/li>\n<\/ul>\n<p>Ayr\u0131ca, BirCloud olarak, m\u00fc\u015fterilerimizin Kubernetes ortamlar\u0131n\u0131 daha iyi anlamalar\u0131na yard\u0131mc\u0131 olmak i\u00e7in e\u011fitimler ve dan\u0131\u015fmanl\u0131k hizmetleri de sunuyoruz. Amac\u0131m\u0131z, m\u00fc\u015fterilerimizin bulut bili\u015fimden en iyi \u015fekilde faydalanmalar\u0131n\u0131 sa\u011flamak ve i\u015f s\u00fcre\u00e7lerini optimize etmelerine yard\u0131mc\u0131 olmakt\u0131r.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Prometheus Operator, Kubernetes ortamlar\u0131nda otomatik izleme ve alarm kurma s\u00fcre\u00e7lerini basitle\u015ftiren ve optimize eden g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Otomatik kurulum, dinamik yap\u0131land\u0131rma ve kolay y\u00f6netim gibi avantajlar\u0131 sayesinde, operasyonel y\u00fck\u00fc azalt\u0131r ve izleme altyap\u0131s\u0131n\u0131n daha verimli bir \u015fekilde y\u00f6netilmesini sa\u011flar. BirCloud Teknoloji \u00c7\u00f6z\u00fcmleri A.\u015e. olarak, Prometheus Operator&#8217;\u00fc m\u00fc\u015fterilerimizin Kubernetes \u00e7\u00f6z\u00fcmlerine entegre ederek, onlara daha iyi bir izleme ve y\u00f6netim deneyimi sunuyoruz.<\/p>\n<p>Umar\u0131z bu blog yaz\u0131s\u0131, Prometheus Operator hakk\u0131nda kapsaml\u0131 bir bilgi sa\u011flam\u0131\u015ft\u0131r. Kubernetes ortamlar\u0131n\u0131zda otomatik izleme \u00e7\u00f6z\u00fcmleri ar\u0131yorsan\u0131z, Prometheus Operator&#8217;\u00fc de\u011ferlendirmenizi ve BirCloud&#8217;un uzmanl\u0131\u011f\u0131ndan faydalanman\u0131z\u0131 tavsiye ederiz.<\/p>\n<p>Daha fazla bilgi i\u00e7in bircloud.com adresini ziyaret edebilir veya bizimle ileti\u015fime ge\u00e7ebilirsiniz.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Prometheus Operator ile Kubernetes k\u00fcmelerinizde otomatik izleme ve alarm kurma. Kaynak kullan\u0131m\u0131n\u0131 optimize edin, sorunlar\u0131 h\u0131zla tespit edin ve performans\u0131 art\u0131r\u0131n.<\/p>\n","protected":false},"author":2,"featured_media":2678,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[160],"tags":[159,189,155,190,188,187],"class_list":["post-2679","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bulut-bilisim","tag-bircloud","tag-izleme","tag-kubernetes","tag-monitoring","tag-operator","tag-prometheus"],"_links":{"self":[{"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/posts\/2679","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/comments?post=2679"}],"version-history":[{"count":0,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/posts\/2679\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/media\/2678"}],"wp:attachment":[{"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/media?parent=2679"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/categories?post=2679"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bircloud.com\/cloud\/index.php\/wp-json\/wp\/v2\/tags?post=2679"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}