




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1.倉1J建 config service 月艮務引入Maven包:<dependency><groupld>org.springframework.cloud</groupld><artifactld>spring-cloud-config-server</artifactld></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-start
2、er-bus-amqp</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>perties#刷新時,關閉安全驗證management.security.enabled=false#Rabbitmqspring.rabbitmq.host=10.
3、10.8.122spring.rabbitmq.port=5672spring.rabbitmq.username=hjyspring.rabbitmq.password=hjy application.ymlserver:port: 7001spring:application:name: config-servercloud:config:enabled: trueserver:svn:uri: 39/svn/username: gongzhongpassword: gongzhongsearchPaths: springcloud#git:# uri: de
4、fault-label: configprofiles:active: subversion至此,config service服務搭建完成。2.給SVN服務器增加hook登錄39服務器,進入 svn的倉庫目錄下的hooks目錄:/usr/svnrepos/hnapay2/hooks從 post-commit.tmpl拷貝份 post-commit 文件:cp post-commit.tmpl post-commit修改post-commit 文件內容為:#!/bin/shcurl -X POST 52:7001/bus/refresh其中:10.
5、10.8.252:7001 為 config-server 的請求 IP 及端口修改post-commit文件為可執行文件:chmod +x post-commit到此就實現了配置中心的配置修改后,其他所有服務均自動重新獲取配置。注意:只有引入了 spring-cloud-starter-bus-amqp模塊的服務才會重新獲取配置擴展:為指定項目進行刷新原理:根據SVN的hooks獲取到被update 的配置文件目錄,再通過/bus/refresh?destination=customers:*旨令進行刷新要求:SVN的目錄按serviceId 命名,當然也可以在 svn的hooks腳本中進行
6、目錄與 server 對應。如下圖是我測試時的一個配置目錄:vspringcloud> config> gateway> gateway-zuul>tmt-cms其中:gateway 與 gateway 服務同名,gateway-zuul 與 gateway-zuul服務同名修改hooks腳本為以下內容:REPOS="$1"REV="$2"# 通過look獲取發生變更的文件目錄SVNLOOK=/usr/bin/svnlook# 發生變更的文件目錄集合CHANGEDDIRS=$($SVNLOOK dirs-changed $REPO
7、S)# 發生變更的文件目錄集合的第一條MASTERDIR=$(echo "$CHANGEDDIRS" | head -1)# 循環while "$CHANGEDDIRS" != "" ;do# 獲取最后一個目錄名稱,即服務名稱PROJECT=$(echo $MASTERDIR | awk -F / 'print $(NF-1)')echo $PROJECT >> /usr/svnrepos/hnapay2/hooks/logs # 發送刷新請求給 config server# 將$丫門目錄名稱與服務名稱對應
8、if "$PROJECT" = "gateway" ; thenPROJECT="exp-gateway" ficurl -X POST 52:7001/bus/refresh?destination=$PROJECT:*# 刪除已經發送請求的CHANGEDDIRS=$(echo "$CHANGEDDIRS" | grep -v ""MASTERDIR")# 獲取最新的發生變更的文件目錄MASTERDIR=$(echo "$CHANGEDDIRS
9、" | head -1) done優化版本:REPOS="$1"REV="$2"SVNLOOK=/usr/bin/svnlookCHANGEDDIRS=$($SVNLOOK dirs-changed $REPOS)echo $CHANGEDDIRS >> /usr/svnrepos/hnapay2/hooks/logsMASTERDIR=$(echo "$CHANGEDDIRS" | head -1)#i=0while "$CHANGEDDIRS" != "" ;doech
10、o $(echo $MASTERDIR | awk -F / 'print $2') >>/usr/svnrepos/hnapay2/hooks/logs#獲取行的最后第二列,$NF為最后一列#PROJECT=$(echo $MASTERDIR | awk -F / 'print $(NF-1)')#獲取行的第二列PROJECT=$(echo $MASTERDIR | awk-F / 'print $2')#echo $PROJECT >> /usr/svnrepos/hnapay2/hooks/logs#將SVN目錄與服
11、務名稱對應if "$PROJECT" = "gateway" ; thenPROJECT="exp-gateway"fi#將PROJECT放入數組#arr$i=$PROJECT#i='expr $i + 1'#連接超時時間2s,數據傳輸超時時間 5scurl -connect-timeout 2 -m 5 -X POST52:7001/bus/refresh?destination=$PROJECT:* >>/usr/svnrepos/hnapay2/hooks/logs 2&
12、gt;&1if "$?" != "0" ; thenecho "got error to refresh $PROJECT" >> /usr/svnrepos/hnapay2/hooks/logs fiCHANGEDDIRS=$(echo "$CHANGEDDIRS" | grep -v ""MASTERDIR")MASTERDIR=$(echo "$CHANGEDDIRS" | head -1)done#echo "$arr"
13、; >> /usr/svnrepos/hnapay2/hooks/logs#curl -X POST http:52:7001/bus/refresh?destination=$PROJECT:*echo "" >> /usr/svnrepos/hnapay2/hooks/logsecho"=">> /usr/svnrepos/hnapay2/hooks/logsecho "" >> /usr/svnrepos/hnapay2/hooks/logsspring clou
14、d config 目錄匹酉己spring cloud config 的目錄匹配規則如下:/application/profile/label/application-profile.yml/label/application-profile.yml/perties/label/perties在con巾g server端的配置文件中有個 searchPaths 的屬性,其意思就是定義config server 的掃描根目錄,還有一個是 default-label , 是定義 configserver 的默
15、認label目錄:spring zapplication:EUTHnauDe : $ applicaticn . namecloud 8 n門寸: enabled.: truesvn:uci! $conf.svn »urius«rnaj»: $ (conf . svn立口3看rni)m總)password: 5 (conf. svnpassword)searchPaths : S 4 conf«vn«searchFathja)#gits* jjJj imj2a;,JLLLuh.上gu£口,_七/仃:,£_:j_l二l上口二口工上工二_:工_二二上二口 _dofault-lab®1: config申 prcvfiles;activ*: subveision如果想客戶端獲取指定目錄的配置,被指定的目錄就得與config server 的default-label目錄是同級目錄。ap.piupcr uvb 0 口 叩印131.15口
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河南省駐馬店市部分學校2025屆高三下冊2月質量檢測數學試卷附解析
- 廣東省佛山市順德區2024-2025學年高一下冊4月月考數學試卷附解析
- 東北三省部分高中聯盟2025屆高三第三次聯合調研(4月)數學試卷附解析
- 2025年中考語文(長沙用)課件:復習任務群11 非文學作品閱讀
- 專題三 聯邦制、兩黨制、三權分立:以美國為例
- 法人修正章程范本
- 2025年駕校考試科目一試題
- 光的反射復習教學設計
- 傳統養老模式與中國式養老金融的轉型需求
- 2025至2030年中國環保內外墻乳膠漆行業投資前景及策略咨詢報告
- 中國石化加油站視覺形象(vi)標準手冊
- 化工原理第十三章-萃取課件
- 美容院衛生管理制度(常用版)
- 機場行李輸送系統設計論文-本科論文
- 白帶常規報告單模板
- 2022年全國工會財務知識大賽參考題庫精簡600題(含各題型)
- 新教材教科版五年級下冊科學全冊課時練(課后作業設計)(含答案)
- 《國學典籍英譯》課程教學大綱
- 校外畢業設計(實習)申請表模板.docx
- 鋼管懸挑腳手架搭設方案
- 《廚余垃圾處理廠運行監管標準》(征求意見稿)
評論
0/150
提交評論