金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  423 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
用 kubeadm --config 创建 k8s 集群

(金庆的专栏 2018.5)

利用阿里云的yum镜像和docker镜像,可以不用代理直接安装创建 k8s 集群。

K8s 版本为 v1.10.3

参考:

https://blog.csdn.net/u010209217/article/details/78533936
Kubernetes 1.7.5部署以及kubernates-dashboard 1.7安装

https://www.cnblogs.com/liangDream/p/7358847.html
CentOS7.3利用kubeadm安装kubernetes1.7.3完整版(官方文档填坑篇)

https://yq.aliyun.com/articles/66474
阿里云快速部署Kubernetes - VPC环境

Docker 已安装。

采用阿里云的yum源镜像,直接安装:
yum -y install kubectl kubeadm kubelet

vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf, 为kubelet添加一个额外的参数,
这样kubelet就不会在启动pod的时候去墙外的k8s仓库拉取pause-amd64:3.0镜像了
--pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google-containers/pause-amd64:3.0

export KUBE_REPO_PREFIX 的方式指定kube镜像库已在1.8版本后无效,需要改为配置文件中配置 imageRepository。

kubeadm.yaml 示例:
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/

apiVersion: kubeadm.k8s.io/v1alpha1
kind: MasterConfiguration
api:
  advertiseAddress: "10.20.79.10"
networking:
  podSubnet: "10.244.0.0/16"
kubernetesVersion: "v1.10.3"
imageRepository: "registry.cn-hangzhou.aliyuncs.com/google_containers"

初始化命令为:
kubeadm init --config kubeadm.yaml

其他注意点:

需要开启 kubelet.service, 不然检查会报警告:
systemctl enable kubelet && systemctl start kubelet
需要关闭 swap:
[ERROR Swap]: running with swap on is not supported. Please disable swap
swapoff -a

可以查看 ls -ltr /etc/kubernetes/manifests/
yaml文件列表,每个文件都会写着镜像的地址和版本

[ERROR FileAvailable--etc-kubernetes-manifests-kube-apiserver.yaml]: /etc/kubernetes/manifests/kube-apiserver.yaml already exists
[ERROR Port-10250]: Port 10250 is in use
kubeadm会自动检查当前环境是否有上次命令执行的“残留”。如果有,必须清理后再行执行init。我们可以通过”kubeadm reset”来清理环境,以备重来。

journalctl -xeu kubelet
用来查看kubelet执行有什么错误。

failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" is different from docker cgroup driver: "cgroupfs"
需要修改 /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
sed -i "s/cgroup-driver=systemd/cgroup-driver=cgroupfs/g" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
systemctl daemon-reload && systemctl restart kubelet
posted on 2018-05-27 19:22 金庆 阅读(3425) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理