【问题标题】:Kubernetes/CoresOS Nodes cannot communicate to ApiServer Kube Proxy issuesKubernetes/CoresOS 节点无法与 ApiServer Kube 代理通信问题
【发布时间】:2017-10-16 21:59:03
【问题描述】:
【问题讨论】:
标签:
kubernetes
kube-proxy
【解决方案1】:
问题是 kubelets /etc/kubernetes/manifests/kube-proxy.yaml 中的配置问题
这一行 - --master=https:// 需要 https:// 而我只有 IP 192.168.3.220。下面是我的工作 kube-proxy.yaml
apiVersion: v1
kind: Pod
metadata:
name: kube-proxy
namespace: kube-system
spec:
hostNetwork: true
containers:
- name: kube-proxy
image: quay.io/coreos/hyperkube:v1.6.1_coreos.0
command:
- /hyperkube
- proxy
- --master=https://192.168.3.240
- --kubeconfig=/etc/kubernetes/worker-kubeconfig.yaml
- --proxy-mode=iptables
securityContext:
privileged: true
volumeMounts:
- mountPath: /etc/ssl/certs
name: "ssl-certs"
- mountPath: /etc/kubernetes/worker-kubeconfig.yaml
name: "kubeconfig"
readOnly: true
- mountPath: /etc/kubernetes/ssl
name: "etc-kube-ssl"
readOnly: true
volumes:
- name: "ssl-certs"
hostPath:
path: "/usr/share/ca-certificates"
- name: "kubeconfig"
hostPath:
path: "/etc/kubernetes/worker-kubeconfig.yaml"
- name: "etc-kube-ssl"
hostPath:
path: "/etc/kubernetes/ssl"
该指南很棒,只是在这方面有点误导,因为在 /etc/systemd/system/kubelet.service 之前的直接代码 sn-p 中它具有 --api-servers=https:/ /${MASTER_HOST} \ 带有 https:// ,其中 /etc/kubernetes/manifests/kube-proxy.yaml 的 yaml 有 - --master=${MASTER_HOST} 没有 https:// 前缀