traefik 教程

栏目: 服务器 · Nginx · 发布时间: 7年前

内容简介:traefik 是一个HTTP层面的反向代理和负载均衡, 用Go编写, 有的功能包括:官网是https://如官网所用示例图:

traefik 是一个HTTP层面的反向代理和负载均衡, 用 Go 编写, 有的功能包括:

  • 没有依赖
  • 带熔断器
  • Let's Encrypt证书支持
  • 无缝重启
  • 支持多个后端:Docker/Kubernetes等
  • 自带一个简单的web ui,用于查看请求响应时间和配置等

官网是https:// traefik.io/ . 下载traefik之后,要使用traefik,我们首先要写一份配置文件:

defaultEntryPoints = ["http"]
traefikLogsFile = "traefik.log"
logLevel = "INFO"

[accessLog]
filePath = "access.log"

[web]
address = ":8088"

[entryPoints]
    [entryPoints.http]
    address = ":8080"
    compress = true

[file]
    [backends]
        [backends.local]
            [backends.local.servers.all]
            url = "http://127.0.0.1:80"

    [frontends]
        [frontends.local]
        backend = "local"
            [frontends.local.routes.all]
            rule = "Path:/"

如官网所用示例图:

traefik 教程

其中有三个概念需要了解:

  • entrypoint: 这是流量的入口,即是http还是https
  • frontend: 这相当于nginx配置中的location, server_name等,即当流量还在nginx上,没有proxy_pass之前
  • backend: 这相当于nginx中,proxy_pass后接的配置

了解了这个概念之后, 我们再来看一下traefik是怎么读取配置文件的. traefik配置文件的读取顺序是:

  • 默认配置
  • 配置文件
  • 命令行参数
  • k-v存储

从上往下依次增高. 这也就意味着, traefik可以动态配置. 现在我们来解释一下上面贴出来的配置文件:

  • 首先前面六行是配置了traefik自身的配置和日志, 包括日志路径, 入口点, 只支持HTTP因为是在本地使用, 没有配域名和证书
  • 然后 [web] 指的是traefik自带的web管理界面
  • entryPoints 里则是对traefik的入口点进行配置, 包括监听地址等
  • file 中则包括上面所说的 frontendsbackends 的配置(记得一定要写file...我被官网教程坑了)

用下来的感受如下(主要是和Nginx作对比):

  • 缺少静态文件服务的支持
  • web ui意义并不大
  • 配置文件比Nginx的还复杂一点, 反向代理对HTTP的操作能力却又不如Nginx
  • 只支持HTTP(s),不支持TCP层面的反向代理

于是我又换回了Nginx. Nginx大法好!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

ES6标准入门(第3版)

ES6标准入门(第3版)

阮一峰 / 电子工业出版社 / 2017-9 / 99.00

ES6是下一代JavaScript语言标准的统称,每年6月发布一次修订版,迄今为止已经发布了3个版本,分别是ES2015、ES2016、ES2017。本书根据ES2017标准,详尽介绍了所有新增的语法,对基本概念、设计目的和用法进行了清晰的讲解,给出了大量简单易懂的示例。本书为中级难度,适合那些已经对JavaScript语言有一定了解的读者,可以作为学习这门语言最新进展的工具书,也可以作为参考手册......一起来看看 《ES6标准入门(第3版)》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换