如何将Predix旧账户的应用与服务数据迁移至新账户
Predix 旧账户到新账户的应用与服务数据迁移指南
嘿,我来帮你梳理下Predix账户间迁移应用和服务数据的具体步骤,都是实际操作过的可行方案:
一、前期准备工作
- 确保新旧两个Predix账户都处于正常可用状态,没有权限限制或欠费情况
- 安装并配置最新版的
Predix CLI,同时完成两个账户的登录与切换:- 登录旧账户:
predix login -u <旧账户用户名> -p <旧账户密码> - 登录新账户:
predix login -u <新账户用户名> -p <新账户密码>(后续可通过predix target随时切换组织/空间)
- 登录旧账户:
- 提前备份旧账户中所有关键数据:包括应用代码、服务配置文件、数据库导出文件等,避免迁移过程中数据丢失
二、应用迁移步骤
1. 导出旧账户的应用代码与配置
- 切换到旧账户目标空间:
predix target -o <旧组织名> -s <旧空间名> - 下载应用包到本地:如果是本地部署的应用直接备份代码仓库即可;平台托管的应用可使用
cf download <应用名>将应用包下载到本地 - 导出应用环境变量:
cf env <应用名> > app_env_vars.txt,把所有配置参数保存到本地文件
2. 在新账户中重新部署应用
- 切换到新账户目标空间:
predix target -o <新组织名> -s <新空间名> - 创建匹配的服务实例:先通过
cf services查看旧账户的服务类型、计划和配置,再在新账户中创建对应服务:predix create-service <服务类型> <服务计划> <新服务名> -c <配置文件路径>(有自定义配置时需指定) - 部署应用到新账户:
cf push <新应用名> -p <本地应用包路径> - 导入环境变量:参考之前导出的
app_env_vars.txt,用cf set-env <新应用名> <变量名> <变量值>逐个配置,或编写脚本批量导入
三、核心服务数据迁移
不同类型的服务迁移方式略有差异,这里列举最常见的几种:
1. Time Series 时序数据迁移
- 旧账户导出:调用Predix Time Series API的查询接口,将历史数据导出为JSON或CSV格式
- 新账户导入:在新的Time Series服务实例创建完成后,通过API批量上传导出的数据,保证时序数据的完整性
2. UAA 用户与权限迁移
- 旧UAA实例导出:使用
uaac命令行工具,执行uaac users > uaa_users.txt和uaac groups > uaa_groups.txt导出用户、组和权限配置 - 新UAA实例导入:用
uaac逐个创建用户、组并配置权限,或编写脚本实现批量导入
3. 数据库类服务(如PostgreSQL)
- 旧数据库导出:
pg_dump -h <旧数据库主机> -U <用户名> <数据库名> > db_backup.sql - 新数据库导入:在新账户创建对应数据库实例后,执行
psql -h <新数据库主机> -U <用户名> <新数据库名> < db_backup.sql完成数据导入
四、迁移后验证
- 启动新账户中的应用,检查功能是否与旧应用完全一致
- 验证服务数据完整性:比如查询Time Series历史数据、数据库记录,确认和旧账户数据匹配
- 检查应用与服务绑定状态:
cf bindings <新应用名>,确保所有依赖服务都已正确绑定
内容的提问来源于stack exchange,提问作者Developer
相关产品推荐
相关产品推荐

