Kustomize - How to Simplify Kubernetes Configuration Management

  Рет қаралды 35,077

DevOps Toolkit

DevOps Toolkit

Күн бұрын

Пікірлер: 66
@MrKofiray71
@MrKofiray71 3 жыл бұрын
Yes please . A comparison between Helm and Kustomize will be nice.
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
It's coming :)
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Done! The comparison is available at kzbin.info/www/bejne/kH6pioajZdGXh5I
@robinhughes-jones7558
@robinhughes-jones7558 Жыл бұрын
​@@DevOpsToolkit and it's great.
@replicaxxxxx
@replicaxxxxx 3 жыл бұрын
This video shows more practical and easy-to-understand examples than Kubernetes official documentation.
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Thanks
@kingrogerst
@kingrogerst 3 жыл бұрын
Hi Victor, a comparison between Helm and Kustomize would be awesome! Please and thank you!
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Noted! Coming soon :)
@Shawn-Mosher
@Shawn-Mosher 3 жыл бұрын
Please do a video about Argo Workflow as well lol
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Workflows is coming as well!
@idouxda
@idouxda 2 жыл бұрын
Why don’t you use skaffold? It works with kustomize too.
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
That video is focused on customize alone. You will find videos about scaffold and quite a few other tools on this channel as well.
@creative-commons-videos
@creative-commons-videos 3 жыл бұрын
is it still okay to ask some question related Rancher, I hope i am not putting you in trouble since you joined Shipa :) I am currently using Rancher but definitely want to shift to Shipa, the only thing about rancher is it extreamly easy to understand at first glance, where in shipa need to understand too much terminology like frameworks, plans, services etc, it would be cool if you make more videos on Shipa for each section particular :)
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
No worries. You're not putting me into any trouble. To begin with, this channel is not influenced by the company I work for (it was not in the past, and it will not be in the future). Also, Shipa and Rancher are solving very different problems. Rancher helps you create and manage k8s clusters, while Shipa simplifies app management for devs and gives ops the tools to help devs. I'll certainly make more videos about Shipa. I might do one more on this channel, and everything else in the Shipa channel (so that my channel keeps being neutral and focused on different tech). In other words, more is coming... :)
@creative-commons-videos
@creative-commons-videos 3 жыл бұрын
@@DevOpsToolkit Hurray! great to hear :) keep posting
@adityakaki5477
@adityakaki5477 2 жыл бұрын
How do you rollback a release using kustomize?
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
Revert the git commit and reapply the manifests.
@M3MYS3LF1979
@M3MYS3LF1979 Жыл бұрын
Good talk! At 29:10 (and elsewhere) If you don't wanna scroll through your terminal buffer when looking for a line or two, can pipe to less like so: kubectl --namespace argo get deployment argo-server --output yaml | less (then search with vim keybinding forward slash "/")
@iamr0b0tx
@iamr0b0tx 2 жыл бұрын
Marla Singer :-)
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
Oh yeah!
@thebtisamir3516
@thebtisamir3516 3 жыл бұрын
Thank you for this demonstration :) I'm wondering how we can implement this with merge requests to deploy from staging to a production environment for exemple..
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
I would recommend using Argo CD or Flux together with Kustomize. If you do, you would have repositories with definitions of what is running in each environment. Those definitions would be only links to app repos where Kustomize (or Helm) manifests are defined, and provide values or patches that should be overwritten. Take a look at kzbin.info/www/bejne/rKG6gpills6Fg5Y or kzbin.info/www/bejne/iGeylnydl5yfi6s
@JohnWu
@JohnWu 2 жыл бұрын
I am now at a point where I am frustrated with helm. Somehow, we still need to spend lots of time to customise helm charts for new apps we create. It would be nice to have a generic helm chart for all situations but not sure if that can be maintained well. Will try out Kustomize and other tools.
@amircohen8323
@amircohen8323 3 жыл бұрын
Love your videos waiting for the next one 😀
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
More to come!
@zahurulhaque6377
@zahurulhaque6377 2 жыл бұрын
This is the best Kustomize video I found online, really appreciate.
@andriyun
@andriyun 2 жыл бұрын
Great overview of Kustomize. Thank you for that 🙏☺️
@patrickdelaney4309
@patrickdelaney4309 2 жыл бұрын
Long time listener, first time commenter - this may not have been the case when you made this video, but evidently kustomize is native to kubectl, so if you do, "kubectl apply -k whatever/" it will be the same as "kustomize build whatever/" ... of course, there may be some minor incompatibilities. The reason I mention this is because I was trying to build everything inside of a docker container to keep my experiment isolated, and it's kind of tricky to install kustomize, but pretty trivial to install kubectl.
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
At the time I recorded that video, kustomize that was baked into kubectl was very old and there were some issues that prevented the team from upgrading it. That is now solved and now I use only the one in kubectl.
@LKamii
@LKamii 3 жыл бұрын
Thank you. This helps me so much!
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Glad it helped!
@taekwondo4u
@taekwondo4u 3 жыл бұрын
Hi great channel! But i didn't really understand how you applied the patch specific to production, i didn't see you specify a namespace or anything? How do you make sure that only overlays/production gets executed for production and not for the other environments?
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Assuming that you are executing the commands directly, the command (gist.github.com/vfarcic/07b0b4642b5694d0239ee7c1629173ce#file-02-02-kustomize-sh-L70) points to the overlays/production directory that contains kustomization.yaml (github.com/vfarcic/argocd-production/blob/master/argo-workflows/overlays/production/kustomization.yaml). Now, in that specific case, the Namespace is not defined in kustomization.yaml since there is only production and the manifests themselves have `metadata.namespace` set. If you would have multiple environments (Namespaces) in the same cluster, you would remove `metadata.namespace` from manifests and specify it inside `kustomization.yaml`. If you would go further, you would use Argo CD or Flux to manage actual deployments and, in those cases, you would not be executing `kustomize` commands. Please let me know if that answers your question. I might have misunderstood what you're asking.
@marwan.alrihawi
@marwan.alrihawi 3 жыл бұрын
It is very resembles to terragrunt / terraform I think terragrunt can be third column for your matrix compare kustimiz/helm/terragrunt
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Terragrunt is indeed similar. If YAML the preferable way to define k8s resources and Terraform is for infrastructure, Kustomize to YAML is what Terragrunt is to Terraform. Now, I wouldn't add it to the comparizon with Kustomize and Helm since the two are about k8s resources and Terragrunt is about infrastructure (with Terraform). What might be interesting is to paint the whole picture using Kustomize and Terraform to have a similar logic to manage everything, from infra to the apps in k8s. WDYT?
@Shawn-Mosher
@Shawn-Mosher 3 жыл бұрын
A comparison between Helm and Kustomize, kinda confused about when to use one over the other.
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
It's coming!
@t0pm03
@t0pm03 3 жыл бұрын
Your kustomization.yaml works with "kustomize build" but not with "kubectl apply -k". Any idea why?
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
I haven't tried `kubectl -k` with the examples I used in that video. It's possible, or even likely, that something doesn't work. The issue is that Kustomize inside `kubectl` is behind `kustomize` binary. Effectively, if you choose to use `kubectl -k`, you are choosing to be behind and use older version of Kustomize. That's one of the things I never liked with `kubectl -k`.
@Shawn-Mosher
@Shawn-Mosher 3 жыл бұрын
kubectl is using old V2 of kustomize binary and kustomize binary is on V3 which is why the "kubectl apply -k" doesn't work in the example. For more feature rich experience use the kustomize commands and pipe it to kubectl apply.
@johndangelo9630
@johndangelo9630 Жыл бұрын
GREAT Subject!!
@viktorsobol8852
@viktorsobol8852 Жыл бұрын
Very well-structured content!
3 жыл бұрын
Thanks for the great video. I would like to have the Argo workflows one as well please :-)
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Argo Workflows is (probably) coming next week :) This Thursday will be about a prerequisite for Argo Workflows (you can probably guess what that is).
@amandafalke7670
@amandafalke7670 3 жыл бұрын
Great job!! awesome video!!
@hamza_belmellouki
@hamza_belmellouki 2 жыл бұрын
Thank you sir!
@BogdanSorlea
@BogdanSorlea 2 жыл бұрын
ingress-nginx or nginx-ingress, which one?
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
ingress-nginx
@alexanderdo3122
@alexanderdo3122 3 жыл бұрын
Please do a helm comparison!
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Something like kzbin.info/www/bejne/kH6pioajZdGXh5I
@joebowbeer
@joebowbeer 3 жыл бұрын
Comparison to carvel?
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Added to the TODO list :)
@julianomoraisbarbosa
@julianomoraisbarbosa 2 жыл бұрын
👌👏
@webmakaka
@webmakaka 3 жыл бұрын
Wrong link on gist. (I have found the right gist).
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Thanks for letting me know. I just corrected it...
@gus.rivero
@gus.rivero 3 жыл бұрын
Excelent!
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Thanks
@LeandroSantos-bt1lg
@LeandroSantos-bt1lg Жыл бұрын
Thanks!
@DevOpsToolkit
@DevOpsToolkit Жыл бұрын
Thanks a ton Leandro.
@caesarion6
@caesarion6 3 жыл бұрын
A video about crossplane and your honest opinions about it would be interesting
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Crossplane is already scheduled. It'll probably take a few weeks (up to a month) until it comes.
@DevOpsToolkit
@DevOpsToolkit 3 жыл бұрын
Crossplane video has been published few hours ago. Thanks for the suggestion. Keep it coming.
@williampolinchak
@williampolinchak 2 жыл бұрын
Is there a way to generate a basic template with a deployment, ingress, etc?
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
When you say "generate a basic template", do you mean from the perspective of shifting left or something else. In any case, Kustomize does not help you define manifests or templates. It enables you to define overlays that deal with variations between different environments. Just as with "pure k8s YAML" or Helm, you need to write manifests first and then use Kustomize to create overlays. Now, you can choose one of the solutions that provide opinionated application management (e.g., Ketch, Knative, etc.). Those simplify definitions of the manifests, but at the cost of flexibility. Or, you can use one of the tools that allow you to create opinionated definitions (e.g., OAM/KubeVela, Crossplane) that enable you to get to a similar point to the first group. They require more initial involvement but provide greater flexibility. All that being said, I have the feeling that I misunderstood your question. If that's the case, please elaborate a bit more and I'll do my best to be more helpful. Or, even better, join one of the upcoming live AMA sessions or the monthly members-only chat and we can discuss it live.
@williampolinchak
@williampolinchak 2 жыл бұрын
@@DevOpsToolkit Something like the helm create command. Where you don't have to start from scratch on the yaml files.
@DevOpsToolkit
@DevOpsToolkit 2 жыл бұрын
@@williampolinchak I don't think there is something equivalent to `helm create` in Kustomize.
Ketch - How to Simplify Kubernetes Deployments
26:03
DevOps Toolkit
Рет қаралды 3,8 М.
LIFEHACK😳 Rate our backpacks 1-10 😜🔥🎒
00:13
Diana Belitskay
Рет қаралды 3,9 МЛН
Brawl Stars Edit😈📕
00:15
Kan Andrey
Рет қаралды 58 МЛН
HAH Chaos in the Bathroom 🚽✨ Smart Tools for the Throne 😜
00:49
123 GO! Kevin
Рет қаралды 16 МЛН
Helm vs. Kustomize: When, Why, and How?
15:42
Ahmed Elfakharany - أحمد الفخراني
Рет қаралды 10 М.
Argo Events - Event-Based Dependency Manager for Kubernetes
34:28
DevOps Toolkit
Рет қаралды 37 М.
Organizing the YAML mess with Kustomize - Florian Assmus
30:03
ContainerDays
Рет қаралды 20 М.
Simplify Kubernetes YAML with Kustomize
20:37
That DevOps Guy
Рет қаралды 76 М.
Kustomize: The Best Way to Manage Your Kubernetes Configs
24:46
DevOps Journey
Рет қаралды 29 М.
Let's kustomize our manifests with style! by Kevin Davin
30:57
Helmfile - How to manage Kubernetes Helm releases
29:19
DevOps Toolkit
Рет қаралды 18 М.
Getting Started With Kustomize (2022)
7:10
Michael Levan
Рет қаралды 23 М.
LIFEHACK😳 Rate our backpacks 1-10 😜🔥🎒
00:13
Diana Belitskay
Рет қаралды 3,9 МЛН