Servislere Domain ile Erişmek

Servislere Domain ile Erişmek

Bu yazımızda kubernetes ortamında servislere domain ile erişmek 'ten bahsedeceğiz. Ortamımızı kurduk servislerimizi deploy ettik fakat nasıl domain üzerinden erişeceğimizi bilmiyorsak hemen öncelikle nginx ingress controller olup olmadığına bakıyoruz. Eğer yoksa nginx ingress controller kurulumu başlıklı yazımızı inceleyerek öncelikle ingress controller kurulumu yapıyoruz.

Ingress controller depoy edildiğini varsayarak devam ediyoruz

Test için nginx web server deployment yaml'ımız aşağıdaki gibi olabilir.

---
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 1
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.16.1 
        ports:
        - containerPort: 80

Sonrasında aşağıdaki komut ile nginx web serverımıza bakan clusterIP türünde bir servis oluşturuyoruz.

---
apiVersion: v1
kind: Service
metadata:
  name: nginx-backend
spec:
  ports:
    - port: 80
      targetPort: 80
  selector:
    app: nginx
  type: ClusterIP

Şimdi ingress yaml'ı oluşturup deploy ediyoruz.

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: nginx-ingress
spec:
  rules:
  - host: nginx.kubernetesturkey.com
    http:
      paths:
      - path: /
        backend:
          serviceName: nginx-backend
          servicePort: 80

Evet servislere domain ile erişmek bu kadar. Artık domainlerimizi örneğimizdeki loadbalancer ip adresimiz olan 192.168.1.240'a yönlendirdiğimizde nginx web server'ımız domain ile ulaşılabilir olacaktır.

Yorum Yapın