Kubernetes二进制部署——UI界面的部署(4)

前言:

接上一篇负载均衡部署(3)部署UI界面
yaml下载:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dashboard

部署环境

负载均衡
Nginx1:192.168.13.128/24
Nginx2:192.168.13.129/24
Master节点
master1:192.168.13.131/24 kube-apiserver kube-controller-manager kube-scheduler etcd
master2:192.168.13.130/24 kube-apiserver kube-controller-manager kube-scheduler etcd
Node节点
node1:192.168.13.132/24 kubelet kube-proxy docker flannel etcd
node2:192.168.13.133/24 kubelet kube-proxy docker flannel etcd

1,在master01上创建dashboard

[[email protected] ~]# cd k8s/
[[email protected] k8s]# mkdir dashboard  ##创建工作目录
[[email protected] k8s]# cd dashboard/
[[email protected] dashboard]# rz -E  ##上传dashboard的yaml文件
[[email protected] dashboard]# ls
dashboard-configmap.yaml   ##配置应用
dashboard-rbac.yaml         ##授权访问api
dashboard-service.yaml    ##发布应用
dashboard-controller.yaml  ##控制器
dashboard-secret.yaml       ##安全加密
k8s-admin.yaml     ##生成令牌
[[email protected] dashboard]# kubectl create -f dashboard-rbac.yaml  ##创建api授权
[[email protected] dashboard]# kubectl create -f dashboard-secret.yaml   ##创建安全加密
[[email protected] dashboard]# kubectl create -f dashboard-configmap.yaml  ##创建配置
[[email protected] dashboard]# kubectl create -f dashboard-controller.yaml   ##创建应用
[[email protected] dashboard]# kubectl create -f dashboard-service.yaml   ##创建发布
[[email protected] dashboard]# kubectl get pods -n kube-system
##查看创建在指定的kube-system命名空间
NAME                                    READY   STATUS    RESTARTS   AGE
kubernetes-dashboard-65f974f565-xwhcb   1/1     Running   0          2m31s
[[email protected] dashboard]# kubectl get pods,svc -n kube-system  ##查看如何访问
NAME                                        READY   STATUS    RESTARTS   AGE
pod/kubernetes-dashboard-65f974f565-xwhcb   1/1     Running   0          4m55s

NAME                           TYPE       CLUSTER-IP   EXTERNAL-IP   PORT(S)         AGE
service/kubernetes-dashboard   NodePort   10.0.0.119   <none>        443:30001/TCP   4m51s

2,用浏览器访问node节点ip(Google浏览器无法访问的问题)

##更多工具——开发者工具——security

3,进行自签证书

[[email protected] dashboard]# vim dashboard-cert.sh   ##创建证书脚本文件
cat > dashboard-csr.json <<EOF
{
     "CN": "Dashboard",
     "hosts": [],
     "key": {
             "algo": "rsa",
             "size": 2048
     },
     "names": [
             {
                     "C": "CN",
                     "L": "BeiJing",
                     "ST": "BeiJing"
             }
     ]
}
EOF

K8S_CA=$1
cfssl gencert -ca=$K8S_CA/ca.pem -ca-key=$K8S_CA/ca-key.pem -config=$K8S_CA/ca-config.json -profile=kubernetes dashboard-csr.json | cfssljson -bare dashboard
kubectl delete secret kubernetes-dashboard-certs -n kube-system
kubectl create secret generic kubernetes-dashboard-certs --from-file=./ -n kube-system
[[email protected] dashboard]# bash dashboard-cert.sh /root/k8s/k8s-cert/
##执行证书脚本,指定证书的应用
[[email protected] dashboard]# ls   ##查看生成的证书
dashboard-cert.sh          dashboard-csr.json   dashboard-secret.yaml
dashboard-configmap.yaml   dashboard-key.pem    dashboard-service.yaml
dashboard-controller.yaml  dashboard.pem        k8s-admin.yaml
dashboard.csr              dashboard-rbac.yaml
[[email protected] dashboard]# vim dashboard-controller.yaml  ##修改应用配置文件
 45         args:
 46           # PLATFORM-SPECIFIC ARGS HERE
 47           - --auto-generate-certificates
 48           - --tls-key-file=dashboard-key.pem  ##添加证书文件
 49           - --tls-cert-file=dashboard.pem        ##添加证书文件
 [[email protected] dashboard]# kubectl apply -f dashboard-controller.yaml  ##重新部署

4,重新用浏览器访问node1节点地址

5,生成令牌,进行使用UI界面


 vim k8s-admin.yaml  ##证书生成的yaml配置文件
 apiVersion: v1
kind: ServiceAccount
metadata:
    name: dashboard-admin
    namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
    name: dashboard-admin
subjects:
    - kind: ServiceAccount
        name: dashboard-admin
        namespace: kube-system
roleRef:
    kind: ClusterRole
    name: cluster-admin
    apiGroup: rbac.authorization.k8s.io

[[email protected] dashboard]# kubectl create -f k8s-admin.yaml  ##生成令牌
[[email protected] dashboard]# kubectl get secret -n kube-system  ##保存令牌
NAME                               TYPE                                  DATA   AGE
dashboard-admin-token-489x2        kubernetes.io/service-account-token   3      2m2s
[[email protected] dashboard]# kubectl describe secret dashboard-admin-token-489x2 -n kube-system
##查看令牌

