遵循 Kubernetes 教程(在我的例子中是 GKE)https://docs.traefik.io/v2.0/user-guides/crd-acme/我不知道如何分配全局静态 IP(GKE 需要转发规则)。我是否遗漏了什么(例如添加另一个入口)?据我所知,注释在 IngressRoute 中是不可能的。那么我该如何分配全局保留IP呢?
此问答在线聚会 ( https://gist.github.com/dduportal/13874113cf5fa1d0901655e3367c31e5 ) 中问题 3 的答案提到 2.x 版本也可以实现“经典入口”。这是否意味着我可以像 1.x 中那样设置 traefik(如下所示: https://docs.traefik.io/user-guide/kubernetes/ )使用 2.x 配置并且不需要 CRD?
最佳答案
您可以像使用其他所有 Ingress Controller 一样进行操作。
nginx-ingress 网站上提供了有关如何为 Ingress 分配静态 IP 地址的详分割步说明。
按照名为“Promote ephemeral to static IP”的部分进行操作'
如果遵循 Traefik 2.0 的 exemplary为 Kubernetes 制作的 list 文件,一旦您修补 Traefik 的 K8S 服务(使用 kubectl patch traefik...),您可以使用以下命令验证 IngressRoute 是否生效:
curl -i http://<static-ip-address>:8000/notls -H 'Host: your.domain.com'
更新
apiVersion: v1
kind: Service
metadata:
name: traefik
spec:
ports:
- protocol: TCP
name: web
port: 8000
- protocol: TCP
name: admin
port: 8080
- protocol: TCP
name: websecure
port: 4443
selector:
app: traefik
type: LoadBalancer
并用以下内容修补它:
kubectl patch svc traefik -p '{"spec": {"loadBalancerIP": "<your_static_ip>"}}'
关于kubernetes - 特拉菲克 2.0 : How to assign global static IP with IngressRoute (CRD)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56160220/