手把手教你如何快速部署並設定 CI/CD 環境 — 透過 Jenkins on Gemini AI Console

Jan 7, 2022 Tim

Photo by Alvaro Reyes on Unsplash

近年來微服務概念盛行,系統架構、服務越分越細,若是透過人工部署就會相當麻煩,因此免不了需導入自動化,提及自動化部署,就不能缺少 Jenkins這重要的角色,Jenkins 在 Devops 領域中常被用來實現 CI/CD (持續整合、持續交付) 的流程,監控持續重複的工作。

何謂CI/CD

為何選用 Jenkins 作為 CI/CD 工具

在 Gemini AI Console 也能辦到 CI/CD 流程

Jenkins 在 Devops 中扮演很重要的角色,若有重複性之工作、可程式化執行的步驟,吩咐 Jenkins 來處理,將步驟轉換成 Pipeline 流程。但也衍伸出棘手問題:若一個 Jenkins 被多人使用就會產生任務需排隊執行,不僅環境資源不夠用還衍伸出時間分配問題。 解決方式

如下圖,可以透過 Jenkins Controller - Agent 架構來解決此問題,可以想像Jenkins (Controller,早期稱為Master) 為管理員,Agent(早期稱為Slave)為代理人,Jenkins 負責分配工作任務給 Agent,Agent 則是負責 Jenkins 吩咐的事,這樣一來工作負擔就不會是落在 Jenkins 身上,資源也能有效分配及管理。

流程說明

主要分為兩部分,Jenkins Controller、Agent

  1. Jenkins Controller:

在 Gemini AI Console 提供 Jenkins 應用程式,直接創立即可使用,簡單的設定幾項步驟即可撰寫 Pipeline 流程,在範例中 Jenkins Controller 主要做的是:當收到工作通知時,就會觸發 Agent 來執行 Pipeline 工作。

  1. Jenkins Agent:

在 Gemini AI Console 提供 Jenkins Agent 應用程式,建立欄位裡填入 Jenkins Controller 相關參數資訊即完成建立,Agent 的工作就是分擔 Jenkins Controller 工作,減少 Jenkins Controller 運算資源的浩劫。範例中 Agent 做的事情是:在環境中測試程式新功能是否正常,若沒有問題則會部署到 QA 環境中。

在 Gemini AI Console 上如何建立 Jenkins Controller、Agent(Slave)

Jenkins Controller

  1. 點擊 Jenkins Controller 應用程式,過程中會需要為該應用程式命名、配置運算資源、掛載儲存空間 (Option)。

  1. 為了讓 Jenkins Controller 有 Agent 能夠使用,因此必須新增節點創立 Agent。

  1. 命名建立的節點名稱與勾選 Permanent Agent,設定完成後,再到 Gemini AI Console 建立 Jenkins Agent即完成 Controller與 Agent串連。

Jenkins Agent(Slave)

  1. 點擊 Jenkins Agent(Slave)應用程式,過程中會需要為該應用程式命名、配置運算資源、掛載儲存空間 (Option)。

  1. 設定相關參數:

  1. 串連了 Jenkins Controller 與 Agent即可建立屬於自己的 Pipeline

Gemini AI Console提供的 CI/CD 工具好處是?

Gemini AI Console上提供多種應用程式以利開發,其中包含多種 AI framework,若在平台上使用這些開發工具時,卻沒有提供一個常見且方便的 CI/CD 工具就會相當不便利,開發者則需要自行導入,因此 Gemini AI Console上提供CI/CD工具是必須的。

雖然 Gemini AI Console 有內建便利的 Pipeline 工具,但仍有許多客戶已經在使用 Jenkins 來做 CI/CD,開發者也可結合這兩項工具,依據需求搭配使用。導入 Jenkins 能將這些重複性工作寫成 Pipeline,驗證過程交由 Agent 執行,開發人員可以將時間花在開發環節上,讓開發流程更方便與快速。

References:


Gemini AI Console 已發布最新版本,歡迎各界有興趣的朋友跟我們索取最新的產品資訊,也可以 立刻預約 Demo,我們的產品顧>問將向您示範,並免費提供線上的試用!

雙子星雲端為 CNCF 會員,是 CNCF 所認證的 Kubernetes 服務提供商,在雲端技術擁有十多年以上的經驗,為台灣雲端技術早期>領先者。目前為國家級 AI 雲的軟體及 Kubernetes 技術與服務提供商,更是諸多企業與單位導入容器與管理平台的最佳夥伴。


相關文章

回雙子星技術部落格列表

Gemini AI Console

熱門文章


kubernetes professional service

關於我們

雙子星雲端是混合多雲技術的領導者,是國際認證之 KCSP - Kubernetes 服務提供商,同時也為 CNCF 雲原生計算基金會會員。

雙子星的雲端專家擁有 Kubernetes、OpenStack 與 Google Cloud Platform 等多項證照,我們的軟體至今已為上百家機構和數千台的 CPU/GPU 伺服器提供雲端服務。