有数BI多kerberos集群对接
有数BI多kerberos集群对接操作指导
当前有数BI对接多kerberos集群主要方案为,启动多个da数据连接服务容器实例分别对接多个kerberos集群。但复杂报表暂不支持多kerberos集群对接。
yaml配置修改
修改/youdata/installer/docker-stack.xxx.yaml文件,新增一个da服务项,配置可复制原da服务配置,重新命名即可,比如:
krb5的文件看是否需要进行keytab认证,如果需要,那就取消注释,并且将相应的krb5文件放置到对应目录,名称可自定义,注意需保持跟配置一致。
extra_hosts配置为容器内部的域名解析,如果da-ex容器与相应impala节点网络不通,可以通过下列的配置增加相应解析,并且注意格式对齐。
extra_hosts:
- "host1:ip1"
- "host2:ip2
服务启动
dsd docker-stack.xxx.yaml youdata # 双机环境将youdata改为ydswarm
数据库增加da连接kerberos标识
登陆有数环境的数据库,修改data_connection_location表信息,增加kerberos集群认证标识。
use youdata;
desc data_connection_location;
insert into data_connection_location(`id`, `name`, `location`) values (1, 'da', "http://da:8080");
insert into data_connection_location(`id`, `name`, `location`) values (2, 'da', "http://da-ex:8080")
update data_connection set location = 2 where id = 193;
后续每新增一个使用该kerberos集群的数据连接,都需要在数据库里执行update data_connection set location = 2 where id = 193; 语句,其中193为新建的数据连接id ,可通过有数页面获取。
验证
Impala / Hive / PrestoDB 等认证方式为 Kerberos 的数据源,可通过下列步骤进行检查 keytab 是否有效,krb5.conf 对应配置是否正确。
在 DA 容器内,可以通过 kinit/klist 验证能否认证成功
- klist -kt
,获取principal,确认跟krb5文件配置是否一致。 - kinit -kt
,验证 Kerberos 能否成功认证。
需要将对应的keytab文件上传拷贝至da-ex容器内方可进行验证。
docker cp <文件>
以上内容对您是否有帮助?