生产级K8S基础环境部署配置流程

 更新时间:2022年03月19日 14:13:15   作者:、重明  
这篇文章主要为大家介绍了生产级K8S入门之基础环境的部署过程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多

生产级K8S基础环境部署:

配置本地hosts文件(有多少台,配置多少台)

vim /etc/hosts
192.168.1.5 k8s-master

配置yum源(有自己的yum源更好)

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

安装基础工具,配置docker源

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sudo yum makecache fast

安装一些必备工具

yum -y install wget jq psmisc vim net-tools  telnet yum-utils device-mapper-persistent-data lvm2 git -y

关闭防火墙

systemctl disable --now firewalld

关闭SELinux

setenforce 0
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/sysconfig/selinux

关闭交换分区

swapoff -a && sysctl -w vm.swappiness=0
cat /etc/fstab
# /dev/mapper/centos-swap swap                    swap    defaults        0 0

关闭NetworkManager

systemctl disable --now NetworkManager

进行时间同步(有自己的时间服务器更好)

# 安装
rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm
yum -y install ntpdate
# 同步
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo 'Asia/Shanghai' >/etc/timezone
ntpdate ntp.aliyun.com
crontab -e
crontab -l
*/5 * * * * ntpdate ntp.aliyun.com

配置ulimit

ulimit -SHn 65535
vim /etc/security/limits.conf
* soft nofile 655360
* hard nofile 131072
* soft nproc 655350
* hard nproc 655350
* seft memlock unlimited
* hard memlock unlimitedd

配置免密登录(从主master向其他节点分发)

ssh-keygen -t rsa
ssh-copy-id -i .ssh/id_rsa.pub 其他主机

升级系统到最新(跳过内核)

yum update -y --exclude=kernel*

升级内核至4.18版本以上 

cd /root/
wget http://193.49.22.109/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-4.19.12-1.el7.elrepo.x86_64.rpm
wget http://193.49.22.109/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-devel-4.19.12-1.el7.elrepo.x86_64.rpm
yum -y localinstall kernel-ml*
grub2-set-default  0 && grub2-mkconfig -o /etc/grub2.cfg && grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)"
reboot
uname -r

安装ipvsadm

yum install ipvsadm ipset sysstat conntrack libseccomp –y
vim /etc/modules-load.d/ipvs.conf
cat /etc/modules-load.d/ipvs.conf
ip_vs
ip_vs_rr
ip_vs_wrr
ip_vs_sh
nf_conntrack
ip_tables
ip_set
xt_set
ipt_set
ipt_rpfilter
ipt_REJECT
ipip
systemctl enable --now systemd-modules-load.service
lsmod | grep -e ip_vs -e nf_conntrack_ipv4
ip_vs_sh               16384  0
ip_vs_wrr              16384  0
ip_vs_rr               16384  0
ip_vs                 151552  6 ip_vs_rr,ip_vs_sh,ip_vs_wrr
nf_conntrack          143360  1 ip_vs
libcrc32c              16384  3 nf_conntrack,xfs,ip_vs

修改内核参数

cat <<EOF > /etc/sysctl.d/k8s.conf
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-iptables = 1
fs.may_detach_mounts = 1
vm.overcommit_memory=1
vm.panic_on_oom=0
fs.inotify.max_user_watches=89100
fs.file-max=52706963
fs.nr_open=52706963
net.netfilter.nf_conntrack_max=2310720
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl =15
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_max_orphans = 327680
net.ipv4.tcp_orphan_retries = 3
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.ip_conntrack_max = 65536
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_timestamps = 0
net.core.somaxconn = 16384
EOF
sysctl --system

本篇内容只讲K8S部属前的基础环境

以上就是生产级K8S基础环境部署配置过程的详细内容,更多关于生产级K8S环境部署的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:

相关文章

  • 如何在多台服务器上运行相同命令

    如何在多台服务器上运行相同命令

    这篇文章主要介绍了在多台服务器上运行相同命令的相关知识,包括安装及使用方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • VSCODE使用ssh远程连接时启动服务器失败问题及解决方法

    VSCODE使用ssh远程连接时启动服务器失败问题及解决方法

    ping服务器的ip可通并且使用terminal可以ssh连接到远程服务器,但使用vscode的remote-ssh时,在「输出」栏出现了一直报 Waiting for server log… 的情况,这篇文章主要介绍了VSCODE使用ssh远程连接时启动服务器失败问题及解决方法,感兴趣的朋友一起看看吧
    2024-02-02
  • 远程桌面超出最大连接数的解决方法

    远程桌面超出最大连接数的解决方法

    有时候登录服务器的时候提示远程桌面超出最大连接数,导致无法连接服务器,下面简单的整理下,需要的朋友可以参考下。
    2012-01-01
  • 本地部署Jellyfin影音服务器并实现在公网访问的过程

    本地部署Jellyfin影音服务器并实现在公网访问的过程

    Jellyfin作为相对知名的影音服务器,在NAS平台广受欢迎,但笔者连韭菜都不愿意当,自然没有NAS这样的专业装备,只有一台淘汰下来的台式机,这篇文章主要介绍了本地部署Jellyfin影音服务器并实现在公网访问的过程,需要的朋友可以参考下
    2023-11-11
  • DNSLOG平台搭建及其原理解析

    DNSLOG平台搭建及其原理解析

    DNSlog就是存储在DNS Server上的域名访问信息,它记录着用户对域名littlehann.com等的访问信息,类似日志文件,这篇文章主要介绍了DNSLOG平台搭建及其原理分析 ,需要的朋友可以参考下
    2024-01-01
  • Centos服务器上根据端口号查询jar包根据jar包查端口号的操作方法

    Centos服务器上根据端口号查询jar包根据jar包查端口号的操作方法

    在开发springboot服务器时,经常会遇到其他人部署的java服务,需要自己维护,经常面临找不到jar包位置,或者不知道占用端口,不知道启动命令的问题,这里记录一下常用的centos服务器上的命令,方便大家后续运维时使用,感兴趣的朋友一起看看吧
    2023-12-12
  • Mac OSX下使用MAMP安装配置PHP开发环境

    Mac OSX下使用MAMP安装配置PHP开发环境

    本部分描述如何在 Mac 上安装 MAMP。将通过一个操作安装 Apache Web 服务器、MySQL 和phpMyAdmin,需要的朋友可以参考下
    2017-09-09
  • MongoDB学习笔记(六) MongoDB索引用法和效率分析

    MongoDB学习笔记(六) MongoDB索引用法和效率分析

    MongoDB中的索引其实类似于关系型数据库,都是为了提高查询和排序的效率的,并且实现原理也基本一致
    2013-07-07
  • windows2008系统中rsync计划任务返回0x1问题处理

    windows2008系统中rsync计划任务返回0x1问题处理

    本文给大家分享的是小编在给windows2008配置rsync同步的过程中遇到的一个问题,在win03系统下可以正常返回0x0,结果到了win08系统中就变成了0x1,虽然也同步成功了,但是作为一个完美主义强迫症患者,坚决不能忍,经过一番查证,找到了解决办法,分享给大家
    2017-04-04
  • 如何使用ansible批量初始化服务器

    如何使用ansible批量初始化服务器

    本文详细介绍ansible怎么批量初始化服务器,包括ansible批量初始化服务器详细配置和步骤,感兴趣的朋友一起看看吧
    2023-12-12

最新评论