Kubernetes学习之Minikube安装

在这里插入图片描述

介绍

minikube

Minikube 是一个可以在本地轻松运行 Kubernetes 的工具。Minikube 会在您的笔记本电脑中的虚拟机上运行一个单节点的 Kubernetes 集群,以便用户对 Kubernetes 进行试用或者在之上进行 Kubernetes 的日常开发。

目前支持linux、mac、windows安装。步骤差距较大。

且安装过程文件非常多,目前ANT老师在备课过程中,windows下使用VMware安装centos虚拟机及使用windows minikube安装程序+vritualBOX安装k8s的用户界面模块dashboard模块无法成功。

在腾讯云服务器按照笔记中的步骤安装正常。

kubectl

kubectl是用于针对Kubernetes集群运行命令的命令行接口。

linux安装

安装环境:虚拟机 核心数分配2核以上
操作系统:centos 7

ps:建议使用云主机进行安装。

前置准备

  1. 前提条件需要先安装docker

docker安装步骤参考docker课程中的笔记。

  1. 虚拟机配置
# 关闭防火墙
sudo systemctl stop firewalld
# 清除防火墙规则
iptables -F

# 关闭内存交换
sudo swapoff -a

# 重新加载配置
systemctl daemon-reload
# 重启docker
systemctl restart docker

# 关闭selinux
sudo setenforce 0

下载minikube 和kubectl

# curl -Lo minikube http://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.4.0/minikube-linux-amd64

# curl -Lo kubectl  http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/v1.16.0/bin/linux/amd64/kubectl

加执行权限:

# chmod +x minikube
# chmod +x kubectl

copy到/usr/local/bin

# cp minikube /usr/local/bin
# cp kubectl /usr/local/bin

启动minikube

注意启动minikube直接在机器的命令行界面执行,不要使用xshell连接后操作。

因为我这里直接使用宿主机进行安装 vm-driver=none 为裸机运行

区别于windows的安装方式需要使用到本地vm的驱动

#  minikube start --vm-driver=none

命令执行完成显示界面。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O34U0KE1-1625640087480)(Minikube安装.assets/image-20200416153914023.png)]

该过程时间较长。

开启 minikube dashboard

​ 仪表板是基于Web的Kubernetes用户界面。可以使用仪表板将容器化的应用程序部署到Kubernetes集群,对容器化的应用程序进行故障排除以及管理集群资源。可以使用Dashboard来概述集群上运行的应用程序,以及创建或修改单个Kubernetes资源(例如Deployments,Jobs,DaemonSets等)。例如,可以使用部署向导来扩展部署,启动滚动更新,重新启动Pod或部署新应用程序。
仪表板还提供有关集群中Kubernetes资源状态以及可能发生的任何错误的信息。

如果是直接安装在macOS上,或者windows的安装方式,可以使用minikube dashboard

minikube dashboard

因为我们使用的是centos 7只有终端环境,所以我们要在宿主机上进行浏览器访问,不需要执行minikube dashboard,使用如下命令开启proxy`

sudo kubectl proxy --address='0.0.0.0' --accept-hosts='^*$'

并且使用如下地址访问即可

http://xxx.xxx.xxx.xxx:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy
IP获取

要获取xxx.xxx.xxx.xxx的虚拟机ip,可以使用如下命令。

sudo minikube ip

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WavNujIr-1625640087481)(Minikube安装.assets/image-20200417203531029.png)]

安装过程中常见问题

1、Cpu线程不够

注意当前机器的docker进程是否正常。

虚拟机注意当前机器的核心数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5pi6vSFb-1625640087481)(Minikube安装.assets/image-20200416150354391.png)]

如图,第一次启动,提示* Requested cpu count 1 is less than the minimum allowed of 2 ,增加虚拟机cpu个数,再次启动。

如VMware增加核心数

在虚拟机关闭的情况下,进入虚拟机设置,核心数设置。

image-20200416151027065 image-20200416151046894

2、kubernetes-dashboard 访问异常

访问:http://xxx.xxx.xxx.xxx:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fBqKXvOC-1625640087482)(Minikube安装.assets/image-20200417145939628.png)]

可能kubesystem系统pod有异常。排查步骤

1)首先查看pod状态,定位异常pod:

kubectl get pods --namespace kube-system

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-asSycAok-1625640087482)(Minikube安装.assets/image-20200417150157326.png)]

2)首先查看pod日志:

kubectl describe pod coredns-67c766df46-lrdv9  --namespace kube-system

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-awlOJboC-1625640087483)(Minikube安装.assets/image-20200417150252089.png)]

对于no route to host问题,许多资料指明解决办法为刷新 iptables,但在我本地虚拟机上并没效果。

[root@k8s-master k8s]# systemctl stop kubelet
[root@k8s-master k8s]# systemctl stop docker
[root@k8s-master k8s]# iptables --flush
[root@k8s-master k8s]# iptables -tnat --flush
[root@k8s-master k8s]# systemctl start kubelet
[root@k8s-master k8s]# systemctl start docker
  1. 缺少kubernetes-dashboard命名空间和服务。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qsq10KYv-1625640087484)(Minikube安装.assets/image-20200417204903645.png)]

通过docker images 命令排查镜像是否有下载,由于有些镜像在国外,可能会存在镜像下载失败的情况。

解决办法,通过国内的源下载对应镜像

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.0

然后重新执行minikube dashboard。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

chen7740161

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

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

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

打赏作者

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

抵扣说明:

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

余额充值