以前给你们介绍过几种在笔记本电脑上安装Kubernetes集群的工具,虽然安装起来不太繁琐可是多多少少仍是须要花一些时间的,对于不想瞎倒腾,就想快速安装个本地集群开始学习和测试的同窗,推荐大家试一试Docker桌面应用里自带的Kubernetes集群。其实我也是以前用Minikube安装的集群莫名其妙坏掉启动不起来后,偶然发现Docker桌面应用里内嵌了一个Kubernetes集群,试了试效果感受仍是挺不错的。下面我带你们简单过一下启用集群方法,全程几乎就是点点点,也不须要作啥。node
也不知道是何时开始(反正老早就有了,我这个是前年装的...一直没升级过),Docker的桌面应用除了提供Docker CLI集成外还内嵌了一个Kubernetes集群,默认是不开启的,启用后这个单点的Kubernetes集群会运行在本地的Docker实例中。mysql
要启用这个集群只须要打开Docker应用的首选项(Preferences)界面,选择Kubernetes选项卡。sql
点击应用并重启,就能够去刷小视频了,再回来集群就安装好了。docker
除了启用Kubernetes集群外,若是电脑上以前没有安装过 kubectl (客户端命令工具)的话还会为你自动安装上kubectl,并配置链接到刚才启动的本地集群上。若是是本地以前安装过kubectl 和 存在其余Kubernetes集群,想要链接到Docker桌面应用内嵌的集群则须要切换一下 kubectl 的上下文。markdown
$ kubectl config get-contexts
$ kubectl config use-context docker-desktop
复制代码
集群启用完成后,在打开Docker桌面应用的选项卡在 UI 上会有些微的变化,证实Kubernetes
集群已经成功启动起来了。app
让咱们随便运行几个 kubctl 命令,试试效果。工具
➜ ~ kubectl get node
NAME STATUS ROLES AGE VERSION
docker-desktop Ready control-plane,master 13d v1.21.1
复制代码
能够看到咱们如今使用的是一个单节点,名字叫docker-desktop的集群(这个名没地方改)。oop
使用Docker桌面应用自带的Kubernetes集群还有一点方便的地方就是,集群外部经过 127.0.0.1 就能访问集群内部,也就是咱们经过 NodePort 类型的 Service 向集群外暴露的资源,经过 127.0.0.1:port 的形式就能访问到。学习
咱们随便拿一个以前咱们搭建MySQL开发环境的例子测试一下。搭建MySQL须要的YAML定义文件和步骤我就再也不重复说了,忘记的同窗以前访问上一篇文章:利用Kubernetes搭建便携式开发环境之MySQL和Redis测试
## 切到定义文件在的目录
kubectl apply -f mysql-configmap.yaml
kubectl apply -f deployment-service.yaml
--------------------------------------------------------
## 能够看到下面的Pod和Service资源
kubectl get pod
NAME READY STATUS RESTARTS AGE
mysql-cc4479465-gwdj7 1/1 Running 0 13d
--------------------------------------------------------
kubectl get svc mysql
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
mysql NodePort 10.104.123.151 <none> 3306:30306/TCP 13d
复制代码
在电脑上只要经过127.0.0.1:30306就能访问到咱们刚刚安装的MySQL啦,持久化之类的事情我也试过,只要咱们不主动把MySQL这个Pod删掉数据就会一直在。
经过Docker桌面应用在电脑上安装Kubernetes集群能够说是把咱们学习K8s的起步依赖降到了最低,让咱们能快速跳过工具安装步骤开始正题的学习,想学K8s的同窗们赶忙动手试试吧。
下一期 Kubernetes 的文章我继续分享怎么在Kubernetes上搭建MongoDB开发环境方面的内容,有兴趣还没关注的同窗赶忙点个关注吧。