首頁  >  文章  >  運維  >  traefik和nginx區別

traefik和nginx區別

(*-*)浩
(*-*)浩原創
2019-06-13 10:19:4820462瀏覽

Træfɪk 是一個為了讓部署微服務更便捷而誕生的現代HTTP反向代理、負載平衡工具。它支援多種後台(Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Rest API, file…) 來自動化、動態的應用它的設定檔設定。

traefik和nginx區別

由於微服務架構以及Docker技術和kubernetes編排工具最近幾年才開始逐漸流行,所以一開始的反向代理伺服器例如nginx、apache並未提供其支持,畢竟他們也不是先知;所以才會出現Ingress Controller 這種東西來做kubernetes 和前端負載均衡器如nginx 之間做銜接;即Ingress Controller 的存在就是為了能跟kubernetes 交互,又能寫nginx 配置,還能reload 它,這是一種折中方案;而最近開始出現的traefik 天生就是提供了對kubernetes 的支持,也就是說traefik 本身就能跟kubernetes API 交互,感知後端變化,因此可以得知: 在使用traefik 時,Ingress Controller 已經無卵用了!

Traefik 與nginx 一樣,是一款反向代理的工具,至於使用他原因基於以下幾點

漂亮的dashboard介面

可基於容器label進行配置新添服務簡單,不用像nginx一樣複雜配置,並且不用頻繁重啟

對prometheus和k8s的整合




Traefik 的基礎元件

就兩個元件,就這麼簡單,就支援自己寫middle-ware。

Traefik

Traefik 的主程序,啟動時可以指定設定文件,#########Dashboard######一個簡單的Dashboard, 可以看目前的路由規則,和轉送的結果統計。 #########設定檔如何使用#########Traefik 的設定分成靜態設定 和動態設定兩大類別。 ######動態設定:用來控制路由和負載平衡策略,動態設定不需要重起Traefik就可以生效。 ######靜態配置:簡單的說吧除了動態配置的其他均為靜態配置範疇,靜態配置需要重新啟動Traefik才能生效。 ######設定詳細說明我就不寫了,到官網上找你需要的配置是最明智的(我是明智的官網)。 ###但是在後面的練習中會說明部分配置的意義。 #########注意點######
动态配置可以和静态配置一起在同一个文件里,动态配置写在文件的最后。
如果想用配置文件来指定路由规则的话,需要将动态配置和静态配置文件分开,如下
## 在  "静态配置的最后面"  加入下面信息来指定动态配置文件[file]watch = truefilename = "rules.toml"
###更多Nginx相關技術文章,請造訪###Nginx使用教學###欄位學習! ###

以上是traefik和nginx區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn