From 0aa93172d9ff8640ec795b0b8915a94b9227423e Mon Sep 17 00:00:00 2001 From: Inaki Fernandez Date: Sat, 24 Aug 2024 10:35:55 +0200 Subject: [PATCH] Aug 24th --- docs/azure.md | 1 + docs/golang.md | 1 + docs/images/bytebytego.jpg | Bin 0 -> 5388 bytes docs/index.md | 2 +- docs/kubernetes-tools.md | 1 + docs/kubernetes.md | 24 +++++++++++++----------- 6 files changed, 17 insertions(+), 12 deletions(-) create mode 100644 docs/images/bytebytego.jpg diff --git a/docs/azure.md b/docs/azure.md index 6cb2a86a0..be8302469 100644 --- a/docs/azure.md +++ b/docs/azure.md @@ -642,6 +642,7 @@ - [johnlokerse.dev: Lint Azure Bicep templates in Azure DevOps](https://johnlokerse.dev/2024/02/05/lint-azure-bicep-templates-in-azure-devops/) - [techcommunity.microsoft.com: Announcing public preview of Bicep templates support for Microsoft Graph](https://techcommunity.microsoft.com/t5/azure-governance-and-management/announcing-public-preview-of-bicep-templates-support-for/ba-p/4141772) - [github.com/Azure-Samples/azure-ai-studio-secure-bicep](https://github.com/Azure-Samples/azure-ai-studio-secure-bicep) This repository contains a collection of Bicep modules designed to deploy a secure Azure AI Studio environment with robust network and identity security restrictions. + - [Deploy Secure Azure AI Studio with a managed virtual network](https://github.com/Azure-Samples/azure-ai-studio-secure-bicep/blob/main/bicep/managedvnet/README.md) ## Azure Verified Modules diff --git a/docs/golang.md b/docs/golang.md index ef4390961..a49c83332 100644 --- a/docs/golang.md +++ b/docs/golang.md @@ -78,6 +78,7 @@ - [dev.to: Watch and react to Kubernetes objects changes](https://dev.to/lucasepe/watch-and-react-to-kubernetes-objects-changes-3kcg) client-go is the official client library for the Go programming language. In this article, you will learn how to use RESTClient to watch and then react to namespaces changes. - [shahin-mahmud.medium.com: Write your first Kubernetes operator in go](https://shahin-mahmud.medium.com/write-your-first-kubernetes-operator-in-go-177047337eae) - [collabnix.com: Kubernetes CRUD Operation using Go on Docker Desktop](https://collabnix.com/kubernetes-crud-operation-using-go-on-docker-desktop/) +- [blog.kubesimplify.com: Perform CRUD Operations on Kubernetes Using Golang 🌟](https://blog.kubesimplify.com/perform-crud-operations-on-kubernetes-using-golang) ## Building container images diff --git a/docs/images/bytebytego.jpg b/docs/images/bytebytego.jpg new file mode 100644 index 0000000000000000000000000000000000000000..76f8c0348e95f5caaed25b04658a78d4b40c659f GIT binary patch literal 5388 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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index 229a6b3d0..16ed403ea 100644 --- a/docs/index.md +++ b/docs/index.md @@ -336,7 +336,7 @@ A curated list of awesome references collected since 2018. Microservices archite [![thetips4you](images/thethips4you.jpg){: style="width:7%"}](https://www.youtube.com/c/Thetips4you) [![cloud learnhub](images/cloud_learn_hub.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC57acx8sCmE7uFHfVMvIlNg) [![John Savill](images/John_Savill.jpg){: style="width:7%"}](https://www.youtube.com/c/NTFAQGuy) [![microservice factory](images/microservice_factory.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCorFV-WGnajyfNu4zPI0AAA) [![kubedb appscode](images/kubedb_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/AppsCodeInc) [![devops toolkit](images/devops_toolkit.jpg){: style="width:7%"}](https://www.youtube.com/c/DevOpsToolkit) [![ansible pilot](images/ansiblepilot.jpg){: style="width:7%"}](https://www.youtube.com/c/AnsiblePilot) [![codelytv](images/codelytv_logo.jpg){: style="width:7%"}](https://www.youtube.com/CodelyTV) [![pelado nerd](images/pelado_nerd.jpg){: style="width:7%"}](https://www.youtube.com/c/PeladoNerd) [![hola mundo](images/hola_mundo.jpg){: style="width:7%"}](https://www.youtube.com/c/HolaMundoDev) [![javier garzas](images/jgarzas.jpg){: style="width:7%"}](https://www.youtube.com/c/JavierGarz%C3%A1s/)
[![london IAC](images/londonIAC.jpg){: style="width:7%"}](https://www.youtube.com/c/LondonIAC) [![techworld nana](images/techworld_nana.jpg){: style="width:7%"}](https://www.youtube.com/c/TechWorldwithNana) [![honeypot](images/honeypot.jpg){: style="width:7%"}](https://www.youtube.com/c/Honeypotio) [![Ali Spittel](images/aspittel.jpg){: style="width:7%"}](https://www.youtube.com/c/AliSpittelDev) [![thomas maurer](images/thomas_maurer.jpg){: style="width:7%"}](https://www.youtube.com/c/ThomasMaurerCloud) [![freecodecamp](images/freecodecamp.jpg){: style="width:7%"}](https://www.youtube.com/c/Freecodecamp) [![thenewstack](images/thenewstack.jpg){: style="width:7%"}](https://www.youtube.com/c/TheNewStack) [![argocd project](images/argoproj.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCOvYmppcbOPm1viN6ust3lA) [![fluxcd](images/fluxcd.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCoZxt-YMhGHb20ZkvcCc5KA) [![container days](images/containerdays.jpg){: style="width:7%"}](https://www.youtube.com/c/ContainerDays) [![the cloud girl](images/thecloudgirl.jpg){: style="width:7%"}](https://www.youtube.com/c/priyankavergadia)
[![ContinuousDeliveryFoundation](images/ContinuousDeliveryFoundation.jpg){: style="width:7%"}](https://www.youtube.com/c/ContinuousDeliveryFoundation) [![tina huang](images/tinahuang.jpg){: style="width:7%"}](https://www.youtube.com/c/TinaHuang1) [![azure devops](images/azure_devops_youtube.jpg){: style="width:7%"}](https://www.youtube.com/c/AzureDevOps) [![azure cloud native](images/azure_cloud_native.jpg){: style="width:7%"}](https://www.youtube.com/channel/UC2Pk9GcHhlVV0R9CQIU6gLw) [![alibaba cloud](images/alibaba_cloud.jpg){: style="width:7%"}](https://www.youtube.com/c/AlibabaCloud) [![linode cloud](images/linode_cloud.jpg){: style="width:7%"}](https://www.youtube.com/c/linode) [![gaia-x](images/gaia_x.jpg){: style="width:7%"}](https://www.youtube.com/channel/UCB5WMc2FfrxKzfd7XIODoMw) [![gps](images/gps.jpg){: style="width:7%"}](https://www.youtube.com/c/MadeByGPS) [![keptn](images/keptn_logo.jpg){: style="width:7%"}](https://www.youtube.com/c/keptn) [![anais urlichs](images/anais_urlichs.jpg){: style="width:7%"}](https://www.youtube.com/c/AnaisUrlichs) [![the digital life](images/the_digital_life.jpg){: style="width:7%"}](https://www.youtube.com/c/TheDigitalLifeTech)
-[![Azure Terraformer](images/azure-terraformer.jpg){: style="width:7%"}](https://www.youtube.com/@azure-terraformer) [![Ned in the Cloud](images/nedinthecloud.jpg){: style="width:7%"}](https://www.youtube.com/@NedintheCloud) [![Tech with Helen](images/techwithhelen.jpg){: style="width:7%"}](https://www.youtube.com/@techwithhelen) +[![Azure Terraformer](images/azure-terraformer.jpg){: style="width:7%"}](https://www.youtube.com/@azure-terraformer) [![Ned in the Cloud](images/nedinthecloud.jpg){: style="width:7%"}](https://www.youtube.com/@NedintheCloud) [![Tech with Helen](images/techwithhelen.jpg){: style="width:7%"}](https://www.youtube.com/@techwithhelen) [![bytebytego](images/bytebytego.jpg){: style="width:7%"}](https://www.youtube.com/@ByteByteGo) ??? note "Top Videos & Clips - Click to expand!" diff --git a/docs/kubernetes-tools.md b/docs/kubernetes-tools.md index af36730ba..47d727665 100644 --- a/docs/kubernetes-tools.md +++ b/docs/kubernetes-tools.md @@ -947,6 +947,7 @@ elastic quotas - Effortless optimization at its finest! - [Robusta](https://docs.robusta.dev/) Robusta is an open source platform for webhooks and automations. It contains a library of 50+ builtin actions. - [home.robusta.dev: Why everyone should track Kubernetes changes and top four ways to do so](https://home.robusta.dev/blog/why-everyone-should-track-and-audit-kubernetes-changes-and-top-ways/) Robusta is an event-triggered automations engine. Using Robusta you can subscribe to changes in a cluster (or multiple clusters) and publish that information to useful locations. - [==robusta-dev/krr==](https://github.com/robusta-dev/krr) Prometheus-based Kubernetes Resource Recommendations. Robusta KRR (Kubernetes Resource Recommender) is a CLI tool for optimizing resource allocation in Kubernetes clusters. It gathers pod usage data from Prometheus and recommends requests and limits for CPU and memory. This reduces costs and improves performance. +- [==blog.devops.dev: How to use the Kubernetes Resource Recommender tool in a GKE Cluster== 🌟](https://blog.devops.dev/how-to-use-the-kubernetes-resource-recommender-tool-in-a-gke-cluster-ef48a6dea85c) ## Soup GitOps Operator diff --git a/docs/kubernetes.md b/docs/kubernetes.md index ba6c52010..b1cd86487 100644 --- a/docs/kubernetes.md +++ b/docs/kubernetes.md @@ -47,7 +47,7 @@ 1. [Multi-Cluster Services API](#multi-cluster-services-api) 12. [Kubernetes Health Checks/Probes. Startup, Liveness, Readiness](#kubernetes-health-checksprobes-startup-liveness-readiness) 13. [Reserved CPU and memory in Kubernetes nodes](#reserved-cpu-and-memory-in-kubernetes-nodes) - 14. [Kubernetes Resource and Capacity Management. Capacity Planning. Resource Quotas per namespace, LimitRanges per namespace, Limits and Requests per POD](#kubernetes-resource-and-capacity-management-capacity-planning-resource-quotas-per-namespace-limitranges-per-namespace-limits-and-requests-per-pod) + 14. [Kubernetes Resource and Capacity Management. QoS. Capacity Planning. Resource Quotas per namespace, LimitRanges per namespace, Limits and Requests per POD](#kubernetes-resource-and-capacity-management-qos-capacity-planning-resource-quotas-per-namespace-limitranges-per-namespace-limits-and-requests-per-pod) 15. [Kubernetes Scheduler. Kube Scheduler](#kubernetes-scheduler-kube-scheduler) 1. [Pod rebalancing and allocations. Pod Priorities](#pod-rebalancing-and-allocations-pod-priorities) 16. [Kubernetes etcd](#kubernetes-etcd) @@ -227,14 +227,6 @@ - [==spiceworks.com: How to Get Started With Kubernetes the Right Way: DevOps Experts Weigh In== 🌟](https://www.spiceworks.com/tech/cloud/articles/how-to-get-started-with-kubernetes/) **Kubernetes deployments need meticulous planning and resource allocation like any other software infrastructure solution. Here, experts discuss the best strategies to deploy Kubernetes seamlessly.** - [==dev.to: What Problem Is Kubernetes Actually Trying To Solve?== 🌟](https://dev.to/thenjdevopsguy/what-problem-is-kubernetes-actually-trying-to-solve-3g1n) - ["It's funny: everyone thinks CPU requests are only used for scheduling (WRONG) and memory requests determine who gets OOMKilled (WRONG) but it's actually the opposite! At runtime, memory requests do nothing, but CPU requests DO" 🌟](https://twitter.com/aantn) -- [==medium.com/directeam: Kubernetes resources under the hood β€” Part 1== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-1-4f2400b6bb96) - - [==medium.com/directeam: Kubernetes resources under the hood β€” Part 2== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-2-6eeb50197c44) Do you think that CPU requests are just used for scheduling? Think again. Introducing CPU Shares, and laying the grounds for removing your limits! This 3-part series covers how Kubernetes resources (CPU and memory) work. You will learn the following: - - CFS (Completely Fair Scheduler) - - Pod priorities - - Quality of Services - - How scheduling works - - OOM - - [==medium.com/directeam: Kubernetes resources under the hood β€” Part 3== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-3-6ee7d6015965) **Kubernetes resources, breaking the limits! Understand the biggest Kubernetes misunderstanding and why you should remove your CPU limits and unleash your cluster's full potential** - [developers.redhat.com: Kubernetes 101 for developers: Names, ports, YAML files, and more](https://developers.redhat.com/articles/2022/08/30/kubernetes-101-developers-names-ports-yaml-files-and-more) Kubernetes 101 for developers: - Running multiple containers - Port management @@ -1180,7 +1172,7 @@ - [==medium.com/@danielepolencic: In Kubernetes, are there hidden costs to running many cluster nodes?==](https://medium.com/@danielepolencic/reserved-cpu-and-memory-in-kubernetes-nodes-65aee1946afd) Yes, since not all CPU and memory in your Kubernetes nodes can be used to run Pods. -### Kubernetes Resource and Capacity Management. Capacity Planning. Resource Quotas per namespace, LimitRanges per namespace, Limits and Requests per POD +### Kubernetes Resource and Capacity Management. QoS. Capacity Planning. Resource Quotas per namespace, LimitRanges per namespace, Limits and Requests per POD - [itnext.io: Kubernetes Resource Management in Production](https://itnext.io/kubernetes-resource-management-in-production-d5382c904ed1) Requests, Limits, Overcommitment, Slack/Waste, Throttling - [medium: Ultimate Kubernetes Resource Planning Guide](https://medium.com/dev-genius/ultimate-kubernetes-resource-planning-guide-449a4fddd1d6) @@ -1222,7 +1214,7 @@ - [dev.to/pavanbelagatti: Learn How to Set Kubernetes Resource Requests and Limits](https://dev.to/pavanbelagatti/learn-how-to-set-kubernetes-resource-requests-and-limits-23n2) - [iceburn.medium.com: Kubernetes Resource Requests and Resource Limits](https://iceburn.medium.com/kubernetes-resource-requests-and-resource-limits-99c549c5a439) - [==home.robusta.dev: When is a CPU not a CPU? Benchmark of Kubernetes Providers and Node Efficiency== 🌟🌟](https://home.robusta.dev/blog/k8s-node-benchmark) **TLDR: On some cloud providers, you get half the CPU you expect due to burstable nodes. Without burstable nodes, overhead is improved but still significant.** -- [piotrminkowski.com: Resize CPU Limit To Speed Up Java Startup on Kubernetes](https://piotrminkowski.com/2023/08/22/resize-cpu-limit-to-speed-up-java-startup-on-kubernetes/) +- [piotrminkowski.com: Resize CPU Limit To Speed Up Java Startup on Kubernetes](https://piotrminkowski.com/2023/08/22/resize-cpu-limit-to-speed-up-java-startup-on-kubernetes/) In this article, you will learn how to solve problems with the slow startup of Java apps on Kubernetes related to the CPU limit. We will use a new Kubernetes feature called β€œIn-place Pod Vertical Scaling”. It allows resizing resources (CPU or memory) assigned to the containers without pod restart. We can use it since the Kubernetes 1.27 version. However, it is still the alpha feature, that has to be explicitly enabled. In order to test we will run a simple Spring Boot Java app on Kubernetes. - [medium.com/@mark.andreev: How to configure Kubernetes memory limits for Java application](https://medium.com/@mark.andreev/how-to-configure-kubernetes-memory-limits-for-java-application-ec0cc5a68c24) This article explores the JVM memory structure and flags that can be used to limit memory usage and how those map back to Kubernetes and cgroups v2. - [sosiv.io: A Deep Dive into Kubernetes Resource Requests and Limits](https://sosiv.io/post/a-deep-dive-into-kubernetes-resource-requests-and-limits) - [medium.com/pipedrive-engineering: How we choked our Kubernetes NodeJS services](https://medium.com/pipedrive-engineering/how-we-choked-our-kubernetes-nodejs-services-932acc8cc2be) Learn from the Pipedrive engineering team experience how to manage memory and CPU resources properly in NodeJS and Kubernetes without slowing down your services @@ -1240,6 +1232,16 @@ - [dnastacio.medium.com: Why You Should Keep Using CPU Limits on Kubernetes](https://dnastacio.medium.com/why-you-should-keep-using-cpu-limits-on-kubernetes-60c4e50dfc61) Or why staying away from unused CPU may be good for your containers - [medium.com/@frommeyerc: Containers and the JVM: About CFS and how to deal with it](https://medium.com/@frommeyerc/containers-and-the-jvm-about-cfs-and-how-to-deal-with-it-805883b72a87) This article explores the interaction between containers, the JVM, and the CFS scheduler in the Linux Kernel. It explains how CPU time is allocated, the impact of CPU requests and limits in Kubernetes, and the consequences of throttling. - [lalatron.hashnode.dev: When Kubernetes and Go don't work well together 🌟](https://lalatron.hashnode.dev/when-kubernetes-and-go-dont-work-well-together) **Go is not aware of the limits set for its container, causing some issues not easy to track. This is a story about how I stumbled into one of them.** This article discusses an issue in which a pod was repeatedly restarted due to an OOM error. The problem stemmed from Go's garbage collector not being aware of the container's memory limits, which caused memory allocation to exceed these limits. +- [==foxutech.com: Kubernetes Namespace Resource Quota and Limits== 🌟](https://foxutech.com/kubernetes-namespace-resource-quota-and-limits/) - [youtube](https://www.youtube.com/watch?v=iADfzLI3qDI&t=320s) +- [==medium.com/directeam: Kubernetes resources under the hood β€” Part 1== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-1-4f2400b6bb96) + - [==medium.com/directeam: Kubernetes resources under the hood β€” Part 2== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-2-6eeb50197c44) Do you think that CPU requests are just used for scheduling? Think again. Introducing CPU Shares, and laying the grounds for removing your limits! This 3-part series covers how Kubernetes resources (CPU and memory) work. You will learn the following: + - CFS (Completely Fair Scheduler) + - Pod priorities + - Quality of Services + - How scheduling works + - OOM + - [==medium.com/directeam: Kubernetes resources under the hood β€” Part 3== 🌟](https://medium.com/directeam/kubernetes-resources-under-the-hood-part-3-6ee7d6015965) **Kubernetes resources, breaking the limits! Understand the biggest Kubernetes misunderstanding and why you should remove your CPU limits and unleash your cluster's full potential** +- [reddit.com/r/kubernetes: CPU Limits](https://www.reddit.com/r/kubernetes/comments/12he7aa/cpu_limits/] ### Kubernetes Scheduler. Kube Scheduler