选择centos7.6

安装docker

yum install docker 
systemctl start docker
systemctl enable docker

安装Minikube可执行程序

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

检查版本

minikube version

安装kubectl

curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl

检查版本

kubectl version

运行minikube程序创建k8s

强制选择docker作为虚拟环境

minikube start --force --driver=docker

查看状态

kubectl get all --all-namespaces

安装dashboard

minikube dashboard

kubectl get all --all-namespaces

可以看到有dashboard的pod以及service在运行,默认端口是容器的80端口,不是centos系统的80,所以需要做端口映射。

下面是试过的方法

	minikube dashboard
	返回的url http://127.0.0.1:42005/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 为访问地址,但此地址只是容器代理出来的地址,只能本机内网访问,要想在外网访问 dashboard 的UI 界面,需要使用kubectl做一层代理。
	kubectl proxy --port=端口号(一个没有被占用的就可以) --address='机器内网地址' --accept-hosts='^.*' &
	以上命令昨晚代理后,访问 http://机器公网IP:上面配置的端口号/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 就可以访问到dashboard 的UI 界面

这个不管用是因为机器内网地址这一块,没理解清楚啊。因为我部署在腾讯云里面,我不知道这网络经过了多少次转发,也不知道腾讯云的路由转了几次。

下面这个方法也试了,采用系统端口去映射service的端口。结果就是我在我笔记本的谷歌浏览器上还是找不到地址。

wget  https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml

下载上面的文件,或者自己创建文件。

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort  # 新增
  ports:
    - port: 80
      targetPort: 8443
      nodePort: 30009  # 新增
  selector:
    k8s-app: kubernetes-dashboard

kubectl apply -f recommended.yaml
上面这个办法,我在本地集群上是试过的,本地集群上是有用的。

port: 8080 , Service暴露出来的Port
nodePort: 31199, Node 暴露出来的Port
targetPort: 80, Container上暴露的Port

心累,不行。本地集群,这就可以了。
以后还是搭建本地集群吧,远程集群只能命令行操作了。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