1.具体安装过程略过,2个2核cpu,20G硬盘。注意一下网络配置选择NAT模式,编辑下面文件
vi /etc/sysconfig/network-scripts/ifcfg-ens32
##输入内容
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
#IPV6INIT="yes"
#IPV6_AUTOCONF="yes"
#IPV6_DEFROUTE="yes"
#IPV6_FAILURE_FATAL="no"
#IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"
UUID="e3e110e6-43e0-4d5a-bf04-4792cfb0f916"
DEVICE="ens32"
ONBOOT="yes"
ZONE=public
DNS1=114.114.114.114
IPADDR=192.168.136.129
NETMASK=255.255.255.0
GATEWAY=192.168.136.2
ONBOOT=yes
2.安装vim、git、wget、zsh工具
yum vim git wget zsh
安装 ohmyzsh插件
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
github连接失败或者下载过慢,可以修改hosts文件,加入以下内容
140.82.114.3 github.com
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
199.232.5.194 github.global.ssl.fastly.net
140.82.114.4 gist.github.com
199.232.96.133 cloud.githubusercontent.com
199.232.96.133 camo.githubusercontent.com
ip地址会变化,查询实时域名对应ip之后修改。
vim .zshrc
ZSH_THEME=“robbyrussell” 改为ZSH_THEME=“bira” ,重新应用插件配置
source .zshrc
sudo vim /etc/selinux/config
# 修改
SELINUX=disabled
# SELINUX=enforcing
重启才能生效!
sestatus
# 查看 SELinux
SELinux status: disabled
vim /etc/fstab
swapoff -a #临时关闭
编辑文件vim /etc/sysctl.conf 添加:
#当linux主机有多个网卡时一个网卡收到的信息是否能够传递给其他的网卡 如果设置成1,可以进行数据包转发
net.ipv4.ip_forward = 1
#开启bridge-nf,由于网桥工作于数据链路层,默认iptables没有开启bridge-nf时,数据会直接经过网桥转发,结果就是对FORWARD的设置失效
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
sysctl -p #使用配置
vim /etc/sysconfig/modules/ipvs.modules
输入如下命令
modprobe – ip_vs
modprobe – ip_vs_rr
modprobe – ip_vs_wrr
modprobe – ip_vs_sh
modprobe – nf_conntrack_ipv4
重启生效,依次执行临时生效
查看是否生效
cut -f1 -d " " /proc/modules |grep -e ip_vs -e nf_conntrack_ipv4
systemctl stop firewalld
systemctl disable firewalld
vim /etc/yum.repos.d/kubernetes.repo
输入
[kubernetes]
name = Kubernetes
baseurl = http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled = 1
gpgcheck = 0
repo_gpgcheck = 0
gpgkey = http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
kubelet:运行在cluster所有节点上,负责启动POD和容器
kubeadm:用于初始化k8s cluster
kubectl:kubectl是kubenetes命令行工具,通过kubectl可以部署和管理应用,查看各种资源,创建,删除和更新组件
默认安装最新版,不需要安装最新版,可以选择版本安装
yum install -y kubectl kubeadm kubelet
查看所有可安装版本
yum list kubectl --showduplicates
安装其他版本
yum install -y kubectl-1.16.3-0
#设置开机启动
systemctl enable kubelet
#启动
systemctl start kubelet
安装步骤请看:docker手动安装教程
查看docker cgroup驱动,k8s默认cgroup为systemd,docker与k8s保持一致
docker info | grep -i cgroup
vim /etc/docker/daemon.json
#添加
"exec-opts":["native.cgroupdriver=systemd"]
kubeadm config images list
k8s.gcr.io国内网络无法访问,使用阿里云镜像试试,如果不能正常拉取请尝试以下办法:
docker pull kubeimage/kube-apiserver-amd64:v1.21.1
docker tag kubeimage/kube-apiserver-amd64:v1.21.1 k8s.gcr.io/kube-apiserver:v1.21.1
docker rmi kubeimage/kube-apiserver-amd64:v1.21.1
拷贝两个虚拟机作为node1、node2再继续配置,请看下一篇博客