kubernetes--用kubeadm 搭建集群

本文详细介绍了如何使用kubeadm在CentOS 7.9上搭建Kubernetes集群,包括安装要求、步骤、错误处理及集群测试。涉及到的关键步骤包括安装docker、kubeadm、kubelet和kubectl,kubeadm init和join操作,以及集群联网测试。
摘要由CSDN通过智能技术生成

目录

1.使用 kubeadm 部署

1.1安装要求

1.2安装步骤

2.安装

2.1准备虚拟机

2.2系统初始化

2.3安装 k8s 组件

2.3.1、安装 docker

2.3.2、安装 kubeadm,kubelet 和 kubectl

2.3.3kubeadm init

2.3.4kubeadm join

2.3.5集群联网测试

3.错误汇总

4、测试 kubernetes 集群

5. 使用源码部署

1.使用 kubeadm 部署

kubeadm 是官方社区推出的一个用于快速部署 kubernetes 集群的客户端工具。

这个工具能通过两条指令完成一个 kubernetes 集群的部署:

# 创建一个 Master 节点
kubeadm init

# 将一个 Worker node 节点加入到当前集群中
kubeadm join < Master 节点的 IP 和端口 >

1.1安装要求

在开始之前,部署 Kubernetes 集群机器需要满足以下几个条件:

  • 一台或多台机器,操作系统 CentOS7.9。
  • 硬件配置:2GB 或更多 RAM,2 个 CPU 或更多 CPU,硬盘 20GB 或更多。
  • 可以访问外网,需要拉取镜像,如果服务器不能上网,需要提前下载镜像并导入节点。
  • 禁止 swap 分区。

1.2安装步骤

  • 准备虚拟机:准备三台虚拟机,并安装操作系统 CentOS 7.9。
  • 系统初始化:对三个刚安装好的操作系统进行初始化操作。
  • 安装 k8s 组件:在三台虚拟机上安装 docker kubelet kubeadm kubectl
  • kubeadm init:使用 kubeadm init命令,创建一个 Master 节点。
  • kubeadm join :使用 kubeadm join命令,将一个 Worker node 节点加入到当前集群中。
  • 集群联网测试:配置 CNI 网络插件,拉取 nginx 进行网络测试。

2.安装

2.1准备虚拟机

如果不会创建虚拟机,可以查看 如何创建虚拟机?https://gitee.com/bbigsun/k8s/blob/master/pre-linux.md

主机名称 IP 配置
k8smaster1 192.168.60.151 2U 2G 20G
k8snode1 192.168.60.152 2U 2G 20G
k8snode2 192.168.60.153 2U 2G 20G
# 根据规划设置主机名【k8smaster1 节点上操作】
hostnamectl set-hostname ks8master1
# 根据规划设置主机名【k8snode1 节点上操作】
hostnamectl set-hostname k8snode1
# 根据规划设置主机名【k8snode2 节点操作】
hostnamectl set-hostname k8snode2
# 在主机名静态查询表中添加 3 台主机
cat >> /etc/hosts << EOF
192.168.60.151 k8smaster1
192.168.60.152 k8snode1
192.168.60.153 k8snode2
EOF

2.2系统初始化

对三台虚拟机进行初始化操作:

设置防火墙为 Iptables 并设置空规则
systemctl    stop  firewalld    &&    systemctl    disable  firewalld
yum  -y  install  iptables-services    &&    systemctl    start  iptables    &&    systemctl    enable  iptables &&    iptables  -F    &&    service  iptables  save
# 关闭 selinux
# 临时关闭【立即生效】告警,不启用,Permissive,查看使用 getenforce 命令
setenforce 0  
# 永久关闭【重启生效】
sed -i 's/SELINUX=enforcing/\SELINUX=disabled/' /etc/selinux/config  
# 关闭 swap
# 临时关闭【立即生效】查看使用 free 命令
swapoff -a 
# 永久关闭【重启生效】
sed -ri 's/.*swap.*/#&/' /etc/fstab
cat  >  kubernetes.conf  <<EOF 
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
net.ipv4.tcp_tw_recycle=0
vm.swappiness=0  #  禁止使用swap  空间,只有当系统  OOM  时才允许使用它
vm.overcommit_memory=1  #  不检查物理内存是否够用
vm.panic_on_oom=0  #  开启  OOM
fs.inotify.max_user_instances=8192 fs.inotify.max_user_watches=1048576 
fs.file-max=52706963 
fs.nr_open=52706963 
net.ipv6.conf.all.disable_ipv6=1 
net.netfilter.nf_conntrack_max=2310720
EOF
cp  kubernetes.conf    /etc/sysctl.d/kubernetes.conf 
sysctl  -p  /etc/sysct
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值