首页 > 系统相关 >如何配置Kubernetes仪表板dashboard支持http方式并使用ingress-nginx代理访问实践

如何配置Kubernetes仪表板dashboard支持http方式并使用ingress-nginx代理访问实践

时间:2022-12-27 21:33:16浏览次数:58  
标签:ingress http Kubernetes kubernetes devops dashboard 8080 weiyigeek

公众号关注「WeiyiGeek



本章目录:配置 Kubernetes-dashboard 以支持 http 方式访问




1.配置 Kubernetes-dashboard 以支持 http 方式访问

描述: 当前默认安装配置的 Kubernetes-dashboard 都是启用了https, 然而在当我们环境中存在ingress时,可能会有需要将其通过虚拟主机进行暴露时,此时将会在ingress端进行设置证书而不是在 Kubernetes-dashboard Pod中设置证书。

步骤 01.打开下载的​​Kubernetes-dashboard​​​资源清单文件或者使用​​kubelet edit​​​命令编辑已部署的资源清单,首先配置 ​​kubernetesui/dashboard:v2.5.1​​​ 镜像的启动参数,主要是​​--enable-insecure-login​​​与​​--insecure-port=8080​​参数。


$ kubectl edit deployments.apps -n kubernetes-dashboard kubernetes-dashboard
args:
# - --auto-generate-certificates
- --namespace=kubernetes-dashboard
- --enable-insecure-login
- --insecure-port=8080

# Pod 端口暴露
ports:
- name: https
containerPort: 8443
protocol: TCP
- name: http
containerPort: 8080
protocol: TCP

# Pod 健康检查
livenessProbe:
# httpGet:
# scheme: HTTPS
# path: /
# port: 8443
httpGet:
scheme: HTTP
path: /
port: 8080


步骤 02.配置 kubernetes-dashboard 的 Service 资源管理器


$ kubectl edit svc -n kubernetes-dashboard kubernetes-dashboard
ports:
- name: https
port: 443
protocol: TCP
targetPort: 8443
- name: http
port: 8080
protocol: TCP
targetPort: 8080
selector:
k8s-app: kubernetes-dashboard
sessionAffinity: None
type: ClusterIP

$ kubectl get svc -n kubernetes-dashboard kubernetes-dashboard
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard ClusterIP 11.19.103.247 <none> 443/TCP,8080/TCP 3h39m


步骤 03.服务验证以及部署ingress转发规则URL设置,最后浏览器访问如下URL(​​devops.weiyigeek.top/dashboard/​​)即可。


$ curl 11.19.103.247:8080

$ tee kubernetes-dashboard-ingress.yaml <<'EOF'
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
ingressclass.kubernetes.io/is-default-class: "true"
nginx.ingress.kubernetes.io/proxy-connect-timeout: "75"
nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
nginx.ingress.kubernetes.io/rewrite-target: /$2
labels:
app: devops-weiyigeek
name: devops-weiyigeek
namespace: kubernetes-dashboard
spec:
ingressClassName: nginx
rules:
- host: devops.weiyigeek.top
http:
paths:
- backend:
service:
name: kubernetes-dashboard
port:
number: 8080
path: /dashboard(/|$)(.*)
pathType: ImplementationSpecific
tls:
- hosts:
- devops.weiyigeek.top
secretName: devops-weiyigeek-top
EOF

# 部署 ingress 规则
$ kubectl apply -f kubernetes-dashboard-ingress.yaml
$ kubectl get ingress -n kubernetes-dashboard devops-weiyigeek
NAME CLASS HOSTS ADDRESS PORTS AGE
devops-weiyigeek nginx devops.weiyigeek.top 11.19.12.210 80, 443 3h52m


本文至此完毕,更多技术文章,尽情期待下一章节!





个人主页: 【 ​​https://weiyigeek.top​​】

博客地址: 【 ​​https://blog.weiyigeek.top ​​】




如何配置Kubernetes仪表板dashboard支持http方式并使用ingress-nginx代理访问实践_TCP





标签:ingress,http,Kubernetes,kubernetes,devops,dashboard,8080,weiyigeek
From: https://blog.51cto.com/weiyigeek/5973610

相关文章

  • 1.还不会部署高可用的kubernetes集群?看我手把手教你使用二进制部署v1.23.6的K8S集群
    公众号关注「WeiyiGeek」本章目录:0x00前言简述0x01环境准备主机规划软件版本网络规划0x02安装部署1.基础主机环境准备配置2.负载均衡管理工具安装与内核加载3.高可用HApr......
  • Kubernetes 上的Spring
    在构建在云中运行的Java应用程序时,弹簧和弹簧靴显然是最受欢迎的.同样越来越明显的是,Docker和Kubernetes等技术在春季社区中发挥重要作用.将SpringBoot应用程序打包在......
  • wininet https请求——不使用openssl也是可以的
     //WinINetHTTPSGet//https请求:https://github.com/netdata/netdata/blob/master/CMakeLists.txt#include<iostream>#include<Windows.h>#include<WinInet.h>......
  • WinHttp用法
    示例#include<string>#include<iostream>#include<windows.h>#include<winhttp.h>#pragmacomment(lib,"winhttp.lib")#pragmacomment(lib,"user32.lib")vo......
  • kubernetes 1.20 二进制方式高可用部署
    kubernetes二进制方式部署一、基础环境分配目的IP备注kubernetes集群192.168.1.20**192.168.1.21****192.168.1.22**192.168.1.20#k8s-master1192.168.1.21#k8s-n......
  • Kubernetes 跨集群流量调度实战
    背景Kubernetes问世于2015年,从一开始秉持着松耦合和可扩展的设计理念,也因此带来了Kubernetes生态的蓬勃发展。但这些大部分先限制在单一集群内,然后由于种种原因和目......
  • Kubernetes StatefulSet 控制器(二十一)
    前面我们学习了Deployment和ReplicaSet两种资源对象得使用,在实际使用的过程中,Deployment并不能编排所有类型的应用,对无状态服务编排是非常容易的,但是对于有状态服务就......
  • Kubernetes DaemonSet 控制器(二十二)
    通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个Kubernetes节点中将守护进程的副本作为后台进程运行,说白了就是在每个节点部署......
  • 使用kubeadm搭建多节点k8s集群(chrono《kubernetes入门实战课》笔记整理)
     通过使用minikube,做完了k8s的基础学习和练习,今天开始,使用kubeadm,来搭建更复杂更贴合实际工作的k8s集群。 【集群架构】  多节点集群,应该有大于等于2台node,实验......
  • Kubernetes ReplicaSet 控制器(十九)
    前面我们一起学习了Pod的原理和一些基本使用,但是在实际使用的时候并不会直接使用Pod,而是会使用各种控制器来满足我们的需求,Kubernetes中运行了一系列控制器来确保集群......