Запуск Jenkins в kuberntes с помощью heml


Делаю: 06.04.2019


По материалам из видео индуса:

https://www.youtube.com/watch?v=ObGR0EfVPlg&list=PL34sAs7_26wNBRWM6BDhnonoA5FMERax0&index=26


Предыдущее видео, в котором он рассказывает о helm обзорное и все повторяется в видео, ссылка на которое выше.


Running Jenkins in Kubernetes Cluster using Helm


kubernetes Helm Jenkins


  • Подготовили кластер и окружение
  • Подняли Dynamic NFS
  • Инсталлировали helm


UPD. Heml2 выпилен, предлагаю попробовать Helm3 как здесь.


Устанавливаем Jenkins

$ helm search jenkins

$ helm inspect values stable/jenkins > /tmp/jenkins.values


$ kubectl get storageclass
NAME                  PROVISIONER       AGE
managed-nfs-storage   example.com/nfs   42m


$ vi /tmp/jenkins.values


Значения которые менять не нужно - удалить.
Те которые нужно переопределить оставить в файле.


После удаления, все, что осталось:



Master:
  AdminUser: admin
  AdminPassword: admin
  ServiceType: NodePort
  NodePort: 32323

Persistence:
  StorageClass: "managed-nfs-storage"

rbac:
  install: true


$ helm install stable/jenkins --values /tmp/jenkins.values --name myjenkins


$ kubectl get pods
NAME                                      READY   STATUS    RESTARTS   AGE
myjenkins-6f995f57d6-2hjhg                1/1     Running   0          3m43s
nfs-client-provisioner-67cd85d66d-9b5l8   1/1     Running   0          55m


$ kubectl get pvc
NAME        STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS          AGE
myjenkins   Bound    pvc-81c13cb5-5862-11e9-8748-525400261060   8Gi        RWO            managed-nfs-storage   4m26s


$ helm status myjenkins | less


http://node1.k8s:32323/


kubernetes Helm Jenkins


Credentials –> Jenkins –> Global credentials –> Add Credentials

Kind –> Kubernetes Service Account


kubernetes Helm Jenkins


Manage Jenkins –> Configure System


kubernetes Helm Jenkins


New Item –> “demo-job”–> Freestyle Project

Build –> Execute shell

kubernetes Helm Jenkins

echo Hi this is from inside the container
hostname
sleep 20

Build now


kubernetes Helm Jenkins


Удаление jenkins из kubernetes

$ helm list
$ helm delete myjenkins --purge