在集群的每个节点上都应该运行一个Kube-Proxy服务,通过监听APIServer中的Service和EndPoint的变动情况,来为服务配置负载均衡,让我们的服务在集群中可以被访问到。
对于Kube-Proxy来说,也需要配置认证信息。在所有的工作节点上执行“mkdir-p /etc/Kubernetes/ca/kube-proxy”、 “cp ~/KubePre/target/ca/kubeproxy/kube-proxy-csr.json /etc/Kubernetes/ca/kube-proxy”、“cd /etc/Kubernetes/ca/kubeproxy”、“cfssl gencert-ca=/etc/Kubernetes/ca/ca.pem -ca-key=/etc/Kubernetes/ca/cakey.pem -config=/etc/Kubernetes/ca/ca-config.json -profile=Kubernetes kube-proxy-csr.json |cfssljson -bare kubeproxy”命令,生产所需的私钥和证书文件。其名称分别为“kube-proxy-key.pem”和“kube-proxy.pem”文件,之后需要创建Kube-Proxy.kubeconfig的配置文件。
执 行“kubectl config set-cluster Kubernetes -certificate-authority=/etc/Kubernetes/ca/ca.pem-embed-certs=true--server=https://xxx.xxx.xxx.xxx:6443”、“kubectlconfig=kubeproxy.kubeconfig”、“kubectl config setcredentials kube-proxy--client-certificate=/etc/Kubernetes/ca/kube-proxy/kube-proxy.pem -client-key=/etc/Kubernetes/ca/kubeproxy/kube-proxy-key.pem --embed-certs=true--kubeconfig=kubeproxy.kubeconfig”、“kubectl config setcontext default--cluster=Kubernetes-user=kube-proxy -kubeconfig=kube-proxy.kubeconfig ”命令,设置上下文信息。
执 行“kubectl config use-context default -kubeconfig=kube-proxy.kubeconfig”命 令,选 择上下文。执行“mv kubeproxy.kubeconfig /etc/Kubernetes/kube-proxy.kubeconfig”命令,生成名为“kube-proxy.kubeconfig”的配置文件,并将其移动到指定路径。
按照上述方法,将“worker-node”目 录 中 的“kube-proxy.service” 文件复制到“/lib/systemd/system” 目 录 中。 执 行“systemctl enable kubeproxy.service”、“apt install conntrack”、“service kube-proxy start”命令,来启动Kube-Proxy服务。