极速安装和体验 k8s(Minikube)
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
本篇概览
c 如果您想快速搭建 k8s 环境进行学习和开发,可以通过 Docker 快速完成 Minikube(单节点的 k8s)的部署,通过 Minikube 体验各类 K8S 的基础服务;
版本信息
以下是本次实战的环境信息,Windows 环境下的 docker 也可以按照以下步骤进行:
操作系统:macOS Mojave(10.14.5) (电脑是 18 款 MacBook Air)
Docker:Version 2.0.0.3 (31259)
Minikube:1.10.11
安装部署 Docker
在官网下载 Docker 桌面版,地址是:https://www.docker.com/products/docker-desktop
安装完成后启动 Docker;
安装 Minikube
点击顶部菜单的 Docker 图标,在弹出的菜单上点击"Preferences"菜单,如下图:
弹出的窗口,选择"Kubernetes",再勾选"Enable Kubernetes",如下图:
如果安装了 Docker 之后从未安装过 Minikube,会弹出提示如下图,选择"Install"即可:
此时 Docker 应用会自动安装 Minikube,请耐心等待(我这里等待了十多分钟),安装成功后如下图,右下角的图标会从橙色转为绿色:
至此,Minikube 安装和启动成功,可以用 kubectl 来操作了,接下来我们把图形化页面也装好;
安装图形化页面 Kubernetes Dashboard
打开一个新的终端,执行以下命令:
命令执行成功后,控制台输出如下:
执行命令 get pods --namespace=kube-system,查看所有运行中的 Pod 信息:
如果您看到的 Pod 状态不全是 Running,请稍作等待,直到状态全部变成 Running;
上面的命令显示有个名为 kubernetes-dashboard-669f9bbd46-m9qkw 的 Pod,这就是图形化页面应用的 Pod 名,执行以下命令,将本机 8443 端口的请求都转发到该 Pod 的 8443 端口,这样我们就能访问到此 Pod 提供的图形化页面的 web 服务了:
此时还不能立即访问 dashboard,因为这个 web 服务是需要 Token 校验的,在终端执行以下命令取得 Token:
执行上述命令后,在控制台返回的内容就是登录 dashboard 用的 Token,我这里得到的是 eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkZXBsb3ltZW50LWNvbnRyb2xsZXItdG9rZW4tZnJrNnoiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGVwbG95bWVudC1jb250cm9sbGVyIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjdhNGJhN2MtN2VhZC0xMWU5LWJiOWUtMDI1MDAwMDAwMDAxIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRlcGxveW1lbnQtY29udHJvbGxlciJ9.CVjhOGJyuSSRDd1zfLd-ZvRMPcPXmSSIUDPdomZYcR8-kYZBks4BBMMm-V8HExtoyVpqc4_lhjE04AmzvH951pd81O6IgV5UAIS89XwFBrrpo1RqbTUOcQqKBxhldfmerU4Ggtiv3y6C3mZgIop1sY0-3C6wsh9pNLaFAULSf2iYDtWIpNIEbdBseSW3ARBjEm_Yed1XXzGwC1D5Yy1G-BlzjwuujxgbvcqyvsgC3A8eKRU1wQjA1LvbtNE2LcZvlefGbV7WT7HDTDroxcMcEEI7PeHwEuzs8DL_Dhi-GZZ3z7PnXowjkwx41xNEzKXffAWI8CPs2f80ntfB2W5Drg
记下这一长串内容,稍后会用到;
现在可以用浏览器访问 dashboard 的 web 服务了,地址是:https://localhost:8443 (注意是 https)
浏览器会弹出安全提示如下,请点击高级按钮:
如下图,点击红框中的"继续前往 localhost(不安全)":
现在弹出了登录鉴权的页面,如下图红框 1,选择"令牌",在红框 2 位置输入前面记下的 Token,再点击红框 3 中的登录按钮即可进入 dashboard 内容页面:
在 dashboard 可以看到服务现状,如下图:
验证 Minikube
接下来试着创建 Pod 和 Service,验证这个 Minikube 环境是否能用来作为学习和开发环境:
执行以下命令,创建 tomcat 的 Pod,副本数为 2:
执行以下命令,创建 Service,将 Pod 的服务通过 Service 暴露出去,其中 192.168.50.7 是当前电脑的 IP:
执行成功后,在浏览器访问 tomcat 服务成功,如下图,地址是:http://192.168.50.7:8080
在 dashboard 上可以看见 Pod 和 Service 信息,如下图:
至此,Minikube 及其 dashboard 的安装和体验都完成了,如果您想体验 k8s 的基本功能,希望本文能给你一些参考。
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/aab944825752f776fd2b55964】。文章转载请联系作者。
评论