系統
[root@i-vzdytl5t ~]# uname -a
Linux i-vzdytl5t 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@i-vzdytl5t ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
1.安裝jdk
jdk下載鏈接請前往oralce jdk
必須是jdk8.0以上
本環境的jdk版本是1.8.0_144
[root@i-vzdytl5t ~]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
2.下載linkerd
下載鏈接 linkerd 1.6 releases
wget https://github.com/linkerd/linkerd/releases/download/1.6.0/linkerd-1.6.0.tgz
解壓
tar -xzf linkerd-1.6.0.tgz
cd linkerd-1.6.0
重命名linkerd-1.6.0-exec
mv linkerd-1.6.0-exec linkerd
修改配置文件
[root@i-vzdytl5t linkerd-1.6.0]# cat config/linkerd.yaml
admin:
port: 9990
ip: 0.0.0.0 //添加這一行
namers:
- kind: io.l5d.fs
rootDir: disco
routers:
- protocol: http
dtab: |
/svc => /#/io.l5d.fs;
httpAccessLog: logs/access.log
label: int
servers:
- port: 4140
ip: 0.0.0.0
- protocol: thrift
label: /host/thrift-framed
thriftProtocol: binary
dtab: |
/host => /#/io.l5d.fs;
/svc => /host/thrift-framed;
client:
thriftFramed: true
servers:
- port: 4141
ip: 0.0.0.0
thriftFramed: true
- protocol: thrift
label: /host/thrift-buffered
thriftProtocol: compact
dtab: |
/host => /#/io.l5d.fs;
/svc => /host/thrift-buffered;
client:
thriftFramed: false
servers:
- port: 4142
ip: 0.0.0.0
thriftFramed: false
運行
./linkerd config/linkerd.yaml
查看管理界面,訪問10.39.43.117:9990
用python啓動一個監聽9999端口的服務
驗證python服務是否正常
驗證linkerd的功能
理解路由生成規則
具體實現機制請查看linkerd的路由機制
接下來自定義一個router
服務發現目錄
進入disco文件夾
cd disco
在目錄disco生成文件test
內容爲:
[root@i-vzdytl5t disco]# cat test
127.0.0.1 9999
重啓之後驗證配置是否成功
查看服務監聽的端口
發請求之後查看dashboard管理界面就能看到相關的信息
end
參考:
官方文檔