您的位置:首页 > 运维架构 > Kubernetes

Kubeadm初始化Kubernetes集群

2019-01-04 18:13 656 查看
版权声明:秉承开源精神,博主博文可以随机转载,但请注明出处! https://blog.csdn.net/zisefeizhu/article/details/85788746

不得不说的话:2019年1月4日,注定让我难忘,也注定要改变些什么!我所做的事只是为了在2019年的7月份可以找到一份工作,不至于我毕业就失业了。我爱运维吗?不爱!为什么一直在这条路上,无非是上了贼船还由得我选吗?

今天早上9点不到就开始了学习:Kubeadm初始化Kubernetes集群  我看到过前辈们在这块知识点上费了很多时间,所以我做好了用一天的时间来完成这块知识点。视频时间1小时24分整。我目前知道的是有三种方法可以部署kubernetes集群,前辈也和我建议过用二进制部署的方法即符合公司要求也可以少踩很多坑。可我想既然视频买了,书也买了,总不能不学一下吧,于是我决定先跟视频和书走一遍再二进制部署一遍再ansible部署一遍。事实证明,真的踩了许多坑,踩坑是高兴的,因为我做好了准备

中午想去吃饭,可看到错误还在那里,怎么也迈不动腿,随性坐下继续排错。今天啊从早上9点不到到下午17点52分,上了一趟厕所,其余的时间都在部署。终于成功了,心中很是开心。下面的路还有太多未知的坑,我愿意一个一个的来踩。

下面给出我在本次部署中的所有代码,不是懒得整理,我放出来只是想告诉我自己,这就是我今天所做的一切!!!

主机名 IP 作用
master 10.0.0.100 master节点
node01 10.0.0.101 node节点
node02 10.0.0.102 node节点

kubeamd

1.master, nodes:安装kubelet, kubeadm, docker

2.master:kubeadm init

3.nodes:kubadm join

https://github.com/kubernetes/kubeadm/blob/master/docs/design/design_v1.10.md

前提:时间一致;防火墙关闭,SElinx 关闭;

master

