Centos7安装Kubernetes1.19.16

今日斥资购买了两台VPS用于练习搭建k8s集群,本来想买3台的至少集群好看点,但是苦于囊中羞涩只能买两个了。

为什么不使用虚拟机或者直接买台杜甫来开虚拟机来搭建呢?唉~~~😔

这次安装k8s1.19.16是因为升级到1.20以上会提示Docker的问题,这个就等下次再安装测试了。

配置YUM源

yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

安装Docker

yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。

yum list docker-ce --showduplicates | sort -r
yum install docker-ce-19.03.9
yum install kubelet-1.19.16 kubeadm-1.19.16 kubectl-1.19.16

配置

mkdir /etc/docker/
touch /etc/docker/daemon.json
cat > /etc/docker/daemon.json <<EOF
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  },
  "storage-driver": "overlay2"
}
EOF
systemctl daemon-reload
systemctl restart docker
docker info
systemctl enable docker
systemctl enable kubelet

配置转发

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

初始化

kubeadm init \
  --apiserver-advertise-address=100.64.0.100 \
  --kubernetes-version v1.19.16 \
  --service-cidr=10.96.0.0/16 \
  --pod-network-cidr=192.168.0.0/16

使用kubectl get nodes会报错,

cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

安装Calico

kubectl create -f https://docs.projectcalico.org/archive/v3.20/manifests/tigera-operator.yaml

kubectl create -f https://docs.projectcalico.org/archive/v3.20/manifests/custom-resources.yaml

这次相比1.14的还有很多不太明白。。。。etcd也不是单独安装,API-Server也不使用不安全的8080端口,Calico还是不明白如何配置etcd。

 

ChiuYut

2021年11月29日

发布者

ChiuYut

咦?我是谁?这是什么地方? Ya ha!我是ChiuYut!这里是我的小破站!