kubernetes部署微服務(wù) k8s最佳應(yīng)用部署方案?
k8s最佳應(yīng)用部署方案?任何架構(gòu)沒有說是最佳的部署方案,只能說根據(jù)你自己的實際場景來設(shè)計一個最佳的方案。對于常見的業(yè)務(wù)來說,一般是兩主多從的一種方案,既保證了集群的容災(zāi)性,。又能保證集群的高性能學(xué)了j
k8s最佳應(yīng)用部署方案?
任何架構(gòu)沒有說是最佳的部署方案,只能說根據(jù)你自己的實際場景來設(shè)計一個最佳的方案。對于常見的業(yè)務(wù)來說,一般是兩主多從的一種方案,既保證了集群的容災(zāi)性,。又能保證集群的高性能
學(xué)了java能做什么實際的東西?
學(xué)了Java可以做很多實際的東西,主要看你的興趣在哪里。如果你喜歡手機開發(fā),你可以做一套手機的操作系統(tǒng),因為安卓就是Java開發(fā)的。如果你想介入金融行業(yè),可以為銀行或投資機構(gòu)做他們的交易系統(tǒng),因為高盛投資公司、花期集團等等他們用的交易系統(tǒng)都是Java開發(fā)的。喜歡游戲, 可以參考桌面版的Minecraft開發(fā)一套游戲出來;或者再造一個阿里巴巴也行,聽說他們主要都是Java棧。
所以, 不要糾結(jié)于這個問題, 認真去學(xué)就是了. 一定會有你的用武之地 !
微服務(wù)在Docker k8s下如何部署?
正好最近在項目中用到了這些技術(shù),我來拋磚引玉吧。
首先說結(jié)論:
1. k8s 是非常好的一項技術(shù),很穩(wěn)定。如果發(fā)現(xiàn)正在運行的 pod 的數(shù)量不等于用戶設(shè)定的期望值, k8s 則會自動創(chuàng)建或者刪除 pod,直到兩者相等。這樣既保障了服務(wù)的不間斷運行,同時還可以動態(tài)縮放服務(wù)的規(guī)格。用戶只要調(diào)整 pod 的 replicate 的數(shù)量即可,其他的都交給 k8s 就好,非常省心。
2. 要用 jenkins 來集成命令行操作,雖然我個人非常偏愛使用命令行,但是我不得不承認用 jenkins 集成命令行操作會極大的提升工作效率。
下面說實現(xiàn)步驟:(本文以 azure 平臺為例)
1. 編寫 Dockerfile
2. 在 jenkins 創(chuàng)建任務(wù),并執(zhí)行包含如下命令的腳本
2.1 git pull 源代碼到本地
2.2 docker build 命令生成鏡像文件
2.3 docker 定義鏡像文件版本號并上傳到 azure 平臺
2.4 kubectl 命令來創(chuàng)建 k8s 的 deployment & service.
2.5 每次版本更新可以調(diào)用 update image 來編譯新的鏡像版本并提供給 k8s 使用
注意在創(chuàng)建 k8s 的 deployment 和 service 的時候需要編寫 yaml 格式的配置文件, deployment 配置包括 名稱,鏡像文件地址, cpu 最大最小分配值,內(nèi)存最大最小分配值等。service 配置文件包括 名稱,引用的 deployment 名稱,以及是否使用 load balancer等。
更多詳細信息可以參考我的 wiki. https://github.com/FamingHou/MyWiki