1. 程式人生 > >『高級篇』docker之CICD(終結篇)(44)

『高級篇』docker之CICD(終結篇)(44)

命令 提交 網上 都是 dock oot shu 服務發現 好的

>原創文章,歡迎轉載。轉載請註明:轉載自IT人故事會,謝謝!
>原文鏈接地址:『高級篇』docker之CICD(終結篇)(44)

從2018年9月11日開始寫高級篇到今天11月21日,短短2個月高級的收獲還是滿滿的。docker命令越來越熟悉,jenkins在中級篇裏沒有涉及到,這次也把jenkins的內容給補充了,在中級篇裏k8s,一直安裝很多坑,到現在可以順利的安裝k8s,而且一步一步安裝了解了etc,apiserver,ControllerManager。但是感覺還是不夠深入,下次計劃繼續k8s和實踐。重點還是實踐和k8s。

技術分享圖片

一起回顧下

####微服務的概念

  1. 從軟件架構的進化引入的微服務,了解微服務的概念,知道了微服務的架構並不是完美無缺的,有很多優勢,獨立性(有自己的獨立棧),敏捷性(快速的叠代)。問題,數量龐大,指數級的增加我們必須考慮的它們之間如何進行通信,服務編排也是我們需要考慮的。

  2. 微服務帶來的問題分析,服務間的通訊(一對一,一對多,同步異步),通信協議的維度分析了長見的協議(restapi,rpc,消息隊列),也對比分析了幾個rpc框架(thrift,dubbo,motan,grpc)。服務編排,首先使用了對比的方式,展示了傳統服務和微服務在服務發現,服務更新,服務擴縮容上是什麽樣子,了解了微服務為什麽不能像傳統服務那樣支持。然後引出了服務編排的概念。

3.springboot&springcloud的內容,畢竟他們都是線下流行的跟微服務密切相關的,猶豫跟微服務相關的很多,初學者很容易混亂,讓老鐵在大腦中對springboot和springcloud有個關鍵的認識,知道它的使命是什麽,它的核心內容,以及它們在微服務中扮演什麽角色。

微服務的開發

分析了微服務的架構,也分別開發了多個微服務,在開發的過程中,體驗了springboot,springcloud,dubbo,跨語言的RPC通信thift,然後這只是剛剛開始,其實都是為了服務編排考慮的。

為服務編排做準備

  • 服務docker化
  • Docker compose
  • Docker 倉庫

    搭建了一個私有的倉庫harbor

完事具備,只欠編排

學習本身是學類龐統的。學會一個其他基本都是一個原理。都是從入門開始,到架構設計,到環境搭建,最後到部署。

  • Mesos(MySes可不是MeSes)

    起步比較早很多大公司,還在用。

  • Docker Swarm

    已經在docker的安裝裏面了。 官方的原汁原味。

  • kubernetes

    猶豫kubernetes門檻比較高,我們花了前面幾個框架幾倍的時間來研究它,但是說實話,還沒完全的搞懂,為了讓大家更好的理解。部署了2次,一次非認證授權,一次需要認證。其實認證就是ssl 哈哈。一個模塊一個模塊純手工的搭建了k8s集群。然後在集群上演示了官方的實例。

  • CICD&Devops

    最後體驗了一把CICD和Devops,他們之間的關系還是很親密的。服務編排為Devops落地提供了土壤。服務編排其實就是為CICD和Devops而生的。搭建了gitlab和jenkins的部署。
    在jenkins下編寫了pipline流水線腳本,以及在流水線裏面編寫的shell腳本。體驗了CICD,從提交了代碼完成打包,做鏡像,push推送。最後完成服務的更新。最後說句千萬別用jenkins的容器。這東西不適合用容器。

PS:從看到這裏的基本都是真愛老鐵了,在這裏真心的謝謝大家。從docker初級,中級到高級。從4月份了解docker到現在已經7個月多了,對docker的執著學習一直在繼續,中間也有老鐵指出文章中的問題。感謝一路有你!真心的希望我寫的文章能對各位老鐵有幫助。文章前面放了一個沙灘腳印的圖片,希望我們在一起學習docker的路上,你我一起讓同行的人更多,感謝在這個過程中有老鐵願意分享我的文章,讓更多的人一起在docker的路上。我們一直在趕路。一起在努力!你累嗎,累就對了,因為至少證明你還活著!下一步學習docker腳步不會停止。繼續開啟我們的實踐篇通過網上開源的項目,完成docker環境下的部署和運維。

技術分享圖片

『高級篇』docker之CICD(終結篇)(44)