成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

基于Docker運(yùn)行彈性集群的五個(gè)關(guān)鍵點(diǎn)之:運(yùn)行高可用模式

antz / 1981人閱讀

摘要:當(dāng)企業(yè)的運(yùn)維團(tuán)隊(duì)去維護(hù)一個(gè)彈性的容器集群時(shí),傳統(tǒng)的軟件部署方式需要向容器遷移,這個(gè)過(guò)程中需要有風(fēng)險(xiǎn)預(yù)判和規(guī)避之道。但是這樣會(huì)有些問(wèn)題,就是大部分鏡像都是基于構(gòu)建的,這會(huì)和樹(shù)莓派的很不兼容。多次嘗試后狀態(tài)被破壞刪庫(kù)重試,重啟大法好。

當(dāng)前技術(shù)世界的發(fā)展形勢(shì)就是讓開(kāi)發(fā)人員從繁瑣的應(yīng)用配置和管理中解放出來(lái),使用容器鏡像來(lái)處理復(fù)雜的程序運(yùn)行依賴庫(kù)的需求,保證代碼運(yùn)行環(huán)境的一致性。既然這樣的好處是如此清晰,但為什么企業(yè)中的基礎(chǔ)設(shè)施環(huán)境沒(méi)有往容器集群切換呢?關(guān)鍵問(wèn)題還是風(fēng)險(xiǎn),新技術(shù)意味著未經(jīng)檢驗(yàn)的技術(shù)和實(shí)踐經(jīng)驗(yàn)的缺乏,這就會(huì)帶來(lái)很多不可預(yù)知的風(fēng)險(xiǎn)。

當(dāng)企業(yè)的運(yùn)維團(tuán)隊(duì)去維護(hù)一個(gè)彈性的容器集群時(shí),傳統(tǒng)的軟件部署方式需要向容器遷移,這個(gè)過(guò)程中需要有風(fēng)險(xiǎn)預(yù)判和規(guī)避之道。而Docker和Rancher正是提供了解決這些風(fēng)險(xiǎn)問(wèn)題的解決方案,比如基于Rancher的Catalog功能就能快速的完成一些基礎(chǔ)軟件的部署(比如ElasticSearch)。在風(fēng)險(xiǎn)管理方面,我們可以看看基于Docker和Rancher來(lái)運(yùn)行彈性集群的五個(gè)關(guān)鍵點(diǎn):

運(yùn)行Rancher高可用模式 (本文將介紹)

Rancher中使用負(fù)載均衡服務(wù)

Rancher中的服務(wù)監(jiān)控和監(jiān)控檢查

開(kāi)發(fā)者自定義針對(duì)Rancher的安裝部署

討論利用Convoy對(duì)數(shù)據(jù)的管理

我原本希望展現(xiàn)一下用一臺(tái)老式筆記本部署Rancher Server,然后用docker-machine加入幾個(gè)樹(shù)莓派節(jié)點(diǎn)部署Rancher Agent,這樣來(lái)構(gòu)建一個(gè)Rancher集群。但是這樣會(huì)有些問(wèn)題,就是大部分Docker鏡像都是基于Intel CPU構(gòu)建的,這會(huì)和樹(shù)莓派的ARM CPU很不兼容。所以我還是老老實(shí)實(shí)的用AWS的虛機(jī)來(lái)構(gòu)建Rancher集群吧。

初始安裝,我們暫時(shí)先部署一臺(tái)Rancher Server和一臺(tái)Rancher Agent,然后再部署一個(gè)簡(jiǎn)單的多實(shí)例應(yīng)用。

上面這張圖展現(xiàn)了我的整個(gè)集群的設(shè)置,我選擇AWS是因?yàn)槲覀€(gè)人比較熟悉,當(dāng)然你完全可以選擇你擅長(zhǎng)的云提供商。

我們可以嘗試創(chuàng)建一個(gè)Wordpress,順帶來(lái)檢測(cè)一下Rancher是否正確部署了。

這樣我們的應(yīng)用就運(yùn)行起來(lái)了,試想,如果Rancher Server所在服務(wù)器出現(xiàn)故障,或者有網(wǎng)絡(luò)中斷問(wèn)題發(fā)生,會(huì)對(duì)應(yīng)用產(chǎn)生什么影響,Wordpress還能繼續(xù)接受請(qǐng)求么?

