K8s集群部署(阿里云基础篇)

配置环境介绍

使用2023年双11阿里云2c2g的服务器3台(几个小伙伴一起买的)

网络环境:

多账号没有内网,使用公网直连,并在安全组中对互相的公网ip进行全端口放行。

1个master节点和2个node节点

无自建Harbor仓库

云服务器推广链接:阿里云全新八代云服务器,强劲算力

集群初始化

基础环节 Docker/K8s基础环境-CSDN博客

在所有k8s节点上进行初始化

cat >> /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg 
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

yum makecache fast

yum install kubeadm kubectl kubelet -y
systemctl start kubelet
systemctl enable kubelet

cat > dockerimages.sh <<EOF 
#!/bin/bash
images=$(kubeadm config images list --kubernetes-version=1.28.0 | awk -F '/' '{print $NF}')
for i in ${images}
do
  docker pull registry.aliyuncs.com/google_containers/$i
  docker tag registry.aliyuncs.com/google_containers/$i node5-196.com/google_containers/$i
  #docker push registry.aliyuncs.com/google_containers/$i
  #docker rmi registry.aliyuncs.com/google_containers/$i
done
EOF

master节点

cat > /etc/sysconfig/network-scripts/ifcfg-eth0:1 <<EOF
BOOTPROTO=static
DEVICE=eth0:1
IPADDR=101.133.228.54 (集群可访问到的IP,这里是公网IP)
PREFIX=32
TYPE=Ethernet
USERCTL=no
ONBOOT=yes
EOF
systemctl restart network


kubeadm init --kubernetes-version=1.28.2 \
--apiserver-advertise-address=101.133.228.54 \
--image-repository=registry.aliyuncs.com/google_containers \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 \
--ignore-preflight-errors=Swap \
--cri-socket=unix:///var/run/cri-dockerd.sock

export KUBECONFIG=/etc/kubernetes/admin.conf

Node节点

node节点加入

kubeadm join 101.133.228.54:6443 --token d6kpvf.xe8weg2wog34qws2 \
        --discovery-token-ca-cert-hash sha256:8311f81dc626415874b384a1ace4aecc824f7b31e5d2439e5c6c4e7601317bc7  --cri-socket=unix:///var/run/cri-dockerd.sock

集群网络

这里用的是flannel。

由于没有使用私有仓库,所以需要在每个node节点上都执行flannel.sh从而获得镜像

echo "source <(kubectl completion bash)" >> ~/.bashrc && echo "source <(kubeadm completion bash)" >> ~/.bashrc && source ~/.bashrc

mkdir /data/kubernetes/networks/flannel -p
cd /data/kubernetes/networks/flannel
wget https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml

vim flannel.sh
#!/bin/bash
for i in $(grep image kube-flannel.yml | grep -v '#' | awk -F '/' '{print $NF}')
do
  docker pull flannel/$i
  docker tag flannel/$i registry.aliyuncs.com/google_containers/$i   #需要修改为刚创建的harbor的仓库地址
#  docker push registry.aliyuncs.com/google_containers/$i
  docker rmi flannel/$i
done


sed -i '/ image:/s#docker.io/flannel#registry.aliyuncs.com/google_containers#' kube-flannel.yml

kubectl apply -f kube-flannel.yml
kubectl get pod -n kube-system

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千载春秋书风华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值