Giriş
Sanırım minikube ingress eklentisinin kurulu olması gerekiyor. LoadBalancer tipi service erişim içindir
Ingress Eğer servislerimiz HTTP ve LoadBalancer ise kullanılabilir. Eklenti kurulu değilse kurmak için şöyle yaparız. Kurulumdan sonra artık minikube tunnel komutu kullanılabilir.
minikube addons enable ingress
Örnek
Elimizde şöyle bir LoadBalancer service olsun
— - apiVersion: v1 kind: Service metadata: name: “nginx-service” namespace: “default” spec: ports: — port: 80 type: LoadBalancer selector: app: “nginx”
"kubectl get svc nginx-service" ile bakarsak LoadBalancer servisin EXTERNAL-IP alanının "pending" olduğunu görürürz. Açıklaması şöyle
The external IP will be shown pending as we are using Minikube and hence we need to use the following command to get the external IP address.minikube tunnelNow, let’s access the service with the command,minikube service nginx-serviceWhen you access your http://127.0.0.1:64711/ local, you should see the NGINX screen.
"minikube tunnel" komutundan önce çıktı şöyle
> kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-minikube NodePort 10.103.194.22 <none> 8080:30072/TCP 58m hello-node LoadBalancer 10.110.209.73 <pending> 8080:30501/TCP 50m kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 60m
"minikube tunnel" komutunu çalıştırırız.
>minikube tunnel * Starting tunnel for service hello-node.
Bu sefer çıktı şöyle olur
>kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-minikube NodePort 10.103.194.22 <none> 8080:30072/TCP 59m hello-node LoadBalancer 10.110.209.73 127.0.0.1 8080:30501/TCP 51m kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 60m
Artık servisimize "http://127.0.0.1:8080/" olarak erişebiliriz.
Örnek
"minikube tunnel" komutunu çalıştırırdıktan sonra çıktı şöyle
> kubectl get service app-users NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE app-users LoadBalancer 10.104.184.147 10.104.184.147 8080:31434/TCP 24h
Hiç yorum yok:
Yorum Gönder