极速安装和体验k8s(Minikube)

简介: 本文帮助您快速搭建k8s环境进行学习和开发(Minikube)

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码): https://github.com/zq2599/blog_demos

本篇概览

c如果您想快速搭建k8s环境进行学习和开发,可以通过Docker快速完成Minikube(单节点的k8s)的部署,通过Minikube体验各类K8S的基础服务;

版本信息

  • 以下是本次实战的环境信息,Windows环境下的docker也可以按照以下步骤进行:
  1. 操作系统:macOS Mojave(10.14.5) (电脑是18款MacBook Air)
  2. Docker:Version 2.0.0.3 (31259)
  3. Minikube:1.10.11

安装部署Docker

  1. 在官网下载Docker桌面版,地址是:https://www.docker.com/products/docker-desktop
  2. 安装完成后启动Docker;

安装Minikube

  • 点击顶部菜单的Docker图标,在弹出的菜单上点击"Preferences"菜单,如下图:

在这里插入图片描述

  • 弹出的窗口,选择"Kubernetes",再勾选"Enable Kubernetes",如下图:

在这里插入图片描述

  • 如果安装了Docker之后从未安装过Minikube,会弹出提示如下图,选择"Install"即可:

在这里插入图片描述

  • 此时Docker应用会自动安装Minikube,请耐心等待(我这里等待了十多分钟),安装成功后如下图,右下角的图标会从橙色转为绿色:

在这里插入图片描述

  • 至此,Minikube安装和启动成功,可以用kubectl来操作了,接下来我们把图形化页面也装好;

安装图形化页面Kubernetes Dashboard

  • 打开一个新的终端,执行以下命令:
kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
  • 命令执行成功后,控制台输出如下:
secret "kubernetes-dashboard-certs" created
secret "kubernetes-dashboard-csrf" created
serviceaccount "kubernetes-dashboard" created
role.rbac.authorization.k8s.io "kubernetes-dashboard-minimal" created
rolebinding.rbac.authorization.k8s.io "kubernetes-dashboard-minimal" created
deployment.apps "kubernetes-dashboard" created
service "kubernetes-dashboard" created
  • 执行命令get pods --namespace=kube-system,查看所有运行中的Pod信息:
NAME                                         READY     STATUS    RESTARTS   AGE
etcd-docker-for-desktop                      1/1       Running   0          3h
kube-apiserver-docker-for-desktop            1/1       Running   0          3h
kube-controller-manager-docker-for-desktop   1/1       Running   0          3h
kube-dns-86f4d74b45-ms6dr                    3/3       Running   0          3h
kube-proxy-fflkn                             1/1       Running   0          3h
kube-scheduler-docker-for-desktop            1/1       Running   1          3h
kubernetes-dashboard-669f9bbd46-m9qkw        1/1       Running   0          2m
  • 如果您看到的Pod状态不全是Running,请稍作等待,直到状态全部变成Running;
  • 上面的命令显示有个名为kubernetes-dashboard-669f9bbd46-m9qkw的Pod,这就是图形化页面应用的Pod名,执行以下命令,将本机8443端口的请求都转发到该Pod的8443端口,这样我们就能访问到此Pod提供的图形化页面的web服务了:
nohup kubectl port-forward kubernetes-dashboard-669f9bbd46-m9qkw 8443:8443 --namespace=kube-system &
  • 此时还不能立即访问dashboard,因为这个web服务是需要Token校验的,在终端执行以下命令取得Token:
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | awk '/^deployment-controller-token-/{print $1}') | awk '$1=="token:"{print $2}'
  • 执行上述命令后,在控制台返回的内容就是登录dashboard用的Token,我这里得到的是eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkZXBsb3ltZW50LWNvbnRyb2xsZXItdG9rZW4tZnJrNnoiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGVwbG95bWVudC1jb250cm9sbGVyIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjdhNGJhN2MtN2VhZC0xMWU5LWJiOWUtMDI1MDAwMDAwMDAxIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRlcGxveW1lbnQtY29udHJvbGxlciJ9.CVjhOGJyuSSRDd1zfLd-ZvRMPcPXmSSIUDPdomZYcR8-kYZBks4BBMMm-V8HExtoyVpqc4_lhjE04AmzvH951pd81O6IgV5UAIS89XwFBrrpo1RqbTUOcQqKBxhldfmerU4Ggtiv3y6C3mZgIop1sY0-3C6wsh9pNLaFAULSf2iYDtWIpNIEbdBseSW3ARBjEm_Yed1XXzGwC1D5Yy1G-BlzjwuujxgbvcqyvsgC3A8eKRU1wQjA1LvbtNE2LcZvlefGbV7WT7HDTDroxcMcEEI7PeHwEuzs8DL_Dhi-GZZ3z7PnXowjkwx41xNEzKXffAWI8CPs2f80ntfB2W5Drg
  • 记下这一长串内容,稍后会用到;
  • 现在可以用浏览器访问dashboard的web服务了,地址是:https://localhost:8443 (注意是https
  • 浏览器会弹出安全提示如下,请点击高级按钮:

