内容目录
1. 介绍
Traefik是一个开源和商业用途的应用代理,API Gateway + API 管理。
其中,只有应用代理是开源免费使用的, 所以我们聚焦于应用代理。
2. 架构图
3. Traefik中的核心概念
Traefik中主要有以下四个核心概念,分别是:EntryPoints、Routers、Services和Provides。
1. EntryPoints
EntryPoints正如英语表达的意思:入口。定义一个监听端口接收流量,同时可以增加基础网络配置(如 TCP 连接超时、代理协议支持等)等配置。
2. Routers
Routers(路由)负责接收请求并将请求转发到Services。在将请求转发到Services之前,Routers可能会使用Middleware(中间件)来更新或者调用其他服务来处理这个请求。
3. Services
Services负责配置如何将请求交给具体的某些服务来最终处理请求。
4. Providers
Providers是Traefik的基础设施组件。
4. k8s中安装并使用Dashboard
添加Traefik Helm Chart Repo并更新
helm repo add traefik
helm repo update
按照官网values.yaml来创建values
# values.yaml
ingressRoute:
dashboard:
enabled: true
matchRule: Host(`dashboard.localhost`)
entryPoints:
- web
providers:
kubernetesGateway:
enabled: true
gateway:
listeners:
web:
namespacePolicy:
from: All
安装Traefik
helm install traefik traefik/traefik -f values.yaml --wait
# 输出:
NAME: traefik
LAST DEPLOYED: Mon Sep 8 21:43:26 2025
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
traefik with docker.io/traefik:v3.5.1 has been deployed successfully on default namespace !
查看Traefik Pod情况
kubectl get pods
# 输出
NAME READY STATUS RESTARTS AGE
traefik-d8757d87b-mfzk5 1/1 Running 0 2m49s
访问Traefik Dashboard
浏览器直接打开:http://dashboard.localhost/dashboard/
Traefik链接地址
云原生应用代理:Traefik