kubeadm安装k8s完整教程

本文档详细介绍了如何使用kubeadm在三台机器上搭建Kubernetes集群,包括硬件和系统软件环境准备、Master和Node节点的安装配置、网络插件的安装、集群状态查询及Dashboard部署。遇到的问题如iptables、swap关闭、kubelet启动失败等均有解决方案,并提供了切换到Containerd作为容器引擎的步骤。
摘要由CSDN通过智能技术生成

一:硬件环境准备

三台机器,计划为:一台master,两台node

序号 ip 系统版本 hostname 配置 节点类型
1 192.168.137.61 CentOS 7.4.1611 (Core) master61 2核2G Master
2 192.168.137.62 CentOS 7.4.1611 (Core) node62 2核2G node
3 192.168.137.63 CentOS 7.4.1611 (Core) node63 2核2G node

二:系统软件环境预置

1.设置hosts

vim /etc/hosts
加入以下内容
192.168.137.61 master61
192.168.137.62 node62
192.168.137.63 node63

hostnamectl set-hostname master61
hostnamectl set-hostname node62
hostnamectl set-hostname node63

yum install -y ipvsadm

yum install -y wget vim net-tools lrzsz

如果以下命令执行不过去,可以尝试手动输入,可能复制网页代码的问题

2.关闭防火墙

[root@vm210 ~]# systemctl stop firewalld
[root@vm210 ~]# systemctl disable firewalld
[root@vm210 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@vm210 ~]# 

3.安装docker

使用官方安装脚本自动安装

安装命令如下:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

systemctl enable --now docker

4.配置yum源

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=0

5.设置SELinux

vim /etc/selinux/config
添加如下SELINUX=disabled 
注释掉SELINUX=enforcing,SELINUXTYPE=targeted 
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
#SELINUX=enforcing
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
#SELINUXTYPE=targeted 
SELINUX=disabled 

6.关闭swap内存

使用swap会影响性能。kubelet禁用swap

1)系统级零时关闭

​ swapoff -a ,重启后失效

2)系统级全部关闭

​ vi /etc/fstab,注释掉swap那一行

​ 需要重启。重启后不失效

#
# /etc/fstab
# Created by anaconda on Mon Dec  2 21:02:22 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=b232659c-bd84-46f0-928b-a46d55500934 /boot                   xfs     defaults        0 0
#/dev/mapper/centos-swap swap  

7.设置iptables

解决iptables而导致流量无法正确路由的问题

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

三:Master节点安装kubeadm

1.安装kubelet 和kubeadm以及kubectl

yum install -y kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0
systemctl enable kubelet

yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now kubelet

2.启动docker

systemctl enable docker && systemctl start docker

3.下载所需要的镜像

for i in `kubeadm config images list`; do 
  imageName=${i#k8s.gcr.io/}
  docker pull regi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值