Getting started with Kubernetes
Vložit
- čas přidán 21. 07. 2024
- Github → goo.gle/39r4FEO
Three major hurdles to scalable applications → goo.gle/39irwSS
In the last episodes, we talked about containers, nodes, and other basics of Kubernetes. In this video, we show you how to run your Kubernetes application declaratively - allowing you to easily set up CI/CD pipelines, source control, and seamlessly scale your application. Watch to learn how you can declaratively run your applications with Kubernetes!
Chapters:
0:00 - Intro
1:00 - Demo Intro
2:10 - Demo Start
2:57 - Example Kubernetes Deployment
4:50 - Example Kubernetes Service
7:00 - Declarative Kubernetes with “kubectl apply”
8:08 - Adding Configuration Info with ConfigMaps
10:04 - Passing in Secret Info with Kubernetes Secrets
12:36 - Testing the Microservice App
16:06 - Closing Thoughts
16:24 - Join Us Next Time!
Watch more episodes of Kubernetes Essentials from Google Cloud → goo.gle/KubernetesEssentialsFr...
Subscribe to Google Cloud Platform→ goo.gle/GCP
product: Kubernetes; fullname: Carter Morgan, Kaslin Fields;
#KubernetesEssentialsfromGoogleCloud
Disclaimer: This is a Google Cloud series and is not affiliated with the Linux Foundation. - Věda a technologie
Thank you 🙏🏽. Well explained and easy to follow plus her mic is really good.
Thanks a lot. It really helps to get started as well as to refresh the basics of Kubernetes, The concepts are explained in simple terms and able to follow the video well - Not boring! Great .. Looking forward to more in this series.
Glad it was helpful!
How do I do auto updates on push to a registry?
Great Video thanks Carter and Kaslin
Hello, where can I find the previous video?
i am studying kubernates recently ,and my project is spring cloud stack project ,whether should i migrate my project to kubernates.
Love this playlist
What's the diff between deployment with k8s and deploy to a cloud platform?
Why we are getting this message
"The connection to the server localhost:8080 was refused - did you specify the right host or port?"
I respect your knowledge📚.
Where is the hands on link that they keep saying is in the description?
Cool stuff.. Thank you!
8:08 OMG i never seen that in any documentation but it's so necessary!
I'm so glad you learned something new! Config Maps were designed to allow you to set up your configuration info separately from your application code, but they're actually a pretty flexible API component. There are a few ways you can use them depending on your needs. You can create them more declaratively than I did in this example too. They're definitely useful and worth learning more about!
There's some great info on them in the Kubernetes documentation here: kubernetes.io/docs/concepts/configuration/configmap/
@@kaslinfields9604 Yeah it‘s makes sense to use configmaps and secrets. I know that principles already from Saltstack where declaration states and secrets are separated from each other in states and pillars. I also had a load balanced proxy running on GKE, but was facing the issue: How to config all those squid pod with the same configuration? :) Can these configmaps key pairs also replace values inside the config file running inside the pod or do i have to use environment values?
you keep mentioned that in the previous class we talked about !!
isn't this the getting start video??
Can you please update the github repo? my deployments/hello.yaml did not work, I had to change it to match the one in the video. Thanks
hello @Kaslin Fields2 questions : you used curl with -k options to skip certificate verification, why? And where can we find the code lab so we can dig in your demo? Thanks :)
Hi, great catch and thanks for the question! And also a good catch on the code, we've now updated the video description with a link to the github repo, which you can find here: goo.gle/39dweS1
Regarding the -k, my focus in this demo was on using Kubernetes to deploy an application, and showing how the Kubernetes API objects can be used. As such, I didn't actually bother ensuring the certificates were certified by a proper authority. With the way I set everything up here, trying to connect without the -k (which would mean trying to connect and verify the certificates) fails with an error along the lines of "curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it." (I deployed it and tested it just now!)
For the purposes of what I aimed to show in this demo, this is fine. But of course in a scenario with a more realistic web application, that might be a problem!
Hi Team,
Though all of your content about Kubernetes available on this channel is nice but I suggest you to create a new channel for Kubernetes called "Google Kubernetes Engine" and make available detailed content for novice to experts along with the periodic updates and advancements on the same...
I agree that this would be something very nice, especially as people want to learn more about GKE in the same format.
where are the files to follow along with?
Thank you for asking! We forgot to post the repo in the description. The description has now been updated. You can find the code in the github repo here: goo.gle/39dweS1
And a more detailed walkthrough of this demo + a bit more in the blog post here: goo.gle/39irwSS
Lovely motivational important things.Iam truly try it's ok👌.
Really too bad you didn't show the yaml of the frontend, we don't know how secret and configmap are used :(
I guess you used them in a volume and mount with the proper paths : one configmap mount to the nginx conf with the path, one secret mount with the path of cert, key in pem format here /etc/tls
Another great catch, sorry about that! The link to the code is now in the description so you can check it out for yourself in the github repo. That's right, there are volume mounts in the frontend yaml with the nginx conf path and the secret path. Here's what it looks like (at time of writing):
...
volumeMounts:
- name: "nginx-frontend-conf"
mountPath: "/etc/nginx/conf.d"
- name: "tls-certs"
mountPath: "/etc/tls"
volumes:
- name: "tls-certs"
secret:
secretName: "tls-certs"
- name: "nginx-frontend-conf"
configMap:
name: "nginx-frontend-conf"
items:
- key: "frontend.conf"
path: "frontend.conf"
maybe move the circle with the camera on you on the top part of the screen so it does not hide the code. the top part is pretty useless anyway
11:22
I pray to work with google this year 👨🏾💻
i wish i could do anything for google