kubernetes(5): 安装kubeadm-dind-cluster 遇到的问题,终于跑起来了

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/80017212

1,关于kubeadm-dind-cluster


昨天研究了下,kubeadm-dind-cluster 。
已经启动了。但是dashboard 没有启动成功。

https://blog.csdn.net/freewebsys/article/details/80002439

在弄的时候遇到点问题。总结下。

2,设置sysctl.conf


设置/etc/sysctl.conf 配置文件

echo -e "net.bridge.bridge-nf-call-ip6tables = 1\n\
net.bridge.bridge-nf-call-iptables = 1\n\
net.ipv6.conf.all.disable_ipv6=1\n\" > /etc/sysctl.conf

#替换第一个local_host 让端口暴露出来。
sed -i -e "1,/ \${local_host}://" dind-cluster-v1.8.sh
#删除 imagePullPolicy: Always 不用每次都拉去
sed -i -e "s/imagePullPolicy: Always//" kubernetes-dashboard.yaml
#替换本地文件
sed -i '143cDASHBOARD_URL=kubernetes-dashboard.yaml'  dind-cluster-v1.8.sh 

这个只是开始启动的时候报warning 信息的。

3,登录node1,node2,下载镜像


https://anjia0532.github.io/2017/11/15/gcr-io-image-mirror/
https://github.com/anjia0532/gcr.io_mirror
在 hub.docker.io 上面有gcr.io images 的镜像。
下载之后再重新打个tag 重命名下就行了。

docker exec -it kube-node-1 bash 
docker exec -it kube-node-2 bash 
#然后执行下载镜像:

docker pull anjia0532/k8s-dns-kube-dns-amd64:1.14.5
docker tag anjia0532/k8s-dns-kube-dns-amd64:1.14.5 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.5

docker pull anjia0532/k8s-dns-dnsmasq-nanny-amd64:1.14.5
docker tag anjia0532/k8s-dns-dnsmasq-nanny-amd64:1.14.5 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.5

docker pull anjia0532/k8s-dns-sidecar-amd64:1.14.5
docker tag anjia0532/k8s-dns-sidecar-amd64:1.14.5 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.5

docker pull anjia0532/kubernetes-dashboard-amd64:v1.6.0
docker tag anjia0532/kubernetes-dashboard-amd64:v1.6.0 gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0

4,启动dashboard


修改dashboard 配置文件:

curl -o https://rawgit.com/kubernetes/dashboard/bfab10151f012d1acc5dfb1979f3172e2400aa3c/src/deploy/kubernetes-dashboard.yaml
sed -i -e "s/imagePullPolicy: Always//" kubernetes-dashboard.yaml
#要是启动失败,手动启动。
kubectl delete -f kubernetes-dashboard.yaml
kubectl create -f kubernetes-dashboard.yaml

sed -i -e "s/imagePullPolicy: Always//" kubernetes-dashboard.yaml

再观察下 pods 发现都起来了。包括dashboard也起来了。

# kubectl -n kube-system get pods
NAME                                    READY     STATUS    RESTARTS   AGE
etcd-kube-master                        1/1       Running   1          1h
kube-apiserver-kube-master              1/1       Running   1          1h
kube-controller-manager-kube-master     1/1       Running   1          1h
kube-dns-855bdc94cb-l2zgh               3/3       Running   0          1h
kube-proxy-ddc27                        1/1       Running   0          1h
kube-proxy-v4lwv                        1/1       Running   0          1h
kube-proxy-xvn9z                        1/1       Running   0          1h
kube-scheduler-kube-master              1/1       Running   1          1h
kubernetes-dashboard-6b767fb7fd-lp9cg   1/1       Running   0          1h

5,访问dashboard


因为做了本地proxy 所以可以直接访问 8080 地址:

http://localhost:8080/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxy/

终于起来了:

6,总结


kubeadm-dind-cluster 项目还是比较有意思的。
写的已经很不错了。可惜国内网络不好。要不然直接就起来了。
使用了hub上面的镜像,然后重命名了下。
dashboard 每次都拉去新的,所以启动不了。
修改 kubernetes-dashboard.yaml 然后再重新启动下。
由于使用的是dind 的方式,所以集群主机是访问不了的。
用最快速的,最简单的方式搭建了一个k8s 3个实例的集群。
用来研究是非常不错的。

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/80017212

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。博主地址:http://blog.csdn.net/freewebsys https://blog.csdn.net/freewebsys/article/details/80017212
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