Kubernetes入门-使用Minikube安装k8s

使用minikube在本地计算机上上搭建Kubernetes环境

操作系统 Arch
Linux 内核版本: 4.14.130

安装依赖

使用 minikube 来运行本地集群。
需要有 VirtualBoxKubectl 依赖关系
安装:

1
sudo pacman -S minikube kubectl virtualbox

注意
安装virtualbox需要安装对应的内核版本的virtualbox-host-modules
同时安装完成需要重启设备

minikube 启动

在安装完成环境以后只需要运行minikube start
即可完成启动
注意
由于minikube在启动的时候需要拉取一些镜像
由于网络问题很容易失败所以需要设置下代理

1
2
minikube start \
--docker-env HTTP_PROXY=http://192.168.50.195:1088 \ --docker-env HTTPS_PROXY=http://192.168.50.195:1088

运行Dashboard

启动Dastboard只需要一行代码就可以了

1
minikube dashboard

默认监听127.0.0.1网卡 同时会调起应用自带浏览器来访问
由于我是ssh链接到homelab上的 所以无法直接访问
需要使用kubectl进行设置proxy

1
kubectl proxy --address='0.0.0.0' --disable-filter=true

默认监听8001端口
设置完成以后就可以在浏览器访问对应的宿主机的ip地址来进入dashboard

部署一个服务

使用一个已有的镜像部署echoserver服务 映射到8080端口

1
kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.10 --port=8080

如果需要访问这个服务 需要将接口映射出去

1
kubectl expose deployment hello-minikube --type=NodePort

—type=NodePort 指定服务的类型
使用kubectl get pod 来检测pod是否启动并运行
如果还在ContainnerCreating状态 就还是要等待他创建完成
如果显示STATUSRunning 就是已经启动并且正在运行

获取serverURL 来访问

1
minikube service hello-minikube --url

可以直接curl访问url 查看返回的数据

处理后事

删除 服务

1
kubectl delete services hello-minikube

删除 部署

1
kubectl delete deployment hello-minikube

停止集群

1
minikube stop

删除本地Minikube集群:

1
minikube delete

参考文章

kubernetes-minikube/
Getting started with Kubernetes | George Ornbo