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扩展插件

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
7月前
|
Kubernetes 负载均衡 网络协议
|
4月前
|
弹性计算 运维 Kubernetes
Kubernetes(K8S) Controller - Deployment 介绍
Kubernetes(K8S) Controller - Deployment 介绍
42 1
|
4月前
|
Kubernetes 负载均衡 应用服务中间件
Kubernetes(K8S) Service 介绍
Kubernetes(K8S) Service 介绍
43 0
|
存储 JSON Kubernetes
kubernetes为何需要默认的serviceaccount?
在 Kubernetes 中,ServiceAccount 是一种用于身份验证和授权的对象。它为 Pod 提供了一种身份,以便它们可以与 Kubernetes API 交互,并且可以通过 Role 和 RoleBinding 为它们分配特定的权限。
423 0
|
7月前
|
Kubernetes 测试技术 Perl
kubernetes—Controller详解(一)
kubernetes—Controller详解(一)
103 0
|
7月前
|
消息中间件 Kubernetes 监控
kubernetes—Controller详解(二)
kubernetes—Controller详解(二)
88 0
|
7月前
|
Kubernetes 负载均衡 算法
kubernetes—Service详解
kubernetes—Service详解
91 0
|
Kubernetes 负载均衡 应用服务中间件
22-Kubernetes-Service详解-Ingress介绍
22-Kubernetes-Service详解-Ingress介绍
|
Kubernetes 负载均衡 算法
kubernetes中service探讨
kubernetes中service探讨
119 0
|
缓存 Kubernetes 测试技术

相关实验场景

更多