确实,k8s的时代,ingress负载用traefik比nginx方便啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了确实,k8s的时代,ingress负载用traefik比nginx方便啊相关的知识,希望对你有一定的参考价值。

参考文档:

https://mritd.me/2016/12/06/try-traefik-on-kubernetes/#13ingress

由于微服务架构以及 Docker 技术和 kubernetes 编排工具最近几年才开始逐渐流行,所以一开始的反向代理服务器比如 nginx、apache 并未提供其支持,毕竟他们也不是先知;所以才会出现 Ingress Controller 这种东西来做 kubernetes 和前端负载均衡器如 nginx 之间做衔接;即 Ingress Controller 的存在就是为了能跟 kubernetes 交互,又能写 nginx 配置,还能 reload 它,这是一种折中方案;而最近开始出现的 traefik 天生就是提供了对 kubernetes 的支持,也就是说 traefik 本身就能跟 kubernetes API 交互,感知后端变化,因此可以得知: 在使用 traefik 时,Ingress Controller 已经无卵用了!

技术分享

 

apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  name: traefik-ingress-lb
  namespace: kube-system
  labels:
    k8s-app: traefik-ingress-lb
spec:
  template:
    metadata:
      labels:
        k8s-app: traefik-ingress-lb
        name: traefik-ingress-lb
    spec:
      terminationGracePeriodSeconds: 60
      hostNetwork: true
      restartPolicy: Always
      containers:
      - image: traefik:latest
        imagePullPolicy: IfNotPresent
        name: traefik-ingress-lb
        resources:
          limits:
            cpu: 200m
            memory: 30Mi
          requests:
            cpu: 100m
            memory: 20Mi
        ports:
        - name: http
          containerPort: 80
          hostPort: 80
        - name: admin
          containerPort: 8580
        args:
        - --web
        - --web.address=:8580
        - --kubernetes
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: traefik-ingress
  namespace: kube-system
spec:
  rules:
  - host: cnxxx.cn
    http:
      paths:
      - path: /
        backend:
          serviceName: tomcat-dm
          servicePort: 8087
  - host: cx.cn
    http:
      paths:
      - path: /
        backend:
          serviceName: nginx-dm
          servicePort: 8088

技术分享技术分享

以上是关于确实,k8s的时代,ingress负载用traefik比nginx方便啊的主要内容,如果未能解决你的问题,请参考以下文章

企业运维实战--k8s学习笔记 通过Ingress-nginx实现k8s七层负载均衡Ingress加密认证以及地址重写

k8s学习-Ingress(安装模板创建删除)

k8s学习-Ingress(安装模板创建删除)

k8s 基于 Ingress 实现 k8s 七层调度和负载均衡

k8s的 service 和 Ingress

k8s的 service 和 Ingress