Informatica 10.2执行deploydeploymentgroup报REP_55035仓库代理失败
Informatica 10.2 pmrep 部署组 REP_55035 报错排查方案
从报错特征来看,REP_55035报错并不是单指当前执行pmrep的机器无法连接对应仓库,而是执行部署流程时,pmrep会触发两端Repository服务的双向链路校验,任何一个环节的连通性、鉴权、配置异常都会被统一包装成“Failed to connect to repository agent”的提示。
已验证的问题复现场景
实际执行命令及报错序列如下:
# 启动pmrep交互模式,版本为10.2.0 HotFix2 pmrep # 源仓库连接无报错 pmrep> connect -r {SOURCE_REPO} -h {SOURCE_SERVER} -o {SOURCE_PORT} -n {SOURCE_INFA_DOMAIN_USER} -s {SOURCE_SECURITY_DOMAIN} -x {SOURCE_PASSWORD} # 执行部署时报错 pmrep> deploydeploymentgroup -p {DG_NAME} -c {DEPLOYOPTIONS} -r {TARGET_REPO} -h {TARGET_SERVER} -o {TARGET_PORT} -n {TARGET_INFA_DOMAIN_USER} -x {TARGET_PASSWORD} # 报错内容:[REP_55035] An error occurred during deployment. Failed to connect to the EDO_PCREP_DEV repository agent.
已知操作尝试:手动执行命令、脚本批量执行、预先用connect命令连接目标仓库、connect命令中加-t参数建立临时连接,所有方式下均在deploy阶段触发相同报错。
分层排查步骤
- 第一步:校验两端Repository服务的基础运行状态
在源、目标仓库对应的Informatica节点上,执行ps -ef | grep RepositoryManager,确认对应仓库的RM进程处于正常运行状态。10.2版本的Repository Agent是集成在RepositoryManager进程内部的独立监听端口,没有独立的agent服务进程,只要RM进程启动正常,agent的监听入口就会自动加载。 - 第二步:重点校验双向跨节点的网络连通性
这是该类报错最高发的根因,很多排查仅测试了「执行pmrep的Linux机器」到两端RM服务器的端口连通性,遗漏了关键的链路要求:部署过程中,源RM和目标RM会直接建立交互通道拉取部署组内容,不通过pmrep做中转。需要分别完成以下连通性校验:- 登录源RM所在服务器,执行
telnet {TARGET_REPO_SERVER} {TARGET_RM_PORT},确认可以正常连通 - 登录目标RM所在服务器,执行
telnet {SOURCE_REPO_SERVER} {SOURCE_RM_PORT},确认可以正常连通
跨防火墙环境下,必须放行两个RM节点之间对应的RM服务端口双向访问流量,仅放行客户端机器的访问权限是无法完成部署的。
- 登录源RM所在服务器,执行
- 第三步:修正deploy命令的参数缺失问题
对比10.2版本pmrep的deploydeploymentgroup参数要求,原命令存在两处参数风险,也对应之前尝试操作的误区:- 目标仓库连接缺少安全域参数:当目标仓库的安全域不是默认Native域时,原命令没有携带
-s {TARGET_SECURITY_DOMAIN},pmrep会直接复用源仓库连接时的安全域做鉴权,鉴权失败时会被统一包装成“连不上agent”的错误。需要注意:之前尝试通过connect -t参数预先建立目标仓库临时连接的操作,在10.2版本中不会被deploy命令复用,部署阶段的目标连接鉴权是独立上下文校验的,必须在deploydeploymentgroup的参数里把所有目标端连接信息(含安全域)填全。 - 端口匹配校验:deploy命令里的目标端口必须填Repository服务本身的监听端口,不能填Informatica域的网关切换端口,端口不匹配会导致pmrep尝试连接agent时找不到正确的监听入口。
- 目标仓库连接缺少安全域参数:当目标仓库的安全域不是默认Native域时,原命令没有携带
- 第四步:校验DEPLOYOPTIONS XML的版本兼容性
由于当前使用的XML是基于Informatica 8版本的depcntl.dtd编写的,10.2.0 HotFix2版本对XML节点的校验规则更严格:如果XML中包含8版本特有、10.2已废弃的顶层节点,pmrep不会直接抛出XML格式错误,会触发内部解析超时,最终被包装成REP_55035的报错。需要将XML文件和当前版本路径下$INFA_HOME/server/bin/dtd/depcntl.dtd的节点定义逐一比对,删除已废弃的节点,不要直接复用旧版本的部署配置模板。 - 第五步:检查仓库的内部注册主机配置
这是容易被忽略的隐蔽配置问题:Repository服务启动时,会把自身的可达主机地址存在仓库元数据内部,两个RM节点互相连接时,会优先调用元数据里存储的地址做连通。如果之前RM服务器的IP、主机名发生过变更,没有在Informatica Administrator Console里更新对应Repository服务的「自定义主机名」配置,哪怕pmrep连接时填的IP正确,RM之间的内部交互也会因为调用旧地址失败,触发agent连接错误。需要分别检查源、目标RM服务的配置页,确认自定义主机名填的是当前RM服务器对外稳定的IP/主机名,不要填环回地址、已废弃的旧主机名。 - 第六步:绕开交互模式的会话缓存做验证
很多时候pmrep交互模式下的会话缓存异常会触发偶发的连接问题,可以尝试用非交互模式串联执行所有命令,验证是否是会话缓存导致的异常,参考命令格式:pmrep connect -r {SOURCE_REPO} -h {SOURCE_SERVER} -o {SOURCE_PORT} -n {SOURCE_INFA_DOMAIN_USER} -s {SOURCE_SECURITY_DOMAIN} -x {SOURCE_PASSWORD} && \ deploydeploymentgroup -p {DG_NAME} -c {DEPLOYOPTIONS} -r {TARGET_REPO} -h {TARGET_SERVER} -o {TARGET_PORT} -n {TARGET_INFA_DOMAIN_USER} -s {TARGET_SECURITY_DOMAIN} -x {TARGET_PASSWORD}
常见根因匹配
- 最高发根因(约80%同类案例):跨节点防火墙仅放行了执行pmrep的客户端到两端RM的访问流量,没有放行两个RM服务器之间的RM端口双向交互流量
- 次高发根因(约15%同类案例):deploy命令缺少目标端安全域参数,鉴权失败被错误映射为agent连接异常
- 剩余5%的案例由旧版本XML配置不兼容、RM自定义主机名配置错误、RM进程异常导致
内容的提问来源于stack exchange,提问作者Christine
相关产品推荐
相关产品推荐

