Linux部署Apollo多環(huán)境配置

1、前提:本文只支持默認(rèn)的開發(fā)環(huán)境(DEV)、測(cè)試環(huán)境(FAT)芒篷、預(yù)發(fā)布環(huán)境(UAT)、生產(chǎn)環(huán)境(PRO)四種環(huán)境搭建采缚,可以根據(jù)項(xiàng)目的實(shí)際使用情況部署所需要對(duì)應(yīng)的環(huán)境针炉。本文使用的是apollo1.9.2版本的jar直接部署。如果上述情況不滿足項(xiàng)目需求扳抽,則可以根據(jù)實(shí)際項(xiàng)目需求修改apollo源碼篡帕,然后進(jìn)行定制化代碼的打包部署

Apollo源碼地址:https://github.com/apolloconfig/apollo

2、準(zhǔn)備工作:
1) 對(duì)應(yīng)文件壓縮包及SQL文件如下:

百度網(wǎng)盤自取
鏈接:https://pan.baidu.com/s/12qsO357DexxoH00o05LrDQ
提取碼:itcc

2) Apollo對(duì)應(yīng)結(jié)構(gòu)如下:

四個(gè)核心模塊及其主要功能:

模塊 主要功能
ConfigService 提供配置獲取接口贸呢、提供配置推送接口镰烧、服務(wù)于Apollo客戶端
AdminService 提供配置管理接口、提供配置修改發(fā)布接口楞陷、服務(wù)于管理界面Portal
Client 為應(yīng)用獲取配置怔鳖,支持實(shí)時(shí)更新; 通過MetaServer獲取ConfigService的服務(wù)列表固蛾; 使用客戶端軟負(fù)載SLB方式調(diào)用ConfigService
Portal 配置管理界面结执、通過MetaServer獲取AdminService的服務(wù)列表、使用客戶端軟負(fù)載SLB方式調(diào)用AdminService

三個(gè)輔助服務(wù)發(fā)現(xiàn)模塊

模塊 主要功能
Eureka 用于服務(wù)發(fā)現(xiàn)和注冊(cè)Config/AdminService注冊(cè)實(shí)例并定期報(bào)心跳和ConfigService在一起部署
MetaServer Portal通過域名訪問MetaServer獲取AdminService的地址列表艾凯,Client通過域名訪問MetaServer獲取ConfigService的地址列表献幔,相當(dāng)于一個(gè)Eureka Proxy邏輯角色,和ConfigService住在一起部署
NginxLB 和域名系統(tǒng)配合趾诗,協(xié)助Portal訪問MetaServer獲取AdminService地址列表蜡感;和域名系統(tǒng)配合,協(xié)助Client訪問MetaServer獲取ConfigService地址列表;和域名系統(tǒng)配合郑兴,協(xié)助用戶訪問Portal進(jìn)行配置管理
3犀斋、部署工作:

通過上面的結(jié)構(gòu)可以了解到,部署apollo服務(wù)主要需要部署portal情连、adminservice闪水、configservice三個(gè)服務(wù)。

portal是配置管理界面蒙具,只需要部署一個(gè)服務(wù)即可,同理數(shù)據(jù)庫也只需要一個(gè)朽肥。
Adminservice和configservice是對(duì)應(yīng)每個(gè)環(huán)境的禁筏,所以部署幾個(gè)環(huán)境,就需要部署幾個(gè)對(duì)應(yīng)的Adminservice和configservice服務(wù)衡招,同樣每個(gè)環(huán)境都有對(duì)應(yīng)的數(shù)據(jù)庫篱昔。

我這里使用的是一臺(tái)服務(wù)器部署四個(gè)環(huán)境。

3.1 第一步:創(chuàng)建對(duì)應(yīng)的數(shù)據(jù)庫始腾,一個(gè)portalDB和四個(gè)apolloconfigdb州刽,對(duì)應(yīng)的sql在上面。(四個(gè)apolloconfigdb對(duì)應(yīng)的表都是一樣的浪箭,同樣的sql文件執(zhí)行到四個(gè)數(shù)據(jù)庫即可)每個(gè)環(huán)境對(duì)應(yīng)的數(shù)據(jù)庫如下圖穗椅,一目了然。

image.png

