Linux下安装Kubernetes

准备工作

预留2G左右的内存,尽可能多,需要提前安装了docker

  • kubeadm:用来初始化集群的指令。
  • kubelet:在集群中的每个节点上用来启动 Pod 和容器等。
  • kubectl:用来与集群通信的命令行工具。

集群安装,但只有一个节点

复制curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

配置Docker源

复制{
  "registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}

其中 https://xxxxxxxx.mirror.aliyuncs.com 为阿里云镜像加速地址, xxxxxxxx 需要替换为自己账户中的地址。阿里云 -> 容器镜像服务 -> 镜像工具 -> 镜像加速器

添加k8s源

复制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=1
repo_gpgcheck=1
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
exclude=kube*

安装

复制yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable kubelet && systemctl start kubelet

初始化Master节点

生成初始化文件

复制kubeadm config print init-defaults > kubeadm-init.yaml

该文件有两处需要修改:

  • 将advertiseAddress: 1.2.3.4修改为本机地址(腾讯云内网地址)
  • 将imageRepository: k8s.gcr.io修改为imageRepository: registry.cn-hangzhou.aliyuncs.com/google_containers

下载镜像

复制kubeadm config images list # 查看需要的镜像

结果为

复制registry.k8s.io/kube-apiserver:v1.26.0
registry.k8s.io/kube-controller-manager:v1.26.0
registry.k8s.io/kube-scheduler:v1.26.0
registry.k8s.io/kube-proxy:v1.26.0
registry.k8s.io/pause:3.9
registry.k8s.io/etcd:3.5.6-0
registry.k8s.io/coredns/coredns:v1.9.3

使用shell脚本来下载镜像

复制images=(
kube-apiserver:v1.26.0
kube-controller-manager:v1.26.0
kube-scheduler:v1.26.0
kube-proxy:v1.26.0
pause:3.9
etcd:3.5.6-0
coredns:v1.9.3
)
for imageName in ${images[*]}
do
    docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
    docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName
    docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
done
docker tag k8s.gcr.io/coredns:v1.9.3 k8s.gcr.io/coredns/coredns:v1.9.3 
docker rmi k8s.gcr.io/coredns:v1.9.3

从阿里云镜像仓库下载,并重命名为原来的名字,对coredns要特殊处理一下

执行初始化

复制kubeadm init --config kubeadm-init.yaml

卡在这了,暂时未找到原因。

参考

Kubernetes(一) 跟着官方文档从零搭建K8S
Kubeadm-官方文档

posted @   strongmore  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
历史上的今天:
2022-04-07 SpringBoot整合WebSocket实现在线聊天室
点击右上角即可分享
微信分享提示