您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

02 jenkins插件開發教程(「自動化運維」從0到1 CICD自動化部署落地分享)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-05-23 09:53:08【】1人已围观

简介件,右邊可以自定義安裝7、等待插件下載安裝完畢8、當上面步驟完成之后,第一次運行Jenkins,需要設置管理員信息,如下圖所示:9、輸入完畢,點擊保存按鈕,Jenkins的安裝算是全部完畢了,如下圖所

件,右邊可以自定義安裝

7、等待插件下載安裝完畢

8、當上面步驟完成之后,第一次運行Jenkins,需要設置管理員信息,如下圖所示:

9、輸入完畢,點擊保存按鈕,Jenkins的安裝算是全部完畢了,如下圖所示:

jenkins相關配置參數說明

1、點擊左側新建Item名稱(JobTest)構建一個自由風格的軟件項目OK

2、暫時不用的相關設置如下:

3、源碼管理

4、構建觸發器

5、構建增加構建步驟

6、構建后操作增加構建后操作步驟

7、點擊保存,跳轉到下圖,一個基本job項目建立

8、構建項目左側立即構建

9、構建之后查看構建結果,點擊構建歷史,點擊選擇ConsoleOutput控制臺輸出,如下圖所示,到此簡單的jenkins構建流程完成

「自動化運維」從0到1 CICD自動化部署落地分享

目錄

一、CICD簡介

二、CICD實踐過程

三、含淚踩坑

四、 歷史 文章指路

一、CICD簡介

1、CICD定義

2、DevOps定義

DevOps(Development和Operations的組合詞)是一組過程、方法與系統的統稱,用于促進開發(應用程序/軟件工程)、技術運營和質量保障(QA)部門之間的溝通、協作與整合。

DevOps的基礎核心是CICD。

CICD的基礎核心是自動化。

二、CICD實踐過程

1、起因

在我之前的團隊,因為要切換全新業務線,需要為新業務搭建一套全新的環境,所有東西從0開始。

原先只是用于部署測試環境,后面決定一起部署生產環境,這個過程中我還造成了一個嚴重生產環境問題,好在當時的生產環境還未正式使用,未造成嚴重影響。

在當時挺害怕也挺有壓力的,但是后面項目完整落地,平穩運行,我還是挺有成就感的,接下來我將整個項目過程完整的分享出來。

2、技術棧選型

首先進行技術棧選型,我們選擇的是Jenkins,Jenkins當屬業內持續集成老大哥,有著非常豐富的插件,也可以選擇gitlab集成的CICD,因為我們還有其它的測試腳本需要集成,所以Jenkins對于我們來說是最優的選擇;

Ansible是批量運維工具,通過編寫yaml腳本,可以方便實現批量管理多臺機器,并且Ansible是比較輕量級應用,很容易上手;

shell腳本可以用于執行一系列命令。

其它的就結合團隊項目情況進行搭建。

3、Jenkins應用部署實現流程

首先來梳理下整個項目的實現流程,主要分為Jenkins主節點和應用服務器,是一對多的關系。

Jenkins主節點的主要負責項目部署前的工作,主要包含拉取代碼,前端打包,后端打包,快照版檢測,將壓縮包和部署腳本發送到目標機器(即應用服務器),遠程調用目標機器上的部署腳本進行代碼替換。

應用服務器部署腳本執行過程有:解壓壓縮包,停止服務,覆蓋代碼,拉取dis買粉絲nf,應用目錄分組賦權,重啟服務,檢查服務是否有進程,查看啟動日志,刪除/tmp目錄下舊壓縮包。

Jenkins應用部署流程圖

4、任務計劃

4.1、搭建環境

Jenkins

指路【Jenkins系列】如何搭建Jenkins環境。

Ansible

Git

GitLab

因為這個我沒有實踐成功的教程,所以在這里就不貼啦~

Node.js

Maven

JDK

Nginx

2、編寫前置腳本

3、編寫應用部署腳本

4、Jenkins配置

指路【Jenkins系列】如何構建Jenkins Job。

新增Job,主要用于拉取代碼,執行Maven編譯,執行app_build.sh,將壓縮包通過ssh發送到目標機器,遠程調用目標機器的deploy.sh。

三、含淚踩坑

踩坑1

問題描述:在錯誤的路徑拉取配置,原因是未成功解壓壓縮包。

解決方案:校驗壓縮包是否解壓成功解壓成功,并且在cd到正確的路徑后添加&&(&&表示上一條命令執行成功再執行下一條命令)才進行拉取配置。

踩坑2

問題描述:項目沒有正常停止,導致無法重新啟動。

解決方案:雖然執行kill -9,但是未找到根本原因,因此加了一個檢測機制,如果檢測沒有正常停止服務,則退出程序。

踩坑3

問題描述:生產部署腳本拉取了開發環境的的jdbc配置,原因是生產部署腳本寫錯了開發環境dis買粉絲nf的域名,當時我同時在搞開發生產環境的腳本,開發和生產是兩套不同的腳本,一時混亂寫錯了,嚇得一批,好在當時生產環境還沒投產使用。

解決方案:為了避免后續這種情況的發生,而且是必須避免的,我們通過環境名稱來判斷走開發還是生產域名,這樣就能保證腳本一致性了。

在這個項目實際遇到的問題遠不止上面這幾個,在這個實踐過程中,我對整個應用部署流程有了更深的理解,平時方方面面的學習終于集中化起來進行實踐了。

我習慣將學到的知識和遇到的問題記錄起來,在寫這篇文章的過程回過頭來看,五味雜陳,原來我都經歷了這些哈哈哈......

踩過的坑終究使我更加強大,帶你見證呱呱本呱成長為參天大呱~

搞測試,不迷路

呱呱大王本呱帶你飛!

JAVA前端開發的學習路線是怎樣的?

給你整理了一些java的知識點,一共分為六個階段,273個技能點,第一階段、第二階段、第三階段、第四階段是必須要掌握的,很多機構忽悠人,就只學到第四階段,第五階段和第六階段就是高薪、高職的保障,就說說想高薪必須得把后面兩個階段的給掌握了,老鐵你慢慢看。

第一階段:java基本功修煉

1. 認識計算機硬件

2. 計算機組成原理

3. 計算機軟件知識

4. 計算機網絡知識

5. 常用網絡應用操作

6. 認識計算機病毒

7. 邏輯訓練

8. 初識Java

9. 變量和數據類型

10. 選擇結構

11. 循環結構for

12. 循環結構do-while

13. 循環結構while

14. 多重循環及程序調試

15. 循環進階

16. 一維數組及經典應用

17. 二維數組

18. 認識類與對象

19. 方法及方法重載

20. 封裝與繼承

21. 方法重寫與多態

22. 項目實戰-汽車租賃系統

23. 抽象類和接口

24. 異常

25. 項目實戰-QuickHit

26. Java 中的集合類型

27. List 集合

28. Set 集合

29. HashMap 集合

30. Iterator

31. Collections 算法類及常用方法

32. enum

33. 包裝類及裝箱拆箱

34. String、StringBuffer 類常用方法操作字符串

35. Date、Calendar

36. Math 類常用方法

37.&n

很赞哦!(5)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:云南文山广南县

工作室:小组

Email:[email protected]