[code]79  vim /etc/hosts
80  date
81  yum install ntpdate -y
82  vim /etc/crontab
83  hwclock --systohc
84  history
85  systemctl statue filld
86  service iptables status
87   systemctl status firewalld
88  getenforce
89  cd /etc/yum.repos.d/
90  ls
91  wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
92  vim docker-ce.repo
93  vim kubernetes.repo
94  yum repolist
95  scp kubernetes.repo docker-ce.repo node01:/etc/yum.repos.d/
96  scp kubernetes.repo docker-ce.repo node02:/etc/yum.repos.d/
97  yum install docker-ce
98  yum install docker-ce kubelet kubeadm kubectl
99  vim kubernetes.repo
100  cd -
101  wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
102  ls
103  rpm --import yum-key.gpg
104  yum install docker-ce kubelet kubeadm kubectl
105  ll
106  wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
107  rpm --import rpm-package-key.gpg
108  wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
109  rpm --import rpm-package-key.gpg
110  yum install docker-ce kubelet kubeadm kubectl
111  history
112  vim /usr/lib/systemd/system/docker.service
113  cd /usr/lib/systemd/system/
114  cp docker.service{,.cp}
115  vim docker.service
116  systemctl daemon-reload
117  systemctl start docker
118  docker info
119  vim docker.service
120  systemctl daemon-reload
121  systemctl restart docker
122  docker info
123  vim /etc/sysctl.conf
124  cp /etc/sysctl.conf{,.cp}
125  vim /etc/sysctl.conf
126  systemctl restart docker
127  docker info
128  vim /etc/sysctl.conf
129  sysctl -p
130  docker info
131  cat /proc/sys/net/bridge/bridge-nf-call-ip6tables
132  cat /proc/sys/net/bridge/bridge-nf-call-iptables
133  rpm -ql kubelet
134  cat /etc/systemd/system/kubelet.service
135  cat /etc/sysconfig/kubelet
136  systemctl  start kubelet
137  systemctl  status kubelet
138  cat /var/log/messages
139  systemctl stop kubelet
140  systemctl enable kubelet
141  systemctl enable docker
142  kubeadm init
143  kubeadm init --help
144  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0/16 --service-cidr=10.96.0.0/12
145  /etc/systemd/system/kubelet.service
146  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12
147  free -m
148  vim /etc/sysconfig/kubelet
149  cp /etc/sysconfig/kubelet{,.cp}
150  vim /etc/sysconfig/kubelet
151  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ingnore-preflight-errors=Swap
152  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap
153  cd ~
154  scp rpm-package-key.gpg node01:/root
155  scp rpm-package-key.gpg node02:/root
156  scp yum-key.gpg node02:/root
157  scp yum-key.gpg node01:/root
158  docker image ;s
159  docker image ls
160  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap
161  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
162  docker
163  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
164  dig @114.114.114.114 registry-1.docker.io
165  yum install -y dig
166  yum install bind-utils
167  dig @114.114.114.114 registry-1.docker.io
168  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
169  vim /etc/hosts
170  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
171  vim /etc/hosts
172  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
173  history
174  cd /usr/lib/systemd/system/
175  vim docker.service
176  systemctl restart docker
177  systemctl stop docker
178  systemctl daemon-reload
179  systemctl restart docker
180  docker info
181  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
182  docker image ls
183  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
184  docker image ls
185  vim docker.service
186  history
187  docker image ls
188* docker tag  /mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1 k8s.gcr.io/kube-apiserver:v1.13.1
189  docker tag  mirrorgooglecontainers/kube-controller-manager-amd64:v1.13.1 k8s.gcr.io/kube-controller-manager:v1.13.1
190  docker image ls
191  docker tag  docker.io/mirrorgooglecontainers/kube-scheduler-amd64:v1.13.1 k8s.gcr.io/kube-scheduler:v1.13.1
192  docker image ls
193  docker tag  docker.io/mirrorgooglecontainers/kube-proxy-amd64:v1.13.1 k8s.gcr.io/kube-proxy:v1.13.1
194  docker image ls
195  docker tag  docker.io/mirrorgooglecontainers/pause:3.1 k8s.gcr.io/pause:3.1
196  docker tag  docker.io/mirrorgooglecontainers/etcd-amd64:3.2.24 k8s.gcr.io/etcd:3.2.24
197  docker tag  docker.io/coredns/coredns:1.2.6 k8s.gcr.io/coredns:1.2.6
198  docker image ls
199  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
200  docker image ls
201  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
202  dig @114.114.114.114 registry-1.docker.io
203  vim /etc/hosts
204  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
205  vim /etc/hosts
206  dig @114.114.114.114 registry-1.docker.io
207  vim /etc/hosts
208  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
209  systemctl restart docker
210  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
211  docker image ls
212  vim /etc/hosts
213  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
214  vim docker.service
215  ll
216   docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
217  ping 47.106.109.149
218  ssh root@47.106.109.149
219  rsync -avz -e 'ssh -p22'   root@47.106.109.149:/root/my.gz
220  docker image ls
221  rz
222  ll
223  docker load -i my.gz
224  docker image ls
225  docker tag  mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1 k8s.gcr.io/kube-apiserver:v1.13.1
226  docker image ls
227  docker image --h
228  docker image rm mirrorgooglecontainers/kube-proxy-amd64
229  docker image rm mirrorgooglecontainers/kube-proxy-amd64:v1.13.1
230  docker image ls
231  docker image rm mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
232  docker image ls
233  docker image rm mirrorgooglecontainers/kube-controller-manager-amd64:v1.13.1
234  docker image ls
235  docker image rm mirrorgooglecontainers/kube-scheduler-amd64:v1.13.1
236  docker image ls
237  docker image rm coredns/coredns:1.2.6
238  docker image ls
239  docker image rm mirrorgooglecontainers/etcd-amd64:3.2.24
240  docker image ls
241  docker image rm mirrorgooglecontainers/pause:3.1
242  docker image ls
243  docker save -o k8s-1.13.1.gz k8s.gcr.io/kube-proxy:v1.13.1 k8s.gcr.io/kube-controller-manager:v1.13.1 k8s.gcr.io/kube-scheduler:v1.13.1 k8s.gcr.io/kube-apiserver:v1.13.1 k8s.gcr.io/coredns:1.2.6 k8s.gcr.io/etcd:3.2.24 k8s.gcr.io/pause:3.1
244  ll
245  sz k8s-1.13.1.gz
246  history
247  cd ~
248  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
249  kubectl get
250  kubectl get -h
251  kubectl get cs
252  kubectl get componentstatus
253  kubectl get nodes
254  vim /etc/hosts
255  kubectl get nodes
256  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
257  kubectl get pods
258  docker image ls
259  kubectl get pods
260  kubectl get nodes
261  docker image ls
262  docker search flannel
263  docker image ls
264  kubectl describe node master
265   kubectl get pod -n kube-system -o wide
266  kubectl get nodes
267  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
268  kubectl get nodes
269  docker image ls
270  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
271  kubectl get pods -n kube-system
272  echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> /etc/profile
273  source /etc/profile
274  echo $KUBECONFIG
275  sysctl net.bridge.bridge-nf-call-iptables=1
276  vim kube-flannel.yaml
277  kubectl apply -f kube-flannel.yaml
278  kubectl get pods --all-namespaces -o wide
279  docker image ls
280  history
281  docker image ls
282  docker pull quar.io/coreos/flannel:v0.10.0-adm64
283  kubectl get pods
284  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
285  vim /etc/hosts
286  docker image ls
287  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.10.0/Documentation/kube-flannel.yml
288  docker imkage ls
289  systemctl restart docker\
290  systemctl restart docker
291  docker image ls
292  docker pull quay.io/coreos/flannel:v0.10.0-amd64
293  docker info
294  docker image ls
295  rz
296  docker load -i flannel.tar
297  docker image ls
298  kubectl get nodes
299  kubectl get pods -n kube-system
300  kubectl get ns
301  scp /etc/sysconfig/kubelet node01:/etc/sysconfig/
302  systemctl start docker
303  docker info
304  systemctl enable docker kublet
305  systemctl enable docker kubelet
306  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
307  history
308  scp /etc/sysconfig/kubelet node02:/etc/sysconfig/
309  kubectl get nodes
310  history

