Devops实战(三)Kubenets与minikube的安装以及使用实战
1.Kubenets与minikube简介
Kubernetes(常简称为K8s)是用于自动部署、扩展和管理「容器化(containerized)应用程序」的开源系统。该系统由Google设计并捐赠给Cloud Native Computing Foundation(今属Linux基金会)来使用。它旨在提供“跨主机集群的自动部署、扩展以及运行应用程序容器的平台”。它支持一系列容器工具, 包括Docker等。
Minikube 是一种可以让您在本地轻松运行 Kubernetes 的工具。Minikube 在笔记本电脑上的虚拟机(VM)中运行单节Kubernetes 集群,供那些希望尝试 Kubernetes 或进行日常开发的用户使用。
2.使用centos7安装
首先确保你已经安装过Docker,没有安装可以参考前面的docker安装步骤进行安装docker。
① 下载阿里的 minikube和kubectl
# curl -Lo minikube http://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.4.0/minikube-linux-amd64
# curl -Lo kubectl http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/v1.16.0/bin/linux/amd64/kubectl
② 加执行权限并放入启动目录
# chmod +x minikube
# chmod +x kubectl
copy到/usr/local/bin
# cp minikube /usr/local/bin
# cp kubectl /usr/local/bin
开启kubelet服务,这一步很重要
systemctl enable kubelet.service
③启动minikube, 并发布一个tomcat
// 没有使用virtualBox, 没用kvm2。none用的是本地的docker
# minikube start --vm-driver=none
// 手工下载tomcat 8.0 image
# docker pull tomcat:8.0
// 部署服务
# kubectl create deployment tomcat --image=tomcat:8.0
// 暴露对外访问端口
# kubectl expose deployment tomcat --type=NodePort --port=8080
// 使用minikube启动pod
# minikube service tomcat
启动完后会输出如下所示:
然后访问URL的地址http://192.168.17.129:30743,会弹出tomcat的界面如下所示:
3.访问minikube的图形化界面
minikube还给我们准备了图形化的界面,可通过如下命令开启界面:
minikube dashboard
同样我们可以在启动日志中找到相应的地址,但是只能本机访问,如果需要外部访问可以按照如下方式设置代理:
- 添加集群对外访问代理:
nohub kubectl proxy --port=[需要暴露的端口号] --address='[服务器IP]' --accept-hosts='^[外部访问服务器的IP]$' >/dev/null 2>&1&
- 例如:
nohup kubectl proxy --port=8088 --address='192.168.17.129' --accept-hosts='^192.168.17.129$' >/dev/null 2>&1&
访问地址示例:
http://192.168.17.129:8088/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default
进入后可以看到如下界面,这个界面方便我们管理kubectl的集群已经部署的服务,关于minikube的命令的详细介绍可以参考官方文档中的Minikube 功能小节: