
# 微服务管理
在微服务列表页签下，可对微服务进行创建、查看、清理无实例版本、动态配置、灰度发布和删除微服务操作。
![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002389290505.png)
 #### 创建微服务
创建新的微服务，可用于测试或恢复引擎中误删的微服务。当自动注册到ServiceComb的微服务被误删后，可通过手动创建微服务恢复误删的微服务，其中需使用与原服务完全相同的微服务名称、微服务应用、版本和微服务环境。
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   

6. 选择"微服务列表 \> 创建微服务"，参考下表配置微服务参数。参数前面带\*号的是必须设置的参数。
   
   
   | 参数      | 说明                                                                                                                    |
   |:---|:---|
   | \*微服务名称 | 输入微服务名称，例如：myServiceName。以数字、字母开头结尾，由数字、字母和特殊字符（_-.）组成，且特殊字符不能连续出现，长度为1 \~ 128字符 。                                    |
   | \*微服务应用 | 输入微服务所属应用的名称，微服务间通过应用隔离的。以数字、字母开头结尾，由数字、字母和特殊字符（_-.）组成，且特殊字符不能连续出现，长度为1 \~ 160字符 。                                    |
   | \*版本    | 输入微服务的版本号，默认为1.0.0。 **微服务版本号格式为"X.Y.Z"，"X.Y.Z.B"型，其中X、Y、Z、B为数字且范围在0-32767，长度为3-46个字符。** |
   | \*微服务环境 | 选择微服务所在环境，用于隔离微服务数据，包括：版本、实例。                                                                                         |
   | 描述      | 输入微服务描述信息。                                                                                                            |
      
   
   
7. 单击"确定"。 
   创建完成后，微服务会显示在微服务列表。
   
   
 
#### 查看微服务列表
显示当前ServiceComb引擎的所有微服务，支持使用微服务名称搜索目标服务，也可以选择环境、应用筛选微服务。
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 单击"微服务列表"，查看该引擎下当前账号下的所有微服务。
   
   支持使用微服务名称搜索目标服务，也可以选择环境、应用筛选服务。
   
   
 
#### 查看微服务详情
在微服务详情页可以分别查看实例列表、被调用服务、调用服务、动态配置、服务契约等信息，也可对微服务级配置进行[动态配置]和[灰度发布]。
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 单击"微服务列表"下待查看的微服务名称，进入微服务详情页查看实例列表、被调用服务、调用服务、动态配置、灰度发布和服务契约等信息。
 
#### 清理无实例版本
清理实例数为0的微服务版本，即删除没有运行中实例的服务版本，主要用于优化资源利用、提升治理效率和保障系统稳定性。
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 选择"微服务列表 \> 清理无实例版本"，勾选待清理的无实例微服务版本。
   
   支持使用微服务名称搜索目标服务，也可以选择环境、应用筛选微服务。
   
   
7. 单击"确定"。
 
 #### 动态配置
