云服务器内容精选

  • 排查方案 在OBS管理控制台找到 DLI 作业桶。 查看所选桶的桶策略。 DLI Flink作业所需要使用的桶授权信息如下,其中domainId和userId分别为DLI的账号和子账号,bucketName为用户桶名,timeStamp为策略创建时的时间戳) { "Statement": [ { "Effect": "Allow", "Principal": { "ID": [ "domain/domainId:user/userId" ] }, "Action": [ "GetObject", "GetObjectVersion", "PutObject", "DeleteObject", "DeleteObjectVersion", "ListMultipartUploadParts", "AbortMultipartUpload", "GetObjectAcl", "GetObjectVersionAcl" ], "Resource": [ "bucketName/*" ], "Sid": "未命名的桶策略-Timestamp-0" }, { "Effect": "Allow", "Principal": { "ID": [ "domain/domainId:user/userId " ] }, "Action": [ "HeadBucket", "ListBucket", "ListBucketVersions", "ListBucketMultipartUploads", "GetBucketAcl", "GetBucketLocation", "GetBucketLogging", "GetLifecycleConfiguration" ], "Resource": [ " bucketName " ], "Sid": "未命名的桶策略-Timestamp-1" } ] } 在管理控制台检查以下权限相关内容,查看策略名称是否与2一致。 效力:允许 授权资源:按需授权桶和对象。 授权操作:与2中Action一致 常用检查项: 检查是否配置了所有账号的某些拒绝操作,且这些操作是上述DLI所需要的授权操作。 检查是否对DLI的被授权用户配置了某些拒绝操作,且这些操作是上述DLI所需要的授权操作。
  • 解决方案 为了解决因IP地址不足导致的Flink作业提交失败问题,可以在作业优化参数中添加以下配置: 启用 HostNetwork。 kubernetes.dli.hostnetwork.enabled=true kubernetes.hostnetwork.enabled=true 调整Leader Election 配置: high-availability.kubernetes.leader-election.renew-deadline=15s high-availability.kubernetes.leader-election.lease-duration=15s
  • 如何处理作业的OBS Bucket没有授权? DLI更新委托后,将原有的dli_admin_agency升级为dli_management_agency。 dli_management_agency包含跨源操作、 消息通知 、用户授权操作所需的权限,除此之外的其他委托权限需求,都需自定义DLI委托。 授权DLI读写OBS的权限并不包含在的DLI委托dli_management_agency中。需要您创建自定义委托,并将委托配置在作业中(使用Flink 1.15和Spark 3.3及以上版本的引擎执行作业时需要配置)。 了解dli_management_agency请参考DLI委托概述。 创建自定义委托并在作业中配置委托的操作步骤请参考自定义DLI委托权限。 父主题: 运维指导
  • 欠费导致权限不足 使用DLI提交作业时,提示欠费导致权限不足而提交失败,可以通过查看用户token中的roles信息进行确认: op_restrict:表示租户(因余额不足)而受限制。当前账号余额不足后,该账号下的所有在线用户token被吊销,如果再次登录,获取的token会被加入op_restrict权限,用户的操作会受到限制。 op_suspended:表示租户(因欠费等原因)被暂停。当前账号欠费后,该账号下的所有在线用户token被吊销,如果再次登录,获取的token会被加入op_suspended的权限,用户操作会受到限制(不包含云服务用户)。 如果提示有这两个role,操作就会受限。 父主题: 运维指导
  • 解决方案 在SQL语句中配置发送失败重试:connector.properties.retries=5 create table kafka_sink( car_type string , car_name string , primary key (union_id) not enforced ) with ( "connector.type" = "upsert-kafka", "connector.version" = "0.11", "connector.properties.bootstrap.servers" = "xxxx:9092", "connector.topic" = "kafka_car_topic ", "connector.sink.ignore-retraction" = "true", "connector.properties.retries" = "5", "format.type" = "json" );
  • 应用场景 我们列举了一些常见的从checkpoint恢复的场景供您参考,如表1所示。 更多场景你可以使用从checkpoint恢复的原则结合实际情况进行判断。 表1 从checkpoint恢复的常见场景 场景 是否支持恢复 说明 调整或者增加并行数 不支持 该操作修改了作业的并行数,即修改了作业的运行逻辑。 修改Flink SQL语句、Flink Jar作业等操作 不支持 该操作修改了作业对资源的算法逻辑。 例如原有的算法的语句是执行加减运算,当前需要恢复的状态将算法的语句修改成为乘除取余的运算,是无法从checkpoint直接恢复的。 修改“静态流图” 不支持 该操作修改了作业对资源的算法逻辑。 修改“单TM所占CU数”参数 支持 对计算资源的修改并没有影响到作业算法或算子的运行逻辑。 作业运行异常或物理停电 支持 当对作业参数未作出修改。