Flink SQL作业相关问题 问题现象 在DLI上提交Flink SQL作业,作业运行失败,在作业日志中有如下报错信息: connect to DIS failed java.lang.IllegalArgumentException: Access key cannot be null 问题根因 该Flink SQL作业在配置作业运行参数时,有选择保存作业日志或开启Checkpoint,配置了OBS桶保存作业日志和Checkpoint。但是运行该Flink SQL作业的IAM用户没有OBS写入权限导致该问题。 解决方案 1.登录IAM控制台页面,单击“用户”,在搜索框中选择“用户名”,输入运行作业的IAM用户名。 2.单击查询到用户名,查看该用户对应的用户组。 3.单击“用户组”,输入查询到的用户组查询,单击用户组名称,在“授权记录”中查看当前用户的权限。 4.确认当前用户所属用户组下的权限是否包含OBS写入的权限,比如“OBS OperateAccess”。如果没有OBS写入权限,则给对应的用户组进行授权。 5.授权完成后,等待5到10分钟等待权限生效。再次运行失败的Flink SQL作业,查看作业运行状态。 Flink SQL作业读取DIS数据报Not authorized错误 问题现象 Flink SQL作业读取DIS数据,运行该作业时,语义校验失败。具体作业失败提示信息如下: Get dis channel xxx info failed. error info: Not authorized, please click the overview page to do the authorize action 问题原因 运行Flink作业前,没有对运行的用户账号授权获取DIS数据的权限。 解决方案 1.登录到DLI管理控制台,左侧导航栏选择“全局配置 > 服务授权”。 2.在服务授权管理界面,勾选“DIS Administrator”权限,单击“更新委托授权”完成对当前用户的DIS权限授权。 3.在“作业管理 > Flink作业”,单击对应的Flink SQL作业,重新启动和运行该作业。 Flink SQL作业消费Kafka后sink到es集群,作业执行成功,但未写入数据