美文网首页
配置中心设计

配置中心设计

作者: 深圳都这么冷 | 来源:发表于2022-09-13 15:08 被阅读0次

基础模型

  • 项目 project
  • 应用 application
  • 环境 environment
    对应的机器或集群(k8s集群提供kubeconfig文件)

机器分组 ip+port

管理应用配置文件

[路径]+内容

制品

id,开发签名,测试签名

功能描述

1. 配置源管理

代码仓库的ykcfg文件夹存储配置信息,分子文件夹,每个子文件夹对应一个环境

└── yk_config
    ├── README.txt
    ├── neozhao+launch
    │   ├── config
    │   │   └── godemo.conf
    │   └── inventory.yaml
    ├── pre
    │   ├── config
    │   │   └── godemo.conf
    │   └── inventory.yaml
    ├── prod
    │   ├── config
    │   │   └── godemo.conf
    │   └── inventory.yaml
    ├── sync_conf.py
    └── test
        ├── config
        │   └── godemo.conf
        └── inventory.yaml

2. 更新策略

配置来源于同步git仓库,因为不同分支使用临时配置有不同,所以同步时只更新和添加不删除,删除需要在UI上操作

3. 授权问题

  • 粒度
    • 项目:应用,应用作为最小授权单位
      意思是:用户只要能看到应用就能看到应用下的所有环境配置信息
      用户不能编辑,只要能看就能删除(反正删除后代码仓库可以恢复,即使删除了代码,也可以从历史版本中恢复)
    • 项目下的应用
      要么单个指定 projA:appB
      要么全部授权 projA:*
  • 哪些地方需要授权
    • 用户可以查看和删除配置
    • jenkins能读写配置中心

使用

更新时,提交触发jenkins,jenkins将ykcfg的所有文件同步到配置中心

开发提测时,jenkins触发给制品记下开发签名
通过测试时,jenkins触发给制品记下测试签名
部署环境时,jenkins读取配置文件和目标环境,将配置文件推送到目标环境,然后再执行剩下的部署操作
部署环境时,如果是CD,需要签名验证,然后才是部署

配置信息管理:

需要推送到目标环境(机器/集群)的配置文件,路径+文件内容
项目-环境名称-环境对应的资源(host/k8s集群)-配置信息-制品签名信息
部署时,将环境相关的配置信息全部推送的到目标环境
如果是k8s就是configure map和secrets卷,直接apply -f
如果是传统方式,就是将文件写到指定的服务器目录(与具体ip相关)

相关文章

  • 配置中心设计

    基础模型 项目 project 应用 application 环境 environment对应的机器或集群(k8s...

  • 05知识点

    配置中心设计与实践 配置中心定义 服务集群的统一配置存储和管理系统,配置中心的特点: 独立于程序的只读变量 伴随应...

  • Apollo配置中心设计

    一、总体设计 1.1 基础模型 如下即是Apollo的基础模型: 用户在配置中心对配置进行修改并发布 配置中心通知...

  • 配置中心设计思考

    配置 配置(Configuration) 这个概念对于广大程序猿来说应该都不陌生,例如线程池大小、数据库连接、系统...

  • 合格的配置中心应有的素养No.76

    最近在看配置中心的一些设计,好像基本都是五花八门,主要看的是还是携程的 Apollo 这个开源的配置中心项目。一直...

  • Apollo服务端设计原理剖析

    本文摘自于《Spring Cloud微服务 入门 实战与进阶》一书。 1 配置发布后的实时推送设计 配置中心最重要...

  • apollo+nacos 总结

    配置中心 配置中心简介 说到配置中心, 大家可能都不陌生。我们携程现在用的qconfig, 就是一个典型的配置中心...

  • 2018年个人工作总结

    文/晓维 完成了保险大平台产品中心、用户中心、保单服务中心、配置中心从0-1的产品设计工作。从保险业务的学习到对保...

  • 如何优雅的使用配置中心

    配置中心我们设计的初衷就是尽量简单,所以直接使用了springcloud提供的spring-cloud-confi...

  • Nacos注册中心之概要设计

    前言 在之前的文章中分析了Nacos配置中心,配置中心的核心是配置的创建、读取、推送。 注册中心的核心比配置中心多...

网友评论

      本文标题:配置中心设计

      本文链接:https://www.haomeiwen.com/subject/izivnrtx.html