下载oracle virtualbox
例如6.1.30版
新建centos7的虚拟机,虚拟机里主要配置第一张网卡为NAT模式,第二张网卡为桥接模式
镜像用的CentOS-7-x86_64-DVD-2009.iso
centos7安装时,配置好网络和域名,将两张网卡都连接上
centos7安装好后,安装常用的ifconfig,vim命令
安装ifconfig:yum -y install net-tools.x86_64
安装vim和bash-completion:yum-y install vim bash-completion
启用网卡enp0s8:cd /etc/sysconfig/network-scripts/
vim ifcfg-enp0s8将ONBOOT设置为yes,表示开机启动,保存后重启。
在每台虚拟机上配置主机hostname及dns解析
vim /etc/hostname
vim /etc/hosts
禁用swap分区
vi /etc/fstab #注释掉swap那一行,需要重启
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
关闭selinux
配置网卡转发参数
net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-ip6tables=1
net.bridge.bridge-nf-call-iptables=1
添加阿里Centos源
cd /etc/yum.repos.d
rm CentOS-Base.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装docker
#安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加阿里云docker-ce源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker-ce
yum -y install docker-ce
#设置开机自动启动docker
systemctl enable docker.service
#配置docker daemon.json
{
"registry-mirrors":[
"https://fl791z1h.mirror.aliyuncs.com",
"https://kfwkfulq.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com"
],
"exec-opts":["native.cgroupdriver=systemd"]
}
#启动docker
systemctl restart docker
安装kubectl,kubelet,kubeadm
#添加阿里云k8s源
cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF
#安装kubectl,kubelet,kubeadm,可以指定版本,也可以使用默认的最新稳定版,可以看到安装后的版本是1.23.4
yum -y install kubectl kubelet kubeadm
#添加kubelet自启动
systemctl enable kubelet
【master节点上执行】kubeadm命令安装1.23.4版本k8s
kubeadm init --kubernetes-version=1.23.4 --apiserver-advertise-address=192.168.100.23 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.96.0.0/12 --pod-network-cidr=10.122.0.0/16
记住打印出的kubeadm join提示,用于node节点加入集群
master节点启用kubectl
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
master节点安装calico网络后重启master
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
node节点加入集群
执行kubeadm join xxxx那一串命令
#node节点启用kubectl
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/kubelet.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
最后查看安装结果
常见错误: