servicecomb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <willem.ji...@gmail.com>
Subject Re: [PROPOSAL] ServiceComb MetaConfig
Date Mon, 29 Apr 2019 04:24:55 GMT
FYI, the servcecomb-kie repo is created, please feel free to send the PRs.

Willem Jiang

Twitter: willemjiang
Weibo: 姜宁willem

On Fri, Apr 19, 2019 at 11:53 AM Xiaoliang Tian
<xiaoliang.tian@gmail.com> wrote:
>
> servicecomb-kie
>
> Willem Jiang <willem.jiang@gmail.com> 于2019年4月18日周四 下午2:29写道:
>
> > Hi,
> >
> > I just did a quick search on the name "rokie", it is used as an APP name[1]
> > Do we have any other backup name?
> >
> > [1]
> > https://play.google.com/store/apps/details?id=com.kraftwerk9.rokie&hl=en_US
> >
> > Willem Jiang
> >
> > Twitter: willemjiang
> > Weibo: 姜宁willem
> >
> > On Sun, Apr 7, 2019 at 7:41 PM Xiaoliang Tian <xiaoliang.tian@gmail.com>
> > wrote:
> > >
> > > I prefer rokie. "kie" has same pronouce with key and "ro" means rollable,
> > > although rollable is not the most attractive feature of this service, but
> > > this rokie  sounds like a name
> > >
> > > Willem Jiang <willem.jiang@gmail.com> 于2019年4月5日周五 下午10:59写道:
> > >
> > > > I think we could create a new repo for creating a prototype this
> > > > meta-data management project.
> > > > Now we just need to decide the name of the repo.
> > > >
> > > > Willem Jiang
> > > >
> > > > Twitter: willemjiang
> > > > Weibo: 姜宁willem
> > > >
> > > > On Fri, Mar 29, 2019 at 12:16 PM Xiaoliang Tian
> > > > <xiaoliang.tian@gmail.com> wrote:
> > > > >
> > > > > maybe the name confused,it is a service only for configurations,but
> > > > > the key contains metadata
> > > > > key1:  log_level(service=cart, version=1.0, app=mall)
> > > > > key2:  log_level(service=cart, version=1.0, app=mall, ip=x.x.x.x)
> > > > > that is 2 different keys
> > > > >
> > > > > you can consider apollo has fixed metadata and one fixed view to
math
> > > > their
> > > > > own scenario.
> > > > >
> > > > > but in apollo,  key can be very complicated, user can not easily
> > observe
> > > > > keys, a lot of metadata will be attacted to key name, just like ip
to
> > > > > "log_level"
> > > > >
> > > > > Willem Jiang <willem.jiang@gmail.com> 于2019年3月29日周五
上午11:36写道:
> > > > >
> > > > > > Hi Xiaoliang,
> > > > > >
> > > > > > Do you propose we start a new project to manage the micro services
> > meta
> > > > > > datas?
> > > > > > Currently we just have a solution to integrate with with Apollo
for
> > > > > > configuration management, but what's the difference between
the
> > > > > > service metadata and configuration?
> > > > > > I could help us to understand the proposal, if we can drop a
clear
> > line
> > > > > > for it.
> > > > > >
> > > > > >
> > > > > > Willem Jiang
> > > > > >
> > > > > > Twitter: willemjiang
> > > > > > Weibo: 姜宁willem
> > > > > >
> > > > > > On Fri, Mar 29, 2019 at 10:52 AM Xiaoliang Tian
> > > > > > <xiaoliang.tian@gmail.com> wrote:
> > > > > > >
> > > > > > > MetaConfig is  a  service for configuration management
in an
> > large
> > > > scaled
> > > > > > > distrbuted system.
> > > > > > >
> > > > > > > Currently we use ctrip appllo for config managment, but
it is
> > build
> > > > for a
> > > > > > > paticular scenario. it has fixed schema
> > > > application,environment,cluster
> > > > > > and
> > > > > > > namespace.  Each key belong to that schema.
> > > > > > >
> > > > > > > But it is not enough for operator to manage a complicated
> > > > infrasctructure
> > > > > > > or application cluster.
> > > > > > >
> > > > > > > So here is the proposal to build a brand new config management
> > > > service,
> > > > > > >
> > > > > > > *Features: *
> > > > > > > *key with rich metadata: *user can define metadata for
a key ,
> > that
> > > > > > > distinguish from key to another key.  a key will not be
stringed
> > by
> > > > fixed
> > > > > > > schema.  metadata is like "env=test, service=cart, version=1.0"
> > or
> > > > > > > "cluster=xxx"  or "env=test, service=cart, version=1.0,
> > ip=x.x.x.x"
> > > > > > > *validator: *value can be checked by user defined python
script,
> > so
> > > > in
> > > > > > > runtine if someone want to change this value, the script
will
> > check
> > > > if
> > > > > > this
> > > > > > > value is properate.
> > > > > > > *encryption webhook: *. value can by ecrypt by your custom
> > encryption
> > > > > > > service.
> > > > > > > *event producer:  *producer will send key changes event
to a
> > target
> > > > > > > service(kafka,rabbitmq, customed).
> > > > > > > *config view: *by setting metadata criteria, MetaConfig
will
> > > > aggregate a
> > > > > > > view to return all key values which match those metadata,
so that
> > > > > > operator
> > > > > > > can mange key in their own understading to a distributed
system
> > in
> > > > > > > seperated views.
> > > > > > > *config batch action: * with metadate, you can batch update,
> > delete
> > > > key
> > > > > > > values. for example: update all "service=cart version=1.0"
> > > > configuration
> > > > > > > log level to "DEBUG" or just update  "service=cart version=1.0,
> > > > > > ip=x.x.x.x"
> > > > > > >  .
> > > > > > > *rich value type: *not ony plain text any more, but support
to be
> > > > aware
> > > > > > of
> > > > > > > ini, json,yaml,xml and java properties
> > > > > > > *heterogenous configuration system: *able to manage
> > configuration in
> > > > k8s
> > > > > > > and consul or even more, you can update, delete, and use
config
> > view
> > > > for
> > > > > > > those systems, and you can integrate with your own config
system
> > to
> > > > > > > MetaConfig by following standardized API and model
> > > > > >
> > > >
> >

Mime
View raw message