為了確認(rèn)我們的疑問(wèn),我將會(huì)按照下面的步驟執(zhí)行,然后記錄一下其中的運(yùn)行結(jié)果:

阻斷Rancher Server和Rancher Agent間的網(wǎng)絡(luò)

停止Rancher Server的容器

瞧一瞧Rancher Server的容器里面到底有什么

最終我們要解決這些問(wèn)題,那就要看看Rancher HA來(lái)怎樣解決這些風(fēng)險(xiǎn)。

阻斷Rancher Server和Rancher Agent間的網(wǎng)絡(luò)

進(jìn)入AWS,然后看我各種犀利的操作:

阻斷Rancher Server和Rancher Agent間的訪問(wèn)

記錄一下發(fā)生了什么

干掉幾個(gè)WordPress的實(shí)例

恢復(fù)原先的網(wǎng)絡(luò)

觀察結(jié)果

首先,網(wǎng)絡(luò)阻斷后沒(méi)過(guò)多久Rancher Host就出現(xiàn)了reconnecting狀態(tài)

此時(shí)我依然可以正常訪問(wèn)Wordpress的地址,服務(wù)沒(méi)有中斷,IPSec隧道網(wǎng)絡(luò)還存儲(chǔ),Wordpress實(shí)例還是可以正常訪問(wèn)數(shù)據(jù)庫(kù)。

現(xiàn)在我們要停掉一個(gè)Wordpress實(shí)例,看看會(huì)發(fā)生什么?因?yàn)槲覀円呀?jīng)無(wú)法從Rancher UI上管理這些容器了,所以還是到對(duì)應(yīng)的主機(jī)上執(zhí)行docker命令吧。

很遺憾Wordpress容器沒(méi)有重新啟動(dòng),這有點(diǎn)麻煩了。我們還是把Rancher Server弄回來(lái)吧,看看它能不能感知到其中一個(gè)Wordpress容器已經(jīng)被停掉了。

在各種犀利的操作和等待之后,Rancher Server與Agent重新連接了,Wordpress容器就被重新啟動(dòng)了。完美~

所以我們可以看,Rancher Server還是能夠處理間歇性的網(wǎng)絡(luò)問(wèn)題,可以實(shí)現(xiàn)Rancher Server和Agent的故障重連。但是如果要讓網(wǎng)絡(luò)中斷對(duì)Rancher的影響進(jìn)一步減小,那么部署多個(gè)Rancher Server就比較重要了。

我們還是回過(guò)來(lái),按照先前計(jì)劃看看Rancher Server 容器停掉后會(huì)發(fā)生什么?我們會(huì)因此失去對(duì)這些Rancher Host的管理能力么?看看如何!

停掉Rancher Server

這次我需要登入到Rancher Server的host上手動(dòng)停止Rancher Server,其實(shí)Rancher Server一般是設(shè)置 –restart=always,所以自己有一定的恢復(fù)能力。但我們可以假設(shè)比如磁盤寫滿了后,Rancher Server真的起不來(lái)了。

觀察結(jié)果

執(zhí)行docker stop rancher-server之后,Wordpress還是能夠正常工作,但是Rancher UI是不能訪問(wèn)了,這可不行,得趕緊把Rancher Server弄回來(lái)。

再執(zhí)行docker start rancher-server,Rancher Server啟動(dòng)后又一切恢復(fù)正常,這很酷啊,這是什么魔法?趕緊著,麻溜地分析起來(lái)!

揭開(kāi)Rancher Server的神秘面紗

我們來(lái)一次對(duì)Rancher Server的簡(jiǎn)要探究之旅,看一看Rancher Server的Dockerfile。

# Dockerfile contents
FROM ...  
...
...
CMD ["/usr/bin/s6-svscan", "/service"]

我們可以看到使用了s6-svscan,它可以運(yùn)行指定的目錄結(jié)構(gòu)內(nèi)的程序,目錄內(nèi)的主要文件就是Run、Down、Finish。下面這張圖能看到會(huì)運(yùn)行兩個(gè)服務(wù)cattle(Rancher的核心調(diào)度器)和mysql。

其實(shí)在容器內(nèi)部我們也可以看到起了哪些服務(wù)。

PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:00 /usr/bin/s6-svscan /service
    7 ?        S      0:00 s6-supervise cattle
    8 ?        S      0:00 s6-supervise mysql
    9 ?        Ssl    0:57 java -Xms128m -Xmx1g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/lib/cattle/logs -Dlogback.bootstrap.level=WARN -cp /usr/share/cattle/1792f92ccdd6495127a28e16a685da7
  135 ?        Sl     0:01 websocket-proxy
  141 ?        Sl     0:00 rancher-catalog-service -catalogUrl library=https://github.com/rancher/rancher-catalog.git,community=https://github.com/rancher/community-catalog.git -refreshInterval 300
  142 ?        Sl     0:00 rancher-compose-executor
  143 ?        Sl     0:00 go-machine-service
 1517 ?        Ss     0:00 bash
 1537 ?        R+     0:00 ps x

我們可以看到Rancher的大腦,一個(gè)名叫Cattle的Java應(yīng)用,它需要一個(gè)MySQL來(lái)存儲(chǔ)對(duì)應(yīng)的數(shù)據(jù)。這確實(shí)很方便,但是我們發(fā)現(xiàn)這樣會(huì)有單點(diǎn)故障,所有的數(shù)據(jù)存儲(chǔ)在一個(gè)單點(diǎn)的mysql中。如果對(duì)mysql中的數(shù)據(jù)來(lái)一些不禮貌的操作,會(huì)發(fā)生什么呢?

破壞MySQL存儲(chǔ)數(shù)據(jù)
進(jìn)入容器中執(zhí)行一些MySQL命令,我們一起來(lái)干點(diǎn)壞事:

docker exec -it rancher-server bash
$ > mysql
mysql> use cattle;
mysql> SET FOREIGN_KEY_CHECKS = 0;
mysql> truncate service;
mysql> truncate network;

結(jié)果是可想而知的,Rancher不記得任何事了,你刪掉一個(gè)Wordpress容器,它也不會(huì)恢復(fù)。

而且我也刪除了network表的數(shù)據(jù),Wordpress也不知道如何找到它的MySQL服務(wù)了。

顯然,若要在生產(chǎn)環(huán)境運(yùn)行Rancher,我們需要一個(gè)方式來(lái)保護(hù)Rancher Server的數(shù)據(jù),既然如此那我們就講一下Rancher HA吧。

Rancher HA安裝過(guò)程

首先我們要確保數(shù)據(jù)的安全,我選擇了AWS的RDS服務(wù),RDS可以提供一個(gè)信賴的MySQL服務(wù),數(shù)據(jù)安全是可以保證的。當(dāng)然你也可以使用其他的,我只是對(duì)RDS更熟悉一些。

下面我們繼續(xù)Rancher HA的安裝過(guò)程:

按照我們之前的約定,我是創(chuàng)建了RDS的MySQL實(shí)例,然后把它當(dāng)做外部數(shù)據(jù)庫(kù)和Rancher Server連接。

一旦我們使用了外部數(shù)據(jù)庫(kù)模式,UI上將會(huì)打開(kāi)兩個(gè)選項(xiàng)來(lái)設(shè)置HA。

怎么辦!選擇困難癥??!沒(méi)關(guān)系,我來(lái)解釋一下每個(gè)選項(xiàng)的含義。

Cluster size,注意這里怎么都是奇數(shù)?因?yàn)樵诤蠖耍琑ancher會(huì)設(shè)置一個(gè)ZooKeeper Quorum保證鎖同步,ZooKeeper推薦奇數(shù)集群,因?yàn)榕紨?shù)節(jié)點(diǎn)數(shù)量不能提供額外的容錯(cuò)性。我們這里就選擇3個(gè)Host吧,這是一個(gè)可用和易用的平衡。

Host registration URL,這里是填寫一個(gè)Rancher Cluster入口的FQDN,推薦使用外部負(fù)載均衡服務(wù)或者DNS服務(wù)(round robin策略)。比如圖中我使用的是支持SRV記錄的DNS服務(wù),通過(guò)DNS來(lái)做三個(gè)Rancher Server的負(fù)載均衡:

SSL Certificates是列表中的最后一個(gè)選項(xiàng),如果你有域名的SSL證書可以配置在這里,否則Rancher會(huì)自動(dòng)生成一個(gè)自簽名證書。

所有都填完后,就會(huì)給你提供一個(gè)rancher-ha.sh的腳本來(lái)下載。
有了腳本就可以到每個(gè)Rancher Server節(jié)點(diǎn)上執(zhí)行了,執(zhí)行前還需要注意目前只能支持docker v1.10.3。安裝指定版本的Docker Engine,可以參考下面的方式:

