minikube的安装和启动dashboard

  1. 环境准备
    我是在本地windows系统中安装了vmware,vmware中安装了centos7虚拟机,虚拟机中安装了docker环境。docker版本为 Docker version 23.0.1

docker 安装链接:https://docs.docker.com/engine/install/centos/

  1. 安装kubectl
curl -Lo kubectl "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" \
&& chmod +x kubectl && sudo mv kubectl /usr/local/bin/
  1. 安装minikube
# 阿里云镜像

curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.23.1/minikube-linux-amd64 \
&& chmod +x minikube && sudo mv minikube /usr/local/bin/

或者

#官方二进制包下载

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

sudo install minikube-linux-amd64 /usr/local/bin/minikube
  1. 创建用户

需要创建一个用户,然后将其添加到 docker 组,不然minikube启动会报错:Exiting due to DRV_AS_ROOT: The “docker” driver should not be used with root privileges.

[root@localhost ~]# grep docker /etc/group
docker:x:994:
[root@localhost ~]# adduser -g 994 -c "Docker" docker
[root@localhost ~]# id docker
uid=1000(docker) gid=994(docker) groups=994(docker)
  1. 启动minikube
    将用户切换到docker: su - docker
minikube start \
--image-mirror-country=cn --registry-mirror="https://registry.docker-cn.com,https://docker.mirrors.ustc.edu.cn"  \
--insecure-registry="registry.netkiller.cn" 
[docker@localhost ~]$ minikube start \
> --image-mirror-country=cn --registry-mirror="https://registry.docker-cn.com,https://docker.mirrors.ustc.edu.cn"  \
> --insecure-registry="registry.netkiller.cn" 
* Centos 7.9.2009 上的 minikube v1.23.1
* minikube 1.28.0 is available! Download it: https://github.com/kubernetes/minikube/releases/tag/v1.28.0
* To disable this notice, run: 'minikube config set WantUpdateNotification false'

* 自动选择 docker 驱动
* 正在使用镜像存储库 registry.cn-hangzhou.aliyuncs.com/google_containers
* Starting control plane node minikube in cluster minikube
* Pulling base image ...
! The image 'registry.cn-hangzhou.aliyuncs.com/google_containers/coredns/coredns:v1.8.4' was not found; unable to add it to cache.
    > registry.cn-hangzhou.aliyun...: 355.40 MiB / 355.40 MiB  100.00% 1.24 MiB
* Creating docker container (CPUs=2, Memory=2200MB) ...
* 正在 Docker 20.10.8 中准备 Kubernetes v1.22.1…
X Unable to load cached images: loading cached images: stat /home/docker/.minikube/cache/images/registry.cn-hangzhou.aliyuncs.com/google_containers/coredns/coredns_v1.8.4: no such file or directory
    > kubectl.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubelet.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubeadm.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubeadm: 43.71 MiB / 43.71 MiB [-------------] 100.00% 825.10 KiB p/s 54s
    > kubectl: 44.73 MiB / 44.73 MiB [------------] 100.00% 691.02 KiB p/s 1m6s
    > kubelet: 146.25 MiB / 146.25 MiB [-----------] 100.00% 1.40 MiB p/s 1m45s
  - Generating certificates and keys ...
  - Booting up control plane ...
  - Configuring RBAC rules ...
* Verifying Kubernetes components...
  - Using image registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v5
* Enabled addons: storage-provisioner, default-storageclass

! /usr/local/bin/kubectl is version 1.26.2, which may have incompatibilites with Kubernetes 1.22.1.
  - Want kubectl v1.22.1? Try 'minikube kubectl -- get pods -A'
* Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default

  1. 启动dashboard
minikube dashboard

启动成功后如下图:

[docker@localhost ~]$ minikube dashboard
* 正在开启 dashboard ...
  - Using image registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.7
  - Using image registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.3.1
* 正在验证 dashboard 运行情况 ...
* Launching proxy ...
* 正在验证 proxy 运行状况 ...
* Opening http://127.0.0.1:33470/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ in your default browser...
  http://127.0.0.1:33470/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/

  1. 设置访问方式
    因为我是本地Windows电脑装了vmware workstation, 在vmware上装的centos7虚拟机,centos7中安装了docker环境,默认是无法从windows上访问。所以我想设置在我windows系统里访问这个dashboard。
nohup kubectl proxy --port=33470 --address='192.168.136.128' --accept-hosts='^.*' > ./nohup.out &

ps:33470 端口为dashboard开启后的端口,address为centos7虚拟机地址。如果centos7的防火墙是开启状态,请将此端口配置,开启。

firewall-cmd --zone=public --add-port=33470/tcp --permanent

firewall-cmd --reload
  1. 访问dashboard
http://192.168.136.128:33470/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default

在这里插入图片描述

  1. 部署应用(nginx)

创建deployment:

kubectl create deployment hello-world --image=nginx:1.7.9 --port=80

查看deployment、service,pod
在这里插入图片描述

现在宿主机中访问这个服务,需要添加端口转发。

kubectl port-forward --address 0.0.0.0 service/hello-wrold  8080:80

这样虚拟机中的8080端口映射到minikube中的80端口,如果虚拟机设置了防火墙,则添加8080的端口规则,这样在宿主机中就可以通过虚拟机的ip和端口访问了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值