<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Apollo配置中心管理后臺(tái)的詳解

          共 3694字,需瀏覽 8分鐘

           ·

          2020-08-11 00:40

          閱讀文本大概需要3分鐘。

          ? ? ? ?上篇【Apollo配置中心源碼編譯及搭建】搭建了Apollo。這篇來看看怎么使用Apollo管理后臺(tái)。

          ? ? ? ? ? Apollo(阿波羅)是攜程框架部門研發(fā)的開源配置管理中心,能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r(shí)推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性。Apollo架構(gòu)模塊圖:

          ?來源:網(wǎng)絡(luò)

          ?各模塊職責(zé)

          • Config Service提供配置的讀取、推送等功能,服務(wù)對象是Apollo客戶端

          • Admin Service提供配置的修改、發(fā)布等功能,服務(wù)對象是Apollo Portal(管理界面)

          • Eureka提供服務(wù)注冊和發(fā)現(xiàn),目前Eureka在部署時(shí)和Config Service是在一個(gè)JVM進(jìn)程中的

          • Config Service和Admin Service都是多實(shí)例、無狀態(tài)部署,所以需要將自己注冊到Eureka中并保持心跳

          • 在Eureka之上架了一層Meta Server用于封裝Eureka的服務(wù)發(fā)現(xiàn)接口

          • Client通過域名訪問Meta Server獲取Config Service服務(wù)列表(IP+Port),而后直接通過IP+Port訪問服務(wù),同時(shí)在Client側(cè)會(huì)做load balance、錯(cuò)誤重試

          • Portal通過域名訪問Meta Server獲取Admin Service服務(wù)列表(IP+Port),而后直接通過IP+Port訪問服務(wù),同時(shí)在Portal側(cè)會(huì)做load balance、錯(cuò)誤重試

          為了簡化部署實(shí)際上會(huì)把Config Service、Eureka和Meta Server三個(gè)邏輯角色部署在同一個(gè)JVM進(jìn)程中

          分步執(zhí)行流程

          • Apollo啟動(dòng)后,Config?Service和Admin Service會(huì)自動(dòng)注冊到Eureka服務(wù)注冊中心,并定期發(fā)送保活心跳。

          • Apollo Client和Portal管理端通過配置的Meta Server的域名地址經(jīng)由Software Load Balancer(軟件負(fù)載均衡器)進(jìn)行負(fù)載均衡后分配到某一個(gè)Meta Server

          • Meta Server從Eureka獲取Config Service和Admin Service的服務(wù)信息,相當(dāng)于是一個(gè)Eureka Client

          • Meta Server獲取Config Service和Admin Service(IP+Port)失敗后會(huì)進(jìn)行重試

          • 獲取到正確的Config Service和Admin Service的服務(wù)信息后,Apollo Client通過Config Service為應(yīng)用提供配置獲取、實(shí)時(shí)更新等功能;Apollo Portal管理端通過Admin Service提供配置新增、修改、發(fā)布等功能

          核心概念

          • application (應(yīng)用):就是實(shí)際使用配置的應(yīng)用,Apollo客戶端在運(yùn)行時(shí)需要知道當(dāng)前應(yīng)用是誰,從而可以去獲取對應(yīng)的配置
            關(guān)鍵字:appId

          • environment (環(huán)境):配置對應(yīng)的環(huán)境,Apollo客戶端在運(yùn)行時(shí)需要知道當(dāng)前應(yīng)用處于哪個(gè)環(huán)境,從而可以去獲取應(yīng)用的配置
            關(guān)鍵字:env

          • cluster (集群):一個(gè)應(yīng)用下不同實(shí)例的分組,比如典型的可以按照數(shù)據(jù)中心分,把上海機(jī)房的應(yīng)用實(shí)例分為一個(gè)集群,把北京機(jī)房的應(yīng)用實(shí)例分為另一個(gè)集群。
            關(guān)鍵字:cluster

          • namespace (命名空間): 一個(gè)應(yīng)用下不同配置的分組,可以簡單地把namespace類比為文件,不同類型的配置存放在不同的文件中,如數(shù)據(jù)庫配置文件,RPC配置文件,應(yīng)用自身的配置文件等
            關(guān)鍵字:namespaces

          ?0x01:部門管理

          Apollo?默認(rèn)部門提供兩個(gè),如需要增加部門,可在系統(tǒng)參數(shù)中修改

          添加部門


          0x02:用戶管理

          添加用戶

          0x03:創(chuàng)建項(xiàng)目(應(yīng)用)

          創(chuàng)建項(xiàng)目

          創(chuàng)建完成后

          0x04:授權(quán)管理

          ?賦予用戶huangjj管理payservice服務(wù)的權(quán)限


          這樣huangjj用戶登錄就可以看到payservice應(yīng)用了。


          0x05:刪除項(xiàng)目

          刪除應(yīng)用

          集群和Namespace刪除同理


          0x06:創(chuàng)建token

          輸入相關(guān)參數(shù),點(diǎn)擊創(chuàng)建就

          Namespace授權(quán)


          0x07:添加配置和發(fā)布配置

          添加

          發(fā)布

          0x08:創(chuàng)建Namespace

          創(chuàng)建Namespace

          Namespace授權(quán)

          0x08:獲取集群下所有Namespace信息接口

          curl?-H?'Authorization:748aba21fa6717c5ac6210e82d32f05d9a7c61d6'??\
          ????????-H?'Content-Type:application/json;charset=UTF-8'??\
          ????????http://127.0.0.1:8070/openapi/v1/envs/dev/apps/payservice/clusters/default/namespaces/application

          返回?cái)?shù)據(jù):

          {
          ????"appId":?"payservice",
          ????"clusterName":?"default",
          ????"namespaceName":?"application",
          ????"comment":?"default?app?namespace",
          ????"format":?"properties",
          ????"isPublic":?false,
          ????"items":?[
          ????????{
          ????????????"key":?"rule.count",
          ????????????"value":?"100",
          ????????????"comment":?"",
          ????????????"dataChangeCreatedBy":?"apollo",
          ????????????"dataChangeLastModifiedBy":?"apollo",
          ????????????"dataChangeCreatedTime":?"2020-08-08T09:37:13.000+0800",
          ????????????"dataChangeLastModifiedTime":?"2020-08-08T09:37:13.000+0800"
          ????????},
          ????????{
          ????????????"key":?"port",
          ????????????"value":?"9009",
          ????????????"comment":?"",
          ????????????"dataChangeCreatedBy":?"apollo",
          ????????????"dataChangeLastModifiedBy":?"apollo",
          ????????????"dataChangeCreatedTime":?"2020-08-08T09:37:13.000+0800",
          ????????????"dataChangeLastModifiedTime":?"2020-08-08T09:37:13.000+0800"
          ????????}
          ????],
          ????"dataChangeCreatedBy":?"apollo",
          ????"dataChangeLastModifiedBy":?"apollo",
          ????"dataChangeCreatedTime":?"2020-08-08T09:18:59.000+0800",
          ????"dataChangeLastModifiedTime":?"2020-08-08T09:18:59.000+0800"
          }

          結(jié)構(gòu)url的參數(shù)規(guī)則說明:

          env所管理的配置環(huán)境
          appId所管理的配置AppId
          clusterName所管理的配置集群名, 一般情況下傳入 default 即可。如果是特殊集群,傳入相應(yīng)集群的名稱即可
          namespaceName所管理的Namespace的名稱,如果是非properties格式,需要加上后綴名,如sample.yml


          詳細(xì)參考:https://github.com/ctripcorp/apollo/wiki/Apollo開放平臺(tái)

          另外也可以通過JavaAPI的方式獲取配置

          詳細(xì)參考:https://github.com/ctripcorp/apollo/wiki/Java客戶端使用指南


          參考:https://www.cnblogs.com/dalianpai/p/12206079.html




          往期精彩



          01?Sentinel如何進(jìn)行流量監(jiān)控

          02?Nacos源碼編譯

          03?基于Apache Curator框架的ZooKeeper使用詳解

          04?spring boot項(xiàng)目整合xxl-job

          05?互聯(lián)網(wǎng)支付系統(tǒng)整體架構(gòu)詳解

          關(guān)注我

          每天進(jìn)步一點(diǎn)點(diǎn)

          喜歡!在看?
          瀏覽 96
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美大码一区二区免费看 | 熟妇人妻中文AV无码 | 第一福利在线 | 六月丁香激情 | 日日夜夜Av射 |