kubernetes安装部署

该博客详细介绍了如何在阿里云环境中搭建Kubernetes集群,包括安装基础软件、配置YUM源、关闭防火墙和SElinux、安装Docker和K8S组件、初始化Master节点、安装Flannel网络插件等步骤。同时,还提供了备用的镜像手动下载方法以应对可能的启动超时问题。最后,节点加入集群和检查集群状态的操作也在文中提及。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装master方法1.

1.安装基本软件包

 yum install wget net‐tools vim bash‐comp* ‐y

 

2.下载阿里云的yum源

rm -f /etc/yum.repos.d/*

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum list

yum clean all

- 设置主机名,管理节点设置主机名

vim /etc/hostname

- 配置 Master 和 work 节点的域名

vim /etc/hosts

 ip master
 ip node1
 ip node2

- 关闭 防火墙

systemctl stop firewalld
systemctl disable firewalld

- 关闭 SeLinux

setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

- 关闭 swap

swapoff -a
vim /etc/fstab
echo vm.swappiness=0 >> /etc/sysctl.conf
sudo reboot

- 配置Docker, K8S的阿里云yum源

 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=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

wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

yum clean all

yum repolist

- 安装并启动 docker

yum install -y docker-ce.x86_64 docker-ce-cli.x86_64 containerd.io.x86_64

mkdir /etc/docker

cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": ["镜像地址"],
  "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

 

# Restart Docker

systemctl daemon-reload
systemctl enable docker
systemctl restart docker

- 安装kubelet、kubeadm、kubectl

yum install -y kubelet-1.20.5 kubeadm-1.20.5 kubectl-1.20.5

- 重启 docker,并启动 kubelet

systemctl enable kubelet && systemctl start kubelet

- 将桥接的IPv4流量传递到iptables的链

echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables
vi /etc/sysctl.d/k8s.conf 
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1 

- 初始化主节点

kubeadm init --kubernetes-version=1.20.5 \
--apiserver-advertise-address=10.168.99.101 \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

这个方法对docker版本有要求,安装提示更换。

- 安装网络插件 Flannel

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

- 查看是否成功创建flannel网络

ifconfig |grep flannel

- 重置 kubeadm

kubeadm reset
rm -rf $HOME/.kube

安装node方法1

- 设置主机名,管理节点设置主机名

vim /etc/hostname

- 配置 Master 和 work 节点的域名

vim /etc/hosts

 ip master
 ip node1
 ip node2

- 配置阿里云 yum 源

 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=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

wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

yum clean all

yum repolist

- 安装基础软件

yum install bash‐comp* vim net‐tools wget ‐y

- 安装 Docker,Kubeadm,Kubectl,kubelet

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

在master端执行

scp /etc/kubernetes/admin.conf root@slaveip:/etc/kubernetes/

- 配置 Kubeconfig 环境变量

echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
source ~/.bash_profile

- 安装 flannel 网络插件

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

- 将master节点下面 /etc/cni/net.d/下面的所有文件拷贝到node节点上

`mkdir -p /etc/cni/net.d/`

在master: 

`scp /etc/cni/net.d/* root@slaveip:/etc/cni/net.d/`

执行命令:
 

`kubectl get nodes 查看 node 节点处于ready状态`

安装master方法2. 

方法一可能会出现无法启动的超时情况这时,用手动下载

在Master节点上查看所需下载镜像:

kubeadm config images list --kubernetes-version 1.20.5

在Master节点上下载镜像:

kubeadm config images list --kubernetes-version 1.20.5 | sed -e 's/^/docker pull /g' -e 's#k8s.gcr.io#docker.io/registry.cn-hangzhou.aliyuncs.com/google_containers#g' | sh -x

在Master节点上修改镜像:

docker images | grep registry.cn-hangzhou.aliyuncs.com/google_containers | awk '{print "docker tag ",$1":"$2,$1":"$2}' | sed -e 's#registry.cn-hangzhou.aliyuncs.com/google_containers#k8s.gcr.io#2' | sh -x

在Master节点上删除无用镜像:

docker images | grep registry.cn-hangzhou.aliyuncs.com/google_containers | awk '{print "docker rmi ", $1":"$2}' | sh -x

在Master节点上查看镜像:

docker images

Worker节点也需部分镜像 (按照上述安装其他的删除)

在这里插入图片描述

5、初始化集群

如下操作需在Master节点执行

初始化集群:

kubeadm init --apiserver-advertise-address=masterip --pod-network-cidr=10.244.0.0/16 --kubernetes-version=v1.20.5

 

slave加入master方式参照方法一

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值