超詳細實操教程!在現有K8S集群上安裝JenkinsX,極速提升CI/CD體驗!


在2018年年初,Jenkins X首次發布,它由Apache Groovy語言的創建者Jame Strachan創建。Jenkins X 是一個高度集成化的 CI/CD 平台,基於 Jenkins 和 Kubernetes 實現,旨在解決微服務體系架構下的雲原生應用的持續交付的問題,簡化整個雲原生應用的開發、運行和部署過程。僅需一條Jenkins X命令,管理員可以創建一個Kubernetes集群,並安裝用於管理應用程序、創建流水線並部署一個應用程序到不同的環境中的工具。

Jenkin X還是由插件配置的可擴展自動化服務器,可充當持續集成(CI)服務器,持續部署(CD)hub和自動化測試。

Jenkins X(也稱為JX)可以輕松地安裝在現有的雲提供商上(如GKE、AKS等)。或者,如果你由本地Kubernetes集群,也可以使用Jenkins X。通過jx命令,你可以在本地或遠程雲提供商(如Google Cloud Platform)上快速部署集群。

本文將教您完成在Ubuntu Server 18.04上運行的現有Kubernetes集群上安裝Jenkins X的過程。

前期准備

我將演示在本地和Google Cloud Platform上部署Kubernetes集群(使用Jenkins X)。為此,您需要:

  • 已安裝Kubernetes的Ubuntu Server的運行實例。

  • 一個Google Cloud Platform帳戶。

  • 具有sudo權限的用戶。

  • 網絡連接。

除此之外,還需一點時間。

讓我們開始吧!

安裝Jenkins X

在Ubuntu上安裝Jenkins X十分簡單。從Jenkins X Github官方頁面(https://github.com/jenkins-x/ )上下載可執行的二進制文件,然后將其移到正確的目錄中。為此,請通過SSH登錄到服務器,或直接登錄到控制台,在服務器出現bash提示后,輸入命令:

curl -L "https://github.com/jenkins-x/jx/releases/download/$(curl --silent "https://github.com/jenkins-x/jx/releases/latest" | sed 's#.*tag/\(.*\)\".*#\1#')/jx-linux-amd64.tar.gz" | tar xzv "jx"

以上命令將下載最新版本的Jenkins X,然后解壓二進制文件。命令完成之后,你應該在當前工作目錄中看到一個名為jx的可執行文件(如下圖):

為了移動Jenkins X二進制文件,請輸入以下命令:

sudo mv jx /usr/local/bin

如果你選擇使用一個虛擬機環境來部署一個集群,你必須安裝它。為此,你需要安裝KVM、KVM-2或VirtualBox。為了簡化操作,我們將安裝VirtualBox。這會安裝X server,但你無需使用它。

要安裝VirtualBox,請輸入命令:

sudo apt-get install virtualbox -y

安裝將花費一些時間,等安裝結束之后,你需要在Ubuntu Server上安裝minikube(這將是我們的提供商)。為了完成這一操作,使用以下命令下載必要的文件:

wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

使用以下命令更改下載文件的權限:

chmod +x minikube-linux-amd64

使用命令移動(並重命名)文件到適當的目錄中:

sudo mv minikube-linux-amd64 /usr/local/bin/minikube

使用以下命令,你應該能看到minikube已經安裝完成:

minikube version

下圖將展示minikube的版本號:

jx命令部署一個集群

現在,我們要去部署一個集群,這一集群將使用minikube和VirtualBox作為驅動。部署集群的命令如下:

jx create cluster minikube

你將會被問到以下問題:

  • 應用於集群的內存量(默認為4096)

  • 應用於集群的核心數(默認為3)

  • 磁盤大小(默認為150GB)

  • 選擇驅動程序(從kvm、kvm2、virtualBox、無中選擇)

如果你選擇以下選項:

  • 內存4096

  • 核心3

  • 磁盤空間20GB

  • VirtualBox驅動程序

有效的命令如下:

minikube start --memory 4096 --cpus 3 --disk-size 20GB --vm-driver virtualbox --bootstrapper=kubeadm

你也可以不使用驅動在本地部署一個集群。要完成此操作,你必須使用通過sudo運行jx命令,如:

sudo jx create cluster minikube --local-cloud-environment=true

命令將運行如下:

minikube start --memory 4096 --cpus 3 --disk-size 20GB --vm-driver none --bootstrapper=kubeadm

jx命令將負責提取所有必要的鏡像並部署配置的集群。

部署到谷歌雲

假設您要將集群部署到Google Cloud Platform, Jenkins X也可以實現。在執行此操作之前,你必須首先安裝gcloud應用程序。為此,請返回到終端窗口,並使用以下命令下載源文件:

wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-265.0.0-linux-x86_64.tar.gz

使用以下命令解壓文件:

tar -zxf google-cloud-sdk-*

使用以下命令進入新創建的目錄:

cd google-cloud-sdk

最后,使用命令運行安裝程序:

./install.sh

處理完之后,請使用以下命令更新gcloud的所有內容:

gcloud components update

最后,你必須使用以下命令登錄到你的Google Cloud Platform帳戶:

gcloud auth login

復制鏈接到瀏覽器,選擇要使用的谷歌賬戶,然后復制獲得的驗證碼,將其粘貼到命令提示符下,按Enter鍵。現在,你已經登錄Google Cloud Plartform賬戶,可以發出以下命令:

jx create cluster gke --skip-login

出現提示時,確保選擇要使用的Google Cloud Project:

做出選擇並按下Enter鍵后,系統會提示您選擇一個區域:

接着,將問你Jenkins的安裝類型(在有Tekton的Serverless Jenkins X 流水線或有Jenkinsfikes的Static Jenks Server中選擇)。請注意,使用tekton時,僅支持kaniko作為構建器。

然后,你需要輸入名稱和郵箱地址以用於git,然后為你的Github賬戶獲取必要的API密鑰。之后,集群將部署並可以為你工作。

這就是在現有Kubernetes集群上安裝和使用Jenkins X的要旨。這一工具還有許多其他功能,強烈建議你閱讀官方文檔:

https://jenkins-x.io/docs/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM