未完全测试,仅供了解;
azkaban默认启动端口为8081,访问方式为:http://ip:8081/,如果想修改访问方式为:http://ip:8081/home,可参考下方操作;
修改访问方式的目的,有的时候服务器不是任意端口都是对外开放的,这时候可以考虑通过nginx代理访问azkaban,就需要调整访问方式,
因为azkaban3.0后不再提供安装包,只提供源码自行编译,所以我们修改以下源码后,重新编译:
1:修改AzkabanWebServer类中的configureRoutes方法
final Context root = new Context(this.server, "/home", Context.SESSIONS);
this.props.getString("azkaban.default.servlet.path", "/home/index");
2:修改IndexRedirectServlet类中的构造方法
this.defaultServletPath = "/home/index";
3:修改azkaban.properties文件中的配置
azkaban.default.servlet.path=/home/index
4:修改部分css、js、vm中的配置,这个未测完,当查到加载哪个css或者其他静态资源失败时,查看对应的代码按下方的修改即可;
style.vm:
<link href="/home/css/bootstrap.css" rel="stylesheet">
<link href="/home/css/azkaban.css?v=1571871291" rel="stylesheet">
navbar.less:
background: url('../../home/images/logo.png') top left no-repeat;
bootstrap.css:
src: url('../../home/fonts/glyphicons-halflings-regular.eot');
src: url('../../home/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../../home/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../../home/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../../home/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
job-edit.js:
this.projectURL = contextURL + "/manager"
login.js:
$.ajax({
async: "false",
url: contextURL+'/',
dataType: "json",
type: "POST",
data: {
action: "login",
username: username,
password: password
},
success: function (data) {
if (data.error) {
$('#error-msg').text(data.error);
$('#error-msg').slideDown('fast');
}
else {
document.location.reload();
}
}
});
5:修改完成后重新编译即可,因为只测试了页面正常打开、工程创建、flow上传、任务定时执行、日志查看功能,未在生产环境使用过,参考后请谨慎测试,测出问题后欢迎评论区留言;