通过对账流程,您可以将现有 Apigee Edge 私有云组织的全部 API 元数据(代理、环境等)重新同步到 API Hub。如果您怀疑数据不一致或需要完全重新同步所有 API 定义,通常会使用此流程。
此过程涉及两项主要操作:
- 通过修改连接器的配置暂时选择不使用特定组织
- 立即重新启用
对账步骤
如需协调组织,您需要修改连接器的配置文件两次,并在每次修改后重启连接器服务。
- 备份当前配置文件。
- 仅从要选择退出的组织中移除 runtimeDataPubsub 和 metadataPubsub。
- 重启 uapim 连接器服务。
- 通过将原始 uapim 连接器设置恢复到在第 1 步中创建的备份,选择启用当前组织。
- 重启 uapim 连接器服务。
选择退出组织(移除 Pub/Sub 主题)
在此步骤中,您将从 Pub/Sub 主题中移除组织。暂时向连接器发送信号,以停止同步目标组织的元数据。
- 修改连接器配置:在连接器虚拟机上打开配置文件:
/opt/apigee/customer/application/uapim-connector.properties - 修改 conf_uapim_connector.uapim.settings.json:在 connectorConfig 部分中,针对您打算协调的组织(例如 organization1),移除 runtimeDataPubsub 和 metadataPubsub 的值。确保您保持 serviceAccount 和 pluginInstanceId 不变。
- 修改前(示例):
{ "connectorConfig" : { "organization1" : { "runtimeDataPubsub" : "projects/p1/topics/rt-topic-org1", "metadataPubsub":"projects/p1/topics/md-topic-org1", "serviceAccount": "mysa1@in.myfirstProject", "pluginInstanceId":"aaaa" }, "organization2" : { "runtimeDataPubsub" : "projects/p2/topics/rt-topic-org2", "metadataPubsub":"projects/p2/topics/md-topic-org2", "serviceAccount": "mysa2@in.mySecondProject", "pluginInstanceId":"bbbbb" } }, "runtimeDataPath":"/the/nfs/mounted/path", "managementServer": "hostname" } 修改后(选择退出组织 1):
{ "connectorConfig" : { "organization1" : { "runtimeDataPubsub" : "", "metadataPubsub":"", "serviceAccount": "mysa1@in.myfirstProject", "pluginInstanceId":"aaaa" }, "organization2" : { "runtimeDataPubsub" : "projects/p2/topics/rt-topic-org2", "metadataPubsub":"projects/p2/topics/md-topic-org2", "serviceAccount": "mysa2@in.mySecondProject", "pluginInstanceId":"bbbbb" } }, "runtimeDataPath":"/the/nfs/mounted/path", "managementServer": "hostname" }重启连接器服务(选择退出):
通过重启适用于私有云的 Apigee API Hub 连接器来应用更改:
apigee-service edge-uapim-connector restart
- 修改连接器配置:在连接器虚拟机上打开配置文件:
选择启用组织(恢复 Pub/Sub 主题)
在此步骤中,您将组织恢复到 Pub/Sub 主题。向连接器发出信号,以开始全新的完整元数据同步。
- 修改连接器配置:再次打开配置文件:
/opt/apigee/customer/application/uapim-connector.properties - 修改 conf_uapim_connector.uapim.settings.json:在 connectorConfig 部分中,针对您打算协调的组织(例如 organization1),恢复 runtimeDataPubsub 和 metadataPubsub 的值。
- 修改后(选择启用组织 1):
{ "connectorConfig" : { "organization1" : { "runtimeDataPubsub" : "projects/p1/topics/rt-topic-org1", "metadataPubsub":"projects/p1/topics/md-topic-org1", "serviceAccount": "mysa1@in.myfirstProject", "pluginInstanceId":"aaaa" }, "organization2" : { "runtimeDataPubsub" : "projects/p2/topics/rt-topic-org2", "metadataPubsub":"projects/p2/topics/md-topic-org2", "serviceAccount": "mysa2@in.mySecondProject", "pluginInstanceId":"bbbbb" } }, "runtimeDataPath":"/the/nfs/mounted/path", "managementServer": "hostname" }
- 修改连接器配置:再次打开配置文件:
恢复的配置
重启连接器服务(选择启用):
再次重启连接器服务,以触发完整的元数据重新同步:
apigee-service edge-uapim-connector restart
连接器现在会为目标组织完全选择启用所有 API 元数据。您可以使用状态端点 curl localhost:8080/v1/uapim/status 监控进度。