1. 程式人生 > >jenkins~叢集分發功能和職責處理

jenkins~叢集分發功能和職責處理

jenkins的多節點叢集

在進行自動化部署時,你可以按著它們的專案型別去進行分別部署,這樣即可以達到負載均衡,又可以達到一種職責的明確,比如像java的專案你可以使用linux服務來進行部署(拉程式碼,還原,編譯,釋出,生成映象,推映象到倉庫,建立服務等),而對於.net專案你可以使用windows伺服器來實現jenkins的節點,而它們的入口都是jenkins的master,由它根據每個節點的標記進行分發!

節點各有其責

每個節點一般都會做專案的依賴包還原,程式碼編譯,釋出,映象的生成,映象的推送到倉庫,docker服務的建立等工作,下面就來說一下這些工作的細節,如windows平臺裡的.net專案,它會有一個windows伺服器為它提供自動化部署的服務,使用以下功能。
  1. 編譯
  2. 釋出
  3. 映象的生成
  4. 映象的推送到倉庫
  5. docker服務的建立

上面步驟對應的部分程式碼如下,SH指令碼,主要在linux進行部署,如果是在windows上進行部署的話,建議使用powershell指令碼。

專案編譯與釋出

  set -ex
  export Publish_Path="obj\Docker\publish"
  echo "專案恢復"
  dotnet restore  
  echo "專案編譯"
  dotnet build
  echo "專案釋出"
  dotnet publish -o obj/Docker/publish
  echo 
"釋出成功,開始構建docker映象"

生成映象和推送到倉庫

#!/bin/sh
set -ex
export IMAGE_NAME=microserviceOrder
export Registry_Url="www.lind.cn:8443"
docker build --no-cache --pull -t $IMAGE_NAME ./
docker tag $IMAGE_NAME $Registry_Url/$IMAGE_NAME
docker push $Registry_Url/$IMAGE_NAME

分發與jenkins專案依賴

在建立節點時可以指定它的標籤,使用請求到主jenkins節點後,根據標籤去分發,找到目標的節點,然後去處理相應的工作
根據構建後的專案依賴去實現自動化部署多專案的關聯

以上內容就是我對jenkins叢集中各節點職責,請求分發,專案依賴的理解,希望可以幫到正在學習的您!

感謝各位粉絲的支援!

謝謝!