79  vim /etc/docker/daemon.json
80  history
81  systemctl restart docker
82  docker pull mirrorgooglecontainers/kube-controller-manager-amd64:v1.13.1
83  docker image ls
84  docker pull mirrorgooglecontainers/kube-scheduler-amd64:v1.13.1
85  docker image ls
86  docker pull mirrorgooglecontainers/kube-scheduler-amd64:v1.13.1
87  docker image ls
88  docker pull mirrorgooglecontainers/kube-proxy-amd64:v1.13.1
89  docker image ls
90  docker pull mirrorgooglecontainers/pause:3.1
91  docker image ls
92  docker pull mirrorgooglecontainers/etcd-amd64:3.2.24
93  docker image ls
94  docker pull coredns/coredns:1.2.6
95  docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.13.1
96  vim /etc/hosts
97  docker image ls
98  mkdir -p $HOME/.kube
99  cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
100  kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap
101  history
102  ss -tnl
103  docker image ls
104  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
105  docker image ls
106  kubectl get pods
107  kubectl get nodes
108  kubectl get pod --all-namespaces -o wide
109  docker image ls
110  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
111  ll
112  rm -rf yum-key.gpg.1
113  ll
114  docker image ls
115  docker info
116  docker image ls
117  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
118  kubectl get pods
119  ss -tnl
120  kubectl get pods
121  docker images ls
122  docker image ls
123  kubectl get pods
124  docker image ls
125  kubectl get pods
126  docker image ls
127  kubectl get pods
128  kubectl get nodes
129  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
130  kubectl get pods
131  docker image ls
132  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
133  docker image ls
134  cd /var/lib/systemd/
135  ll
136  cd ..
137  kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
138  docker image ls
139  kubectl get nodes
140  kubectl get pod --all-namespaces -o wide
141  docker image ls
142  docker pull nginx
143  docker image ls
144  docker image rm nginx
145  docker image ls
146  kubectl get cs
147  docker pull quay.io/coreos/flannel:v0.10.0-ppc64le
148   kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
149  vim /etc/docker/daemon.json
150  scp /usr/lib/systemd/system/docker.service node01:/usr/lib/systemd/systemd/
151  scp /usr/lib/systemd/system/docker.service node01:/usr/lib/systemd/systemd/docker.service
152  kubectl get nodes
153  kubectl get pods -n kube-system
154  kubectl get pods -n kube-system -o wide
155  kubectl get nodes
156  history

