K8S安装

在线版

kubeadm

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

关闭selinux

sed -i 's/enforcing/disabled/' /etc/selinux/config  #永久
setenforce 0  #临时

关闭swap(k8s禁止虚拟内存以提高性能)

sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
swapoff -a #临时

在master添加hosts

cat >> /etc/hosts << EOF
192.168.172.134 k8smaster
192.168.172.135 k8snode
EOF

设置网桥参数

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

sysctl --system  #生效

时间同步

# 下载ntp插件
yum -y install ntp
# 启动ntpd服务
service ntpd start
# 查看服务状态
service ntpd status
# 设置同步地址
ntpdate 210.72.145.44  #国家授时中心SNTP校时服务

安装Docker

# 安装wget插件
yum install wget -y
# 更新本地源
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
# 安装docker
yum -y install docker-ce-19.03.13 
# 创建文件夹
mkdir /etc/docker
# 配置加速器加速下载 (https://cr.console.aliyun.com/)
vi /etc/docker/daemon.json
# 添加以下内容
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
# 开启自动重启
systemctl enable docker.service

安装kubeadm,kubelet ,kubectl

# 安装 kubeadm,kubelet 和 kubectl 
yum -y install kubelet-1.19.4 kubeadm-1.19.4 kubectl-1.19.4 
# 设置开机启动
systemctl enable kubelet.service
# 查看有没有安装:
yum list installed | grep kubelet
yum list installed | grep kubeadm
yum list installed | grep kubectl

部署Kubernetes Master主节点

kubeadm init --apiserver-advertise-address=192.168.101.111 # 主机ip
--image-repository registry.aliyuncs.com/google_containers # 镜像地址
--kubernetes-version v1.19.4 # k8s版本
--service-cidr=192.168.101.210/12 # service ip
--pod-network-cidr=192.168.101.211/16 # pod ip
# 如果报错就试着重启下

kubeadm init所做的事:
01-进行一系列检查,以确定这台机器可以部署kubernetes
02-生成kubernetes对外提供服务所需要的各种证书可对应目录
/etc/kubernetes/pki/*
03-为其他组件生成访问kube-ApiServer所需的配置文件
ls /etc/kubernetes/
admin.conf controller-manager.conf kubelet.conf scheduler.conf
04-为 Master组件生成Pod配置文件。
ls /etc/kubernetes/manifests/.yaml
kube-apiserver.yaml
kube-controller-manager.yaml
kube-scheduler.yaml
05-生成etcd的Pod YAML文件。
ls /etc/kubernetes/manifests/
.yaml
kube-apiserver.yaml
kube-controller-manager.yaml
kube-scheduler.yaml
etcd.yaml
06-一旦这些 YAML 文件出现在被 kubelet 监视的/etc/kubernetes/manifests/目录下,kubelet就会自动创建这些yaml文件定义的pod,即master组件的容器。master容器启动后,kubeadm会通过检查localhost:6443/healthz这个master组件的健康状态检查URL,等待master组件完全运行起来
07-为集群生成一个bootstrap token
08-将ca.crt等 Master节点的重要信息,通过ConfigMap的方式保存在etcd中,工后续部署node节点使用
09-最后一步是安装默认插件,kubernetes默认kube-proxy和DNS两个插件是必须安装的

执行安装后出现的3行命令
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rK9gtqct-1673247847065)(null)]

检查是否成功:kubectl cluster-info
查看现有节点状态:kubectl get nodes
健康检查:curl -k https://localhost:6443/healthz

部署Kubernetes Node节点

在node节点上执行master安装时出现的join命令
在这里插入图片描述

在这里插入图片描述

kubectl get nodes:
在这里插入图片描述

状态为notReady,需要安装通讯插件

添加 网络插件

# 在k8s中安装calico
kubectl apply -f https://docs.projectcalico.org/v3.9/manifests/calico.yaml

# 确认一下calico是否安装成功
kubectl get pods --all-namespaces -w

再查看节点状态:kubectl get nodes(多刷几次)
在这里插入图片描述

查看组件状态等待网络插件创建完成:kubectl get pods -n kube-system

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值