Trino、Kudu 自监控页面配置Nginx Path访问
Trino 的WebUI 默认是 {domain/ip}:8080
Kudu 的WebUI 默认是 {domain/ip}:8051/8050
现在期望通过 {domain/ip}:80/trino、 {domain/ip}:80/kudu 来访问
在客户环境中并不能把这些端口都开放出来,那么就需要通过Nginx 配置 path 才能访问,直接设置 proxy_pass 并不能展现出来,kudu 的因为html中都是绝对路径,Trino中是由于cookie设置是固定的
也许可以通过 kudu或者trino本身的配置实现 path 访问,但是没找到,所以想了其他办法
trino Nginx配置
trino的需要把默认 /ui 访问,替换成功 /trino/ui访问,另外在登录时,会设置Path=/ui
的cookie,需要修改在 Path=/trino/ui
才能正常登录访问
1 2 3 4 5 6 7 8 9
| location /trino/ { add_header Cache-Control no-store; proxy_pass http://trino-node-01:9080/; proxy_set_header Accept-Encoding ""; sub_filter_once off; sub_filter_types *; sub_filter '/ui' '/trino/ui'; proxy_cookie_path /ui '/trino/ui'; }
|
kudu Nginx 配置
kudu 的主要是替换Html中的绝对路径,包括静态资源(图片、css、js等) 和 菜单路径。
kudu master 和 tserver 每一台都是单独的,可以考虑全部配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| location /kudu-ts/ { proxy_pass http://trino-node-01:8050/; proxy_set_header Accept-Encoding ""; sub_filter_once off; sub_filter_types *; sub_filter "/logo.png" "/kudu-ts/logo.png"; sub_filter "/favicon.ico" "/kudu-ts/favicon.ico"; sub_filter '/bootstrap/' '/kudu-ts/bootstrap/'; sub_filter '/jquery' '/kudu-ts/jquery'; sub_filter '/kudu.js' '/kudu-ts/kudu.js'; sub_filter '/kudu.css' '/kudu-ts/kudu.css'; sub_filter 'href="/' 'href="/kudu-ts/'; } location /kudu-ms/ { proxy_pass http://trino-node-01:8051/; proxy_set_header Accept-Encoding ""; sub_filter_once off; sub_filter_types *; sub_filter "/logo.png" "/kudu-ms/logo.png"; sub_filter "/favicon.ico" "/kudu-ms/favicon.ico"; sub_filter '/bootstrap/' '/kudu-ms/bootstrap/'; sub_filter '/jquery' '/kudu-ms/jquery'; sub_filter '/kudu.js' '/kudu-ms/kudu.js'; sub_filter '/kudu.css' '/kudu-ms/kudu.css'; sub_filter 'href="/' 'href="/kudu-ms/'; }
|