实验综述
Kubernetes用来管理云平台上的容器化应用,这里从 https://www.katacoda.com/courses/kubernetes 学习Kubernetes的使用,对Kubernetes有大致的了解。
实验一与MiniKube
实验一是单个节点集群的启动,主要学会启动一个单节点的包含DNS和Kube UI 的MiniKube集群;Minikube是一种可以轻松在本地运行Kubernetes的工具。 Minikube在笔记本电脑上的VM内运行一个单节点Kubernetes集群,供希望试用Kubernetes或每天使用它开发的用户使用。
这里的环境已经安装好了MiniKube,可以查看版本并且启动:
集群可以使用Kubectl 命令行工具进行交互,使用kubectl cluster-info 查看集群信息和当前状况,使用kubectl get nodes查看集群中的节点;
使用Kubectl部署(deployment):
deployment负责创建和更新应用,创建Deployment后,Kubernetes master 会将Deployment创建好的应用实例调度到集群中的各个节点。应用实例创建完成后,Kubernetes Deployment Controller会持续监视这些实例。如果管理实例的节点被关闭或删除,那么 Deployment Controller将会替换它们,实现自我修复能力。“在旧的世界中” ,一般通常安装脚本来启动应用,但是便不会在机器故障后自动恢复。通过在Node节点上运行创建好的应用实例,使 Kubernetes Deployment 对应用管理提供了截然不同的方法。
Nodeport用于将服务暴露向集群外部,可以让k8s自动选择端口。接下来寻找分配的端口并且处理HTTP请求。
最后可以创建Dashboard来提供UI交互:
实验一结束,主要学习了MiniKube中创建k8s集群的方法和Kubectl的基础使用。
最后放出完整过程: