微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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 文件

192.168.10.130 centos7-kubermaster
192.168.10.131 centos7-kuber146node1
192.168.10.132 centos7-kuber146node2

或者

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 本地拉去镜像

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

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

docker tag yudar1024/docker-library:etcd-amd64-2.2.5 gcr.io/google_containers/etcd-amd64:2.2.5

docker rmi yudar1024/docker-library:etcd-amd64-2.2.5

安装kubernetes

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

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

安装master

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

记录token

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

安装node,在所有node 执行

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

查看集群状态

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

安装pod network ( add-on)

下载weave yaml 文件

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

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

安装网络
docker pull weaveworks/weave-kube:1.8.1
docker pull weaveworks/weave-npc:1.8.1
kubectl apply -f https://git.io/weave-kube


查看结果 
[root@centos7-kubermaster ~]# kubectl get pods --all-namespaces
NAMESPACE     NAME                                          READY     STATUS    RESTARTS   AGE
kube-system   dummy-2088944543-0v299                        1/1       Running   0          2h
kube-system   etcd-centos7-kubermaster                      1/1       Running   0          2h
kube-system   kube-apiserver-centos7-kubermaster            1/1       Running   0          2h
kube-system   kube-controller-manager-centos7-kubermaster   1/1       Running   0          2h
kube-system   kube-discovery-1150918428-eclmt               1/1       Running   0          2h
kube-system   kube-dns-654381707-l2pu6                      3/3       Running   0          2h
kube-system   kube-proxy-5wyav                              1/1       Running   0          2h
kube-system   kube-proxy-dwjbj                              1/1       Running   0          2h
kube-system   kube-proxy-igp1e                              1/1       Running   0          2h
kube-system   kube-scheduler-centos7-kubermaster            1/1       Running   0          2h
kube-system   kubernetes-dashboard-3109394916-msusa         1/1       Running   0          2h
kube-system   weave-net-7yj7g                               2/2       Running   0          2h
kube-system   weave-net-cdf66                               2/2       Running   0          2h
kube-system   weave-net-wgx8g                               2/2       Running   0          2h
### 推送配置到集群
 # 备份master节点的 配置文件

 /etc/kubernetes/admin.conf

 #保存至 其他电脑,通过执行配置文件控制集群

 kubectl --kubeconfig ./admin.conf get nodes

安装dashbord

#下载 yaml 文件,直接导入会去官方拉取images

curl -O https://rawgit.com/kubernetes/dashboard/master/src/deploy/kubernetes-dashboard.yaml


#编辑 yaml 文件

vi kubernetes-dashboard.yaml
#grc 的镜像都需要预先通过 dockerhub 中转拉取
image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.4.0

修改image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.4.2


imagePullPolicy: Always

修改imagePullPolicy: IfNotPresent

#执行如下命令
kubectl create -f ./kubernetes-dashboard.yaml

# 查看 NodePort ,既外网访问端口

kubectl describe svc kubernetes-dashboard --namespace=kube-system

Port:           <unset> 80/TCP
NodePort:       <unset> 30451/TCP

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

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

原文地址:https://www.jb51.cc/centos/379687.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。