一、简介

  1、环境

  环境还是前面的环境

  2、Kubernetes Dashboard web界面

    kubernetes dashboard (仪表盘)是一个将通用的基于web的监控和操作界面加入kubernetes的项目

二、开始部署yaml配置文件

  1、创建/编辑deployment

[root@master k8s]# vim dashboard-deployment.yaml 

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
# Keep the name in sync with image version and
# gce/coreos/kube-manifests/addons/dashboard counterparts
name: kubernetes-dashboard-latest
namespace: kube-system
spec:                                      #---定义pod属性
replicas:
template:
metadata:
labels:
k8s-app: kubernetes-dashboard
version: latest
kubernetes.io/cluster-service: "true"
spec:
containers:
- name: kubernetes-dashboard
image: docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3 #---镜像源,下面章节3上传的镜像
imagePullPolicy: IfNotPresent
resources:
# keep request = limit to keep this container in guaranteed class
limits:                              #---关于pod使用的cpu和内存硬件资源做限制
cpu: 100m
memory: 50Mi
requests:
cpu: 100m
memory: 50Mi
ports:
- containerPort:
args:
- --apiserver-host=http://192.168.216.51:8080 #这里填写自己的apiserver服务器地址及端口
# - --apiserver-host=http://192.168.216.51:8080
livenessProbe:
httpGet:
path: /
port:
initialDelaySeconds:
timeoutSeconds:

  2、编辑服务dashboard-service.yaml

[root@master k8s]# vim dashboard-service.yaml 

apiVersion: v1
kind: Service
metadata:
name: kubernetes-dashboard    #---这个要和上面deployment中定义的一样
namespace: kube-system       #---同样和上面deployment定义一样
labels:
k8s-app: kubernetes-dashboard
kubernetes.io/cluster-service: "true"
spec:
selector:
k8s-app: kubernetes-dashboard
ports:
- port:
targetPort:

   说明:service的三种端口

    port:service暴露在集群ip上的端口,提供给集群内部客户访问service入口

    nodePort:是k8s提供给集群外部客户访问service入口的一种方式

    targetPort:targetPort是pod中容器实例上的端口,从port和nodePort上到来的数据最终经过kube-proxy流入到后端pod的targetport上进入容器

  3、上传镜像到node节点上

    自行下载这些镜像然后导入,或者在线下载镜像

[root@node2 k8s]# ll
total
-rw-r--r-- root root Jan docker.io-bestwu-kubernetes-dashboard-amd64-zh.tar
-rw-r--r-- root root Jan kubernetes-dashboard-amd64.tar #另外一个版本,可以先不上传
-rw-r--r-- root root Jan pod-infrastructure.tar
[root@node2 k8s]# pwd
/root/k8s

    下载后导入,之前已经下载过pod-infrastructure

docker load -i docker.io-bestwu-kubernetes-dashboard-amd64-zh.tar
docker load -i kubernetes-dashboard-amd64.tar

  4、启动deployment和service

[root@master k8s]# cd /etc/kubernetes/yaml/
[root@master kubernetes]# kubectl create -f /etc/kubernetes/yaml/dashboard-deployment.yaml
deployment "kubernetes-dashboard-latest" created
[root@master kubernetes]# kubectl create -f /etc/kubernetes/yaml/dashboard-service.yaml
service "kubernetes-dashboard" created

  5、查看deployment及servcie

    因为定义了namespace所以需要加上--all-namespaces才可以显示,而默认是namespaces=default的deployment

[root@master ~]# kubectl get deployment --all-namespaces
NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
kube-system kubernetes-dashboard-latest 23m
[root@master ~]# kubectl get svc --all-namespaces
NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes 10.254.0.1 <none> /TCP 13d
default nginx 10.254.8.125 <nodes> :/TCP 8d
kube-system kubernetes-dashboard 10.254.32.13 <none> /TCP 23m
[root@master ~]#

  6、销毁web界面

  kubectl delete deployment kubernetes-dashboard-latest--namespace=kube-system

  kubectl delete svc kubernetes-dashboard--namespace=kube-system

  

三、web验证

  1、登陆web端

    http://192.168.216.51:8080/ui

  2、run一个nginx查看这个容器

