Files
Kubernetes/部署文档/Minikube/基于Minikube安装Kubernetes.md
offends 8a87b699ba
All checks were successful
continuous-integration/drone Build is passing
first commit
2025-12-13 18:06:23 +08:00

6.3 KiB
Raw Blame History

本文作者:丁辉

基于Minikube安装Kubernetes

Github

基础环境准备

  • 通过脚本安装Docker

  • 国内安装需要下载基础镜像 Kicbase Github

    解压镜像到本地 Docker

    docker load -i kicbase-v0.0.48-amd64.tar
    
  • 国内安装需要下载缓存文件,否则会安装失败(拿 v1.34.0 版本举例)

    1. 下载文件

      # 下载 kubelet
      https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet
      # 下载 kubeadm
      https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm
      # 下载 kubectl
      https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl
      
    2. 创建缓存目录

      mkdir -p ~/.minikube/cache/linux/amd64/v1.34.0/
      
    3. 拷贝到缓存目录

      cp kubelet kubeadm kubectl ~/.minikube/cache/linux/amd64/v1.34.0/
      
    4. 赋予 Kubectl 权限

      chmod 0755 ~/.minikube/cache/linux/amd64/v1.34.0/kubectl
      

开始安装

Minikube 安装文档

通过 Docker 启动 Minikube

开始部署

  1. 下载 Minikube 二进制文件

    curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-amd64
    
    install -o root -g root -m 0755 minikube-linux-amd64 /usr/local/bin/minikube
    
  2. 检查版本

    minikube version
    
  3. 指定 Docker 启动

    minikube start --driver=docker --force \
      --base-image=kicbase/stable:v0.0.48 \
      --registry-mirror=https://docker.m.daocloud.io
    
  4. 验证

    minikube kubectl -- get pods -A
    
  5. 配置简化命令

    alias kubectl="minikube kubectl --"
    

其他命令

  • 启动 Dashboard

    minikube dashboard
    
  • 启动 Metrics-Server

    minikube addons enable metrics-server
    
  • 进入 Minikube 环境

    minikube ssh
    
  • 查看端口

    minikube service list
    
  • 开启对外访问端口

    minikube service $ServiceName
    

    kubectl port-forward service/$ServiceName 80:80
    
  • 暂停 Kubernetes (不影响已部署的服务)

    minikube pause
    
  • 取消暂停

    minikube unpause
    
  • 更改内存限制(需要重新启动)

    minikube config set memory 4096
    

卸载集群

  • 停止集群

    minikube stop
    
  • 删除集群

    minikube delete
    
  • 全部删除

    全部删除可以先备份缓存目录以便下次快速启动

    cp -r  ~/.minikube/cache /root/minikube-cache
    
    minikube delete --all --purge
    

常见启动参数解释

参数 说明与作用
--driver docker 指定驱动。使用 Docker 作为 Minikube 虚拟化的底层驱动。这是最常见的本地开发方式,利用主机上的 Docker 引擎来运行 Minikube 的“VM”实际上是一个容器
--force (无值) 强制启动。当检测到已有 Minikube 集群运行或配置冲突时,强制停止并删除旧集群,然后创建新的集群。使用需谨慎,会导致已有集群数据丢失
--memory 4096 分配内存。为 Minikube 虚拟机(节点)分配 4GB4096MB 的内存。对于运行中等复杂度的应用(如带数据库的微服务)是推荐值。
--cpus 2 分配 CPU 核心数。为 Minikube 虚拟机分配 2 个 CPU 核心。这是保证 Kubernetes 组件流畅运行的基本要求。
--base-image kicbase/stable:v0.0.48 指定基础镜像。Minikube 使用 Kubernetes in Container (KIC) 方式运行时所用的特定操作系统镜像。指定此版本可确保环境一致性和稳定性。
--image-mirror-country cn 镜像镜像国家/地区代码。指示 Minikube 从指定国家(此处为中国 cn)的镜像站点下载 Kubernetes 核心组件镜像(如 kube-apiserver, etcd 等)。这是加速下载的关键参数
--image-repository registry.cn-hangzhou... 自定义镜像仓库。将默认的 Kubernetes 镜像仓库 (k8s.gcr.io) 替换为阿里云镜像仓库。这是解决无法直接拉取国际镜像的最有效方法,极大加速集群初始化
--registry-mirror https://registry.docker-cn.com Docker 注册表镜像。为 Minikube 内部的 Docker 引擎配置一个镜像加速器,用于加速拉取工作负载所需的普通 Docker 镜像(如 nginx, redis 等)。此地址是 Docker 官方中国镜像。
--subnet 192.168.200.0/16 指定节点子网。为 Minikube 集群节点(容器)分配一个指定的 Docker 网络子网 (192.168.200.0/16)。用于避免与主机上其他 Docker 网络的 IP 段冲突。
--extra-config kubeadm.pod-network-cidr=192.168.200.0/16 额外 Kubeadm 配置。通过 kubeadm 工具告诉 Kubernetes 控制平面:Pod 网络的 IP 地址范围。这个 CIDR 必须与后面要安装的网络插件(如 Calico、Flannel的默认配置匹配,否则 Pod 无法通信。这里设置为了一个较大的 /16 网段。