在这里插入图片描述

  • 如下图,点击红框中的"继续前往localhost(不安全)":

在这里插入图片描述

  • 现在弹出了登录鉴权的页面,如下图红框1,选择"令牌",在红框2位置输入前面记下的Token,再点击红框3中的登录按钮即可进入dashboard内容页面:

在这里插入图片描述

  • 在dashboard可以看到服务现状,如下图:

在这里插入图片描述

验证Minikube

  • 接下来试着创建Pod和Service,验证这个Minikube环境是否能用来作为学习和开发环境:
  • 执行以下命令,创建tomcat的Pod,副本数为2:
kubectl run my-tomcat --image=tomcat:7.0.94-jre7-alpine --replicas=2 --port=8080
  • 执行以下命令,创建Service,将Pod的服务通过Service暴露出去,其中192.168.50.7是当前电脑的IP:
kubectl expose deployment my-tomcat --port=8080 --target-port=8080 --external-ip=192.168.50.7 --type=LoadBalancer
  • 执行成功后,在浏览器访问tomcat服务成功,如下图,地址是:http://192.168.50.7:8080

在这里插入图片描述

  • 在dashboard上可以看见Pod和Service信息,如下图:

在这里插入图片描述

  • 至此,Minikube及其dashboard的安装和体验都完成了,如果您想体验k8s的基本功能,希望本文能给你一些参考。

欢迎关注阿里云开发者社区博客:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...
相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
7月前
|
人工智能 运维 Kubernetes
2025 超详细!Lens Kubernetes IDE 多平台下载安装与集群管理教程
Lens 是一款企业级 Kubernetes 可视化操作平台,2025版实现了三大技术革新:AI智能运维(异常检测准确率98.7%)、多云联邦管理(支持50+集群)和实时3D拓扑展示。本文介绍其安装环境、配置流程、核心功能及高阶技巧,帮助用户快速上手并解决常见问题。适用于 Windows、macOS 和 Ubuntu 系统,需满足最低配置要求并前置依赖组件如 kubectl 和 Helm。通过 Global Cluster Hub 实现多集群管理,AI辅助故障诊断提升运维效率,自定义监控看板和插件生态扩展提供更多功能。
|
10月前
|
Kubernetes 应用服务中间件 nginx
二进制安装Kubernetes(k8s)v1.32.0
本指南提供了一个详细的步骤,用于在Linux系统上通过二进制文件安装Kubernetes(k8s)v1.32.0,支持IPv4+IPv6双栈。具体步骤包括环境准备、系统配置、组件安装和配置等。
3192 11
|
Kubernetes Ubuntu Docker
从0开始搞K8S:使用Ubuntu进行安装(环境安装)
通过上述步骤,你已经在Ubuntu上成功搭建了一个基本的Kubernetes单节点集群。这只是开始,Kubernetes的世界广阔且深邃,接下来你可以尝试部署应用、了解Kubernetes的高级概念如Services、Deployments、Ingress等,以及探索如何利用Helm等工具进行应用管理,逐步提升你的Kubernetes技能树。记住,实践是最好的老师,不断实验与学习,你将逐渐掌握这一强大的容器编排技术。
1991 1
|
Kubernetes Linux 开发工具
centos7通过kubeadm安装k8s 1.27.1版本
centos7通过kubeadm安装k8s 1.27.1版本
|
弹性计算 Kubernetes Linux
如何使用minikube搭建k8s集群
如何使用minikube搭建k8s集群
|
Kubernetes Docker 容器
rancher docker k8s安装(二)
rancher docker k8s安装(二)
237 1
|
存储 Kubernetes 负载均衡
基于Ubuntu-22.04安装K8s-v1.28.2实验(四)使用域名访问网站应用
基于Ubuntu-22.04安装K8s-v1.28.2实验(四)使用域名访问网站应用
215 1
|
负载均衡 应用服务中间件 nginx
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
361 1
|
11月前
|
Kubernetes Ubuntu Linux
我应该如何安装Kubernetes
我应该如何安装Kubernetes
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
551 0

热门文章

最新文章

推荐镜像

更多