服务端扩展
使用自定义配置顾问注入会话配置
登录后可跨设备保存划线和私人笔记登录
1.5.0 版本新增。
会话配置顾问
Kyuubi 支持通过自定义配置顾问注入会话配置。该功能通常用于动态追加或覆盖会话配置,从而使 Kyuubi 管理员能够对用户指定的配置进行管控。
注入会话配置的步骤
创建一个实现了
org.apache.kyuubi.plugin.SessionConfAdvisor的自定义类。编译并将该 jar 放入
$KYUUBI_HOME/jars在
kyuubi-defaults.conf处添加配置:kyuubi.session.conf.advisor=${classname}
org.apache.kyuubi.plugin.SessionConfAdvisor 具有一个无参构造函数,其中包含一个接收用户配置和会话配置的方法,该方法会返回一个新的配置映射。
public interface SessionConfAdvisor {
default Map<String, String> getConfOverlay(String user, Map<String, String> sessionConf) {
return Collections.EMPTY_MAP;
}
}注意
返回的配置映射将覆盖原始的会话配置。
示例
我们有一个自定义类 CustomSessionConfAdvisor:
public class CustomSessionConfAdvisor implements SessionConfAdvisor {
@Override
Map<String, String> getConfOverlay(String user, Map<String, String> sessionConf) {
if ("uly".equals(user)) {
return Collections.singletonMap("spark.driver.memory", "1G");
} else {
return Collections.EMPTY_MAP;
}
}
}如果用户 uly 通过以下方式创建连接:
jdbc:hive2://localhost:10009/;hive.server2.proxy.user=uly;#spark.driver.memory=2G最终的 Spark 应用程序将为 driver JVM 分配 1G 而不是 2G。
评论
登录后参与评论
正在加载评论…
KnowForge