可以查看b站动力节点视频学习更多
请移步链接查看k8s简介
1、Linux系统
2、硬件配置:2GB+,CPU 2核+
3、集群间可相互通信
4、集群可以访问外网(这个比较方便拉取镜像,离线操作另请搜索)
5、禁止swap分区
禁止防火墙
#临时
systemtcl stop firewalld
#永久
systemtcl disable firewalld
关闭swap
#临时
swapoff -a
#永久
sed -ri 's/.*swap.*/#&/' /etc/fstab
在master节点上添加nodes
#打开这个文件
vim /etc/hosts
#添加以下两行
192.168.xx.xxx master
192.168.xx.xxx client
#这里部署两台机器,需要添加对应的ip地址,一台作为服务节点,一台作为客户机。
设置网桥参数
#打开配置
vim /etc/sysctl.d/k8s.conf
#添加以下两行
net.bridge.bridge-nf-call-ip6tables=1
net.bridge.bridge-nf-call-iptables=1
#保存并退出后,输入命令使其生效
sysctl --system
时间同步
#安装插件
sudo apt-get install ntpdate -y
#同步时间
ntpdate time.windows.com
因为k8s属于管理容器的一个软件,所以必须现有容器才行
移步Docker教程
先卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
更新apt
sudo apt-get update
安装依赖包
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
添加Docker gpg 密钥
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
设置稳定版仓库
sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(lsb_release -cs) \
stable"
再次更新apt
sudo apt-get update
查看可用版本
apt-cache madison docker-ce
安装特定版本
sudo apt-get install docker-ce= docker-ce-cli= containerd.io
#将更换成你想要的版本字符串 比如5:19.03.14~3-0~ubuntu-bionic
测试是否安装成功
sudo docker run hello-world
如果成功你会看到docker的启动信息!
可以配置一下镜像加速
#没有这个文件你就建一个
vim /etc/docker/daemon.json
#加入
{
#这个地址你要自己去阿里云上注册,具体请搜一下怎么申请
"registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
}
创建kubernetes的source文件:
sudo curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
sudo tee /etc/apt/sources.list.d/kubernetes.list <<-'EOF'
deb https://mirrors.aliyun.com/kubernetes/apt kubernetes-xenial main
EOF
sudo apt-get update
查看可用的版本
apt-cache madison kubeadm
安装指定版本
#你可以换成你自己想要的版本
sudo apt-get install -y kubelet=1.18.6-00 kubeadm=1.18.6-00 kubectl=1.18.6-00
起一下服务
systemctl enable kubelet.service
这就差不多了,直接初始化master节点
#这里除了你要更换你的版本和服务ip地址,其他的不要动了,我也不知道咋回事反正
kubeadm init --kubernetes-version=1.18.6 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=192.168.xx.xxx --service-cidr=10.96.0.0/12
#用你自己的,不然可能会错
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
然后你的master算是搞好了
在你的node机器上可以执行下面的kubeadm join指令加入node
找到上面的这句话,下面的命令复制粘贴到你的客户机上去执行
kubeadm join 192.168.xx.xxx:6443 --token xxxxxxxxxxxxx \
--discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxx
最后一步,下载kube-flannel.yaml文件
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
#然后应用他
kubectl apply -f kube-flannel.yml
万事大吉,估计ok了
查看nodes
kubectl get nodes
等一会之后,你会看到全部ready!!!!