学习笔记
分享学习经验,记录生活点滴

使用minikube在单机(win10)上部署Kubernetes集群

前言

Kubernetes是Google公司在2014年6月开源的一个容器集群管理系统,使用Go语言开发,也叫K8S。Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。Kubernetes一个核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望状态运行着(比如用户想让apache一直运行,用户不需要关心怎么去做,Kubernetes会自动去监控,然后去重启,新建,总之,让apache一直提供服务),管理员可以加载一个微型服务,让规划器来找到合适的位置,同时,Kubernetes也系统提升工具以及人性化方面,让用户能够方便的部署自己的应用。

Kubernetes的特点

  • 可移植:支持公有云,私有云,混合云,多重云(multi-cloud)

  • 可扩展:模块化,插件化,可挂载,可组合

  • 自愈:自动布置,自动重启,自动复制,自动扩展

部署

安装docker

首先需要安装docker环境,关于如何安装docker,网上有一大堆教程,我参考的是Windows10下安装Docker的步骤,安装的过程中没有报错,所以不详细介绍了。

安装Minikube

由于网络访问原因,很多朋友无法使用minikube进行实验。可以从阿里云的镜像地址来获取所需Docker镜像和配置。参考 Minikube - Kubernetes本地实验环境

在Windows环境下,如果开启了Hyper-V,不支持VirtualBox方式,可以使用Hyper-V方式安装 ,下载 minikube-windows-amd64.exe 文件,并重命名为 minikube.exe. 在C盘下创建一个Kubernetes文件夹,将 minikube.exe放到Kubernetes 文件夹下,同时下载kubectl,也放到Kubernetes文件夹下,kubectlkubernetes的客户端,通过他可以进行类似docker run等容器管理操作。

将minikube和kubectl放到Path路径下,即在系统变量的Path里新建路径C:\Kubernetes

然后打开Hyper-V管理器(需要管理员权限)创建一个外部虚拟交换机,虚拟机名称命名为minikubeSwitch,连接类型选择外部网络

之后,用如下命令来创建基于Hyper-V的Kubernetes测试环境。此处可根据本地单机的内存大小合理设置虚拟机内存(memory)的大小

注意:此处运行命令时无法下载image,可能的原因是被墙了,可以搭梯子解决或者寻找替代方案。

.\minikube.exe start --registry-mirror=[https://registry.docker-cn.com](https://registry.docker-cn.com/) --vm-driver="hyperv" --memory=4096 --hyperv-virtual-switch="minikubeSwitch"

替代方案:替代各依赖的image

docker pull gcrxio/kubernetes-dashboard-amd64:v1.10.1
docker tag gcrxio/kubernetes-dashboard-amd64:v1.10.1 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1

docker pull googlecontainer/kube-addon-manager:v6.4-beta.2
docker tag googlecontainer/kube-addon-manager:v6.4-beta.2 gcr.io/google-containers/kube-addon-manager:v6.4-beta.2 

docker pull zhaoqing/k8s-dns-dnsmasq-nanny-amd64:1.14.4
docker tag zhaoqing/k8s-dns-dnsmasq-nanny-amd64:1.14.4 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4

docker pull zhaoqing/k8s-dns-kube-dns-amd64:1.14.4
docker tag zhaoqing/k8s-dns-kube-dns-amd64:1.14.4 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4

docker pull zhaoqing/k8s-dns-sidecar-amd64:1.14.4
docker tag zhaoqing/k8s-dns-sidecar-amd64:1.14.4 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4

通过替换上边几个依赖的镜像之后,稍等一会,运行kubectl get pods -n kube-system命令就会发现服务都正常启动起来了。

使用

打开Kubernetes控制台

运行minikube dashboard 命令

首次打开要下载,下载过程可能会失败,重试几次即可,打开就可以看到类似界面

参考文章:

https://www.cnblogs.com/shanyou/p/8503839.html

https://yq.aliyun.com/articles/221687

https://cloud.tencent.com/developer/article/1010584

赞(6) 打赏
未经允许不得转载:ABCLearning » 使用minikube在单机(win10)上部署Kubernetes集群
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

阿里云限时红包 助力一步上云

了解详情领取红包

觉得文章有用就打赏一下文章作者

微信扫一扫打赏