3.2 第二步:將zip包上傳到服務(wù)器目錄奶栖,解壓匹表,修改配置(每個(gè)環(huán)境存放一個(gè)目錄,便于管理)

image.png

3.2.1 修改portal文件宣鄙,啟動(dòng)對(duì)應(yīng)服務(wù):
解壓后文件如下圖:

image.png

① 修改apollo-portal.conf文件袍镀,修改對(duì)應(yīng)服務(wù)啟動(dòng)日志文件打印位置:
(根據(jù)實(shí)際情況自行調(diào)整)

image.png

②修改config目錄下apollo-env.properties文件
(該文件修改的是各個(gè)環(huán)境的訪問地址,由于我的幾個(gè)環(huán)境部署在同一臺(tái)服務(wù)器上面了冻晤,所以通過修改使用端口進(jìn)行啟動(dòng)多個(gè)服務(wù))

image.png

這是配置的多環(huán)境對(duì)應(yīng)的端口就是啟動(dòng)每個(gè)環(huán)境configservice所使用的端口

③ 修改config目錄下application-github.properties文件
(該文件修改的是服務(wù)對(duì)應(yīng)的數(shù)據(jù)庫配置)

image.png

④ 修改scripts目錄下的startup.sh
(該文件修改的是服務(wù)啟動(dòng)使用的端口苇羡,此端口也是訪問配置頁面使用的端口,根據(jù)實(shí)際情況調(diào)整鼻弧,日志文件打印存放目錄)

image.png

⑤ 打開portal對(duì)應(yīng)ApolloPortalDB數(shù)據(jù)庫的ServerConfig對(duì)應(yīng)的表设江,添加對(duì)應(yīng)的環(huán)境,因?yàn)槲疫@里配置四個(gè)環(huán)境所以如下圖(可根據(jù)實(shí)際情況調(diào)整)

image.png

通過上述四部操作温数,就完成了portal的對(duì)應(yīng)配置修改绣硝,然后執(zhí)行scripts目錄下的startup.sh的啟動(dòng)腳本即可啟動(dòng)對(duì)應(yīng)的服務(wù),啟動(dòng)日志可以通過自定義配置的日志目錄下找到對(duì)應(yīng)的日志文件查看撑刺,當(dāng)然此時(shí)雖然可以正常啟動(dòng)鹉胖,但是還是會(huì)報(bào)錯(cuò),因?yàn)閷?duì)應(yīng)的configservice服務(wù)還沒有啟動(dòng),肯定是訪問不到的甫菠,無需擔(dān)心挠铲。

3.2.2 修改dev目錄下對(duì)應(yīng)的adminservice和configservice的服務(wù)配置
在dev目錄下創(chuàng)建adminservice和configservice兩個(gè)目錄
然后將對(duì)應(yīng)的adminservice和configservice的zip包上傳到對(duì)應(yīng)的目錄下,解壓

① Adminservice目錄下解壓之后文件如下:

image.png

② 修改apollo-adminservice.conf文件中對(duì)應(yīng)日志打印目錄

image.png

③ 修改config目錄下application-github.properties文件中對(duì)應(yīng)的數(shù)據(jù)源配置

image.png

④ 修改scripts目錄下startup.sh文件中的使用端口及日志打印目錄

image.png

通過上述修改寂诱,dev環(huán)境的adminservice服務(wù)就修改完成了

⑤ Configservice目錄下解壓后文件如下:

image.png

⑥ 所需修改的地方和上述234一樣拂苹,有一點(diǎn)需要注意4中的端口不能定義重復(fù),我這里configservice使用的是8080端口痰洒,全部修改完成之后瓢棒,對(duì)應(yīng)的服務(wù)的配置就全部完成了

⑦ 打開數(shù)據(jù)庫dev環(huán)境對(duì)應(yīng)的ApolloConfigDBDev數(shù)據(jù)庫,找到ServerConfig表丘喻,第一行數(shù)據(jù)是eureka的配置脯宿,注意value值一定要是configservice服務(wù)使用的端口。如下圖:

image.png

通過上述操作泉粉,將對(duì)應(yīng)的服務(wù)全部修改完成后连霉,啟動(dòng)各自scripts目錄下startup.sh腳本即可,啟動(dòng)成功后嗡靡,configservice中會(huì)自帶eureka服務(wù)跺撼,所以通過頁面訪問ip:8080/就可以訪問到eureka了

image.png

訪問ip:8070/就可以訪問apollo配置界面了

image.png

默認(rèn)初始用戶密碼:apollo/admin

通過上面的操作就完成了portal和dev環(huán)境的部署,其他的環(huán)境和dev同理讨彼,操作都一樣歉井。**需要注意的是每個(gè)環(huán)境的ApolloConfigDB數(shù)據(jù)庫 ServerConfig表,第一行數(shù)據(jù)是eureka的配置点骑,注意value值一定要是configservice服務(wù)使用的端口酣难,如果這里端口沒有更改,就會(huì)使用默認(rèn)將服務(wù)注冊(cè)到8080的eureka上面黑滴,就會(huì)出現(xiàn)環(huán)境錯(cuò)亂問題 **

我使用的端口如下:
Portal端口:8070
dev-configservice:8080
dev-adminservice:8090
fat-configservice:8081
fat-adminservice:8091
uat-configservice:8082
uat-adminservice:8092
pro-configservice:8085
pro-adminservice:8093

配置界面訪問:ip:8070
代碼中服務(wù)配置(四個(gè)環(huán)境):

apollo:
  meta: http://ip:8080/
  bootstrap:
    enabled: true
    namespaces: application 
env: dev
apollo:
  meta: http://ip:8081/
  bootstrap:
    enabled: true
    namespaces: application 
env: fat
apollo:
  meta: http://ip:8082/
  bootstrap:
    enabled: true
    namespaces: application 
env: uat
apollo:
  meta: http://ip:8085/
  bootstrap:
    enabled: true
    namespaces: application 
env: pro
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末憨募,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子袁辈,更是在濱河造成了極大的恐慌菜谣,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件晚缩,死亡現(xiàn)場(chǎng)離奇詭異尾膊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)荞彼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門冈敛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鸣皂,你說我怎么就攤上這事抓谴∧乎澹” “怎么了?”我有些...
    開封第一講書人閱讀 156,852評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵癌压,是天一觀的道長仰泻。 經(jīng)常有香客問我泣崩,道長兼蕊,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,408評(píng)論 1 283
  • 正文 為了忘掉前任试躏,我火速辦了婚禮帜消,結(jié)果婚禮上棠枉,老公的妹妹穿的比我還像新娘。我一直安慰自己泡挺,他們只是感情好术健,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,445評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著粘衬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪咳促。 梳的紋絲不亂的頭發(fā)上稚新,一...
    開封第一講書人閱讀 49,772評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音跪腹,去河邊找鬼褂删。 笑死,一個(gè)胖子當(dāng)著我的面吹牛冲茸,可吹牛的內(nèi)容都是我干的屯阀。 我是一名探鬼主播,決...
    沈念sama閱讀 38,921評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼轴术,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼难衰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起逗栽,我...
    開封第一講書人閱讀 37,688評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤盖袭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后彼宠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鳄虱,經(jīng)...
    沈念sama閱讀 44,130評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,467評(píng)論 2 325
  • 正文 我和宋清朗相戀三年凭峡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拙已。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,617評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡摧冀,死狀恐怖倍踪,靈堂內(nèi)的尸體忽然破棺而出系宫,到底是詐尸還是另有隱情,我是刑警寧澤惭适,帶...
    沈念sama閱讀 34,276評(píng)論 4 329
  • 正文 年R本政府宣布笙瑟,位于F島的核電站,受9級(jí)特大地震影響癞志,放射性物質(zhì)發(fā)生泄漏往枷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,882評(píng)論 3 312
  • 文/蒙蒙 一凄杯、第九天 我趴在偏房一處隱蔽的房頂上張望错洁。 院中可真熱鬧,春花似錦戒突、人聲如沸屯碴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽导而。三九已至,卻和暖如春隔崎,著一層夾襖步出監(jiān)牢的瞬間今艺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評(píng)論 1 265
  • 我被黑心中介騙來泰國打工爵卒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留虚缎,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,315評(píng)論 2 360
  • 正文 我出身青樓钓株,卻偏偏與公主長得像实牡,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子轴合,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,486評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容