kubeadm 安装 kubernetes 1.4.6

前端之家收集整理的这篇文章主要介绍了kubeadm 安装 kubernetes 1.4.6前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

kubeadm 安装 kubernetes 1.4.6

  • 准备
  • 安装docker
  • 下载镜像
  • 安装kubernetes
  • 安装kubernetes-dashbord

准备

机器名 ip
centos7-kubermaster 192.168.10.130
centos7-kuber146node1 192.168.10.131
centos7-kuber146node2 192.168.10.132

master 和node的修改hosts 文件

  1. 192.168.10.130 centos7-kubermaster
  2. 192.168.10.131 centos7-kuber146node1
  3. 192.168.10.132 centos7-kuber146node2

或者

  1. hostnamectl --static set-hostname <hostname>

安装DOCKER

详细安装方法参照官网文档
传送门docker安

下载镜像

因为伟大GWF的原因,要想直接安装成功是不可能的。因为gcr.io/google_containers 下的镜像不可访问。
于是这里要借助github + docker hub的方式来解决镜像问题。通过github 编写dockerfile,然后通过docker hub 的自动构建任务来获取gcr.io/google_containers中的镜像,然后本地在从docker hub 下载镜像。
首先要有一个github 的repo,可以直接从我准备好的repo fork 传送门

然后进入docker hub

1 创建自动构建工程


2 选择github 方式


3 选中自己的github repo


4 设置build setting


5 点击trigger build 项目,查看build结果

6 本地拉去镜像

  1. docker pull yudar1024/docker-library:etcd-amd64-2.2.5

7 将本地yudar1024/docker-library:etcd-amd64-2.2.5 镜像 打成google的镜像

  1. docker tag yudar1024/docker-library:etcd-amd64-2.2.5 gcr.io/google_containers/etcd-amd64:2.2.5
  2.  
  3. docker rmi yudar1024/docker-library:etcd-amd64-2.2.5

安装kubernetes

安装kubelet(所有节点,包括master 和node)

  1. # cat <<EOF > /etc/yum.repos.d/kubernetes.repo
  2. [kubernetes]
  3. name=Kubernetes
  4. baseurl=http://yum.kubernetes.io/repos/kubernetes-el7-x86_64
  5. enabled=1
  6. gpgcheck=1
  7. repo_gpgcheck=1
  8. gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
  9. https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
  10. EOF
  11. # setenforce 0
  12. yum install -y kubelet kubeadm kubectl kubernetes-cni
  13. systemctl enable kubelet && systemctl start kubelet

安装master

  1. kubeadm init --api-advertise-addresses=192.168.10.130 --use-kubernetes-version v1.4.6

记录token

  1. kubeadm join --token=2f16a0.0daacdab5df146df 192.168.10.130

安装node,在所有node 执行

  1. kubeadm join --token=2f16a0.0daacdab5df146df 192.168.10.130

查看集群状态

  1. [root@centos7-kubermaster ~]# kubectl get nodes
  2. NAME STATUS AGE
  3. centos7-kuber146node1 Ready 2h
  4. centos7-kuber146node2 Ready 2h
  5. centos7-kubermaster Ready 2h

安装pod network ( add-on)

下载weave yaml 文件

  1. curl -O https://git.io/weave-kube

打开刚刚下载的weave-daemonset.yaml,找到image元素,可以看到需要如下两个镜像
image: weaveworks/weave-kube:1.8.1
weaveworks/weave-npc:1.8.1

  1. 安装网络
  2. docker pull weaveworks/weave-kube:1.8.1
  3. docker pull weaveworks/weave-npc:1.8.1
  4. kubectl apply -f https://git.io/weave-kube
  5.  
  6.  
  7. 查看结果
  8. [root@centos7-kubermaster ~]# kubectl get pods --all-namespaces
  9. NAMESPACE NAME READY STATUS RESTARTS AGE
  10. kube-system dummy-2088944543-0v299 1/1 Running 0 2h
  11. kube-system etcd-centos7-kubermaster 1/1 Running 0 2h
  12. kube-system kube-apiserver-centos7-kubermaster 1/1 Running 0 2h
  13. kube-system kube-controller-manager-centos7-kubermaster 1/1 Running 0 2h
  14. kube-system kube-discovery-1150918428-eclmt 1/1 Running 0 2h
  15. kube-system kube-dns-654381707-l2pu6 3/3 Running 0 2h
  16. kube-system kube-proxy-5wyav 1/1 Running 0 2h
  17. kube-system kube-proxy-dwjbj 1/1 Running 0 2h
  18. kube-system kube-proxy-igp1e 1/1 Running 0 2h
  19. kube-system kube-scheduler-centos7-kubermaster 1/1 Running 0 2h
  20. kube-system kubernetes-dashboard-3109394916-msusa 1/1 Running 0 2h
  21. kube-system weave-net-7yj7g 2/2 Running 0 2h
  22. kube-system weave-net-cdf66 2/2 Running 0 2h
  23. kube-system weave-net-wgx8g 2/2 Running 0 2h
  1. ### 推送配置到集群
  2. # 备份master节点的 配置文件
  3.  
  4. /etc/kubernetes/admin.conf
  5.  
  6. #保存至 其他电脑,通过执行配置文件控制集群
  7.  
  8. kubectl --kubeconfig ./admin.conf get nodes

安装dashbord

  1. #下载 yaml 文件,直接导入会去官方拉取images
  2.  
  3. curl -O https://rawgit.com/kubernetes/dashboard/master/src/deploy/kubernetes-dashboard.yaml
  4.  
  5.  
  6. #编辑 yaml 文件
  7.  
  8. vi kubernetes-dashboard.yaml
  9. #grc 的镜像都需要预先通过 dockerhub 中转拉取
  10. image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.4.0
  11.  
  12. 修改
  13.  
  14. image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.4.2
  15.  
  16.  
  17. imagePullPolicy: Always
  18.  
  19. 修改
  20.  
  21. imagePullPolicy: IfNotPresent
  22.  
  23. #执行如下命令
  24. kubectl create -f ./kubernetes-dashboard.yaml
  25.  
  26. # 查看 NodePort ,既外网访问端口
  27.  
  28. kubectl describe svc kubernetes-dashboard --namespace=kube-system
  29.  
  30. Port: <unset> 80/TCP
  31. NodePort: <unset> 30451/TCP

浏览器访问 http://192.168.10.130:30451
完成

原创文章,转载请保留出处

猜你在找的CentOS相关文章