#!/bin/bash
apt-get install -y -q apt-transport-https ca-certificates  
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D  
echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list  
apt-get update  
apt-get install -y -q docker-engine=1.10.3-0~trusty

# run the command below to show all available versions
# apt-cache showpkg docker-engine

Docker安裝之后,就要確認(rèn)一下端口開(kāi)放了,需要開(kāi)放哪些端口可以看這里,不過(guò)如果是第一次安裝,我建議你把端口全部開(kāi)放吧,免得坑太深被活埋。

一切準(zhǔn)備妥當(dāng)之后,可以執(zhí)行腳本,執(zhí)行后能看到這樣的輸出:

...
ed5d8e75b7be: Pull complete  
ed5d8e75b7be: Pull complete  
7ebc9fcbf163: Pull complete  
7ebc9fcbf163: Pull complete  
ffe47ea37862: Pull complete  
ffe47ea37862: Pull complete  
b320962f9dbe: Pull complete  
b320962f9dbe: Pull complete  
Digest: sha256:aff7c52e52a80188729c860736332ef8c00d028a88ee0eac24c85015cb0e26a7  
Status: Downloaded newer image for rancher/server:latest  
Started container rancher-ha c41f0fb7c356a242c7fbdd61d196095c358e7ca84b19a66ea33416ef77d98511  
Run the below to see the logs

docker logs -f rancher-ha

執(zhí)行過(guò)程中會(huì)下載一些額外的鏡像,畢竟要支持HA特性么。另外Host的內(nèi)存建議至少4G,執(zhí)行完畢后通過(guò)docker ps可以看看都啟動(dòng)了什么:

常見(jiàn)的問(wèn)題和解決方案

正常來(lái)說(shuō),一般我們會(huì)在日志中能看到各個(gè)成員加入到Rancher HA Cluster中:

time="2016-07-22T04:13:22Z" level=info msg="Cluster changed, index=0, members=[172.30.0.209, 172.30.0.111, ]" component=service  
...
time="2016-07-22T04:13:34Z" level=info msg="Cluster changed, index=3, members=[172.30.0.209, 172.30.0.111, 172.30.0.69]" component=service

但有時(shí)候會(huì)有意外,比如會(huì)看到一些error信息:

time="2016-07-23T14:37:02Z" level=info msg="Waiting for server to be available" component=cert  
time="2016-07-23T14:37:02Z" level=info msg="Can not launch agent right now: Server not available at http://172.17.0.1:18080/ping:" component=service

這個(gè)問(wèn)題產(chǎn)生的背后原因有很多,我閱讀了一些Github上的issue和各種論壇的帖子,幫大家整理了一些產(chǎn)生此問(wèn)題的根本原因。

網(wǎng)絡(luò)設(shè)置問(wèn)題

有時(shí)候容器自動(dòng)獲取了節(jié)點(diǎn)的錯(cuò)誤的IP,這時(shí)候你需要強(qiáng)制指定正確的IP。

ZooKeeper沒(méi)有正常啟動(dòng)

Zookeeper的容器是分布在每個(gè)節(jié)點(diǎn)上的,如果節(jié)點(diǎn)之間的問(wèn)題導(dǎo)致Zookeeper容器不能通信,就會(huì)導(dǎo)致這個(gè)問(wèn)題,如果要確認(rèn)這個(gè)問(wèn)題,可以參考這樣的日志輸出。

目錄/var/lib/rancher/state下有殘留文件

如果多次運(yùn)行Rancher-ha.sh這個(gè)腳本,那么你需要運(yùn)行前清理一下這個(gè)目錄下殘留文件。

多次嘗試后HA狀態(tài)被破壞

刪庫(kù)重試,重啟大法好。

機(jī)器資源不足

內(nèi)存至少需要4GB,此外mysql的連接數(shù)也要足夠,可以按照每個(gè)HA節(jié)點(diǎn)需要50個(gè)連接數(shù)來(lái)計(jì)算。如果你看到下面的錯(cuò)誤,那么此問(wèn)題確信無(wú)疑。

time="2016-07-25T11:01:02Z" level=fatal msg="Failed to create manager" err="Error 1040: Too many connections"
rancher/server版本不匹配

