Kubernetes in action(visualize)

简介: 写在前面上一集我们部署了一个kubernetes集群,并对kubernetes有了个简单的使用,相信大家也看过阿里云的控制台,控制台对kubernetes集群做了一个可视化,当然看起来其实就是根据kubernetes dashboard封装的。

写在前面

上一集我们部署了一个kubernetes集群,并对kubernetes有了个简单的使用,相信大家也看过阿里云的控制台,控制台对kubernetes集群做了一个可视化,当然看起来其实就是根据kubernetes dashboard封装的。 在 Kubernetes 社区中,有一个很受欢迎的 Dashboard 项目,它可以给用户提供一个可视化的 Web 界面来查看当前集群的各种信息。用户可以用 Kubernetes Dashboard 部署容器化的应用、监控应用的状态、执行故障排查任务以及管理 Kubernetes 各种资源。
image

部署dashboard

官方参考文档:
https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/#deploying-the-dashboard-ui
github项目地址:
https://github.com/kubernetes/dashboard

这里部署dashboard v1.10.1版本。

wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

镜像默认是从google拉取的,由于我是新加坡节点的集群,所以无所谓,各位老铁如果是用的国内节点的话,尽量用阿里云的镜像源吧

yaml文件里面修改一下就OK了 
 containers:
      - name: kubernetes-dashboard
        #image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1
        image: registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.1
        ports:
 

直接部署
image
跑起来
image
Dashboard 会在 kube-system namespace 中创建自己的 Deployment 和 Service:

访问dashboard
官方参考文档:
https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/#accessing-the-dashboard-ui

有以下几种方式访问dashboard:

Nodport方式访问dashboard,service类型改为NodePort
loadbalacer方式,service类型改为loadbalacer
Ingress方式访问dashboard
API server方式访问 dashboard
kubectl proxy方式访问dashboard
image
image
如果要像我们刚才的nginx一样用nodeport的方式直接用节点的gong公网ip访问
image
访问生命周期:
节点端口31620--pod端口8443--容器端口443
修改部署文件之后重新apply一下

kubectl apply -f kubernetes-dashboard.yaml

image

image

访问:
image
在ipvs里面的转发
image

Dashboard 支持 Kubeconfig 和 Token 两种认证方式,我们这里选择Token认证方式登录:

创建登录用户
官方参考文档:
https://github.com/kubernetes/dashboard/wiki/Creating-sample-user
创建dashboard-adminuser.yaml:

 apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kube-system

获取token

kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')

image
访问dashboard
image
还有两种访问的方式 一种是LB,另外一种是ingress 这里不做演示了,因为还需要aliyun cloud扩展插件

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
机器学习/深度学习 人工智能 自然语言处理
【AI系统】AI在不同领域的应用与行业影响
本文探讨了人工智能在计算机视觉、自然语言处理及音频处理等领域的广泛应用,并展示了其在自动驾驶、安全监控、搜索引擎优化、客户服务、语音识别及多个行业的革新作用,强调了AI基础设施与系统创新对未来社会的影响与价值。
1378 1
|
存储 JSON 算法
docker私有镜像仓库的搭建及认证
docker私有镜像仓库的搭建及认证
943 1
|
负载均衡 数据安全/隐私保护
k8s-ingress-nginx搭建
k8s-ingress-nginx搭建
586 0
k8s-ingress-nginx搭建
|
开发者 Python
【亮剑】Python中`List.append()`方法不起作用的原因及解决方案
【4月更文挑战第30天】本文探讨了Python中`List.append()`方法不起作用的原因及解决方案。问题可能源于变量作用域、可变类型与不可变类型混淆、函数内的局部变量、错误的赋值操作或并发修改。解决方法包括检查变量、确保正确操作列表、使用`global`关键字、避免错误赋值和采用同步机制处理并发问题。理解这些问题对于编写健壮的Python代码至关重要。
894 0
|
JavaScript 前端开发 Java
JavaScript高级笔记-coderwhy版本(六)
JavaScript高级笔记-coderwhy版本
279 0
|
存储 搜索推荐 程序员
SnippetsLab:程序员的秘密武器
SnippetsLab:程序员的秘密武器
528 0
|
Kubernetes Ubuntu 应用服务中间件
如何在 Ubuntu 22.04 上安装 KubeSphere?
如何在 Ubuntu 22.04 上安装 KubeSphere?
1113 0
|
人工智能 安全 前端开发
中台的演变和理解
中台的演变和理解
358 0
|
小程序 安全 JavaScript
HaaS技术社区大玩家,研究十几年嵌入式独爱HaaS
HaaS技术社区旨在推广物联网操作系统AliOS Things和HaaS云端钉全链路解决方案。HaaS技术涵盖物联网操作系统AliOS Things,JS轻应用,HaaS UI等软件积木,以及HaaS标准硬件和周边生态等硬件积木。HaaS为开发者提供了一种高效的积木的开发方式。
655 15
HaaS技术社区大玩家,研究十几年嵌入式独爱HaaS
|
机器学习/深度学习 Ubuntu Linux
kvm虚拟化部署
kvm虚拟化部署
1098 0
kvm虚拟化部署