jenkins在gcp上的最佳實踐

如何在gcp上搭建一個jenkins?

sorry,我也想知道。哈哈哈,上當了吧,不能全是乾貨的好吧。

 

華麗麗的分割線===============================================

 

具體內容會更新到github上,稍後上傳github地址。敬請期待……

 

 

如何部署一個jenkins?production級的,如何把jenkins部署在k8s內?今天就要解決這兩個問題:

 

如何部署一個production級別的jenkins

 

 

 

 

如何部署jenkins到gcp上?涉及到如果在gcp上部署一個service以及如何在jenkins上引入gke上的pod作爲node

先說這個,上面的是基礎,這個有現成的案例:

兩方面,首先在gcp上創建kubernetes,這個kubernetes是生成了一個cloudbees(商業版的jenkins)的service然後在jenkins裏配置引用gcp上的鏡像作爲pod template。可能需要在jenkins上安裝插件。

k8s上部署cloudbees的過程:先創建一個cluster,然後創建service,之前要推進一堆的鏡像維護在gcr上(gcp的container registry)。這些全部都是通過terraform創建的,terraform是幹啥的?他篇介紹terraform的具體用法。terraform中最重要的是通過命令執行一個yaml

還有一個前提,gcp的登錄credential配置:

搭建cli環境(SDK)並使用teraform操作:

1.安裝google sdk:https://cloud.google.com/sdk/docs/downloads-yum,直接yum安裝未必能安裝成功,要麼網絡問題要麼沒有那個包,需要按照文檔內配置一個yum的源

2.配置credential:採用service account(IAM下的service account可以找到,選中或者新增一個,每創建一個就會自動下載一個private key的json文件)的方式進行授權。具體方法:

命令:gcloud auth activate-service-account --key-file xxx.json即可;

或者配置個變量然後……

export GOOGLE_PROJECT=g-dso-ksc-cloudbees
export GOOGLE_CREDENTIALS=account.json

還要配置project

 

通過terraform操作gcp,在gke上創建cloudbees服務。的過程:

1.先配置backend的路徑用於存儲生成的狀態文件,即state的存儲路徑,語法如下:

terraform {
  backend "gcs" {
    bucket = "xxxxx"
    prefix = "xxx/區域/路徑一/dev/xxxxx"
    region = "xxxx"
  }
}

2.創建一個google的service account,這個類似於一個user,用來操作這個service的user。

2.創建cluster。

3.創建service。

 

 

 

 

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