Trino、Kudu 自监控页面配置Nginx Path访问

Trino、Kudu 自监控页面配置Nginx Path访问

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/';
}

 
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×