How to Use Kubernetes Pods As Jenkins Agents

Поделиться
HTML-код
  • Опубликовано: 4 авг 2024
  • Need help with your Jenkins questions?
    Visit community.jenkins.io/c/using-...
    Timecodes ⏱:
    00:00 Introduction
    00:10 Overview
    01:00 Starting point
    01:43 Creating a Kubernetes cluster using kind
    04:28 Disable controller executors
    05:14 Install Kubernetes plugin
    06:04 Configure Kubernetes plugin
    15:00 Create a test job
    18:17 Add a second container
    20:19 Sharing a workspace between containers
    22:46 Why would you want to get rid of static agents?
    #jenkinstutorial #jenkinspipeline #kubernetes
    Information referenced in this video:
    Gist with all the commands:
    gist.github.com/darinpope/67c...
    Jenkins LTS 2.289.1
    www.jenkins.io/changelog-stab...
    Kubernetes plugin:
    plugins.jenkins.io/kubernetes/
    Kind documentation:
    kind.sigs.k8s.io/
    CloudBees on Twitter:
    / cloudbees
    Darin on Twitter:
    / darinpope
  • НаукаНаука

Комментарии • 60

  • @dannyhd8301
    @dannyhd8301 3 месяца назад +1

    This video answered my one-month problem, This is gold. This person is extremely well experienced , I have to watch over 350 of his vids on Jenkins all short concise and perfect

  • @praneethbharadwajaghadiyaram
    @praneethbharadwajaghadiyaram 27 дней назад

    Thanks for this Mr. Darin Pope. You are explaining things in a very simple way.

  • @krishm5116
    @krishm5116 2 года назад

    This video is amazing, clarified my many doubts in one place with clarity. Thanks

  • @joesoh
    @joesoh 2 года назад

    Awesome guide. very clear and concise crafted video. I followed your guide and managed to setup Jenkins agent on Kubernetes in no time!

  • @FriedrichBrunzema
    @FriedrichBrunzema Год назад

    Hi -- I was struggling to set up agents on EKS, the video really helped. Thanks for taking the time to make this.

  • @thirukandiurgopinath9362
    @thirukandiurgopinath9362 2 года назад

    Thank you so much DarinPope for this video, providing complete details of communication between Jenkins and Kubernetes Pods through the Kubernetes plugin.

  • @seanmoreno16
    @seanmoreno16 Год назад

    This was unbelievably helpful. Walking through errors was very valuable. I came here to learn how to get my pods to spin up through the kubernetes plugin and ended up also learning that I can create any container within the same pod as the agent. This allows me to easily build an environment for my code to run. Thank you!

  • @user-dq7vo6dy7g
    @user-dq7vo6dy7g 2 месяца назад

    I really appreciate your videos. They helped so much. They are clear and concise and answer many possible questions. The presentation is nothing but professional.
    You probably helped so many people

  • @ng8326
    @ng8326 2 года назад +3

    This is a wonderful walkthrough. I cannot stress enough how useful it is to walk through what is happening and deliberately running into the errors one would reasonably encounter and explaining why they happen.

  • @idouxda
    @idouxda 8 месяцев назад +3

    Thanks for the video. I had to add one more command. ‘kubectl create token jenkins -namespace=jenkins’

  • @VANTYCSolutions
    @VANTYCSolutions 11 месяцев назад

    Thank you very much for this wonderful video 🙏, it has helped me a lot to finally have CI in my K8s Cluster.

  • @kd6164
    @kd6164 3 года назад

    I use kubernetes for my Jenkins control plane and learning about jenkins nodes made me think about how I could use this to make nodes; great video!

  • @romanmasiar122
    @romanmasiar122 Год назад

    Great way of explaining things. Thanks!

  • @marketsentiment7797
    @marketsentiment7797 2 года назад

    you are genius, explaining step by step great!

  • @pramodvasista
    @pramodvasista 2 года назад

    Wonderfully explained. Good job.

  • @mirnabakhoum2534
    @mirnabakhoum2534 19 дней назад

    Thanks alot, It was very clear and to the point

  • @christianherrera9524
    @christianherrera9524 3 года назад

    Very informative, thanks!

  • @chetanraj1009
    @chetanraj1009 2 года назад

    Thank you so much. Respect from India.

  • @ImaneElouadi-eq1zc
    @ImaneElouadi-eq1zc 11 месяцев назад

    That was very helpful, Thank you !

  • @lineuve
    @lineuve 2 года назад

    Excelente tutorial, cada passo detalhando e com um exemplo. Parabens Mestre e time CloudBeesTV

  • @georgeradu3759
    @georgeradu3759 Год назад

    This is wonderful. Thanks so much

  • @root30
    @root30 2 года назад

    Thank you for you work, it is awesome!

  • @nikhileshsaggere
    @nikhileshsaggere 2 года назад

    superb explaination🎉

  • @JithendarDharmapuri
    @JithendarDharmapuri 3 года назад +1

    Very Informative 😍

  • @sivaramakrishnan166
    @sivaramakrishnan166 Год назад

    Excellent Video!!!!

  • @RaviSharma-vw7py
    @RaviSharma-vw7py 2 года назад

    Thanks DPope!

  • @bhbslp
    @bhbslp 2 года назад +2

    Great video! Super informative... It would be nice to point out the importance of "tty: true" in the yaml. I missed that and took me forever to understand that Jenkins needs that to be true to allow commands to be sent to the container. Otherwise the job just loops trying to run without any error.

  • @zongruli1138
    @zongruli1138 2 года назад

    Good Job!

  • @naagnext5318
    @naagnext5318 2 года назад

    very nice and clear. and btw "Gave the thumbsup and subscribed" :)

  • @EdwardPike
    @EdwardPike 2 года назад +3

    Heads Up: In Kubernetes 1.24, the token will not be automatically created for the service user. The Docker changes kinda overshadowed that news for many.

  • @veeru840
    @veeru840 2 года назад

    Great👍

  • @hailsonjunior3635
    @hailsonjunior3635 2 года назад

    Muito obrigado!!!!

  • @joaoaraujo8845
    @joaoaraujo8845 2 года назад

    Muito bom!

  • @pabloeglez
    @pabloeglez 2 года назад

    Excellent!! This strategy is useful for many steps of my pipeline, but I'm not sure how to generate new images and save them in a registry using this way after build and stress tests.... do you have any recommendations?

  • @shanmukhabollapragada8832
    @shanmukhabollapragada8832 2 года назад

    thanks a lot for clear explanation. one thing i am wondering, is running docker commands supported within the container (assuming ubuntu) out of the box. or does it require any additional configuration

  • @EdwardPike
    @EdwardPike 2 года назад

    During kubernetes cloud config, if your websocket setting mentions "localhost", it is not routable. The jnlp won't be able to connect back to to jenkins controller (as Darin said). Just to give a detail about what that looks like: The error will occur just after the line "Started container jnlp" and the reason will be "SEVERE: Connection failed."

  • @remoambi82
    @remoambi82 2 года назад

    Hello Sir, Thanks for this. I am trying to set up a bitnami ovf vm as my jenkins server and trying to connect a kubernetes server, When I do this my pod creation always goes on loop? it tries to create and then goes offline . Please throw some light on the same.

  • @karanjain3524
    @karanjain3524 2 года назад

    Hi...I am trying to use bash container as a jenkins agent with the help of kubernetes but it is not able to find some commands for bash which is not helping me to run my scripts..
    Any suggestions?

  • @ma3145tt
    @ma3145tt Год назад

    Is it possible to build the pod image from a Dockerfile in the pipeline? For example, the Docker plugin allows you to specify the Dockerfile to build the image. This would allow changes to build infrastructure to be tested as part of the pipeline and building the application.

  • @FabioPeruchi
    @FabioPeruchi 2 года назад

    Is it possible to launch Kubernetes pods using via Jenkins job with a Jenkins instance running locally and a Kubernetes cluster running remotely? I've tried but I could not make it work.

  • @piyushpatil1666
    @piyushpatil1666 2 года назад +1

    When i used linux image as container, installed helm and run sh 'helm list' command it giving me error like failed to list secret is forbidden : user "system:serviceaccount:helm:default" cannot list resources "secrets" in API group in thr namespace

  • @sarathkumarbabji5188
    @sarathkumarbabji5188 Год назад

    if we upgrade jenkins to 2.361.1, can we use pods java8 container? I heard we need java11 for controller and slave

  • @aayushshrivastava1912
    @aayushshrivastava1912 9 месяцев назад

    please helm me with that like if i have minikube so what ip should i put to add a node in jenkins

  • @arunchandramouli3020
    @arunchandramouli3020 2 года назад

    Is it possible to use both docker agent and kubernetes agent in same jenkinsfile?

  • @gokul9677
    @gokul9677 Год назад

    I am using an very old version of jenkins 2.19 and planning to upgrade and when trying to install support core plugin it says this plugin works for 2.28 or newer.. Please suggest how to proceed

  • @ganeshwankhede3329
    @ganeshwankhede3329 Месяц назад

    what about creating some file in Jenkins workspace from POd or conatainer agent ?

  • @ManuelWahle
    @ManuelWahle 6 месяцев назад +1

    Help me, -Obi-Wan Kenobi- Darin Pope!

  • @pstranded
    @pstranded 2 года назад

    How do I share workspace with Master in such setup?

  • @user-br9hg7ue1c
    @user-br9hg7ue1c 2 года назад

    thanks ! but how to use k8s pod as static agent ?

  • @deek414
    @deek414 2 года назад

    I have followed steps.. however credential are not picked up in the error message.
    can someone help

  • @StevePrior
    @StevePrior Месяц назад

    This video was very helpful and I now have it working in my home lab. I've been using Jenkins running on a Docker host (with DND configured) to create multi-arch container images with the docker pipeline Jenkins plugin. Would you consider doing a video on how to use Kubernetes Pods As Jenkins Agents to build and push a multi-arch container image? This is how I've been doing it on my Jenkins host on Docker:
    pipeline {
    agent any
    stages {
    stage('build') {
    agent { docker {
    image 'my_builder'
    reuseNode true
    }
    }
    steps {
    sh 'mvn'
    }
    }
    stage('Containerize') {
    steps {
    script {
    sh 'docker buildx build --platform linux/amd64,linux/arm64 -t my_image_repo/imagename --pull --push .'
    }
    }
    }
    }
    }

  • @vishalpoptani6762
    @vishalpoptani6762 2 года назад

    I have followed this tutorial and the plugin test connection worked for me, however when i am trying to run a pipeline the pod is getting created in my cluster and its in running state but i get the below error message in the logs
    Waiting for agent to connect (30/1000): testpipeline--11-vz1v9-rvxsq-m4dgg
    Waiting for agent to connect (60/1000): testpipeline--11-vz1v9-rvxsq-m4dgg
    This happens right after jnlp image is pulled, container is created and started successfully. Anything you would suggest for this behavior?

    • @NitturuHanif
      @NitturuHanif 5 месяцев назад

      Am also facing same issue, can you please guide me on this if you got any solution..

  • @oliverboehm02
    @oliverboehm02 3 месяца назад

    im using an agent with multiple containers, i set the retetntion to never in the kubernetes settings of jenkins. sadly, the agent pods are never deleted correctly.. the pod has my containers + a jnlp container.. this one gets stopped, but the ones i definded by my own are still running.. does someone know what to do? i just looked at my namespace and there are like 50+ pods still running

    • @oliverboehm02
      @oliverboehm02 3 месяца назад

      nevermind, delete wasn't included in the role for jenkins^^

  • @rex-dj5cu
    @rex-dj5cu 7 месяцев назад

    facing websocket error when i run job

  • @EdwardPike
    @EdwardPike 2 года назад

    "we're fixin to have a kubernetes cluster"

  • @MrMikhailDJ
    @MrMikhailDJ 6 месяцев назад

    Failed to start websocket connection: io.fabric8.kubernetes.client.KubernetesClientException: An error has occurred.
    Any Ideas? Jenkins master running in k8s too