可以创建微服务级配置，也可对微服务级配置进行查看历史版本、编辑、禁用和删除操作。
**配置项使用明文存储，请勿附带敏感数据。**
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录 "。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 单击"微服务列表"，单击微服务名称。
7. 单击"动态配置"，进入动态配置页签。在"动态配置"页签可进行如下操作： 
   
   | 操作     | 步骤                                                                                                                                                                                                                                                                                                                                                                 |
   |:---|:---|
   | 新建配置   | 操作步骤可参考[创建2.x版本ServiceComb引擎配置](https://support.huaweicloud.com/usermanual-cse/cse_03_0170.html)，其中，"配置范围"已选择"微服务级配置"，"微服务"为当前微服务。                                                                                                                                                                                                                                 |
   | 查看历史版本 | 单击目标配置项对应"操作"列的"查看历史版本"，可查看历史版本配置。                                                                                                                                                                                                                                                                                                                                 |
   | 禁用配置项  | 1. 在目标配置项对应"操作"列选择"更多 \> 禁用"。  2. 在弹出确认框，单击"确认"禁用该配置。                                                                                                                                                              |
   | 修改配置项  | 1. 单击目标配置项对应"操作"列的"编辑"。  2. 在配置详情页面单击"编辑"。  3. 在"配置内容"区域输入新的配置信息。  4. 单击"保存"，保存配置修改。   |
   | 删除配置项  | 1. 在目标配置项对应"操作"列选择"更多 \> 删除"。  2. 单击"确定"，删除配置。                                                                                                                                                                  |
      
   
   
 
 #### 灰度发布
为保障新特性能平稳上线，可以通过灰度发布功能选择少部分用户试用，待新特性成熟以后，再切换版本让所有用户使用。
- **基于ServiceComb Java Chassis框架开发的微服务需要在POM中添加依赖darklaunch或handler-router，并且在配置文件microservice.yaml中增加servicecomb.router.type=router。**

- **基于Spring Cloud Huawei框架开发的微服务需要在POM中增加依赖spring-cloud-starter-huawei-router。**
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。

4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的VDC用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 在"微服务列表"页签，单击微服务名称，进入详情页面，单击"灰度发布"。
7. 单击"添加发布规则"，弹出"创建新规则"弹框。 
   - 按照权重方式添加灰度规则。
     1. "发布规则"选择"权重"，显示权重规则设置页签。
     
     2. 对权重规则进行设置，权重规则配置项如下表所示。
        
        | 配置项  | 说明                                                                                                                                                                                                 |
        |:---|:---|
        | 规则名称 | 自定义规则名称。以英文字母开头，支持数字、字母和特殊字符（.@_-）,长度为3 \~ 24个字符。                                                                                                                                                  |
        | 作用域  | - 选择规则作用的版本。  - 勾选"是否添加自定义版本"，根据界面提示添加新版本。   |
        | 规则配置 | 配置所选版本的引流权重，流量会按照配置的百分比分配给所选择的服务版本。                                                                                                                                                                |
           
        
     
     3. 单击"确定"，完成权重规则配置和灰度发布。
      
   
   - 按照自定义方式添加灰度规则。
     1. "发布规则"选择"自定义"，显示自定义规则设置页签。
     
     2. 对自定义规则进行设置，自定义规则配置项如下表所示。
        
        | 配置项  | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
        |:---|:---|
        | 规则名称 | 自定义规则名称。以英文字母开头，支持数字、字母和特殊字符（.@_-）,长度为3 \~ 24个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
        | 作用域  | - 选择规则作用的版本。  - 勾选"是否添加自定义版本"，根据界面提示添加新版本。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
        | 规则配置 | 设置匹配规则的参数，使用darklaunch实现灰度能力时，设置的是policyCondition内容， 使用handler-router实现灰度能力时，设置的是Headers中参数。 Spring Cloud Huawei框架开发的微服务设置的Headers参数请参见[设置Header参数](https://github.com/huaweicloud/spring-cloud-huawei/wiki/router) 。 - 参数名 根据契约的参数名或Header自定义的key作为参数名设置。   - 规则 通过选择匹配符和契约的Key或Header的Key对应的Value确定符合该规则的请求将被分配到微服务版本中。 说明： - 当匹配符选\~时，可使用\*或者?字符的模糊匹配规则自定义规则值，\*表示任意长度字符，?表示一个字符。比如，字段Name的规则值配置为\*1000时，表示Name后4位为1000的都能匹配上。    - 当匹配符没有选\~时，\*或者?字符只是普通字符，没有模糊匹配的作用。       |
           
        
     
     3. 单击"确定"，完成自定义规则配置和灰度发布。
      
   
   
   
   
下发灰度发布规则样例如下：
- ServiceComb Java Chassis框架开发的微服务，在ServiceComb引擎页面下发规则是基于darklaunch依赖下发的，通过配置自定义方式添加灰度规则。 ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002389170453.png)
  其中，在规则配置中，参数名Key必须是契约里面存在的。有可能服务端接口写的是String paramA，加了注解实际生成的是paramB，所以这里应该是写paramB。
  ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002355810354.png)
  通过选择匹配符和契约的Key对应的Value确定符合该规则的请求将被分配到微服务版本中。
  ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002389290545.png)
  成功下发的规则内容如下：配置项为cse.darklaunch.policy.${serviceName}。
  ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002355650474.png)
  
- ServiceComb Java Chassis框架开发的微服务，依赖handler-router下发的灰度规则需要手动在配置中心下发，配置项为：servicecomb.routeRule.${serviceName}，内容如下： ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002389170497.png)
  
- Spring Cloud Huawei框架开发的微服务，ServiceComb引擎页面下发灰度规则如下： ![](https://support.huaweicloud.com/usermanual-cse/zh-cn_image_0000002355810398.png)
  
 
#### 删除微服务
根据实际业务需求，删除不再使用的微服务。
- 微服务删除后，可通过[恢复备份数据](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0026.html#cse_usermanual_0026__section1079710020366)进行恢复。
- 如果删除的服务有实例，需要先将对应实例删除，否则服务会再次注册。
1. 登录[微服务引擎控制台](https://console.huaweicloud.com/cse2/)。
2. 在左侧导航栏选择"ServiceComb引擎专享版"。

3. 单击待操作的引擎。
4. 单击"微服务目录"。 
   - 未开启安全认证的引擎，请执行[6]。
   
   - 开启安全认证的引擎，当登录控制台的用户为[导入IAM账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section176291011154918)中导入的用户，请执行[6]，其他用户请执行[5]。
   
   
   
   
5. 在弹出的"安全认证"对话框输入账号名及其密码，单击"确定"。
   
   ![](https://support.huaweicloud.com/usermanual-cse/public_sys-resources/note_3.0-zh-cn.png)
   - 首次连接ServiceComb引擎，请输入root账号名及[创建ServiceComb引擎](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0005.html)时输入的密码。
   
   - 创建账号请参考[新增账号](https://support.huaweicloud.com/usermanual-cse/cse_usermanual_0024.html#cse_usermanual_0024__section1417318590327)。
    
   
   
6. 单击"微服务列表"，进入微服务列表：
   
   - 批量删除微服务：勾选待删除的微服务，单击微服务列表上面的"删除"。
   
   - 删除单个微服务：单击待删除微服务所在行"操作"列的"删除"。
   
   
   
   
7. 在输入框输入"DELETE"确认删除，单击"确定"。
 
