minikube安装kubernetes以及start启动报错解决办法:Unable to find image ‘gcr.io/k8s-minikube/kicbase

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 使用minikubu安装kuburnetes集群,所遇到的问题,以及如何设置。

使用minikubu安装kuburnetes集群,所遇到的问题,以及如何设置。


安装 Kubernetes 集群

三种安装方式,练习使用minikube简单化安装,相关文档资料如下所示:


安装 Kubernetes 集群

在Linux中安装并设置kubectl

安装minikube之前要先安装kubectl,以下是官方文档安装教程。文档很详细,并且建议根据文档安装下“启用 shell 自动补全功能”,这个自动补全功能真的很好用,省很大事呢!


在 Linux 系统中安装并设置kubectl

minikube安装

minikube官方安装教程

安装minikube前要把docker提前安装好,并设置为国内阿里云镜像。


1.png

根据如图所示选择自己的操作系统架构执行安装即可。

但在下一步minikube start的时候经常会出错,这里列几个我遇到的问题:


问题1、报错X Exiting due to DRV_AS_ROOT: The “docker” driver should not be used with root privileges.


Centos 7.9.2009 (kvm/amd64) 上的 minikube v1.29.0

Kubernetes 1.26.1 is now available. If you would like to upgrade, specify: --kubernetes-version=v1.26.1

根据现有的配置文件使用 docker 驱动程序

The “docker” driver should not be used with root privileges. If you wish to continue as root, use --force.

If you are running minikube within a VM, consider using --driver=none:

https://minikube.sigs.k8s.io/docs/reference/drivers/none/

Tip: To remove this root owned cluster, run: sudo minikube delete

X Exiting due to DRV_AS_ROOT: The “docker” driver should not be used

with root privileges.


这个问题好解决,说是不能用root,但是我就要用,所以直接加个 --force参数就可以。


问题2、Unable to find image ‘gcr.io/k8s-minikube/kicbase:v0.0.37@sha256:8bf7a0e8a062bc5e2b71d28b35bfa9cc862d9220e234e86176b3785f685d8b15’ locally


2.png


出现这个问题要设置为国内镜像,并且添加下载替换的镜像。

解决办法

查找替代的镜像,比如anjone/kicbase

  • 下载镜像
docker pull anjone/kicbase


  • 指定镜像启动
    使用anjone/kicbase,而不是gcr.io/k8s-minikube/kicbase:v0.0.10。
    这样就不会因为gcr.io/k8s-minikube/kicbase:v0.0.10下载失败,而无法启动集群!

最终参数列表:

参数

说明
–base-image 指定镜像,忽略SHA校验

anjone/kicbase

–vm-driver

使用docker docker
–image-mirror-country 镜像所在的国家是中国 cn
–image-repository 镜像仓库地址为阿里云 registry.cn-hangzhou.aliyuncs.com/google_containers
–logtostderr 输出日志到stderr


–kubernetes-version 指定kubernetes版本 v1.22.0
–force 强制使用root账户



所以最终的start命令如下:

minikube start --vm-driver=docker --base-image="anjone/kicbase" --image-mirror-country='cn' --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers' --kubernetes-version='v1.22.0' --force


执行成功如下图所示:3.png


访问集群,看到下图就说明成功了

4.png

kubectl get po -A


如果还有其他报错,可以通过参数说明查看参数设置:

minikube start --help



相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
7天前
|
Kubernetes Ubuntu Linux
我应该如何安装Kubernetes
我应该如何安装Kubernetes
|
30天前
|
Kubernetes Ubuntu Docker
从0开始搞K8S:使用Ubuntu进行安装(环境安装)
通过上述步骤,你已经在Ubuntu上成功搭建了一个基本的Kubernetes单节点集群。这只是开始,Kubernetes的世界广阔且深邃,接下来你可以尝试部署应用、了解Kubernetes的高级概念如Services、Deployments、Ingress等,以及探索如何利用Helm等工具进行应用管理,逐步提升你的Kubernetes技能树。记住,实践是最好的老师,不断实验与学习,你将逐渐掌握这一强大的容器编排技术。
113 1
|
1月前
|
Kubernetes Linux 开发工具
centos7通过kubeadm安装k8s 1.27.1版本
centos7通过kubeadm安装k8s 1.27.1版本
|
1月前
|
Kubernetes Docker 容器
rancher docker k8s安装(一)
rancher docker k8s安装(一)
40 2
|
1月前
|
Kubernetes 网络安全 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(一)部署K8s
基于Ubuntu-22.04安装K8s-v1.28.2实验(一)部署K8s
195 2
|
1月前
|
存储 Kubernetes 负载均衡
基于Ubuntu-22.04安装K8s-v1.28.2实验(四)使用域名访问网站应用
基于Ubuntu-22.04安装K8s-v1.28.2实验(四)使用域名访问网站应用
28 1
|
1月前
|
负载均衡 应用服务中间件 nginx
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
50 1
|
1月前
|
弹性计算 Kubernetes Linux
如何使用minikube搭建k8s集群
如何使用minikube搭建k8s集群
|
1月前
|
Kubernetes Docker 容器
rancher docker k8s安装(二)
rancher docker k8s安装(二)
43 0
|
1月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
131 0