一、下载镜像文件并纳入本地仓库统一管理
# docker pull docker.io/mritd/kubernetes-dashboard-amd64# docker tag docker.io/mritd/kubernetes-dashboard-amd64 ?registry.fjhb.cn/kubernetes-dashboard-amd64# docker push registry.fjhb.cn/kubernetes-dashboard-amd64
二、根据rc文件创建 Deployment和service
# cat kube-ui-rc.yaml # Copyright 2015 Google Inc. All Rights Reserved. ?# ?# Licensed under the Apache License, Version 2.0 (the "License"); ?# you may not use this file except in compliance with the License. ?# You may obtain a copy of the License at ?# ?# ????http://www.apache.org/licenses/LICENSE-2.0 ?# ?# Unless required by applicable law or agreed to in writing, software ?# distributed under the License is distributed on an "AS IS" BASIS, ?# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ?# See the License for the specific language governing permissions and ?# limitations under the License. ?# Configuration to deploy release version of the Dashboard UI. ?# ?# Example usage: kubectl create -f <this_file> ?kind: Deployment ?apiVersion: extensions/v1beta1metadata: ???labels: ?????app: kubernetes-dashboard ?????version: latest ??name: kubernetes-dashboard ???namespace: default spec: ???replicas: 1 ???selector: ?????matchLabels: ???????app: kubernetes-dashboard ???template: ?????metadata: ???????labels: ?????????app: kubernetes-dashboard ???????# Comment the following annotation if Dashboard must not be deployed on master ?????annotations: ???????scheduler.alpha.kubernetes.io/tolerations: | ?????????[ ???????????{ ?????????????"key": "dedicated", ?????????????"operator": "Equal", ?????????????"value": "master", ?????????????"effect": "NoSchedule" ???????????} ?????????] ???spec: ???????containers: ???????- name: kubernetes-dashboard ?????????image: ?registry.fjhb.cn/kubernetes-dashboard-amd64 ???????imagePullPolicy: Always ???????ports: ?????????- containerPort: 9090 ???????????protocol: TCP ?????????args: ???????????# Uncomment the following line to manually specify Kubernetes API server Host ???????????# If not specified, Dashboard will attempt to auto discover the API server and connect ???????????# to it. Uncomment only if the default does not work. ???????????- --apiserver-host=192.168.115.5:8080 ?????????livenessProbe: ???????????httpGet: ?????????????path: / ?????????????port: 9090 ???????????initialDelaySeconds: 30 ???????????timeoutSeconds: 30 ?--- ?kind: Service ?apiVersion: v1 ?metadata: ???labels: ?????app: kubernetes-dashboard ???name: kubernetes-dashboard ???namespace: defaultspec: ???type: NodePort ???ports: ???- port: 80 ?????targetPort: 9090 ???selector: ?????app: kubernetes-dashboard
# kubectl create -f kube-ui-rc.yaml # kubectl get svc# kubectl get pod
三、web访问测试
使用两个node节点的ip加端口都可以访问到web-ui界面,本质上是使用iptables nat规则实现的
在面板中可以查看到
Node、deployments、replica sets、replication controllers、pod、jobs、services、ingress、storage、secret等信息,本质上就是通过连接apiserver进行查询并在web-ui上进行展示。
Kubernetes集群配置dashboard服务
原文地址:http://blog.51cto.com/ylw6006/2067927