前言
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文件夹下,kubectl
即kubernetes
的客户端,通过他可以进行类似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