我在单个主机上安装了新的Kubernetes 1.6.2 master,现在尝试使用https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml启动Flannel
吊舱没有出现:
$ kubectl get pods kube-flannel-ds-l6gn4 --namespace kube-system
NAME READY STATUS RESTARTS AGE
kube-flannel-ds-l6gn4 1/2 CrashLoopBackOff 36 2h
$ kubectl logs kube-flannel-ds-l6gn4 --namespace kube-system kube-flannel
E0427 15:35:52.232093 1 main.go:127] Failed to create
SubnetManager: error retrieving pod spec for 'kube-system/kube-flannel-ds-l6gn4': the server does not allow access to the requested resource (get pods kube-flannel-ds-l6gn4)
我也尝试使用默认的serviceaccount,但它不会出现。
答案 0 :(得分:5)
如果您使用的是RBAC授权程序,则还需要创建https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel-rbac.yml以设置法兰绒服务帐户的角色和权限
答案 1 :(得分:3)
请注意,要使用法兰绒安装Kubernetes,您需要指定--pod-network-cidr
标志。见kubeadm init section
实施例
kubeadm init --pod-network-cidr=10.244.0.0/16
然后作为Jordan的Menionned,在某些环境中你需要安装RBAC
kubectl create -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel-rbac.yml
如果您仍然遇到问题,请检查
确保您的cni插件二进制文件位于/ opt / cni / bin中。您应该看到每个CNI加载项的相应二进制文件
确保网络加载项的CNI配置文件位于/etc/cni/net.d下。 [root @ node1] #ls /etc/cni/net.d 10 flannel.conf
运行ifconfig检查docker,flannel bridge和虚拟接口是否已启动
如github上提到的那样 https://github.com/kubernetes/kubernetes/issues/36575#issuecomment-264622923
如果有帮助,我写了complete blog post on the topic。
答案 2 :(得分:0)
对于可能最近才查找此文件的人,most recent docs指出正确的配置命令(对于启用RBAC的1.7+)是:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
请注意,还有instruction docs for older versions /没有RBAC,其状态为:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-legacy.yml
请注意,要在旧版本之上安装RBAC:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml