k8s多master建议用几个_ubuntu16搭建k8s集群
一,k8s简介Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。简言之,k8s为我们提供了容器的编排和调度,使应用部署更简单。k8s入门教程一:kubernetes简介www.wumingx.com二,环境依赖1,本文使用的为VMwa
一,k8s简介
Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
简言之,k8s为我们提供了容器的编排和调度,使应用部署更简单。
k8s入门教程一:kubernetes简介www.wumingx.com二,环境依赖
1,本文使用的为VMware上Ubuntu16虚拟机,安装的k8s版本为1.18.3
2,在安装k8s之前,需要先安装docker,教程在安装过程里
3,配置k8s集群至少需要2台虚拟机,一台master,另一台为node
4,mater的硬件分配至少2核2G内存(建议node也做同样分配)
5,2台虚拟机要设置静态IP,第二台虚拟机可以在第一台下载好kubelet后clone
Vmware虚拟机克隆详解:固定ip+修改uuid等内容_Unknownfuture的博客-CSDN博客blog.csdn.net6,两台虚拟机创建相同的用户名和密码
ubuntu16.04创建用户,赋予权限_qq_22532597的博客-CSDN博客blog.csdn.net三,安装过程
1,首先安装docker,参考下面的教程,注意设置镜像 (master和node都需要)
Ubuntu16.04+Docker安装+阿里云www.jianshu.com2,阿里源 安装 kubelet kubeadm kubectl (master和node都需要)
# 安装依赖
sudo apt-get update && apt-get install -y apt-transport-https
# 加载key
sudo curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
# 添加源
sudo cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
# 安装
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
3,关闭swap(交换区)和防火墙,否则会启动失败
sudo swapoff -a
上面命令是临时关闭交换区(立即生效),我们还需要永久关闭交换区,
vim /etc/fstab
打开fstab文件,注释掉有swap的那一行,然后保存
4,修改cgroupfs,否则会报错
打开如下文件
sudo vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
增加--cgroup-driver=cgroupfs
重启kubelet
sudo systemctl daemon-reload
sudo systemctl restart kubelet
5,安装flannel,这是k8s必须的一个插件,国外源无法直接下载(master和node都需要)
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
# 修改docker镜像地址
sed 's/quay.io/coreos/registry.cn-beijing.aliyuncs.com/imcto/g'
# 安装flannel
sudo kubectl apply -f kube-flannel.yml
6,初始化k8s集群
在master节点执行init
kubeadm init --apiserver-advertise-address=192.168.20.147 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version 1.18.3 --service-cidr=10.1.0.0/16 --pod-network-cidr=10.244.0.0/16
# pod-network-cidr是指配置节点中的pod的可用IP地址,此为内部IP
# apiserver-advertise-address 为master的IP地址
# kubernetes-version 通过kubectl version 可以查看到
根据提示输入命令。
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
将提示给的最后一行jion命令记下来,然后在node节点执行
kubeadm join 192.168.20.147:6443 --token 6kpluh.ftksfvdyl93z5w8c --discovery-token-ca-cert-hash sha256:47526c38dd6f2e9e08c91dd6a449383aba92566a65b5f2671726d80e246446a3
# kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>
四,集群测试
查看节点状态
kubectl get nodes
查看k8s版本
kubectl version
五,注意事项
1,查看错误日志的方法
sudo journalctl -f -u kubelet
六、参考资料
Ubuntu 部署 k8s集群 - 浩如yan海 - 博客园www.cnblogs.com Ubuntu16.04安装K8s步骤和踩坑记录_火星冰糖的博客-CSDN博客blog.csdn.net更多推荐
所有评论(0)