{"id":2845,"date":"2023-05-18T22:02:53","date_gmt":"2023-05-18T22:02:53","guid":{"rendered":"https:\/\/sunucucozumleri.com\/?p=2845"},"modified":"2023-05-18T22:02:53","modified_gmt":"2023-05-18T22:02:53","slug":"kubernetes-ingress-nedir","status":"publish","type":"post","link":"https:\/\/sunucucozumleri.com\/blog\/kubernetes-ingress-nedir\/","title":{"rendered":"Kubernetes \u0130ngress Nedir?"},"content":{"rendered":"<p>Kubernetes Ingress, Kubernetes kapsay\u0131c\u0131s\u0131nda \u00e7al\u0131\u015fan uygulamalar\u0131n d\u0131\u015f d\u00fcnyayla ileti\u015fim kurmas\u0131na izin veren bir y\u00f6netim kayna\u011f\u0131d\u0131r. Ingress, Kubernetes cluster&#8217;\u0131 i\u00e7indeki hizmetlerin d\u0131\u015f d\u00fcnya ile ileti\u015fim kurmas\u0131n\u0131 sa\u011flayan bir API nesnesidir.<\/p>\n<p>Ingress, birden fazla hizmete ayn\u0131 IP adresi ve ayn\u0131 HTTP portu \u00fczerinden eri\u015filmesini sa\u011flar ve ayr\u0131ca URL yol tabanl\u0131 y\u00f6nlendirme sa\u011flayabilir. Ingress, ayr\u0131ca SSL\/TLS \u015fifrelemesi ve <a href=\"https:\/\/sunucucozumleri.com\/blog\/yuk-dengeleme-nedir\/\">y\u00fck dengeleme<\/a> gibi \u00f6zellikleri de destekler.<\/p>\n<p>Ingress, bir\u00e7ok farkl\u0131 Ingress Controller taraf\u0131ndan desteklenir. Ingress Controller, Ingress kaynaklar\u0131n\u0131 i\u015fleyerek, hizmetleri d\u0131\u015f d\u00fcnyaya a\u00e7ar ve y\u00f6nlendirmeleri yapar. \u00d6rne\u011fin, <a href=\"https:\/\/sunucucozumleri.com\/blog\/080-nginx-reverse-proxy-nasil-kurulur\/\">NGINX<\/a>, Traefik, Istio gibi pop\u00fcler Ingress Controller&#8217;lar vard\u0131r.<\/p>\n<p>\u00d6zetle, Kubernetes Ingress, Kubernetes kapsay\u0131c\u0131s\u0131nda \u00e7al\u0131\u015fan hizmetlerin d\u0131\u015f d\u00fcnyayla ileti\u015fim kurmas\u0131n\u0131 sa\u011flayan bir y\u00f6netim kayna\u011f\u0131d\u0131r. Ingress, birden fazla hizmete ayn\u0131 IP adresi ve ayn\u0131 HTTP portu \u00fczerinden eri\u015filmesine izin verir ve ayr\u0131ca URL yol tabanl\u0131 y\u00f6nlendirme, SSL\/TLS \u015fifrelemesi ve y\u00fck dengeleme gibi \u00f6zellikleri de destekler.<\/p>\n<p><strong>Kubernetes ingress Kurulumu<\/strong><\/p>\n<p>Kubernetes Ingress Controller kurulumu, kullan\u0131lan Ingress Controller ve Kubernetes cluster&#8217;\u0131n yap\u0131land\u0131rmas\u0131na ba\u011fl\u0131 olarak de\u011fi\u015febilir. Bununla birlikte, genel olarak, Ingress Controller kurulumu \u015fu ad\u0131mlar\u0131 i\u00e7erir:<\/p>\n<ol>\n<li>\u0130lk olarak, Kubernetes cluster&#8217;\u0131n\u0131zda bir Ingress Controller y\u00fcklemeniz gerekiyor. Pop\u00fcler Ingress Controller&#8217;lar aras\u0131nda NGINX, Traefik ve Istio yer almaktad\u0131r. Ingress Controller&#8217;\u0131n kurulumu, se\u00e7ilen araca g\u00f6re farkl\u0131l\u0131k g\u00f6sterebilir. \u00d6rne\u011fin, NGINX Ingress Controller&#8217;\u0131 y\u00fcklemek i\u00e7in, a\u015fa\u011f\u0131daki komutlar\u0131 kullanabilirsiniz:<\/li>\n<\/ol>\n<p>kubectl apply -f https:\/\/raw.githubusercontent.com\/kubernetes\/ingress-nginx\/controller-v1.0.3\/deploy\/static\/provider\/cloud\/deploy.yaml<\/p>\n<ol start=\"2\">\n<li>Ingress Controller&#8217;\u0131n y\u00fcklenmesinin ard\u0131ndan, bir Ingress kayna\u011f\u0131 olu\u015fturman\u0131z gerekiyor. \u00d6rne\u011fin, a\u015fa\u011f\u0131daki YAML dosyas\u0131yla bir Ingress kayna\u011f\u0131 olu\u015fturabilirsiniz:<\/li>\n<\/ol>\n<div>\n<p><code><\/code><\/p>\n<pre>apiVersion: networking.k8s.io\/v1\r\nkind: Ingress\r\nmetadata:\r\n  name: my-ingress\r\nspec:\r\n  rules:\r\n  - host: example.com\r\n    http:\r\n      paths:\r\n      - path: \/app1\r\n        pathType: Prefix\r\n        backend:\r\n          service:\r\n            name: app1-service\r\n            port:\r\n              number: 80\r\n      - path: \/app2\r\n        pathType: Prefix\r\n        backend:\r\n          service:\r\n            name: app2-service\r\n            port:\r\n              number: 80\r\n<\/pre>\n<\/div>\n<p>Bu \u00f6rnekte,\u00a0<code>example.com<\/code>\u00a0alan ad\u0131na yap\u0131lan istekler\u00a0<code>\/app1<\/code>\u00a0ve\u00a0<code>\/app2<\/code>\u00a0URL path&#8217;leri i\u00e7in Ingress ile y\u00f6nlendirilir ve her biri farkl\u0131 bir Kubernetes hizmetine y\u00f6nlendirilir.<\/p>\n<ol start=\"3\">\n<li>Son olarak, Ingress kayna\u011f\u0131n\u0131 Kubernetes cluster&#8217;\u0131na y\u00fcklemelisiniz. \u00d6rne\u011fin, a\u015fa\u011f\u0131daki komutlar\u0131 kullanarak Ingress kayna\u011f\u0131n\u0131 y\u00fckleyebilirsiniz:<\/li>\n<\/ol>\n<div><\/div>\n<pre class=\"MarkdownCodeBlock_preTag__dDgT9\"><code class=\"MarkdownCodeBlock_codeTag__ipdCC\">kubectl apply -f my-ingress.yaml\r\n<\/code><\/pre>\n<p>Ingress Controller ve Ingress kayna\u011f\u0131n\u0131n kurulumu tamamland\u0131\u011f\u0131nda, Kubernetes cluster&#8217;\u0131n\u0131zda \u00e7al\u0131\u015fan hizmetlerin d\u0131\u015f d\u00fcnyayla ileti\u015fim kurmas\u0131na izin veren bir y\u00f6nlendirme yap\u0131land\u0131rmas\u0131 olu\u015fturulmu\u015f olur. Ancak, Ingress Controller&#8217;\u0131n yap\u0131land\u0131rmas\u0131 ve kullan\u0131m\u0131 \u015firketinizin gereksinimlerine ba\u011fl\u0131 olarak de\u011fi\u015febilir ve bu nedenle daha ayr\u0131nt\u0131l\u0131 bir kurulum k\u0131lavuzu veya dok\u00fcmantasyonu kullanman\u0131z \u00f6nerilir.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kubernetes Ingress, Kubernetes kapsay\u0131c\u0131s\u0131nda \u00e7al\u0131\u015fan uygulamalar\u0131n d\u0131\u015f d\u00fcnyayla ileti\u015fim kurmas\u0131na izin veren bir y\u00f6netim kayna\u011f\u0131d\u0131r. Ingress, Kubernetes cluster&#8217;\u0131 i\u00e7indeki hizmetlerin d\u0131\u015f d\u00fcnya ile ileti\u015fim kurmas\u0131n\u0131 sa\u011flayan bir API nesnesidir. Ingress, birden fazla hizmete ayn\u0131 IP adresi ve ayn\u0131 HTTP portu \u00fczerinden eri\u015filmesini sa\u011flar ve ayr\u0131ca URL yol tabanl\u0131 y\u00f6nlendirme sa\u011flayabilir. Ingress, ayr\u0131ca SSL\/TLS \u015fifrelemesi ve &hellip;<\/p>\n","protected":false},"author":1,"featured_media":2846,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-2845","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux"],"acf":[],"_links":{"self":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/2845","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/comments?post=2845"}],"version-history":[{"count":0,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/2845\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media\/2846"}],"wp:attachment":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media?parent=2845"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/categories?post=2845"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/tags?post=2845"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}