管理台部署
web端是使用nginx作为静态资源服务器的,访问请求流程是:
Linkis管理台请求->nginx ip:port->linkis-gateway ip:port-> 其他服务
Linkis 提供了单独的前端管理台功能,提供了展示历史任务的全局历史、修改用户参数、管理ECM和微服务等功能,部署前端管理台前需要先将Linkis后端进行部署,Linkis的部署手册见:Linkis部署手册
1 准备工作
- 从linkis的release页面(点击这里进入下载页面)下载web安装包
apache-linkis-x.x.x-incubating-web-bin.tar.gz手动解压:tar -xvf apache-linkis-x.x.x-incubating-web-bin.tar.gz,
解压后目录为:
1. ├── config.sh
2. ├── DISCLAIMER
3. ├── dist
4. ├── install.sh
5. ├── LICENSE
6. ├── licenses
7. └── NOTICE
2 部署
分为两种部署方式,自动化部署和手动部署
2.1 自动化部署(推荐)
2.1.1 修改配置config.sh
1. #linkis-mg-gateway服务地址
2. linkis_url="http://127.0.0.1:9001"
5. #可以配置为安装机器的ip 也可以使用默认值
6. linkis_ipaddr=127.0.0.1
7. # 访问管理台的端口
8. linkis_port=8088
2.1.2 执行部署脚本
1. # nginx 需要sudo权限进行安装
2. sudo sh install.sh
安装后,linkis的nginx配置文件默认是 在/etc/nginx/conf.d/linkis.conf nginx的日志文件在 /var/log/nginx/access.log 和/var/log/nginx/error.log 生成的linkis管理台的nginx配置文件示例如下:
3. server {
4. listen 8188;# 访问端口 如果端口被占用,则需要修改
5. server_name localhost;
6. #charset koi8-r;
7. #access_log /var/log/nginx/host.access.log main;
8. location / {
9. root /appcom/Install/linkis-web/dist; # 静态文件目录
10. index index.html index.html;
11. }
12. location /ws {
13. proxy_pass http://localhost:9020;#后端Linkis的地址
14. proxy_http_version 1.1;
15. proxy_set_header Upgrade $http_upgrade;
16. proxy_set_header Connection upgrade;
17. }
20. location /api {
21. proxy_pass http://localhost:9020; #后端Linkis的地址
22. proxy_set_header Host $host;
23. proxy_set_header X-Real-IP $remote_addr;
24. proxy_set_header x_real_ipP $remote_addr;
25. proxy_set_header remote_addr $remote_addr;
26. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
27. proxy_http_version 1.1;
28. proxy_connect_timeout 4s;
29. proxy_read_timeout 600s;
30. proxy_send_timeout 12s;
31. proxy_set_header Upgrade $http_upgrade;
32. proxy_set_header Connection upgrade;
33. }
36. #error_page 404 /404.html;
37. # redirect server error pages to the static page /50x.html
38. #
39. error_page 500 502 503 504 /50x.html;
40. location = /50x.html {
41. root /usr/share/nginx/html;
42. }
43. }
2.2 手动部署
2.2.1 安装Nginx
如果已经安装过nginx 可以跳过
1. sudo yum install nginx -y
2.2.2 修改配置文件
1. sudo vi /etc/nginx/conf.d/linkis.conf
添加如下内容:
1. server {
2. listen 8080;# 访问端口
3. server_name localhost;
4. #charset koi8-r;
5. #access_log /var/log/nginx/host.access.log main;
6. location / {
7. root /appcom/Install/linkis/dist; # 前端包解压的目录
8. index index.html index.html;
9. }
11. location /api {
12. proxy_pass http://192.168.xxx.xxx:9001; # linkis-gateway服务的ip端口
13. proxy_set_header Host $host;
14. proxy_set_header X-Real-IP $remote_addr;
15. proxy_set_header x_real_ipP $remote_addr;
16. proxy_set_header remote_addr $remote_addr;
17. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
18. proxy_http_version 1.1;
19. proxy_connect_timeout 4s;
20. proxy_read_timeout 600s;
21. proxy_send_timeout 12s;
22. proxy_set_header Upgrade $http_upgrade;
23. proxy_set_header Connection upgrade;
24. }
25. #error_page 404 /404.html;
26. # redirect server error pages to the static page /50x.html
27. #
28. error_page 500 502 503 504 /50x.html;
29. location = /50x.html {
30. root /usr/share/nginx/html;
31. }
32. }
2.2.3 资源部署
将前端包拷贝到对应的目录:/appcom/Install/linkis/dist
2.2.4 启动服务
1. sudo systemctl restart nginx
3 登录管理台
浏览器访问http://linkis_ipaddr:linkis_port 其中linkis_port为config.sh里面配置的端口,linkis_ipaddr为安装机器的IP
用户名/密码在{LINKIS_HOME}/conf/linkis-mg-gateway.properties中查看
1. wds.linkis.admin.user= #用户
2. wds.linkis.admin.password= #密码
管理台使用指引见使用手册
4 注意事项
如果需要修改端口或则静态资源目录等,请修改/etc/nginx/conf.d/linkis.conf 文件后执行 sudo nginx -s reload 命令
管理台部署 - 图1注意
- 目前暂未集成visualis功能,安装过程中如果提示安装linkis/visualis失败,可以忽略
- 查看nginx是否正常启动:检查nginx进程是否存在
ps -ef |grep nginx - 检查nginx的配置是否正确
sudo nginx -T - 如果端口被占用,可以修改nginx启动的服务端口
/etc/nginx/conf.d/linkis.conflisten端口值,保存后重新启动 - 如果访问管理台出现接口502,或则
Unexpected token < in JSON at position 0异常,请确认linkis-mg-gateway是否正常启动,如果正常启动,查看nginx配置文件中配置的linkis-mg-gateway服务地址是否正确
5 常见问题
5.1 上传文件大小限制
1. sudo vi /etc/nginx/nginx.conf
更改上传大小
1. client_max_body_size 200m
5.2 接口超时
1. sudo vi /etc/nginx/conf.d/linkis.conf
更改接口超时时间
1. proxy_read_timeout 600s