[root@master ~]# kubectl run nginx --image=docker.io/nginx --replicas=1 --port=9000
deployment "nginx" created
[root@master ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx--n5wsr / Running 37s
nginx--zngv0 / Running 25s

kubernetes系列文章:

Kubernetes1-K8s的简单介绍

Kubernetes2-K8s的集群部署

Kubernetes3-kubectl管理Kubernetes容器平台-1

Kubernetes3-kubectl管理Kubernetes容器平台-2

参考:互联网内容

转载请注明出处:https://www.cnblogs.com/zhangxingeng/p/11842258.html

Kubernetes4-web管理界面的更多相关文章

  1. ##7.Dashboard web管理界面-- openstack pike

    ##7.Dashboard web管理界面 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##.Dashboard ...

  2. 从零开始搭建etcd分布式存储系统+web管理界面

    什么是ETCD 随着CoreOS和Kubernetes等项目在开源社区日益火热,它们项目中都用到的etcd组件作为一个高可用.强一致性的服务发现存储仓库,渐渐为开发人员所关注. 在云计算时代,如何让服 ...

  3. GeoServer基础教程(二):GeoServer的Web管理界面快速入门

    转载:http://blog.163.com/daimiao_study/blog/static/248923117201542522742373/ GeoServer的控制和管理是基于网页形式,所有 ...

  4. F5 BIG-IP负载均衡器配置实例与Web管理界面体验

    [文章作者:张宴 本文版本:v1.0 最后修改:2008.05.22 转载请注明出自:http://blog.s135.com/f5_big_ip] 前言:最近一直在对比测试F5 BIG-IP和Cit ...

  5. [转]F5 BIG-IP负载均衡器配置实例与Web管理界面体验

    转载:http://www.zyan.cc/f5_big_ip/ 前言:最近一直在对比测试F5 BIG-IP和Citrix NetScaler负载均衡器的各项性能,于是写下此篇文章,记录F5 BIG- ...

  6. HDFS设计思路,HDFS使用,查看集群状态,HDFS,HDFS上传文件,HDFS下载文件,yarn web管理界面信息查看,运行一个mapreduce程序,mapreduce的demo

    26 集群使用初步 HDFS的设计思路 l 设计思想 分而治之:将大文件.大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析: l 在大数据系统中作用: 为各类分布式 ...

  7. 小贝_redis web管理界面工具安装

    RedisWEB管理界面工具安装 一.概述 二.文件下载 三.安装过程 一.概述 1.因为redis是基于C/S的方式开发.也就是说,仅仅要满足于redis的client通信要求的,都能够作为redi ...

  8. openstack核心组件--horizon web管理界面(5)

    一.horizon 介绍: 理解 horizon Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 ...

  9. Horizon Web管理界面

    一.horizon 介绍: Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 , 管理员可以使用通过 ...

  10. openstack核心组件——horizon Web管理界面(10)

    一.horizon 介绍: 理解 horizon Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 ...

随机推荐

  1. java并发之CAS详解

    前言 在高并发的应用当中,最关键的问题就是对共享变量的安全访问,通常我们都是通过加锁的方式,比如说synchronized.Lock来保证原子性,或者在某些应用当中,用voliate来保证变量的可见性 ...

  2. 利用golang优雅的实现单实例

    平时编写代码过程中,经常会遇到对于全局角度只需运行一次的代码,比如全局初始化操作,设计模式中的单例模式.针对单例模式,java中又出现了饿汉模式.懒汉模式,再配合synchronized同步关键字来实 ...

  3. c#之线程基础(一)

    可以认为线程是一个虚拟进程,用于独立运行一个特定的程序. 1.使用c#创建线程 using System; using System.Threading; //3 namespace MutiThre ...

  4. 网关服务自定义路由规则(springcloud+nacos)

    1. 场景描述 需要给各个网关服务类提供自定义配置路由规则,实时生效,不用重启网关(重启风险大),目前已实现,动态加载自定义路由文件,动态加载路由文件中的路由规则,只需在规则文件中配置下规则就可以了 ...

  5. 代码审计之create_function()函数

    0x00 create_function()简介 适用范围:PHP 4> = 4.0.1,PHP 5,PHP 7 功能:根据传递的参数创建匿名函数,并为其返回唯一名称. 语法: create_f ...

  6. 详解立即执行函数(function(){}()),(function(){})()

    要知道这几种写法之间的区别,我们要先聊些题外话——js中函数的两种命名方式,即表达式和声明式. 函数的声明式写法为:function foo(){/*...*/},这种写法会导致函数提升,所有func ...

  7. MS09-020 iis6.0提权

    漏洞编号:MS09-020 披露日期: 2009/6/9 受影响的操作系统:Windows 2003 x64 sp1 sp2;XP; 测试系统:windows 2003 x64   上传 执行 iis ...

  8. 打python&adb组合拳,实现微信读书永久免费读

    用过“微信读书”的朋友都知道,如果我们想阅读全本的付费书籍,除了购买整本(使用书币)外,还可以使用无限卡.可无论是购买全书还是无限卡,归根结底都是要花银子的. 除此之外,还有一种方式——用阅读时长兑换 ...

  9. 百万年薪python之路 -- socket()模块的用法

    socket()模块的用法: import socket socket.socket(socket_family,socket_type,protocal=0) socket_family 可以是 A ...

  10. Vue优化:常见会导致内存泄漏问题及优化

    1. 监听在window/body等事件没有解绑2. 绑在EventBus的事件没有解绑3. 模块形成的闭包内部变量使用完后没有置成null4. 使用第三方库创建,没有调用正确的销毁函数5 . ech ...