0
votes

I have been working on a very innovative project which involves both Kubernetes and Istio. So, I have 2-node kubernetes cluster setup with istio installed withe their side cars in the pods. I have already hosted the bookinfo application in the nodes but by using a separate VM by following the procedures given in Istio Mesh-Expansion.

So I have VM where the details and Mysqldb pods are present. The other pods are running in the k8s cluster. So Now, They communicate within a private network.

So my next phase of project would require me to setup Kube-proxy separately without installing Kubernetes in the VM, so as to allow it to directly communicate to the Kube-Api Server running in the master nodes of the k8s cluster through the private network. Hence, Can anybody suggest a way how to go about this?

1
You can probably add that node to cluster and then taint it such that no pods are scheduled on that node? This makes sure that node is Kubernetes managed, Kube proxy is running as well as allows you to run stuff you want to run?Vishal Biyani
Nope The whole project is to have kube-proxy running on a VM without kubernetes installed in the vm. We should have a independent kube-proxy which generates iptables in such a way that we can communicate to the other pods within the k8s cluster as if it was inside the k8s clusterusha narayanan

1 Answers

0
votes

All components of Kubernetes should be connected to the kube-api. Otherwise, they will not work.

So my next phase of project would require me to setup Kube-proxy separately without installing Kubernetes in the VM, so as to allow it to directly communicate to the Kube-Api Server running in the master nodes of the k8s cluster through the private network.

To access the kube-api server using Service with the private ClusterIP address, you should already have a kube-proxy. So, it is impossible to use any ClusterIP private address until you setup kube-proxy which is communicating with your kube-api by its address outside the Cluster IP range.

Kube-api can be exposed using NodePort or LoadBalancer type of service.