token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tNDg5eDIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiY2Q2NzQ4NGYtNGJjZi0xMWVhLThkZTAtMDAwYzI5ZjNiNTNiIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.lXmRZS2TSk5HHmXzrjvp8ISj4fna_anekJDCZW5NV7vB45s-IZTq7VLG1qd8MfMP0MCOQgKdE-1ulg9b6ql3a6zbUJe848mk99yVOIwKbZTN2M-SG848ljSAjCt66rUkilbcTqByK719rTLbwTtmibgI7jy1NXeZXp_Q_8QE8aXAfJz1EnxI3kbz7Qr1FetZ1O1hTnzc-hEwCgUOMhMZsheBBry9SahXj-3fYNRyK1MpuhkDleNyjQnuNfdsSmgrJI1HvVNczw_tYNQb1QqpppegAdLNvIArMmIDA15q_vL9Wg7h9nb8Ay3KSss7IgHkqN1YxTNdWZyeMpEt9pPQOw

6,利用令牌进行登录


##成功访问到UI界面


k8s部署全部完成,谢谢阅读!!!

原文地址:https://blog.51cto.com/14080162/2470075

时间: 2024-11-03 04:49:16

Kubernetes二进制部署——UI界面的部署(4)的相关文章

Kubernetes二进制线网部署(实例!!!)

本次类容 1.官方提供的三种部署方式2.Kubernetes 平台环境规划3.自签SSL证书4.Etcd数 据库集群部署5.Node安装Docker6.Flannel容 器集群网络部署7.部署Master组件8.部署Node组件9.部署一个测试示例10.部署Web UI (Dashboard )11.部署集群内部DNS解析服务(CoreDNS) 官方提供的三种部署方式 minikube Minikube是一个工具,可以在本地快速运行-一个单点的Kubernetes,仅用子尝试Kubemnetes

K8s多节点部署详细步骤,附UI界面的搭建

K8s多节点部署 需要准备的环境: 6台centos7设备:192.168.1.11 master01192.168.1.12 node1192.168.1.13 node2192.168.1.14 master02192.168.1.15 lb1192.168.1.16 lb2VIP:192.168.1.100 实验步骤: 1:自签ETCD证书 2:ETCD部署 3:Node安装docker 4:Flannel部署(先写入子网到etcd)---------master----------5:自

Sprint 5 summary: UI 界面更新,Azure端部署和用户反馈分析 12/28/2015

本次sprint主要完成的任务有对手机APP的UI界面的更新,同时对Azure客户端的部署进行了相应的学习和有关的程序设计.同时对于ALPHA release的用户反馈做出相应的分析以确定接下来工作的重点. 工作进度: 1. UI 的界面更新和完善工作主要由兆阳负责,主要是对APP中的自动标签和浏览布局进行了相应的改进.其中大部分与Sprint2中的界面有所区别,并且对整体的APP工作性能有了一些改善.相应的改进feature有如下: 1). 个人活动分类浏览: 其中将用户的各个照片依据内容,时

Kubernetes二进制部署——多master节点集群部署(2)

前言: 接上一篇单节点部署(1)部署多节点 部署环境 负载均衡Nginx1:192.168.13.128/24Nginx2:192.168.13.129/24Master节点master1:192.168.13.131/24 kube-apiserver kube-controller-manager kube-scheduler etcdmaster2:192.168.13.130/24 kube-apiserver kube-controller-manager kube-scheduler

宝塔面板 + Rancher + 阿里云镜像仓库 + +Docker + Kubernetes,添加集群、部署 web 应用

目录 一,安装宝塔面板(V 6.8) 二,使用宝塔安装 Docker,配置阿里云容器服务 三,安装 Rancher (Server) 四,管理 Rancher.添加集群 五,添加 Rancher 应用.服务,与 Nginx 六,ASP.NET Core 应用部署 七,相关文章推荐 前言: 本文使用 Centos 7.x 进行操作,Rancher 官方推荐使用 Ubuntu. Docker 对内核要求 大于 3.10,你可以使用 uname -r 检测系统内容版本. 通过 Rancher,可以很方

Kubernetes 集群的两种部署过程(daemon部署和容器化部署)以及glusterfs的应用!

ClusterIp:通过VIP来访问, NodePort: 需要自己搭建负载据衡器 LoadBalancer:仅仅用于特定的云提供商 和 Google Container Engine https://www.nginx.com/blog/load-balancing-kubernetes-services-nginx-plus/ port:相当于服务端口(对及集群内客户访问) targetPort: 相当于pods端口 nodePort: 宿主机端口(也是服务端口,只不过是对集群外客户访问)

Solr7 安装部署 管理界面介绍

Solr7 安装部署 管理界面介绍 本章重点介绍CentOS 安装部署Solr7 ,Solr的管理界面介绍,添加核心Core配置,Dataimport导入数据,Documents 在线维护索引,Query复杂查询和一些常见问题处理办法. 什么是Solr Solr 是Apache下的一个顶级开源项目,采用Java开发,基于Lucene的全文搜索服务器.Solr可以独立运行在Jetty.Tomcat等这些Servlet容器中. 这里谈到了Lucene,它是一个开放源代码的全文检索引擎工具包.提供了完

kubernetes 1.14.2 kubeadm 方式部署

kubernetes 1.14.2 kubeadm方式部署 主机 192.168.100.111 k8s-master192.168.100.112 k8s-node1192.168.100.113 k8s-node2 基本环境 systemctl stop firewalld ystemctl disable firewalld sed -i 's/enforcing/disabled/' /etc/selinux/config setenforce 0 swapoff -a vim /etc

基于 Kubernetes v1.14.0 之 CoreDNS部署

1.部署容器前说明: 1.1.如果没有特殊指明,本文档的所有操作均在 k8s-operation 节点上执行: kuberntes 自带插件的 manifests yaml 文件使用 gcr.io 的 docker registry,国内被墙,需要手动替换为其它 registry 地址: 1.2.由于k8s-master 没有部署容器服务于路由服务,但是k8s-master 又要访问容器网络跟k8s集群网络,1.在上级路由器写入静态路由让其能访问容器网络与k8s集群网络.2.在k8s-maste