文档中linux命令,无特殊说明的命令均可以在任意目录执行。
1.ubuntu环境设置
- 环境说明
操作系统版本:
root@langll-ubuntu:~# cat /proc/version
Linux version 5.4.0-54-generic (buildd@lcy01-amd64-024) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #60-Ubuntu SMP Fri Nov 6 10:37:59 UTC 2020
root@langll-ubuntu:~#
内核版本:
root@langll-ubuntu:~# uname -a
Linux langll-ubuntu 5.4.0-54-generic #60-Ubuntu SMP Fri Nov 6 10:37:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
主机名称 | IP |
---|---|
master.k8s.com | 192.168.31.72 |
node1.k8s.com | 192.168.31.126 |
- 修改master的hosts文件
两台服务器都需要添加
> cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 langll-ubuntu
192.168.31.72 master.k8s.com
192.168.31.126 node1.k8s.com
- 关闭防火墙
设置关闭防火墙命令
> sudo ufw disable
重启让设置生效
> sudo ufw reload
2.master和node上安装k8s 工具
2.1 更换阿里源
- 备份原始源文件
> sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 替换源文件
打开编辑源文件
> sudo vim /etc/apt/source.list
复制以下内容替换掉文件中所有内容。
注:此为ubuntu20.4的阿里云源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal universe
deb http://mirrors.aliyun.com/ubuntu/ focal-updates universe
deb http://mirrors.aliyun.com/ubuntu/ focal multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted
deb http://mirrors.aliyun.com/ubuntu/ focal-security universe
deb http://mirrors.aliyun.com/ubuntu/ focal-security multiverse
- 让修改后的源文件生效
> sudo apt update
> sudo apt upgrade
- 配置内核调优
配置文件添加内容
> cat > /etc/sysctl.conf <<EOF
vm.max_map_count=262144
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
配置文件生效
> sysctl -p
修改Linux 资源配置文件,调高ulimit最大打开数和systemctl管理的服务文件最大打开数
> echo "* soft nofile 655360" >> /etc/security/limits.conf
> echo "* hard nofile 655360" >> /etc/security/limits.conf
> echo "* soft nproc 655360" >> /etc/security/limits.conf
> echo "* hard nproc 655360" >> /etc/security/limits.conf
> echo "* soft memlock unlimited" >> /etc/security/limits.conf
> echo "* hard memlock unlimited" >> /etc/security/limits.conf
> echo "DefaultLimitNOFILE=1024000" >> /etc/systemd/system.conf
> echo "DefaultLimitNPROC=1024000" >> /etc/systemd/system.conf
- docker 安装
参见
2.2 安装k8s工具
- 执行安装命令
# apt-get安装k8s工具
> apt-get install -y kubelet kubeadm kubectl
# 或指定版本安装
> apt-get install -y kubelet-1.19.4 kubeadm-1.19.4 kubectl-1.19.4
- 启动k8s服务
# 启动k8s服务
> systemctl enable kubelet && systemctl start kubelet
- 查看服务情况
# 查看版本号
> kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.4", GitCommit:"d360454c9bcd1634cf4cc52d1867af5491dc9c5f", GitTreeState:"clean", BuildDate:"2020-11-11T13:15:05Z", GoVersion:"go1.15.2", Compiler:"gc", Platform:"linux/amd64"}
2.2 配置iptable
# vi /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
vm.swappiness=0
2.3 配置生效
# sysctl --system