到这里购买安装包1.8.1 html
安装包1.9.2node
注意1.9.2安装方式见商品页面,与1.8.1有点差异,作一些配置和脚本的优化docker
选装,dashboard,master安装完就能够装这个了,这样dashboard不会调度到node节点:
执行init-dashboard.sh
把type:ClusterIP改为 NodePort 而后访问dashboard所在节点+端口号便可。vim
没有而后了,任何问题联系我,100%安装成功。网络
kubelet服务启动不了?
cgroup driver配置要相同curl
查看docker cgroup driver:tcp
docker info|grep Cgroup
有systemd和cgroupfs两种,把kubelet service配置改为与docker一致ide
vim /etc/systemd/system/kubelet.service.d/10-kubeadm.confoop
KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs #这个配置与docker改为一致优化
节点not ready ?
建议安装calico网络,若是要把主节点当成node节点须要加个命令:
[root@dev-86-202 ~]# kubectl taint nodes --all node-role.kubernetes.io/master-
dashboard 访问不了?
若是是NodePort方式访问,那须要知道dashboard服务具体调度到哪一个节点上去了。访问那个节点的ip而不是master的ip。
不行的话把https 改为http试试。
查看具体在哪一个节点
kubectl get pod -n kube-system -o wide
拉取镜像失败?
能够把node节点与master节点的镜像都在每一个节点load一下。
dashboard crash, dns起不来?
能够把node节点与master节点的镜像都在每一个节点load一下。
192.168网段与calico网段冲突?
若是你刚好也是192.168网段,那么建议修改一下calico的网段
这样init
kubeadm init --pod-network-cidr=192.168.122.0/24 --kubernetes-version v1.8.1
修改calico.yaml
- name: FELIX_DEFAULTENDPOINTTOHOSTACTION value: "ACCEPT" # Configure the IP Pool from which Pod IPs will be chosen. - name: CALICO_IPV4POOL_CIDR value: "192.168.122.0/24" - name: CALICO_IPV4POOL_IPIP value: "always" # Disable IPv6 on Kubernetes. - name: FELIX_IPV6SUPPORT value: "false"
dns 半天起不来?
dns镜像若是load成功了的话,多是机器配置过低,起的会很是慢,有朋友 单核2G上15分钟没启动成功。 建议双核4G以上资源
kubelet unhealthy?
[kubelet-check] The HTTP call equal to 'curl -sSL http://localhost:10255/healthz/syncloop' failed with error: Get http://localhost:10255/healthz/syncloop: dial tcp 127.0.0.1:10255: getsockopt: connection refused. [kubelet-check] It seems like the kubelet isn't running or healthy.
多是manifast已经存在,删除便可:
[root@dev-86-205 kubeadm]# rm -rf /etc/kubernetes/manifests
时间超过24小时,节点加不进去?
[root@dev-86-208 test]# kubeadm token create [kubeadm] WARNING: starting in 1.8, tokens expire after 24 hours by default (if you require a non-expiring token use --ttl 0) 887ac7.e82f0e13ad72c367
上面命令从新生成一下token,执行kubeadm join 时用上面的token替换一下,若是想永远不过时init时把ttl设置成0
--token-ttl duration