Traefik2.2.0 安裝部署詳解

轉載地址

轉載原站地址linux

前提:

Traefik 2.X.0 現已發佈一段時間,版本更新很多新特性,尤爲是TCP轉發和http轉發並存這個亮點,能夠解決很多業務問題,節省不少核心網絡端口,特裸機部署進行體驗。

核心概念

Traefik 相似邊緣路由器,能夠做爲整個平臺的入口,根據邏輯和規則,處理並路由每一個傳入的請求。這些規則肯定哪些服務處理哪些請求;傳統的反向代理須要一個配置文件,其中包含路由到你服務的全部可能路由,而Traefik 會實時檢測服務並自動更新路由規則,能夠自動服務發現。

Entrypoint 這是流量的入口,它們定義了接收請求的端口(HTTP或者TCP)。
Providers 用來自動發現平臺上的服務,能夠是編排工具、容器引擎或者 key-value 存儲等,好比 Docker、Kubernetes、File
Routers 分析請求(host, path, headers, SSL, …),負責將傳入請求鏈接到能夠處理這些請求的服務上去。
Services 將請求轉發給你的應用(load balancing, …),負責配置如何獲取最終將處理傳入請求的實際服務。
Middlewares 中間件,用來修改請求或者根據請求來作出一些判斷(authentication, rate limiting, headers, ...),中間件被附件到路由上,是一種在請求發送到你的服務以前(或者在服務的響應發送到客戶端以前)調整請求的一種方法。

增長主幹功能以下:

[acme,middleware,tls] 入口點重定向和默認路由器配置
[consul,etcd,kv,redis,zk] 添加KV商店提供程序(僅動態配置)
[consulcatalog,docker,marathon,rancher,udp] 在帶有標籤的 providers 中添加 UDP
[docker] 在network_mode爲主機時修復 traefik behavior
[docker] 支持到 Docker 的 SSH 鏈接
[healthcheck] 不要對 health check URLs 進行重定向
[k8s,k8s/crd,udp] 在 kubernetesCRD provider 中添加 UDP 支持
[WebUI中]加入黑暗的主題爲Web UI

Bug 修復一大堆:

更多詳細信息請查看更新說明:
https://github.com/containous/traefik/releases

環境介紹:

默認佔用端口: 
http 80  
https 443  
traefik 管理頁面 8080 

配置目錄: /etc/traefik  
服務日誌路徑:/var/log/traefik
訪問日誌:/data/traefiklog

安裝 traefik

wget --quiet -O /tmp/traefik.tar.gz "https://github.com/containous/traefik/releases/download/v2.2.0/traefik_v2.2.0_linux_amd64.tar.gz"

tar xzvf /tmp/traefik.tar.gz -C /usr/local/bin traefik

rm -f /tmp/traefik.tar.gz;

chmod +x /usr/local/bin/traefik

mkdir -p /etc/traefik  
mkdir -p /var/log/traefik
mkdir -p /data/traefiklog

驗證版本

traefik  version
Version:      2.2.0
Codename:     chevrotin
Go version:   go1.14.1
Built:        2020-03-25T17:32:57Z
OS/Arch:      linux/amd64

添加traefik 開機啓動文件:

cd /etc/systemd/system/ 
Traefik啓動文件以下: 

vi traefik.service 

[Unit] 
Description=Traefik 
Documentation=https://docs.traefik.io 
#After=network-online.target 
#AssertFileIsExecutable=/usr/local/bin/traefik
#AssertPathExists=/etc/traefik/traefik.toml 

[Service] 
# Run traefik as its own user (create new user with: useradd -r -s /bin/false -U -M traefik) 
#User=traefik 
#AmbientCapabilities=CAP_NET_BIND_SERVICE 
# configure service behavior 
Type=notify 
ExecStart=/usr/local/bin/traefik --configFile=/etc/traefik/traefik.toml 
Restart=always 
WatchdogSec=1s 

# lock down system access 
# prohibit any operating system and configuration modification 
#ProtectSystem=strict 
# create separate, new (and empty) /tmp and /var/tmp filesystems 
#PrivateTmp=true 
# make /home directories inaccessible 
#ProtectHome=true 
# turns off access to physical devices (/dev/...) 
#PrivateDevices=true 
# make kernel settings (procfs and sysfs) read-only 
#ProtectKernelTunables=true 
# make cgroups /sys/fs/cgroup read-only 
#ProtectControlGroups=true 

# allow writing of acme.json 
#ReadWritePaths=/etc/traefik/acme.json 
# depending on log and entrypoint configuration, you may need to allow writing to other paths, too 
# limit number of processes in this unit 
#LimitNPROC=1 

[Install] 
WantedBy=multi-user.target

修改權限

sudo chown root:root /etc/systemd/system/traefik.service 
sudo chmod 644 /etc/systemd/system/traefik.service

初始化配置文件

請移步原站閱讀:
原站地址git

管理面板

地址爲 節點IP地址:8080
Traefik2.2.0 安裝部署詳解github

總體效果比 1.X 版本浪不少,總體功能比1.X 版本也強不少!

相關文章
相關標籤/搜索