rancher-ha.sh執(zhí)行的時(shí)候默認(rèn)是下載rancher/server:latest鏡像,如果你沒(méi)有host上的鏡像不一致會(huì)導(dǎo)致難以想象的問(wèn)題,最好執(zhí)行的時(shí)候指定版本號(hào)。比如:

./rancher-ha.sh rancher/server:
docker0返回了錯(cuò)誤的IP

這個(gè)錯(cuò)誤具體就是在HA的安裝過(guò)程中會(huì)去檢查agent健康狀態(tài),此時(shí)它獲取了一個(gè)錯(cuò)誤的docker0 IP地址,因?yàn)槲蚁惹耙呀?jīng)將其設(shè)置成了172.17.42.1。

curl localhost:18080/ping
> pong
curl http://172.17.0.1:18080/ping
> curl: (7) Failed to connect to 172.17.0.1 port 18080: Connection refused

我的解決辦法就是重裝了我的AWS虛機(jī),導(dǎo)致獲取docker0 IP錯(cuò)誤的原因,我感覺(jué)可能是我在虛機(jī)里多次安裝了Docker。重裝之后,一切就正常了,我也看到了期待的日志信息。

HA部署完畢后

我們終于看到了夢(mèng)寐以求的正確日志輸出,和美好的UI展現(xiàn):

time="2016-07-24T20:00:11Z" level=info msg="[0/10] [zookeeper]: Starting "  
time="2016-07-24T20:00:12Z" level=info msg="[1/10] [zookeeper]: Started "  
time="2016-07-24T20:00:12Z" level=info msg="[1/10] [tunnel]: Starting "  
time="2016-07-24T20:00:13Z" level=info msg="[2/10] [tunnel]: Started "  
time="2016-07-24T20:00:13Z" level=info msg="[2/10] [redis]: Starting "  
time="2016-07-24T20:00:14Z" level=info msg="[3/10] [redis]: Started "  
time="2016-07-24T20:00:14Z" level=info msg="[3/10] [cattle]: Starting "  
time="2016-07-24T20:00:15Z" level=info msg="[4/10] [cattle]: Started "  
time="2016-07-24T20:00:15Z" level=info msg="[4/10] [go-machine-service]: Starting "  
time="2016-07-24T20:00:15Z" level=info msg="[4/10] [websocket-proxy]: Starting "  
time="2016-07-24T20:00:15Z" level=info msg="[4/10] [rancher-compose-executor]: Starting "  
time="2016-07-24T20:00:15Z" level=info msg="[4/10] [websocket-proxy-ssl]: Starting "  
time="2016-07-24T20:00:16Z" level=info msg="[5/10] [websocket-proxy]: Started "  
time="2016-07-24T20:00:16Z" level=info msg="[5/10] [load-balancer]: Starting "  
time="2016-07-24T20:00:16Z" level=info msg="[6/10] [rancher-compose-executor]: Started "  
time="2016-07-24T20:00:16Z" level=info msg="[7/10] [go-machine-service]: Started "  
time="2016-07-24T20:00:16Z" level=info msg="[8/10] [websocket-proxy-ssl]: Started "  
time="2016-07-24T20:00:16Z" level=info msg="[8/10] [load-balancer-swarm]: Starting "  
time="2016-07-24T20:00:17Z" level=info msg="[9/10] [load-balancer-swarm]: Started "  
time="2016-07-24T20:00:18Z" level=info msg="[10/10] [load-balancer]: Started "  
time="2016-07-24T20:00:18Z" level=info msg="Done launching management stack" component=service  
time="2016-07-24T20:00:18Z" level=info msg="You can access the site at https://" component=service

如果使用了自簽名證書且前端希望通過(guò)HTTPS來(lái)訪問(wèn),那么你需要把你的證書添加到你的受信任證書中。然后再等待數(shù)據(jù)庫(kù)資源約束調(diào)整完畢后,三個(gè)節(jié)點(diǎn)的服務(wù)就完全運(yùn)行起來(lái)了。

結(jié)論

這比原來(lái)想象的要多了很多。這就是為什么分布式系統(tǒng)一直是PHD的研究領(lǐng)域。解決所有的故障點(diǎn)后,我認(rèn)為Rancher HA已經(jīng)開(kāi)始向頂尖分布式系統(tǒng)出發(fā)啦。

我最終會(huì)將Rancher HA的腳本配置成Ansible的一個(gè)簡(jiǎn)單任務(wù),敬請(qǐng)關(guān)注!

