
# 升级KooSearch服务
KooSearch服务的升级功能升级的是集群的内核补丁。
#### 场景描述
**升级原理**
升级过程采用的是one-by-one的方式。升级时，先下线一个节点，然后对该节点执行切换OS镜像的动作，再将已下线节点的网卡port挂载回来，以此保留节点IP地址，再进行初始化节点启动进程，待节点信息更新后，再依次将其余节点镜像进行替换。升级过程中存在节点下线再上线的动作，可能会中断服务，请在业务低峰期执行。
**升级流程**
1. 进行升级前检查：[升级前检查]。
   
   升级前检查大部分支持系统检查，少部分需要人工检查。
   
   
2. 创建升级任务，启动升级：[创建升级任务]。
 
#### 约束限制
- 最多同时支持20个集群升级，建议在业务低峰期进行升级操作。
- 待升级的集群不能存在正在进行中的任务。
- 升级任务一旦启动就无法中止，直到升级任务的"任务状态"显示"失败"或"成功"才结束。
 
 #### 升级前检查
为了保证升级成功，需要做升级前检查，升级前检查主要包括如下事项：
表1升级前检查项 
| 检查项  | 检查方式 | 描述                                                              | 正常状态                                            |
|:---|:---|:---|:---|
| 集群状态 | 系统检查 | 升级任务启动后，系统会自动检查集群状态。"集群状态"为"可用"，表示集群可以正常提供服务。                   | "集群状态"为"可用"。                                    |
| 资源充足 | 系统检查 | 升级任务启动后，系统会自动检查资源。升级过程中会切换OS镜像，需要保证有资源可用。                       | 资源可用且配额充足。                                      |
| 非标操作 | 人工检查 | 确认是否存在非标操作。非标操作指的是没有被记录下来的手动操作，这些操作在升级过程中无法自动传递，比如修改系统配置、回程路由等。 | 未记录到系统中的非标改动，在升级过程中将不会继承下来，升级后可能会影响您的业务，需要提前备份。 |
   
 #### 创建升级任务
1. 进入KooSearch服务详情页面。
   1. 登录[云搜索服务管理控制台](https://console.huaweicloud.com/elasticsearch/)。
   
   2. 在左侧导航栏选择"KooSearch\>KooSearch文档问答"，进入KooSearch服务列表。
   
   3. 选择目标服务，单击服务名称，进入服务详情页。
    
2. 选择"升级"页签。
3. 在升级页面，配置升级参数。
   表2升级参数说明 
   | 参数   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   |:---|:---|
   | 目标镜像 | 选择目标版本的镜像。选中镜像后，下方会显示镜像名称和目标版本的详细说明。 实际支持的目标版本请以升级页面中"目标镜像"的可选值为准。如果无法选择目标镜像，有如下几个原因： - 当前集群已是最新版本集群。  - 当前局点暂未录入新版本镜像。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   | 配置委托 | 删除节点会释放网卡，需要VPC的操作权限。选择IAM委托，授权当前账号访问和使用VPC的权限。 - 当首次配置委托时，可以单击"自动创建委托"新建委托"css_upgrade_agency"直接使用。  - 当已有自动创建的委托时，可以单击"委托一键授权"，自动删除委托中VPC Administrator系统角色和VPC FullAccess系统策略的权限，并自动新增如下自定义策略授权委托到最小化权限。 ``` "vpc:subnets:get", "vpc:ports:*" ```   - 执行"自动创建委托"和"委托一键授权"的用户需要如下最小权限。 ``` "iam:agencies:listAgencies", "iam:roles:listRoles", "iam:agencies:getAgency", "iam:agencies:createAgency", "iam:permissions:listRolesForAgency", "iam:permissions:grantRoleToAgency", "iam:permissions:listRolesForAgencyOnProject", "iam:permissions:revokeRoleFromAgency", "iam:roles:createRole" ```   - 使用委托的用户需要如下最小权限。 ``` "iam:agencies:listAgencies", "iam:agencies:getAgency", "iam:permissions:listRolesForAgencyOnProject", "iam:permissions:listRolesForAgency" ```    |
      
   
4. 配置完成后，单击"确认提交"。
5. 在"任务记录"列表，显示当前升级任务。当"任务状态"为"运行中"时，可以展开任务列表，单击"查看进度"查看详细的升级进度。 当"任务状态"为"失败"时，可以重试任务或者直接终止任务。
   - 重试升级：在任务列表的操作列，单击"重试"，重新升级。
   
   - 终止升级：在任务列表的操作列，单击"终止"，结束升级。 当升级任务终止后，请联系技术支持处理升级失败的任务。
     
    
 
