牛逼 IDE 插件,一鍵部署 Docker 鏡像,開發部署提速 8 倍

容器技術提供了一種標準化的交付方式,將應用的代碼以及代碼環境依賴都打包在一起,成爲一個與環境無關的交付物,可以被用在軟件生命週期的任何階段,徹底改變了傳統的軟件交付方式。

甚至可以說,是在容器技術之後,DevOps、CI/CD 等運維關鍵問題纔有了質的飛躍:實現資源的動態創建和銷燬,更輕量的容器技術既能保證環境一致性也能進一步提高迭代頻率,各種容器平臺也能更好地保證應用高可用、自動伸縮、業務連續等等。

今天將跟大家分享支撐雙十一的容器鏡像倉庫 ACR,以及它是如何實現搭配 IDE 插件和 CICD/雲原生應用交付鏈來實現一鍵部署與持續集成,以下是本文提綱:

•什麼是 容器鏡像倉庫 ACR

•如何搭配 免費 IDE 插件 實現一鍵部署

•如何運用 CICD/雲原生應用交付鏈 實現持續集成與交付

容器鏡像倉庫 ACR
爲了更好地支持雙十一大規模分發需求,容器鏡像倉庫(Alibaba Cloud Container Registery, ACR)團隊提前進行規劃及迭代更新,全面提升了大規模分發場景下的性能、可觀測性和穩定性。在新的雙十一來臨前,容器鏡像倉庫已達到了數 PB 的鏡像託管量,月均鏡像拉取達數億次,平滑度過 54.4 萬筆交易峯值。

阿里雲鏡像倉庫 ACR 分爲默認實例版與企業版,雖然結合阿里雲產品做了多維度優化,但是並不與阿里雲強制綁定。ACR 默認實例版面向容器開發者,提供安全的鏡像託管、便捷的鏡像授權功能,方便用戶進行鏡像全生命週期管理,並且簡化了 Registry 的搭建運維工作,支持全球 20 個地域的鏡像託管。ACR 企業版面向安全需求高、業務多地域大規模部署的企業級客戶,提供大規模鏡像分發能力、企業級的安全獨享特性,以及雲原生應用交付鏈,可實現一次應用變更,多場景自動化交付,而且全鏈路可觀測、可跟蹤以及可設置。

•官方鏈接地址:https://www.aliyun.com/product/acr

如何搭配 免費 IDE 插件實現一鍵部署
Cloud Toolkit 是一款免費的本地 IDE 插件,很多技術博客都有相關的測評,是一款口碑較好的插件。它能夠幫助開發者更高效地開發、測試、診斷並部署應用。設置好插件的初始配置之後,可以將本地應用一鍵部署到任意服務器 Host,甚至雲端(ECS、ACR、Kubernetes 和 小程序雲 等);並且還內置了 Arthas 診斷、Dubbo工具、Terminal 終端、文件上傳、函數計算 和 MySQL 執行器等工具,減少了切換工作界面的時間,靈巧且實用,推薦安裝試用一波。下面介紹,插件如何將應用一鍵部署到容器鏡像倉庫 ACR 。

•官方下載地址:https://cn.aliyun.com/product/cloudtoolkit

開發者的部署包從形成鏡像到鏡像倉庫,手動操作的話,每一次都需要經歷下圖 4 個步驟:登錄阿里雲Docker Registr--> 從Registry中拉取鏡像 --> 將鏡像推送到Registry --> 選擇合適的鏡像倉庫地址,但是,使用 Cloud Toolkit ,開發者可以實現在本地 IDE 就能一鍵部署到鏡像倉庫。
(一)配置插件首選項

安裝完插件之後,點擊:頂部菜單Tools --> Alibaba Cloud Toolkit --> Preferences-->左邊列表的 Alibaba Cloud Toolkit--> Accounts ,出現如下界面,配置阿里雲賬號的 AK 和 SK,即可完成首選項配置。(如果是子賬號,則填寫子賬號的 AK 和 SK)
(二)設置本地 Docker 鏡像打包

點擊:頂部菜單Tools --> Alibaba Cloud Toolkit --> Preferences --> 左邊列表的 Alibaba Cloud Toolkit --> Docker,如下圖,設置本地 Docker 鏡像打包。

(三)部署應用

第一步:在 Intellij IDEA 中,如下圖點擊:頂部菜單Tools --> Alibaba Cloud -->Deploy to ACR/ACK --> Deploy to ACR
第二步:設置 Image

•在 Image 標籤頁中,選擇本地應用程序的 Context Directory 和 Dockerfile (通常會根據您本地的應用工程自動識別並設置)。

•選擇容器鏡像服務的地域、命名空間和鏡像倉庫。
第三步:執行部署

點擊 Run 按鈕之後,即可完成將本地 Docker 鏡像推送到 ACR 中去。

如何運用 CICD/雲原生應用交付鏈 實現持續集成與交付

ACR企業版的雲原生交付鏈在託管、交付、分發等方面進一步提升,歷經雙11大促,沉澱了雲原生應用萬節點協同的技術經驗。

目前支持容器鏡像、Helm Chart 兩類雲原生應用資產,並採用獨立網絡訪問控制,可細粒度控制公網及VPC 網絡的訪問策略,僅允許符合策略的來源方訪問資產,保障訪問安全。

同時實現了整個應用交付週期的流程自動化,開發者只要一次變更應用,按照配置多場景交付,即可實現一次應用變更,全球化多場景自動交付。
在應用交付環節,ACR EE 支持自動發起靜態安全掃描並自定義配置安全阻斷策略。一旦識別到靜態應用中存在高危漏洞後,可自動阻斷後續部署鏈路。用戶可基於漏洞報告中的修復建議,更新優化構建成新的鏡像版本,再次發起交付。

建設 CICD 體系還需要考慮到整體穩定和儘可能不斷提升整體交付能力,比如監控報警、容錯容災、依賴治理、限流降級、容量規劃。這裏可以和大家分享 ACR 團隊的相關經驗:

•在依賴治理方面,要對雲原生應用交付鏈中相關重點環節及外部依賴進行統一管理,識別熱點倉庫及追蹤交付鏈執行結果;

•在限流降級方面,最好分析識別雲原生應用分發核心環節的主次業務功能,優先保障主要業務邏輯完成,次要業務邏輯可降級延後處理;

•在容量規劃方面,平臺根據上下游業務變化情況,對資源進行按需擴容,確保雲原生應用正常交付完成。

容器鏡像 ACR 與 插件 Cloud Toolkit 免費面向開發者,幫助技術人員提高開發、部署效率,在減少時間成本的同時提高了業務的質量,還有雙十一的頂級洪峯流量場景作爲實踐案例,希望這篇文章能幫助到有需要的人,並通過相關文章快速上手,真正實現業務價值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章