Kubernetes Webinar Series - Building CI CD Pipelines with Jenkins and Kubernetes
Vložit
- čas přidán 17. 08. 2017
- Learn how to configure CI/CD pipelines with Jenkins and Kubernetes. We will show you to how to automate deployments from source code to production clusters.
- Věda a technologie
Bravo. No seriously, I could not figure out how CI/CD would work across load balancing and horizontal scaling on AWS, if each instance was suppose to be a Jenkins slave, etc. I guess the lesson here is to use Kubernetes (and maybe GCP) instead; it configures load balancing settings (well). Commit to github => Jenkins, push to docker hub, Kubernetes deploy to environments and scale, declarative yaml files. Done. Kubernetes even lets you roll back to previous container versions. I don't know how you would do this without containers unless you were to re-build every horizontal box for every release. Networking there also seems like a nightmare. Kubernetes is a godsend. Treating containers as build artifacts is a bit of a hack but I guess I can deal with it. I suck at devops. Awesome video. Thanks man.
Thank you very much for all your efforts!
Great explanation! Thanks for the video.
You are the best !! Very Nice Explanation..
Cleared lot of my doubts, thank you
Amazing video. It helped me a lot .Thank you,Thank you very much.
The video was awesome ...Explained in detail!
Thank you. Great Presentation
Dude, what AMAZING video, thank you so much for doing this. You just made my night. +1sub
Thank u so much !! I i wish to create CICD pipieline with kubernetes always. It worked for me fluently in AWS. And i have a question, ru running jenkins and kubernetes in different nodes or same? i tried in the same only.
where that ./kube directory in the jenkins machine came from?
Very good explanation
Hi,
I am facing issue in Jenkins installation on Google cloud platform, can please give some link how you have up Jenkins server
Please can you provide us the link to the documentation for this?
Thank you .Nice video i have one doubt where your doing build hellowhale image? i mean in cluster or any one of the node
Thanks in advance
Quick question. So I'm noticing that you currently have 4 instance provisioned on GCP. Likewise, I have sinned up 4 servers as well hosted on AWS. I have 3 nodes in my kubernetes cluster, and a Jenkins master. In the build step you have specified kubectl and docker commands to build, push, and scale the app with kubernestes. So regarding your architecture, Do you have docker slave, or do you you have both Jenkins, and the Kube master on the same node? Please advise. Thanks!
Keep kubectl,jenkins and docker on the same machine. It works!
Where may I get a copy of your "demo.sh" file you refer to in this video? This would be extremely helpful sir! Thank you.
what basic settings you have done to connect to kubernetes cluster from jenkins server
I need to setup microservices pipeline with docker and build is maven type but bit confused of keeping the docker images in Nexus as I don't want to use dockerhub how can I set up the pipeline.Hope for early response
i have the solution for it
without kubernetes global tool configuration ,how did you get that kubectl executed...
At around 32.27, did you install kubectl in Jenkins server? How does it know which one is the master K8n node? It is very confusing to me that how Jenkins server is going to know where is Kubernetes cluster?
Same problem for me to as well
ur jenkins is running in the cluster where we will deploy or in seperate instance..... cause m running in seperate instance try to make deployment in a cluster ???/ pllzz answer
adding few points jenkins can be running on separate instance or it can be deployed in one of the container.
you just need to pull jenkins image!
and talking about HA with kubernetes you can replicate your master server
$ MULTIZONE=true KUBE_GCE_ZONE=europe-west1-b ENABLE_ETCD_QUORUM_READS=true ./cluster/kube-up.sh
can you share your presentation slide ?
How did you connect jenkins running on a separate VM to Kubernetes cluster? kubectl commands do not work in the jenkins pipeline without this integration.
install kubernetes cli plugin for jenkins and kubectl in your VM to connect with kubernetes cluster.
@@ashishsajwan9715 That's not working though :(
at 08:22, just noted that you said ghanta :D
Is this only possible if docker file is at hub.docker.com?
Its awesome. You gave a good idea about all concepts. And Let me ask few queries -----
1. You are saying that code is taken from github , then why you are using docker hub ? , Since every rollout you are only doing commit to github. So what is the docker hub role?
2. Can I use commiting codes in repository without using docker hub ? , I don't want to take my client code in a public place.
3. Can I use a private on-premise SVN repository with Jenkins?
4. If I am using more than one nodes in kubernetes ( Means I am using 3 nodes plus cluster master VM. ), How I need to create the shell script for releasing into different nodes ? Where I can create my pod.yml , service.yml ?
How come which K8S cluster to connect to? How a Jenkins job can connect to multiple cluster, in case of deploying multiple project? This demo is good for POC only. Its only one to one mapping from Jenkins to K8S.
Possibly run build on seperate Jenkin's agents each connected to separate clusters?
My builds failed saying that the kubectl not found...? what is the problem...?
Hi Janikiram, Thanks for putting to gether CICD pipeline ; however I'm running into issue after running docker run -d -p80:80 --name hellowhale hellowhale and getting following error
"docker: Error response from daemon: Conflict. The container name "/hellowhale" is already in use by container "b5bf1cd5d6ad0d31dfd6af6fbcb8d50d61f786f9a90a0d43f3eb4a1c2251ddf1". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'."
I think it is because It require access to your docker repository, not sure please review and confirm that can help me.
Thanks for your help
Also, the jenkins user is not able to execute kubernetes commands... It states not resource found
Hi Trenton, Add Jenkins as a User. I encountered the same problem for weeks.
Could you please elaborate.. I am also unable to run the kubectl commands. What group do we add jenkins as a user to?
Goid one Janakiram, quick question I guess you have Jenkins running on the same machine where you have Kubernetes master as per your Jenkins configuration Please confirm. Appreciate your efforts thanks!
Keep jenkins,docker and kubernetes in the same machine. Kubectl command to create cluster will auto create master n nodes. Whole process wat he explained really worked for me! i done this is AWS env.
so i install jenkins on cluster-1(the kubernetes machine) for example?
i think better approach will be placing jenkins separately and docker kubernetes in cluster .
what say ?
i think, In CI/CD, each build will create new container? if yes, what will happen already running container?
If you run install Jenkins using helm then every build will use a separate container. After the build, k8 it will shut down the container.
I'm having issues with Jenkins Build. Throwing an Error. + docker build . -t janakiramm/hellowhale:7
/tmp/jenkins8775513526231623955.sh: line 3: docker: command not found
You need to make sure you have the docker plugin installed in Jenkins (if I am not wrong you can install it through the Jenkins UI on Server Settings/Extensions)
How to integrate jenkins on kubernetes with Google Cloud Source Repository?
I am also looking for the same. Please Let me know if you figure out how to do it.
Akhil Maddu there is a google qwiklab to do so, I don’t have the resource right now, but maybe if you google it you’ll find it. I wish you luck! Also, if I can during the day I’ll paste the link here
I need demo.sh file
please try on gitlab cicd
Slides www.slideshare.net/janakiramm/building-cicd-pipelines-with-jenkins-and-kubernetes
seems to be a great video, but not very useful when looking for janoris jenkins vs redskins
Very good explanation. Just as an improvement, you could have cut a quarter of the hour spent on explaining CI/CD, Jenkins etc., since most people watching this would likely know those basics already and want to know about integrating these tools in the context of k8s.