zoukankan      html  css  js  c++  java
  • Ambari Server 配置多版本功能实现分析

    配置多版本 表关系图:

    serviceconfig:服务配置表,version 最大的那条记录为 当前生效的配置

    clusterconfig:配置文件表

    serviceconfigmaping:服务和配置文件的对应关系表

    举一个例子:

    serviceconfig 表:

     serviceconfigmaping 表:

     clusterconfig 表:

    假如有一个服务叫:TestService,它有两个配置文件:type1、type2。

    1、首次安装服务之后:

    serviceconfig 增加一行记录:service_config_id=53,version=1(version 最大的配置为当前生效的配置:service_config_id=53)

    clusterconfig 增加两行记录,一个配置文件一行记录:config_id=54 代表配置文件 type1;config_id=55 代表配置文件 type2

    serviceconfigmaping 增加两行记录:service_config_id=53 对应两个 config_id,54和55

    2、这时候修改一下 type1 配置文件:

    serviceconfig 增加一行记录:service_config_id=54,version=2(version 最大的配置为当前生效的配置:service_config_id=54)

    clusterconfig 增加一行记录,代表刚才修改的 type1 配置:config_id=56

    serviceconfigmaping 增加两行记录:service_config_id=54 对应两个 config_id,56和55(服务和配置的对应关系已经更新)

    3、这时候又想切换 version=1 为当前生效的配置:

    serviceconfig 增加一行记录:service_config_id=55,version=3(version 最大的配置为当前生效的配置:service_config_id=55)

    clusterconfig 表不变

    serviceconfigmaping 增加两行记录:service_config_id=55 对应两个 config_id,54和55(服务和配置的对应关系已经更新)

  • 相关阅读:
    人生转折点:弃文从理
    人生第一站:大三暑假实习僧
    监听器启动顺序和java常见注解
    java常识和好玩的注释
    182. Duplicate Emails (Easy)
    181. Employees Earning More Than Their Managers (Easy)
    180. Consecutive Numbers (Medium)
    178. Rank Scores (Medium)
    177. Nth Highest Salary (Medium)
    176. Second Highest Salary(Easy)
  • 原文地址:https://www.cnblogs.com/basenet855x/p/6824259.html
Copyright © 2011-2022 走看看