17.kubernete的dashboard
部署dashboard
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
遇到镜像无法下载可在dockerHup中搜索,国内良心用户提供资源
dashbord创建以下几个资源
secret/kubernetes-dashboard-certs unchanged
serviceaccount/kubernetes-dashboard unchanged
role.rbac.authorization.k8s.io/kubernetes-dashboard-minimal unchanged
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard-minimal unchanged
deployment.apps/kubernetes-dashboard unchanged
service/kubernetes-dashboard unchanged
对service 进行patch 修改默认类型为 node port
[root@master ~]# kubectl get svc kubernetes-dashboard -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard ClusterIP 10.99.191.247 <none> /TCP 18d
[root@master ~]# kubectl patch svc kubernetes-dashboard -p '{"spec":{"type":"NodePort"}}' -n kube-system
service/kubernetes-dashboard patched
[root@master ~]# kubectl get svc kubernetes-dashboard -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard NodePort 10.99.191.247 <none> :/TCP 18d
访问节目显示验证类型
这里做一下描述,我们的验证集群的两个方式你要知道。dashbord 默认部署为一个pod pod和apiservier 直接进行交互达到控制集群的方式 是通过 user 和 serviceAcountName 中的后者。
首席我们体验使用token 验证集群。
这里因为使用 的版本过新有一个匿名用户问题需要修正
在api-server配置文件中添加–anonymous-auth=false,重启apiserver;文件路径/etc/kubernetes/manifests/kube-apiserver.yaml 。
kubectl create sa lele -n kube-system
kubectl create clusterrolebinding lele-kube-system --clusterrole=cluster-admin --serviceaccount=kube-system:lele
kubectl describe secrets lele-token-jrgc6 -n kube-system
Name: lele-token-jrgc6
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: lele
kubernetes.io/service-account.uid: 54c42156-4d34-11e9-bd9e-52540062b2ca Type: kubernetes.io/service-account-token Data
====
namespace: bytes
token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJsZWxlLXRva2VuLWpyZ2M2Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImxlbGUiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI1NGM0MjE1Ni00ZDM0LTExZTktYmQ5ZS01MjU0MDA2MmIyY2EiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06bGVsZSJ9.ppvts7CcqvmUkMvxFYlC2rfl2gCI2TiEtaZ9f3uN4R9IFzcPgrN7FyQ8RQwP9PyRI_D-Ug020W6ztCjvCpAVpJ2RC8AEDIVcLk2bU6t_WAVnqjvRS6l_je_MGDtuKuxvGLDSlwQ-B1XqPA8e7RDkykGY-VsaqXcxZ-GAdozaX78hKHKzWunJ-lKjfauJi6pdYUnmg9q4ev4jQbYZKg3kWbwKTi3nai8za_vwQlTn9_qboe-0ajwULIah4tibYHyT7rRpqKjHvqwKJgsOQzOCFjZ_3c997uRbqSrELyOA4gg7IzCtK5WvdKgO-88MjbE1pAd32yPox9IjTU9HZIyIsQ
ca.crt: bytes
复制这一串token 即可搞定dashboard。
使用 conf文件进行认证
[root@master ~]# kubectl config set-cluster kubernetes --certificate-authority=/etc/kubernetes/pki/ca.crt --server="https://172.20.0.91:6443" --kubeconfig=/tmp/dash.conf
Cluster "kubernetes" set.
[root@master ~]# kubectl config view --kubeconfig=/tmp/dash.conf
apiVersion: v1
clusters:
- cluster:
certificate-authority: /etc/kubernetes/pki/ca.crt
server: https://172.20.0.91:6443
name: kubernetes
contexts: []
current-context: ""
kind: Config
preferences: {}
users: []
[root@master ~]# song=`kubectl get secret lele-token-jrgc6 -o jsonpath={.data.token} -n kube-system| ba
[root@master ~]# kubectl config set-credentials lele --token=$song --kubeconfig=/tmp/dash.conf
User "lele" set.
[root@master ~]# kubectl config set-context lele@kubernetes --kubeconfig=/tmp/dash.conf
Context "lele@kubernetes" created.
[root@master ~]# kubectl config view --kubeconfig=/tmp/dash.conf
apiVersion: v1
clusters:
- cluster:
certificate-authority: /etc/kubernetes/pki/ca.crt
server: https://172.20.0.91:6443
name: kubernetes
contexts:
- context:
cluster: ""
user: ""
name: lele@kubernetes
current-context: ""
kind: Config
preferences: {}
users:
- name: lele
user:
token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJsZWxlLXRva2VuLWpyZ2M2Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImxlbGUiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI1NGM0MjE1Ni00ZDM0LTExZTktYmQ5ZS01MjU0MDA2MmIyY2EiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06bGVsZSJ9.ppvts7CcqvmUkMvxFYlC2rfl2gCI2TiEtaZ9f3uN4R9IFzcPgrN7FyQ8RQwP9PyRI_D-Ug020W6ztCjvCpAVpJ2RC8AEDIVcLk2bU6t_WAVnqjvRS6l_je_MGDtuKuxvGLDSlwQ-B1XqPA8e7RDkykGY-VsaqXcxZ-GAdozaX78hKHKzWunJ-lKjfauJi6pdYUnmg9q4ev4jQbYZKg3kWbwKTi3nai8za_vwQlTn9_qboe-0ajwULIah4tibYHyT7rRpqKjHvqwKJgsOQzOCFjZ_3c997uRbqSrELyOA4gg7IzCtK5WvdKgO-88MjbE1pAd32yPox9IjTU9HZIyIsQ
[root@master ~]# kubectl config use-context lele@kubernetes --kubeconfig=/tmp/dash.conf
Switched to context "lele@kubernetes".
然后这个配置文件就可以用了
17.kubernete的dashboard的更多相关文章
- redis集群配置
客户端分片 程序端实现 代理proxy,访问proxy,proxy指定redis保存位置. Twemproxy Redis cluster ,会造成一部分数据丢失,无中心化1.将数据自动切分(spli ...
- prometheus 监控 redis + rabbitmq
1.安装部署 1.1 wget https://github.com/oliver006/redis_exporter/releases/download/v0.15.0/redis_exporter ...
- Prometheus + Node Exporter + Grafana 监控主机运行信息
上一篇文章中讲了如何利用Prometheus和Grafana监控SpringBoot应用的JVM信息,这次就来看看如何监控 服务器运行状态,先列出用到的工具: Prometheus node_ex ...
- Prometheus+Grafana监控Kubernetes
涉及文件下载地址:链接:https://pan.baidu.com/s/18XHK7ex_J0rzTtfW-QA2eA 密码:0qn6 文件中需要下载的镜像需要自己提前下载好,eg:prom/node ...
- 17. dashboard
17. dashboard dashboard的安装步骤: wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-bet ...
- 附017.Kubernetes_v1.17.4 Dashboard部署
一 Kubernetes dashboard简介 1.1 Web UI简介 dashboard是基于Web的Kubernetes用户界面.可以使用dashboard将容器化应用程序部署到Kuberne ...
- Kubernetes 学习17 dashboard认证及分级授权
一.概述 1.我们前面介绍了kubernetes的两个东西,认证和授权 2.在kubernetes中我们对API server的一次访问大概会包含哪些信息?简单来讲它是restfule风格接口,也就是 ...
- Kubernets二进制安装(17)之安装部署Dashboard
1.下载dashboard镜像 在运维主机(mfyxw50.mfyxw.com)上执行命令 [root@mfyxw50 ~]# docker pull registry.cn-hangzhou.ali ...
- Openstack的HA解决方案【替换原有的dashboard】
0. 进入到/etc/haproxy/conf.d/目录下 mv 015-horizon.cfg 150-timaiaas.cfg 将原有的dashboard的ha配置文件做为自己的配置文件. 1. ...
随机推荐
- Java设计模式——适配器模式(Adapter)
目的:把源类型适配为目标类型,以适应客户端(Client)的需求:此处我们把目标接口的调用方视为客户端 使用场景:需要对类型进行由源类型到目标类型转换的场景中 前置条件:已有客户端 //Client ...
- location.origin兼容IE
if (window["context"] == undefined) { if (!window.location.origin) { window.location.origi ...
- docker 学习资料收集
Docker中文网 http://www.docker.org.cn/book/ docker镜像怎么迁移到其他的服务器 http://www.talkwithtrend.com/Question/1 ...
- Xamarin 学习笔记 - Layout(布局)
本文翻译自CodeProject文章:https://www.codeproject.com/Articles/1227733/Xamarin-Notes-Xamarin-Forms-Layouts ...
- 设计模式系列之策略模式(Strategy Pattern)
意图:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换. 主要解决:在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护. 何时使用:一个系统有许多许多类,而区分它 ...
- MySQL的自动提交模式
默认情况下, MySQL启用自动提交模式(变量autocommit为ON).这意味着, 只要你执行DML操作的语句,MySQL会立即隐式提交事务(Implicit Commit).这个跟SQL S ...
- Linux学习历程——Centos 7 top命令
一.命令介绍 top 命令用于动态的监控进程活动与系统负载信息. 格式为 top [参数] 二.实例 直接运行top命令 top命令执行结果的前五行为系统整体的统计信息,代表含义如下: 第1行:系统时 ...
- Redis操作string
Redis简介: ''' redis: 缓存,例如两个个程序A,B之间要进行数据共享,A可以把数据存在redis(内存里),其他程序都可以访问redis里的数据, 这样通过中间商redis就实现了两个 ...
- Spark-RDD之Partition源码分析
概要 Spark RDD主要由Dependency.Partition.Partitioner组成,Partition是其中之一.一份待处理的原始数据会被按照相应的逻辑(例如jdbc和hdfs的spl ...
- Scalability of Kafka Messaging using Consumer Groups
May 10, 2018 By Suhita Goswami No Comments Categories: Data Ingestion Flume Kafka Use Case Tradition ...