node01

[code]79  vim /etc/hosts
80  date
81  yum install ntpdate -y
82  vim /etc/crontab
83  hwclock --systohc
84  history
85  rpm --import rpm-package-key.gpg
86  yum install dockerce kubelet kubeadm
87  yum install docker-ce
88  history
89  docker image ls
90  vim /etc/hosts
91  cd /usr/
92  cd lib
93  cd systemd/
94  cd system
95  ll
96  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
97  systemctl start docker
98  docker info
99  systemctl enable docker kubelet
100  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
101   echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables
102  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
103  docker image ls
104  rz
105  ll
106  mv k8s-1.13.1.gz  ~
107  cd ~
108  ll
109  docker load -i k8s-1.13.1.gz
110  docker image ls
111  rz
112  docker load -i flannel.tar
113  docker image ls
114  docker image rm k8s.gcr.io/kube-scheduler:v1.13.1
115  docker image ls
116  docker image rm k8s.gcr.io/kube-controller-manager:v1.13.1
117  docker image rm k8s.gcr.io/kube-apiserver:v1.13.1
118  docker image rm k8s.gcr.io/coredns:1.2.6
119  docker image rm k8s.gcr.io/etcd:3.2.24
120  docker image ls
121  history
122  docker image ls
123  docker  save -o k8s.1.13.1.node.tar k8s.gcr.io/kube-proxy:v1.13.1 quay.io/coreos/flannel:v0.10.0-amd64 k8s.gcr.io/pause:3.1
124  ll
125  rz flannel.tar
126  sz flannel.tar
127  scp flannel.tar node02:~
128  history

node02

[code]79  vim /etc/hosts
80  date
81  crontab -e
82  yum install ntpdate -y
83  vim /etc/crontab
84  date
85  hwclock --systohc
86  hwclock
87  vim /etc/crontab
88  rpm --import rpm-package-key.gpg
89  yum install dockerce kubelet kubeadm
90  yum install docker-ce
91  history
92  systemctl start docker
93  systemctl enable docker kubelet
94  echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables
95  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
96  echo $?
97  ll
98  yum install dockerce kubelet kubeadm
99  docker image ls
100  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
101  systemctl start docker
102  docker info
103  systemctl enable docker kubelet
104  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
105  echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables
106  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
107  cd /etc/kubernetes/
108  ll
109  rm -f kubelet.conf
110  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
111  ll
112  rm -rf *
113  ll
114  cd ..
115  cd kubernetes/
116  ll
117  cd /etc/sysconfig/
118  ll
119  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
120  kubeadm reset
121  kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf --ignore-preflight-errors=Swap
122  cd ~
123  ll
124  docker load -i flannel.tar
125  docker image ls
126  ll
127  docker imager ls
128  docker image ls
129  rz
130  ll
131  docker image ls
132  docker load -i k8s-1.13.1.gz
133  docker image rm k8s.gcr.io/kube-scheduler:v1.13.1
134  docker image rm k8s.gcr.io/kube-controller-manager:v1.13.1
135  docker image rm k8s.gcr.io/kube-apiserver:v1.13.1
136  docker image rm k8s.gcr.io/coredns:1.2.6
137  docker image ls
138  docker image rm k8s.gcr.io/etcd:3.2.24
139  docker image ls
140  history

 

kubeadm join 10.0.0.100:6443 --token ew86kc.3ggc6sml79d453tk --discovery-token-ca-cert-hash sha256:e730e1bf71edd7e18eabf4b2bb65397cb65fdb2d4657df269eb85beb320eb2cf

 

 

我排错过程中借助的其中两篇博文

https://www.geek-share.com/detail/2755793060.html

https://blog.csdn.net/zhydream77/article/details/81909939

:所需部署 Kubernetes 1.13.1的全部软件我都有,有需要请评论说出,我免费给!

                                                                                                                            ---2019年1月4日

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: