K8s集群安装准备
环境准备一
- 安装VMware虚拟软件
- 准备centos7镜像
环境准备二
- 因测试环境系统资源,所以k8s规划的是1主1从
- 创建2台centos虚拟机
软件:设置为满足基础服务
主机规划:- 192.168.48.200 主机名:k8s-master 子网:255.255.255.0 网关:192.168.48.2 DNS:223.5.5.5
- 192.168.48.201 主机名:k8s-node 子网:255.255.255.0 网关:192.168.48.2 DNS:223.5.5.5
环境准备三
-
确保安装的虚拟机centos版本大于7.5
cat /etc/redhat-release
-
主机名解析
为了方便集群节点间的直接调用,在这个配置一下主机名解析,企业中推荐使用内部DNS服务器# 主机名成解析 编辑2台服务器的/etc/hosts文件,添加下面内容 192.168.48.200 k8s-master 192.168.48.201 k8s-node
-
时间同步
kubernetes要求集群中的节点时间必须精确一致,这里使用chronyd服务从网络同步时间
企业中建议配置内部的时间同步服务器#输入date,如果时间不一致的话 systemctl start chronyd systemctl enable chronyd
-
禁用iptable和firewalld服务
kubernetes和docker 在运行的中会产生大量的iptables规则,为了不让系统规则跟它们混淆,直接关闭系统的规则#关闭防火墙 systemctl stop firewalld #设置开机不启动 systemctl disable firewalld #关闭iptables systemctl stop iptables #设置开机不启动 systemctl disable iptables
-
禁用selinux
selinux是linux系统下的一个安全服务,如果不关闭它,在安装集群中会产生各种各样的问题#编辑 /etc/selinux/config 文件,修改SELINUX的值为disable #注意修改完毕之后需要重启linux服务 SELINUX=disabled
-
禁用swap分区
swap分区指的是虚拟内存分区,它的作用是物理内存使用完,之后将磁盘空间虚拟成内存来使用,启用swap设备会对系统的性能产生非常负面的影响,因此kubernetes要求每个节点都要禁用swap设备,但是如果因为某些原因确实不能关闭swap分区,就需要在集群安装过程中通过明确的参数进行配置说明# 编辑分区配置文件/etc/fstab,注释掉swap分区一行 # 注意修改完毕之后需要重启linux服务 vim /etc/fstab 注释掉 /dev/mapper/centos-swap swap # /dev/mapper/centos-swap swap
-
转发 IPv4 并让 iptables 看到桥接流量
通过运行 lsmod | grep br_netfilter 来验证 br_netfilter 模块是否已加载。
若要显式加载此模块,请运行 sudo modprobe br_netfilter。
为了让 Linux 节点的 iptables 能够正确查看桥接流量,请确认 sysctl 配置中的 net.bridge.bridge-nf-call-iptables 设置为 1cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF sudo modprobe overlay sudo modprobe br_netfilter # 设置所需的 sysctl 参数,参数在重新启动后保持不变 cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.ipv4.ip_forward = 1 EOF # 应用 sysctl 参数而不重新启动 sudo sysctl --system
-
配置ipvs功能
在Kubernetes中Service有两种带来模型,一种是基于iptables的,一种是基于ipvs的两者比较的话,ipvs的性能明显要高一些,但是如果要使用它,需要手动载入ipvs模块# 1.安装ipset和ipvsadm yum install ipset ipvsadm -y # 2.添加需要加载的模块写入脚本文件 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 # 3.为脚本添加执行权限 chmod +x /etc/sysconfig/modules/ipvs.modules # 4.执行脚本文件 bash /etc/sysconfig/modules/ipvs.modules # 5.查看对应的模块是否加载成功 lsmod | grep -e ip_vs -e nf_conntrack_ipv4
-
重启系统
reboot
本文来自博客园,作者:弩哥++,转载请注明原文链接:https://www.cnblogs.com/bangbangzoutianya/p/16802823.html