热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Kubernetes(K8s)(四)——k8s的web管理页面

(1).部署KubernetesDashboardweb页面KubernetesDashboard(仪表盘)是Kubernetes项目中基于Web监控和操作界面的项目。1)确认节点

(1).部署Kubernetes Dashboard web页面

  Kubernetes Dashboard(仪表盘)是Kubernetes项目中基于Web监控和操作界面的项目。

 1)确认节点正常

[root@kube-master ~]# kubectl get node
NAME         STATUS    AGE
kube-node1   Ready     35d
kube-node2   Ready     35d

 2)创建名为dashborad-deployment.yaml的deployment资源配置文件

[root@kube-master ~]# vim dashboard-deployment.yaml
apiVersion: extensions/v1beta1  #指定api版本
kind: Deployment  #指定资源类型
metadata:  #指定资源元数据(属性)
  name: kubernetes-dashboard-latest  #指定deployment名称
  namespace: kube-system  #指定命名空间
spec:  #资源内容详细定义
  replicas: 1  #副本期望值
  template:  #模板
    metadata:  #模板元数据
      labels:  #自定义标签
        k8s-app: kubernetes-dashboard
        version: latest
        kubernetes.io/cluster-service: "true"
    spec:  #模板内容详细定义
      containers:  #容器内容详细定义
        - name: kubernetes-dashboard  #容器名称(docker容器实例名称的一部分)
          image: docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3  #使用镜像,这个镜像是中文的
          imagePullPolicy: IfNotPresent  #拉取策略
          resources:  #容器运行资源限制
            limits:  #上限
              cpu: 100m  #0.1核
              memory: 50Mi  #50M(1024计算)
            requests:  #下限
              cpu: 100m
              memory: 50Mi
          ports:  #容器对外开放端口
            - containerPort: 9090  #容器端口号
          args:  #容器启动时的参数命令
            - --apiserver-host=http://192.168.128.110:8080
          livenessProbe:  #监控检测设置
            httpGet:  #http获取检测
              path: /  #uri地址
              port: 9090  #容器端口号
            initialDelaySeconds: 30  #启动后首次检测时间为30秒后
            timeoutSeconds: 30  #检测超时时间30秒

 3)创建名为dashboard-service.yaml的service服务配置文件

[root@kube-master ~]# vim dashboard-service.yaml
apiVersion: v1  #指定api版本
kind: Service  #指定资源类型
metadata:  #资源元数据(属性)
  name: kubernetes-dashboard  #
  namespace: kube-system  #命名空间,需要保证与deployment处于同一命名空间
  labels:  #标签
    k8s-app: kubernetes-dashboard
    kubernetes.io/cluster-service: "true"
spec:  #服务内容详细定义
  selector:  #标签选择器,选择dashboard-deployment独有标签
    k8s-app: kubernetes-dashboard
  ports:  #服务对外开放端口
    - port: 80  #提供给内部Pod访问使用的端口
      nodePort: 30303  #提供给外部访问的端口
      targetPort: 9090  #Pod内部的服务的端口号

 4)准备相关镜像

  所有节点都下载相关镜像,当然不下载也是没事的,因为可以自动下载。registry.access.redhat.com/rhel7/pod-infrastructure:latest和docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3,由于k8s已经在使用中,所以pod-infrastructure存在故不做下载。

[root@kube-node1 ~]# docker pull docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3
Trying to pull repository docker.io/bestwu/kubernetes-dashboard-amd64 ... 
v1.6.3: Pulling from docker.io/bestwu/kubernetes-dashboard-amd64
ff9e00b73eb4: Pull complete 
Digest: sha256:d820c9a0a0a7cd7d0c9d3630a2db0fc33d190db31f3e0797d4df9dc4a6a41c6b
Status: Downloaded newer image for docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3

  5)启动dashboard的deployment和service

[root@kube-master ~]# kubectl create -f dashboard-deployment.yaml
deployment "kubernetes-dashboard-latest" created
[root@kube-master ~]# kubectl create -f dashboard-service.yaml
service "kubernetes-dashboard" created

  启动完成后通过命令查看

[root@kube-master ~]# kubectl get deployment --namespace=kube-system
NAME                          DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
kubernetes-dashboard-latest   1         1         1            1           3d
[root@kube-master ~]# kubectl get service --namespace=kube-system
NAME                   CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
kubernetes-dashboard   10.254.146.81           80/TCP    3d
[root@kube-master ~]# kubectl get pod --namespace=kube-system -o wide
NAME                                           READY     STATUS    RESTARTS   AGE       IP            NODE
kubernetes-dashboard-latest-4124080496-dprcl   1/1       Running   1          3d        10.255.39.2   kube-node1

 6)通过http://[masterIP]:8080/ui访问

  我这里就是http://192.168.128.110:8080/ui,之后会自动跳转到如下页面

Kubernetes(K8s)(四)——k8s的web管理页面

 

 7)销毁

  如果只是短时间内不用可以只删除service,如果长时间不用删除deployment和service

[root@kube-master ~]# kubectl delete -f dashboard-service.yaml 
service "kubernetes-dashboard" deleted
[root@kube-master ~]# kubectl delete -f dashboard-deployment.yaml
deployment "kubernetes-dashboard-latest" deleted

  


推荐阅读
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ... [详细]
  • 本文介绍了一种在 MySQL 客户端执行 NOW() 函数时出现时间偏差的问题,并详细描述了如何通过配置文件调整时区设置来解决该问题。演示场景中,假设当前北京时间为2023年2月17日19:31:37,而查询结果显示的时间比实际时间晚8小时。 ... [详细]
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • 本文详细介绍如何使用Samba软件配置CIFS文件共享服务,涵盖安装、配置、权限管理及多用户挂载等关键步骤。通过具体示例和命令行操作,帮助读者快速搭建并优化Samba服务器。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文探讨了 Spring Boot 应用程序在不同配置下支持的最大并发连接数,重点分析了内置服务器(如 Tomcat、Jetty 和 Undertow)的默认设置及其对性能的影响。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 在成功安装和测试MySQL及Apache之后,接下来的步骤是安装PHP。为了确保安全性和配置的一致性,建议在安装PHP前先停止MySQL和Apache服务,并将MySQL集成到PHP中。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 在Fedora 31上部署PostgreSQL 12
    本文详细介绍如何在Fedora 31操作系统上安装和配置PostgreSQL 12数据库。包括环境准备、安装步骤、配置优化以及安全设置,确保数据库能够稳定运行并提供高效的性能。 ... [详细]
author-avatar
手机用户2702936867
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有