检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
SQL作业访问外表报错:DLI.0001: org.apache.hadoop.security.AccessControlException: verifyBucketExists on {{桶名}}: status [403] 问题现象 SQL作业访问外表报错:DLI.0001:
DLI支持原生Spark的DataSource能力,并在其基础上进行了扩展,能够通过SQL语句或者Spark作业访问其他数据存储服务并导入、查询、分析处理其中的数据,目前支持的DLI跨源访问服务有:表格存储服务CloudTable,云搜索服务CSS,分布式缓存服务DCS,文档数据库服务DDS
SQL使用DEW管理访问凭据 Flink Opensource SQL场景使用DEW管理和访问凭据的操作指导,将Flink作业的输出数据写入到Mysql或DWS时,在connector中设置账号、密码等属性。 Flink Jar 使用DEW获取访问凭证读写OBS 访问OBS的AKSK为例介绍Flink
泄露以及权限失控带来的业务风险。 本例以获取访问OBS的AKSK为例介绍Flink Jar使用DEW获取访问凭证读写OBS的操作指导。 前提条件 已在DEW服务创建通用凭证,并存入凭据值。具体操作请参考:创建通用凭据。 已创建DLI访问DEW的委托并完成委托授权。该委托需具备以下权限:
跨源访问MRS HBase,连接超时,日志未打印错误怎么办? 用户在跨源连接中没有添加集群主机信息,导致KRB认证失败,故连接超时,日志也未打印错误。 建议您重新配置主机信息后再重试访问MRS HBase。 在“增强型跨源”页面,单击该连接“操作”列中的“修改主机信息”,在弹出的对话框中,填写主机信息。
Flink Jar作业访问DWS启动异常,提示客户端连接数太多错误 问题描述 提交Flink Jar作业访问DWS数据仓库服务时,提示启动失败,作业日志报如下错误信息。 FATAL: Already too many clients, active/non-active/reserved:
使用Spark作业跨源访问数据源 概述 对接CSS 对接DWS 对接HBase 对接OpenTSDB 对接RDS 对接Redis 对接Mongo 父主题: Spark Jar作业开发指南
服务替换硬编码的数据库账号密码查询凭据。 约束限制 仅支持Flink1.15版本使用委托授权访问临时凭证: 在创建作业时,请配置作业使用Flink1.15版本 已在作业中配置允许DLI访问DEW的委托信息。flink.dli.job.agency.name=自定义委托名称。 自定义委托请参考自定义DLI委托权限。
builder().appName("datasource-rds").getOrCreate(); 通过SQL API 访问 创建DLI跨源访问RDS的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE IF NOT
对接HBase MRS配置 scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
对接CSS CSS安全集群配置 scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
使用DLI的跨源认证管理数据源访问凭证 跨源认证概述 创建CSS类型跨源认证 创建Kerberos跨源认证 创建Kafka_SSL类型跨源认证 创建Password类型跨源认证 跨源认证权限管理 父主题: 配置DLI读写外部数据源数据
对接DWS scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
上传“安全证书”的OBS路径。即步骤2的OBS桶地址。 图1 创建认证信息-CSS 访问CSS的表。 跨源认证创建成功后,在创建访问CSS的表时只需关联跨源认证即可安全访问数据源。 例如在使用Spark SQL来创建访问CSS的表时使用es.certificate.name字段配置跨源认证信息名称,配置连接安全CSS集群。
登录DLI管理控制台。 单击“跨源管理 > 跨源认证”。 选择要进行授权的跨源认证,单击操作列“权限管理”进入开源认证的用户权限信息页面。 单击页面右上角“授权”可对当前的跨源认证新增用户授权。 图1 跨源认证用户授权 表1 用户授权参数说明 参数名称 描述 用户名 被授权的IAM用户的名称。
ResponseCode: 403, ResponseStatus: Forbidden 解决方案 Spark程序访问OBS数据时,需要通过配置AK、SK的访问进行访问。 具体访问方式可以参考:通用队列操作OBS表如何设置AK/SK。 父主题: Spark作业运维类
对接Redis scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
option("driver", driver) \ .load() jdbcDF.show() 操作结果 通过SQL API 访问 创建DLI跨源访问rds的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE
java样例代码 操作场景 本例提供使用Spark作业访问DWS数据源的java样例代码。 在DLI管理控制台上已完成创建跨源连接并绑定队列。具体操作请参考《数据湖探索用户指南》。 认证用的password硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。
MRS配置 DLI跨源连接中配置MRS主机信息 在DLI管理控制台上已完成创建跨源连接。具体操作请参考《数据湖探索用户指南》。 对接MRS HBase需要在DLI队列的host文件中添加MRS集群节点的/etc/hosts信息。 详细操作请参考《数据湖探索用户指南》中的“修改主机信息”章节描述。