部署k8s1.28.2(正常网络环境即可)

一、k8s环境初始化

注意:所有主机均需操作

1.1 环境准备

服务器要求

  • 建议最小硬件配置:2核CPU、4G内存、30G硬盘
  • 操作系统要在centos7.5以上
    软件环境:
  • 操作系统:centos7.9
  • Docker:27.2.0
  • K8s:v1.28.2
    服务器规划:
    角色IP地址
    k8s-master192.168.40.119
    k8s-node1192.168.40.120
    k8s-node2192.168.40.121

1.2 主机域名解析

为了方便后面集群节点的直接调用,在这配置以下主机域名解析,企业中推荐使用内部DNS服务器

hostnamectl set-hostname k8s-master
cat >> /etc/hosts <<EOF
192.168.40.119 k8s-master
192.168.40.120 k8s-node1
192.168.40.121 k8s-node2
EOF

1.3 时间同步(选装)

k8s要求集群中节点时间必须精确一致,这里直接使用ntp服务从网络同步时间,企业中建议配置内部的时间服务器,优先使用“yum list”确认nptdate服务是否安装若已经安装,则直接配置crontab任务,若本地有ntpdate时钟同步器,则直接与其同步,若可以连接互联网,那么也可以直接与阿里时钟同步器进行时间同步,本实验与阿里时钟同步器进行同步“ntpdate time1.aliyun.com”

检查是否部署ntp服务

yum list |grep ntpdate

若未安装ntp服务,则执行下面安装


```go
yum -y install ntpdate

### 与阿里在线时间进行同步时间

```go
ntpdate time1.aliyun.com

检查crontab内容 ,修改常见crontab命令为“crontab -e”

crontab -l
0 */1 * * * /usr/sbin/ntpdate time1.aliyun.com

1.4 禁用iptables和firewalld服务

kubernetes和docker在运行中会产生大量的iptables规则,为了不让系统规则跟他们混淆,直接关闭系统的规则

systemctl stop firewalld
systemctl disable firewalld
iptables -F

1.5 禁用selinux
selinux是linux系统下一个安全服务,如果不关闭它,在安装k8s集群中会产生各种各样的奇葩问题

# 编辑/etc/selinux/config文件,修改SELINUX的值为disabled
sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# 注意修改完毕之后需要重启linux服务
setenforce 0

1.6 禁用swap分区
swap分区指的是虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间虚拟成内存来使用,启用swap设备会对系统的性能产生非常负面的影响,因此kubernetes要求每个节点都要禁用swap设备,但是如果因为某些原因不能关闭swap分区,就需要在集群安装过程中明确的参数进行配置说明

# 临时关闭swap分区
swapoff -a
# 永久关闭swap分区,注意修改完毕之后需要重启linux服务生效
sed -i '/swap/ s/^/#/' /etc/fstab
1.7 修改linux内核参数
# 添加网桥过滤和地址转发功能
cat > /etc/sysctl.d/k8s.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
cat > /etc/sysctl.conf <<EOF
net.ipv4.ip_forward=1
EOF
# 重新加载配置
sysctl -p
# 加载网桥过滤模块
modprobe br_netfilter
# 查看网桥过滤是否加载成功
lsmod|grep br_netfilter
1.8 配置ipvs功能(选装)
在kubernetes中service有两种代理模型,一种是基于iptables的,一种是基于ipvs的,两者比较的话,ipvs性能明显高一些,但是如果要使用它,需要手动载入ipvs模块
# 安装ipset和ipvsadm
yum -y install ipset ipvsadm

# 添加需要加载的模块写入脚本文件
cat <<EOF > /etc/sysconfig/modules/ipvs.modules
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF

# 为脚本文件添加执行权限
chmod +
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

balance…

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值