美文网首页
基于kubeadm的K8s安装文档

基于kubeadm的K8s安装文档

作者: Lukes_zhai | 来源:发表于2020-01-09 10:44 被阅读0次

基于上篇文章关于docker的安装,如果docker的安装过程已经完成,那么接下来我们对k8s进行安装

2.0 国内的源安装kubeadm、kubectl、kubelet

2.1更新镜像源

设置为阿里云镜像,安装ubuntu-16.04.6 kubernetes

$ sudo apt-get update && apt-getinstall -y apt-transport-https

$ curl -shttps://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -

$ at </etc/apt/sources.list.d/kubernetes.list

debhttps://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main

EOF

$ apt-get update

2.2 查看kubectl镜像源可安装版本

$ apt-cache policy kubectl

如图所示:

标红1:

Installed   :1.14.0.00  表示已经安装的版本

Candidate :1.14.0.00 表示候选项,及如果不指定安装版本则默认为最新版本

2.3 docker下载kuberbetes镜像

1查看kubernetes依赖版本

$ kubeadm version

如图所示安装指定的依赖版本即可

2:docker pull如上指定的版本寄了

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver: 1.13.5

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager: 1.13.5

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler: 1.13.5

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy: 1.13.5

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.2.24

docker pullregistry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.2.6

3:修改docker 上一步pull下来的docker镜像的tag,打标签的原因是kubeadm只认k8s.gcr.io的镜像

$ docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.13.5k8s.gcr.io/kube-scheduler: 1.13.5

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager: v1.13.5  k8s.gcr.io/kube-controller-manager: v1.13.5

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver: v1.13.5k8s.gcr.io/kube-apiserver: v1.13.5

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy: v1.13.5k8s.gcr.io/kube-proxy: v1.13.5

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1k8s.gcr.io/pause:3.1

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/etcd: 3.2.24k8s.gcr.io/etcd:3.2.24

$:docker tagregistry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.2.6k8s.gcr.io/coredns:1.2.6

2.3 安装kubernetes指定版本

$ sudo apt-get install -y kubelet=1.13.5-00kubeadm=1.13.5-00 kubectl=1.13.5-00

备注1:如果此处不指定安装版本,即如下:

$ sudo apt-get install -y kubelet kubeadmkubectl

则默认安装为最新版本。

备注2:

Kubernetes在安装过程中如果版本第一1.10,在安装过程中需要多加上kubernetes-cni,即kubernetes网络信息配置。

2.4 kubernetes初始化

$ sudo kubeadm init --kubernetes-version=1.13.5-00--pod-network-cidr=192.168.0.0/16 --ignore-preflight-errors=NumCPU

备注;

指定 Pod 网络的范围。Kubernetes 支持多种网络方案,而且不同网络方案对 --pod-network-cidr 有自己的要求,这里设置为 192.168.0.0/16 是因为我们将使用 flannel 网络方案,必须设置成这个CIDR。

另外,还可以加上 --apiserver-advertise-address 参数,该参数指明将使用master上哪个interface与cluster的其他节点通信。

如看到: 即表示安装成功:

2.5 隔离主节点

默认情况下,出于安全的考虑,并不会在主节点上运行pod,如果你想在主节点上运行pod,比如:运行一个单机版的kubernetes集群时,可运行下面的命令把master也作为一个节点

$ kubectl taintnodes --all node-role.kubernetes.io/master-

这时候查看master一直是NotReady状态,原因是网络插件没有安装,比如calico

解决办法:

1:安装集群网络插件Weave

$curl -L "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version |base64 | tr -d '\n')" > weave.yaml

2:配置weave.yaml文件

配置如下图:

添加:两个参数

-name : IPALLOC_RANGE

  value: 192.168.57.0/20

2.6 初始化完成配置

执行如下命令:

 $ kubectlget nodes

或者

 $kubectl get pods –all-namespaces

出现如下结果:

解决办法:

1:sudo swapoff–a  确认关闭虚拟内存

2: 配置kubernetes

$ mkdir -p$HOME/.kube

$ cp -i/etc/kubernetes/admin.conf $HOME/.kube/config

$ chown $(id-u):$(id -g) $HOME/.kube/config

3:至此问题解决 , 重新执行上面的命令,看到各个pod运行状况

2.6 验证安装完成

1 – 可以在浏览器访问 http://192.168.57.134:6443/

2- 也可下载gitlab的hello-kubernetes

1:下载地址如下:https://github.com/paulbouwer/hello-kubernetes

2:找到下载目录

执行$ kubectl apply -f hello-kubernetes.yaml

使其生效

3:外网访问

   http://apiserveraddress/api/v1/namespaces/namespace_name/services/service_name:[port_name]/proxy

参考引用:

https://kubernetes.io/zh/docs/setup/independent/install-kubeadm/

https://github.com/maguowei/kubernetes-for-china

https://github.com/ylzyqt/kubernetes-integration/blob/master/install/install.md

相关文章

网友评论

      本文标题:基于kubeadm的K8s安装文档

      本文链接:https://www.haomeiwen.com/subject/smqyactx.html