docker+dubbo部署在多臺服務器上的坑

該事情還要從好幾天前說起.......

  • 在從只用dubbo開發(fā)并且部署在一臺服務器上
  • 到只用dubbo開發(fā)部署在兩臺服務器上
  • 最后到使用docker容器將dubbo應用部署在兩臺服務器上

一直出現的問題是No provider available for the service from the url zookeeper:// ...

關于如何配置docker容器這里不再說明品姓,只記錄一路遇到的坑以及個人解決辦法

  1. 首先兴猩,在Dockerfile文件中
// 這里不再說明
FROM java:8
EXPOSE 8860
EXPOSE 12220

// 這里是開始配置環(huán)境變量,非常重要
// DUBBO_IP_TO_REGISTRY 這個是docker容器所在宿主機的外網ip射赛,也就是docker所在服務器的ip
ENV DUBBO_IP_TO_REGISTRY 120.79.172.**
// DUBBO_PORT_TO_REGITRY 是dubbo服務的端口娃善,用于注冊到zookeeper中的
ENV DUBBO_PORT_TO_REGISTRY 12220
// 這個也是dubbo的服務端口论衍,和上面的一樣都填dubbo的端口,而不是zookeeper的端口
ENV DUBBO_PORT_TO_BIND 12220

// 這里不再闡述
ADD target/blog-article.jar /www/blog/blog-article.jar
ENTRYPOINT ["java","-jar", "-Dspring.profiles.active=prod","/www/blog/blog-article.jar"]

這是Dockerfile文件的配置

  1. 對于服務器的配置(我的兩臺服務器都需要這樣配置聚磺,如果只配置以上配置報錯no provider....)
// 查詢主機名坯台,這里可以自己修改主機名,我就是修改過的瘫寝,修改完重啟一下服務器
[root@ratil-server1 ~]# hostname
ratil-server1

// 在hosts文件末行添加下面的配置蜒蕾,就是將主機名映射到本機ip,該ip是該服務器的ip矢沿,和zookeeper什么的無關
[root@ratil-server1 ~]# vi /etc/hosts
120.79.172.** ratil-server1

// 最后ping你的主機名滥搭,如果ping通了且出現了服務器的ip酸纲,則是設置成功捣鲸,hosts修改一般都是立即生效
[root@ratil-server1 ~]# ping ratil-server1
PING ratil-server1 (120.79.172.**) 56(84) bytes of data.
64 bytes from ratil-server1 (120.79.172.**): icmp_seq=1 ttl=64 time=2.06 ms
64 bytes from ratil-server1 (120.79.172.**): icmp_seq=2 ttl=64 time=2.01 ms
64 bytes from ratil-server1 (120.79.172.**): icmp_seq=3 ttl=64 time=2.07 ms

最后通過docker部署
通過Dubbo Admin(2.7,自行安裝部署)可以看到開啟了的dubbo服務闽坡。
點開詳情可以看到provider所在的ip以及端口(注:這里的ip必須是dubbo所部署的主機ip栽惶,不然就可能會出問題)

比如:我的一個錯誤問題
在47.*.*.*服務器上部署了zookeeper以及一個名稱為A的provider
在120.*.*.*服務器上部署了兩個dubbo應用愁溜,
應用B既要消費A也作為provider提供服務給其他dubbo應用(同一臺服務器上的應用C)。


dubbo admin中查看服務ip詳情.png

在注冊到zookeeper后外厂,通過Dubbo Admin查看應用的詳情冕象,
發(fā)現應用A注冊的ip是本機的47.*.*.*的ip,但是應用B注冊的ip也是47..*.*.*汁蝶。應用B應該注冊的ip地址是自己所在服務器的120..*.*.*才是正確的渐扮。
這就導致應用C或者其他的dubbo應用找不到應用B (也就是no provider的錯誤)
這個問題可能是我之前不懂隨意修改了第二胎服務器的主機名對應ip所致。

所以需要注意的就是掖棉,使用Dubbo Admin查看dubbo應用詳情的時候墓律,該dubbo應用的ip地址一定要和部署的服務器的ip相同。
如果不是相同幔亥,則檢查上面所說的兩個步驟哪里有沒有問題耻讽。如果上面兩步都做了還是錯,重啟服務器報平安帕棉。
我一開始就是针肥,修改了主機名還是啥,什么數據庫連接也報錯香伴,zookeeper連接也超時慰枕,然后重啟服務器都好了

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市瞒窒,隨后出現的幾起案子捺僻,更是在濱河造成了極大的恐慌,老刑警劉巖崇裁,帶你破解...
    沈念sama閱讀 212,383評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件匕坯,死亡現場離奇詭異,居然都是意外死亡拔稳,警方通過查閱死者的電腦和手機葛峻,發(fā)現死者居然都...
    沈念sama閱讀 90,522評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來巴比,“玉大人术奖,你說我怎么就攤上這事∏峤剩” “怎么了采记?”我有些...
    開封第一講書人閱讀 157,852評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長政勃。 經常有香客問我唧龄,道長,這世上最難降的妖魔是什么奸远? 我笑而不...
    開封第一講書人閱讀 56,621評論 1 284
  • 正文 為了忘掉前任既棺,我火速辦了婚禮讽挟,結果婚禮上,老公的妹妹穿的比我還像新娘丸冕。我一直安慰自己耽梅,他們只是感情好,可當我...
    茶點故事閱讀 65,741評論 6 386
  • 文/花漫 我一把揭開白布胖烛。 她就那樣靜靜地躺著眼姐,像睡著了一般。 火紅的嫁衣襯著肌膚如雪佩番。 梳的紋絲不亂的頭發(fā)上妥凳,一...
    開封第一講書人閱讀 49,929評論 1 290
  • 那天,我揣著相機與錄音答捕,去河邊找鬼逝钥。 笑死,一個胖子當著我的面吹牛拱镐,可吹牛的內容都是我干的艘款。 我是一名探鬼主播,決...
    沈念sama閱讀 39,076評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼沃琅,長吁一口氣:“原來是場噩夢啊……” “哼哗咆!你這毒婦竟也來了?” 一聲冷哼從身側響起益眉,我...
    開封第一講書人閱讀 37,803評論 0 268
  • 序言:老撾萬榮一對情侶失蹤晌柬,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后郭脂,有當地人在樹林里發(fā)現了一具尸體年碘,經...
    沈念sama閱讀 44,265評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,582評論 2 327
  • 正文 我和宋清朗相戀三年展鸡,在試婚紗的時候發(fā)現自己被綠了屿衅。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,716評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡莹弊,死狀恐怖涤久,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情忍弛,我是刑警寧澤响迂,帶...
    沈念sama閱讀 34,395評論 4 333
  • 正文 年R本政府宣布,位于F島的核電站细疚,受9級特大地震影響蔗彤,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,039評論 3 316
  • 文/蒙蒙 一幕与、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧镇防,春花似錦啦鸣、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至啦扬,卻和暖如春中狂,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背扑毡。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評論 1 266
  • 我被黑心中介騙來泰國打工胃榕, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人瞄摊。 一個月前我還...
    沈念sama閱讀 46,488評論 2 361
  • 正文 我出身青樓勋又,卻偏偏與公主長得像,于是被迫代替她去往敵國和親换帜。 傳聞我的和親對象是個殘疾皇子楔壤,可洞房花燭夜當晚...
    茶點故事閱讀 43,612評論 2 350

推薦閱讀更多精彩內容