附錄

對(duì)于任何分布式系統(tǒng)來(lái)說(shuō),基本的套路就是統(tǒng)一管理其中產(chǎn)生的狀態(tài)和變化,這意味著多個(gè)服務(wù)需要一個(gè)進(jìn)程來(lái)協(xié)調(diào)更新。

Rancher的處理方式就是把狀態(tài)都放倒數(shù)據(jù)庫(kù)中,需要同步狀態(tài)時(shí)把狀態(tài)信息放入到event中,發(fā)送event就可以向其他組件同步狀態(tài)。所以當(dāng)正在處理一個(gè)事件時(shí),它有一個(gè)鎖,事件未處理完前數(shù)據(jù)庫(kù)中的狀態(tài)是不能被修改的。

在單臺(tái)服務(wù)器設(shè)置中,所有的協(xié)調(diào)都發(fā)生在主機(jī)上的內(nèi)存中。一旦你涉及多服務(wù)器HA配置,像zookeeper和redis是必要的。


報(bào)名11.6成都Docker技術(shù)沙龍

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/26758.html

相關(guān)文章

  • [實(shí)戰(zhàn)] 用數(shù)人云,部署彈性 ELK 集群就五步

    摘要:摘要本篇文章介紹了如何通過(guò)數(shù)人云部署一套標(biāo)準(zhǔn)的日志收集系統(tǒng)。主機(jī)添加完成后,檢查主機(jī)運(yùn)行是否正常,如圖第二步,發(fā)布實(shí)例我們將通過(guò)數(shù)人云將的鏡像以模式部署到我們規(guī)劃的主機(jī)和上。 摘要:本篇文章介紹了如何通過(guò)數(shù)人云部署一套標(biāo)準(zhǔn)的 ELK 日志收集系統(tǒng)。第一步,將主機(jī)組織成集群;第二步,發(fā)布 ElasticSearch 實(shí)例;第三步,發(fā)布 Kibana 實(shí)例;第四步,發(fā)布 Logstash ...

    姘存按 評(píng)論0 收藏0
  • 解鎖性能計(jì)算與區(qū)塊鏈應(yīng)用,阿里云Kubernetes服務(wù)召喚神龍

    摘要:阿里云容器服務(wù)已經(jīng)發(fā)布了基于容器集群的開(kāi)源區(qū)塊鏈解決方案,利用容器技術(shù)可以在分鐘之內(nèi)部署完成一個(gè)生產(chǎn)級(jí)別安全高可用的區(qū)塊鏈應(yīng)用運(yùn)行環(huán)境,幫助企業(yè)可以加速業(yè)務(wù)創(chuàng)新。對(duì)節(jié)點(diǎn),阿里云服務(wù)會(huì)自動(dòng)開(kāi)啟相應(yīng)調(diào)度能力。 摘要: 阿里云ECS彈性裸金屬服務(wù)器(神龍)已經(jīng)與其容器服務(wù)全面兼容,用戶可以選擇在彈性裸金屬服務(wù)器上直接運(yùn)行容器、管控Kubernetes/Docker容器集群,如此將會(huì)獲得非常出...

    KitorinZero 評(píng)論0 收藏0
  • 為什么 kubernetes 天然適合微服務(wù) (2)

    摘要:有了分布式數(shù)據(jù)庫(kù)可以使數(shù)據(jù)庫(kù)的性能可以隨著節(jié)點(diǎn)增加線性地增加。分布式數(shù)據(jù)庫(kù)最最下面是,是主備的,通過(guò)的內(nèi)核開(kāi)發(fā)能力,我們能夠?qū)崿F(xiàn)主備切換數(shù)據(jù)零丟失,所以數(shù)據(jù)落在這個(gè)里面,是非常放心的,哪怕是掛了一個(gè)節(jié)點(diǎn),切換完了以后,你的數(shù)據(jù)也是不會(huì)丟的。 此文已由作者劉超授權(quán)網(wǎng)易云社區(qū)發(fā)布。 歡迎訪問(wèn)網(wǎng)易云社區(qū),了解更多網(wǎng)易技術(shù)產(chǎn)品運(yùn)營(yíng)經(jīng)驗(yàn) 三、微服務(wù)化的十個(gè)設(shè)計(jì)要點(diǎn) 微服務(wù)有哪些要點(diǎn)呢?第一張圖是...

    lentrue 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<