springcloud alibaba全家桶之k8s单机版安装【kubeadm】
一、安装要求以及服务器参数调整1.centos7以及以上2.双核2G以及以上3.禁用swap分区ssh> echo vm.swappiness=0 >> /etc/sysctl.confssh> vim /etc/fstab注释掉swap一行4.可上外网5.关闭防火墙 #安装过程会启动好多端口,等安装完成后再补充防火墙的端口再开启防火墙systemctl stop fire
一、安装要求以及服务器参数调整
1.centos7以及以上
2.双核2G以及以上
3.禁用swap分区
ssh> echo vm.swappiness=0 >> /etc/sysctl.conf
ssh> vim /etc/fstab
注释掉swap一行
4.可上外网
5.关闭防火墙 #安装过程会启动好多端口,等安装完成后再补充防火墙的端口再开启防火墙
systemctl stop firewalld
systemctl disable firewalld
6.关闭selinux
ssh> vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
7 添加host
ssh> vi /etc/hosts
添加hosts,名字自己起
**.**.**.** k8smaster
**.**.**.** k8snode1
**.**.**.** k8snode2
8.增加网桥参数
ssh> vim /etc/sysctl.d/k8s.conf
增加内容
net.bridge.bridge-nf-call-ip6tables =1
net.bridge.bridge-nf-call-iptables =1
ssh> sysctl --system #使参数生效
9.时间同步
ssh> yum install ntpdate -y
10 重启虚拟机
ssh> sudo reboot
二、安装k8s
1. docker安装
ssh> sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
ssh> yum install docker-ce
2.docker增加国内源,并配置驱动
ssh> vim /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
3.docker开机启动
3.docker开机启动
4. 安装k8s 阿里云源
ssh> vim /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
5. 安装 kubelet ,kebuadm,kebuctl #注意下对应的版本,要一致
ssh> yum install kubelet
ssh> yum install kubeadm
ssh> yum install kubectl
6.增加开机启动
ssh> systemctl enable kubelet.service
7.查看是否成功
ssh> yum list installed | grep kubelet
ssh> yum list installed | grep kubeadm
ssh> yum list installed | grep kubectl
说明
kubelet :运行在cluster所有节点上,负责启动POD和 容器
kubeadm:初始化cluster
kubectl:k8s的命令行工具,可以查看资源,更新组件等
8,安装主节点
ssh> systemctl start docker.service
ssh> kubeadm init --apiserver-advertise-address=10.0.2.15(主节点ip) --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.23.4(安装的软件的版本) --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
成功后会看到类似的输出
kubeadm join 10.0.2.15:6443 --token 3mmn6c.usr0dpurm8ybnk0l \
--discovery-token-ca-cert-hash sha256:0cc83f067c73992272eedba7ef848332bc0b3dda23df2f9e6671afa54243c251
9.遇到启动不成功的一些情况
1)swap没有禁用
2)setlinux没禁用
3) 防火墙没有关闭
4) 没有在docker配置文件中 使用systemd作为cgroupdriver
10. 在主节点执行以下命令
ssh> mkdir -p $HOME/.kube
ssh> cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
ssh> chown $(id -u):$(id -g) $HOME/.kube/config
ssh> kubectl get nodes
11. 默认情况下, master是不能跑业务pod的, 下面的命令可以解除这个限制
ssh> kubectl taint nodes k8s-master【节点的名称从get nodes可以查看到】 node-role.kubernetes.io/master-
12.初始化网络【由于flannel的镜像被墙, 这里使用weave】
kubectl apply -f https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')
13.等待weavea安装需要一段时间我这里差不多等了20分钟左右
get pods --all-namespaces
查看是否已经running
kubectl get nodes
查看是否已经ready
以上是最精简的k8s的部署教程
更多推荐
所有评论(0)