
# 变更ROMA Site协同版实例规格
#### 方案概述
ROMA Site协同版实例规格变更目前仅支持实例从3VM的基础版扩容为4VM的专业版，即增加一台同规格虚拟机。各集成组件强制依赖实例，不可单独变更。
ROMA Site协同版实例规格变更包含站点规格变更和实例规格变更两部分。其中实例规格变更时，又可分为新站点容器扩容和已有容器升级两种场景。
- 新站点容器扩容：会在新增节点上部署新的服务容器。
- 已有容器升级：会对已有容器的CPU和内存分配有较大的改动，大部分组件都会有变化。
 
#### 注意事项
- 部分组件在实例规格变更过程中会中断业务，建议在业务影响小的时间段内变更规格。
- 实例规格变更过程中，会将所有集成组件一起扩容至目标配套规格。
- 实例规格变更过程中，请不要执行其他操作，避免操作冲突导致实例规格变更失败。
- 实例规格变更功能仅对白名单用户开放。
 
#### 变更影响
ROMA Site实例规格变更过程中对系统的影响如[表1]所示。
 表1变更过程的影响 
| 组件          | 影响说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|
| ROMA Site整体 | ROMA Site实例规格变更过程中，服务集群内部只有部分容器对外提供服务，降低ROMA Site性能和可靠性，建议客户在业务低峰时间进行升级。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| FDI         | - ROMA Site实例规格变更过程中，数据源、数据集成任务上的操作会出现部分请求错误，不影响已部署业务。  - ROMA Site实例规格变更过程中，正在执行中的数据集成任务可能会中断，部分执行间隔较短（如调度计划1分钟一次）的任务执行时间存在5-6分钟波动，导致单次任务执行时间会覆盖多次调度计划。建议先停止所有数据集成任务，等待规格变更完成后再重新启动任务。  - 如果定时任务正好在规格变更过程中调度时，部分调度日志显示时间可能比用户制定的调度时间晚2-3分钟，为正常现象，属于Quartz补偿调度任务机制影响。  - ROMA Site实例规格变更过程中，部分调度日志显示会存在展示异常，实际该次任务正常调度，数据正常读取写入。  - ROMA Site实例规格变更过程中，MQS升级会影响FDI内部topic的创建，导致任务调度跳过，属于正常现象。  - ROMA Site实例规格变更过程中，fdiplugin升级完成后，可能出现下一次正常调度跳过情况，这是由于quartz补偿调度的任务还在执行中导致的，属于正常现象。                                                                                                                                                      |
| APIC        | - ROMA Site实例规格变更过程中，查询类操作不受影响，其他创建、修改、删除等操作无法操作。  - ROMA Site实例规格变更过程中，用户的长连接API业务会中断，如果客户端有重试机制，则业务不受影响。  - ROMA Site实例规格变更过程中，已有周期内的流量控制和客户端配额的计数器清零，最高会出现两倍的阈值，需要用户在规格变更前评估系统承载能力，可临时调整阈值为原来的一半。  - ROMA Site实例规格变更过程中，可能出现自定义后端的连接闪断，或出现数据后端权限校验失败问题（错误信息为：Error Return Object: xxx, Executor Exception: Access denied. Exception during pool initialization）。若API使用了自定义认证，可能会偶现自定义认证失败（错误信息为：Internal server error: xxx auth failed）。如果客户端有重连机制，则重连时可以恢复正常。  - ROMA Site实例规格变更过程中，如果客户端调用了使用MQSUtils的函数API，可能会持续收到5xx响应码或者异常信息"com.huawei.livedata.util.MqsUtilsException"和"org.apache.rocketmq.client.exeception.MQSClientException"，待规格变更完成后可恢复。建议客户端延迟20-30分钟后重试，或者将函数API中的MQSUtils替换为Kafka。   |
| LINK        | - ROMA Site实例规格变更过程中，查询类业务不受影响，但不建议在规格变更过程中进行创建、更新、删除、导入等操作。  - ROMA Site实例规格变更过程中，设备连接可能会中断。如果设备端有重连机制，重连时可以恢复连接。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   
#### 准备资源
在进行ROMA Site实例规格变更前，需要准备以下资源：
- 虚拟机：与之前机器相同规格且相同架构的Linux机器。
- 工具：需要安装Docker、NTP、Haveged服务，Docker安装请参考[安装Docker](https://support.huaweicloud.com/usermanual-roma/roma_03_0006.html#roma_03_0006__li996417134619)，NTP配置请参考[时间同步](https://support.huaweicloud.com/usermanual-roma/roma_03_0006.html#roma_03_0006__li925636154615)，Haveged的安装请参考[安装Haveged](https://support.huaweicloud.com/usermanual-roma/roma_03_0006.html#roma_03_0006__li520924695013)。浏览器用于登录华为云控制台，要求Chrome 97及以上版本、Edge或Firefox 97及以上版本。
- 实例规格变更需要APIC特定版本支持，请联系技术支持进行确认。
 
#### 变更前检查
1. 变更前请确认所有节点机器软件安装正常。
   - 查看Docker、NTP、Haveged是否安装并且正常启动。
   
   - Haveged已下载安装包并上传到节点上。 安装Haveged：**rpm -ivh haveged-1.9.13-3.oe1.x86_64.rpm**
     开机启动：**systemctl enable haveged**
     重启：**service haveged restart**
     查看服务状态：**service haveged status**
     
    
2. 变更前请确认新增节点机器磁盘是否挂载正常。 磁盘挂载到指定目录：**/opt/roma/data** 和**/opt/roma/logs**
   
3. 变更前请确认新增节点机器端口是否开放正常。 用户准备好虚拟机资源后，需要检查虚拟机是否开放了各组件需要的端口，其中，对外服务端口为7000、40001-40010、80、443、9092、9094、1883、8443，需要保证这些端口对外互通，其他端口保持内部互通。
   
4. 变更前请确认华为云环境运行正常。
   - 能够正常登录控制台。
   
   - 当前站点信息状态为"运行中"及节点信息都显示为"运行中"。
    
5. 变更前请确认新增节点机器的网卡名称和站点配置的名称一致。
6. 变更前请联系技术支持确定站点的CPU架构是否正确填写。
7. 变更前请确认站点模板为3VM基础版且带基本的子服务（APIC、FDI、MQS、LINK）。
 
#### 变更站点规格
1. 登录ROMA Connect控制台，在左侧导航栏选择"Site实例"。
2. 在"Site实例"页面单击要变更规格实例上的"更多"，选择"规格变更"。
3. 确认变更规格后单击"规格升级"。 当前仅支持从3VM的基础版规格变更为4VM的专业版规格。
   
4. 再次单击"规格升级"，系统将自动创建边缘节点。
5. 边缘节点创建完成后，单击"下载边缘节点配置文件"下载包含边缘节点密钥等信息的配置文件。
6. 备份下载的边缘节点配置文件中的"node.tar.gz"文件到本地。
   ![](https://support.huaweicloud.com/usermanual-roma/public_sys-resources/note_3.0-zh-cn.png)
   如果用户侧虚拟机出现故障需要重置时，则需要使用备份的"node.tar.gz"文件。
   
7. 配置文件下载后，待系统将边缘节点连接上云，连接完成后单击"下载核心软件安装工具"按钮，下载对应的安装工具。当前支持X86_64和arm64，请下载对应的安装程序。
8. 备份下载的核心软件安装工具中的"edge-installer_*1.0.27* _*x86_64* .tar.gz"文件到本地。
   ![](https://support.huaweicloud.com/usermanual-roma/public_sys-resources/note_3.0-zh-cn.png)
   如果用户侧虚拟机出现故障需要重置时，则需要使用备份的"edge-installer_*1.0.27* _*x86_64*.tar.gz"文件。
   其中，1.0.27为安装工具版本号，x86_64为CPU架构类型，请以实际场景为准。
   
9. 单击下载纳管脚本压缩包install_site.tar.gz，参考[表4](https://support.huaweicloud.com/usermanual-roma/roma_03_0011.html#roma_03_0011__table27103156015)编辑其中的install_site.conf文件，将新增的节点IP填写到VM4中，并填写cpu_request、mem_request、data_disk_size和log_disk_size。
   ![](https://support.huaweicloud.com/usermanual-roma/zh-cn_image_0000002533475793.png "点击放大")
   
10. 上传下载下来的证书压缩包、安装工具、install_site.conf和install_site.sh四个文件到新增节点的临时目录。
11. 登录并进入新增节点的临时目录，执行命令 **sh install_site.sh install_site.conf**，并按照要求输入密码完成机器纳管。
12. 返回控制台，单击"站点详情"，查看所有纳管节点是否正常运行。
 
#### 变更实例规格
1. 在"Site实例"页面单击要变更规格实例上的"开始扩容"。
2. 确认变更的实例规格，并进行支付。
3. 完成支付后，实例开始变更规格，回到界面可以看到实例正在部署中。 如果规格变更失败，可以在修复问题后重试。
   
4. 实例规格变更完成之后，需要对实例的基本业务进行验证，确认业务状态正常。
 
