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(服务和配置的对应关系已经更新)

  • 相关阅读:
    AMH4.2 Ftp账号路径修改设置
    过狗一句话
    破解tumblr背景音乐
    lnmp下安装ffmpeg和ffmpeg-php教程
    How To install FFMPEG, FLVTOOL2, MP4Box on CentOS server 2015 easy method
    自己的路删除
    弹出CPA
    JSON的相关知识
    JavaScript函数的相关知识
    JavaScript对象的相关知识
  • 原文地址:https://www.cnblogs.com/basenet855x/p/6824259.html
Copyright © 2011-2022 走看看