From 7962a81c4fba96bee873441d3f003746123ab7b5 Mon Sep 17 00:00:00 2001 From: Nubenetes Bot Date: Sun, 24 May 2026 14:52:48 +0200 Subject: [PATCH] fix: comprehensive audit and correction of link descriptions, years, and deep links in PR #209 --- docs/GoogleCloudPlatform.md | 2 +- docs/ai-agents-mcp.md | 2 +- docs/ai.md | 4 +- docs/ansible.md | 4 +- docs/api.md | 6 +- docs/argo.md | 28 ++--- docs/aws-databases.md | 2 +- docs/aws-devops.md | 2 +- docs/aws-monitoring.md | 2 +- docs/aws-networking.md | 2 +- docs/aws-serverless.md | 4 +- docs/aws-storage.md | 2 +- docs/aws-tools-scripts.md | 2 +- docs/aws.md | 2 +- docs/caching.md | 4 +- docs/chaos-engineering.md | 4 +- docs/container-managers.md | 4 +- docs/crossplane.md | 2 +- docs/databases.md | 6 +- docs/demos.md | 22 ++-- docs/developerportals.md | 6 +- docs/devsecops.md | 18 +-- docs/docker.md | 2 +- docs/dotnet.md | 2 +- docs/faq.md | 2 +- docs/finops.md | 10 +- docs/flux.md | 4 +- docs/gitops.md | 12 +- docs/golang.md | 8 +- docs/grafana.md | 4 +- docs/helm.md | 14 +-- docs/iac.md | 2 +- docs/introduction.md | 20 ++-- docs/istio.md | 8 +- .../java-and-java-performance-optimization.md | 8 +- docs/jenkins.md | 2 +- docs/kubectl-commands.md | 6 +- docs/kubernetes-autoscaling.md | 22 ++-- docs/kubernetes-backup-migrations.md | 6 +- docs/kubernetes-based-devel.md | 2 +- docs/kubernetes-client-libraries.md | 4 +- docs/kubernetes-monitoring.md | 10 +- docs/kubernetes-networking.md | 20 ++-- docs/kubernetes-on-premise.md | 6 +- docs/kubernetes-operators-controllers.md | 22 ++-- docs/kubernetes-releases.md | 6 +- docs/kubernetes-security.md | 54 ++++----- docs/kubernetes-storage.md | 10 +- docs/kubernetes-tools.md | 18 +-- docs/kubernetes-troubleshooting.md | 36 +++--- docs/kubernetes.md | 104 +++++++++--------- docs/kustomize.md | 8 +- docs/managed-kubernetes-in-public-cloud.md | 46 ++++---- docs/maven-gradle.md | 2 +- docs/message-queue.md | 16 +-- docs/mlops.md | 10 +- docs/monitoring.md | 8 +- docs/nosql.md | 2 +- docs/ocp3.md | 28 ++--- docs/ocp4.md | 4 +- docs/openshift.md | 4 +- ...ormance-testing-with-jenkins-and-jmeter.md | 4 +- docs/prometheus.md | 8 +- docs/qa.md | 6 +- docs/rancher.md | 6 +- docs/registries.md | 2 +- docs/scaffolding.md | 2 +- docs/serverless.md | 6 +- docs/servicemesh.md | 4 +- docs/terraform.md | 18 +-- docs/test-automation-frameworks.md | 2 +- docs/visual-studio.md | 4 +- docs/web-servers.md | 2 +- docs/yaml.md | 8 +- 74 files changed, 377 insertions(+), 377 deletions(-) diff --git a/docs/GoogleCloudPlatform.md b/docs/GoogleCloudPlatform.md index cf3b373b..90c67b19 100644 --- a/docs/GoogleCloudPlatform.md +++ b/docs/GoogleCloudPlatform.md @@ -120,7 +120,7 @@ - [A hybrid cloud-native DevSecOps pipeline with JFrog Artifactory and GKE on-prem ๐ŸŒŸ](https://docs.cloud.google.com/architecture) Running in a hybrid environment means that some of your processing happens on Google Cloud and other processing remains on-premises. Anthos helps you manage both an on-premises Kubernetes cluster and a cluster running on Google Cloud. - [Bringing Kubernetesโ€™ goodness to Windows Server apps with Anthos](https://cloud.google.com/blog/topics/anthos/windows-server-support-comes-to-anthos-on-prem) Windows container support to GKE on-premises through Anthos. - [cloud.google.com: Anthos makes multi-cloud easier with new API, support for Azure](https://cloud.google.com/blog/products/containers-kubernetes/google-cloud-anthos-multicloud-api-and-gke-on-azure-ga) -- [medium.com/google-cloud: Anthos-at-Home: Spinning Up a Bare-Metal Anthos Cluster on Dumpster Servers](https://medium.com/google-cloud/anthos-at-home-spinning-up-a-bare-metal-anthos-cluster-on-dumpster-servers-5bcef301cfa5) In this article, you will learn the capabilities of Anthos on bare metal and find a detailed guide and explanation on how to do it yourself +- [medium.com/google-cloud: Anthos-at-Home: Spinning Up a Bare-Metal Anthos Cluster on Dumpster Servers](https://medium.com/google-cloud/anthos-at-home-spinning-up-a-bare-metal-anthos-cluster-on-dumpster-servers-5bcef301cfa5) the capabilities of Anthos on bare metal and find a detailed guide and explanation on how to do it yourself ## Python diff --git a/docs/ai-agents-mcp.md b/docs/ai-agents-mcp.md index c1491c7e..32a32c0e 100644 --- a/docs/ai-agents-mcp.md +++ b/docs/ai-agents-mcp.md @@ -14,7 +14,7 @@ Resources, tools, and projects related to autonomous AI agents, Model Context Pr - [modelcontextprotocol.io: MCP Official Documentation](https://modelcontextprotocol.io/docs/getting-started/intro) ## AI Agents - - [IBM IAM for AI Agents](https://t.co/EKsVgKA4xn) - This resource discusses how IBM Identity and Access Management (IAM) provides native IAM for AI agents, enabling them to have an identity and deliver least privileged access. + - [IBM IAM for AI Agents](https://t.co/EKsVgKA4xn) -how IBM Identity and Access Management (IAM) provides native IAM for AI agents, enabling them to have an identity and deliver least privileged access. - [Level Up Your Agents: Announcing Google's Official Skills Repository](https://cloud.google.com/blog/topics/developers-practitioners/level-up-your-agents-announcing-googles-official-skills-repository) ๐ŸŒŸ - This blog post announces the launch of Google's official Agent Skills repository on GitHub, designed to equip AI agents with condensed expertise on specific technologies and tasks. Skills are presented in an open Markdown format, including reference files and code snippets, to provide agent-first documentation. This approach aims to reduce 'context bloat' often encountered when using Model Context Protocol (MCP) servers, leading to more efficient and cost-effective AI agent interactions with Google Cloud products like Gemini API, BigQuery, and GKE. - [Claude Code Best Practice](https://github.com/shanraisshan/claude-code-best-practice) - A GitHub repository focused on 'vibe coding to agentic engineering', providing practices and examples for interacting with AI models like Claude. It includes sections on agents, commands, skills, development workflows, and implementation details. - [Kiro: Engineering Rigor for Agentic Development](https://kiro.dev) - Kiro is a tool designed to bring engineering discipline to AI agent development. It focuses on managing intent, handling long-running tasks across large codebases, and validating code correctness through a learning agent. Key features include converting natural language prompts into structured requirements (EARS notation), generating architectural designs, creating implementation plans with discrete, sequenced tasks, and enabling terminal-based interaction for building features, automating workflows, and debugging. diff --git a/docs/ai.md b/docs/ai.md index 96b628bb..33126242 100644 --- a/docs/ai.md +++ b/docs/ai.md @@ -47,7 +47,7 @@ - [aman.ai: Primers โ€ข Generative Pre-trained Transformer (GPT)](https://aman.ai/primers/ai/gpt) ## LLMOps - - [Development Environments for Cloud Agents](https://cursor.com/blog/cloud-agent-development-environments) ๐ŸŒŸ - This article introduces Cursor's new tools for configuring development environments for cloud agents. It highlights the importance of robust environments for agents to perform end-to-end engineering tasks, including accessing codebases, dependencies, credentials, and build systems. The feature supports multi-repo environments, allowing agents to reason across multiple codebases, which is crucial for microservice architectures. + - [Development Environments for Cloud Agents](https://cursor.com/blog/cloud-agent-development-environments) ๐ŸŒŸ -Cursor's new tools for configuring development environments for cloud agents. It highlights the importance of robust environments for agents to perform end-to-end engineering tasks, including accessing codebases, dependencies, credentials, and build systems. The feature supports multi-repo environments, allowing agents to reason across multiple codebases, which is crucial for microservice architectures. - [Cursor AI Fundamentals Course](https://cursor.com/es/learn) - Official tutorials for Cursor, covering AI fundamentals including models, tokens, hallucinations, agents, MCP, skills, and context. The course is in Spanish and consists of 13 modules. - [Cursor Bugbot Effort Levels Documentation](https://cursor.com/docs/bugbot#effort-levels) - Documentation for Cursor's Bugbot, introducing 'effort levels' for users on usage-based plans. These levels can be configured via the Bugbot dashboard. - [Claude Code in Action](https://anthropic.skilljar.com/claude-code-in-action) - A course from Anthropic Academy that provides comprehensive training on using Claude Code for software development tasks. It covers the underlying architecture of AI coding assistants, practical implementation techniques, and advanced integration strategies. Key topics include understanding coding assistant architecture, exploring Claude Code's tool use system, mastering context management techniques, implementing visual communication workflows, creating custom automation, and extending functionality with MCP servers. @@ -77,7 +77,7 @@ - La startup, con sede en Parรญs, acaba de lanzar su modelo de lenguaje Mistral Large y su chatbot conversacional Le Chat ## Kubernetes and AI - - [Introducing Kiro: AWS Agentic AI-Based IDE](https://markrosscloud.medium.com/introducing-kiro-aws-agentic-ai-based-ide-cded711b1409) - This article introduces Kiro, an AI-based IDE designed to leverage agentic AI for cloud development, specifically mentioning its integration with AWS and potential for Kubernetes environments. + - [Introducing Kiro: AWS Agentic AI-Based IDE](https://markrosscloud.medium.com/introducing-kiro-aws-agentic-ai-based-ide-cded711b1409) -Kiro, an AI-based IDE designed to leverage agentic AI for cloud development, specifically mentioning its integration with AWS and potential for Kubernetes environments. - [Limitless Kubernetes Scaling for AI and Data-intensive Workloads: The AKS Fleet Strategy](http://blog.aks.azure.com/2025/04/02/Scaling-Kubernetes-for-AI-and-Data-intensive-Workloads) - *(Related to kubernetes topic)* - [Warp: The Agentic Development Environment](https://www.warp.dev) - *(Related to kubernetes-tools topic)* diff --git a/docs/ansible.md b/docs/ansible.md index 98423487..d8543c15 100644 --- a/docs/ansible.md +++ b/docs/ansible.md @@ -79,7 +79,7 @@ - [toptechskills.com: Ansible Tutorials & Courses ๐ŸŒŸ](https://www.toptechskills.com/ansible-tutorials-courses) Ansible is an agentless infrastructure as code (IAC) tool that is super effective at configuring cloud and bare metal infrastructure. - [toptechskills.com: How to Speed Up Your Ansible Playbooks Over 600% ๐ŸŒŸ](https://www.toptechskills.com/ansible-tutorials-courses/speed-up-ansible-playbooks-pipelining-mitogen) - [opensource.com: 5 everyday sysadmin tasks to automate with Ansible ๐ŸŒŸ](https://opensource.com/article/21/3/ansible-sysadmin) Get more efficient and avoid errors by automating repeatable daily tasks with Ansible. -- [redhat.com: 8 steps to developing an Ansible role in Linux ๐ŸŒŸ](https://www.redhat.com/en/blog/developing-ansible-role) In this article, an existing Ansible playbook is used to deploy Vim and convert it to a role adding flexibility and reusability. +- [redhat.com: 8 steps to developing an Ansible role in Linux ๐ŸŒŸ](https://www.redhat.com/en/blog/developing-ansible-role) an existing Ansible playbook is used to deploy Vim and convert it to a role adding flexibility and reusability. - [ansible.com: Ansible whitepaper](https://www.redhat.com/en/resources/whitepapers/ansible-in-depth) Download this paper for a deep dive into Ansible, an open source IT configuration management, deployment, and orchestration tool. - [redhat.com: How to use Ansible to send an email using Gmail](https://www.redhat.com/en/blog/configure-gmail-using-ansible) - [redhat.com: How to use Ansible to configure a reverse proxy ๐ŸŒŸ](https://www.redhat.com/en/blog/reverse-proxy-ansible) Placing a load balancer in front of your web server infrastructure helps ensure any spike in traffic doesn't bring down the site. @@ -186,7 +186,7 @@ - [youtube playlist: Ansible Tutorial - by Infra Xpertzz ๐ŸŒŸ](https://www.youtube.com/playlist?list=PLOwxB_PX3s3WSfhzVtwhxXwy7QpkmtnzR) - [youtube.com: Ansible Tutorial Part 8 - Implementing Handlers and Handling Task Failures](https://www.youtube.com/watch?v=pJFZ5h9fT5o&ab_channel=InfraXpertzz) - [youtube: Ansible for beginners - by XavkiEn](https://www.youtube.com/playlist?list=PLWZKNB9waqIXEL-NIapWwIADPtkspe9vk) - [slides](https://gitlab.com/xavki/devopsland/-/tree/master/ansible) - - [youtube: Exercises / Monitoring : How to install node exporter ๐ŸŒŸ](https://www.youtube.com/watch?v=NgRuap0MmZw&ab_channel=XavkiEn) In this tutorial, we start an exercise to install a monitoring stack. This exercise allows you to add prometheus + grafana on 1 server and node-exporter on all servers. + - [youtube: Exercises / Monitoring : How to install node exporter ๐ŸŒŸ](https://www.youtube.com/watch?v=NgRuap0MmZw&ab_channel=XavkiEn) we start an exercise to install a monitoring stack. This exercise allows you to add prometheus + grafana on 1 server and node-exporter on all servers. ## Ansible Playbooks - [Ansible for DevOps Examples](https://github.com/geerlingguy/ansible-for-devops) ๐ŸŒŸ - A GitHub repository containing example Ansible playbooks and roles specifically tailored for DevOps practices. It covers various use cases, including infrastructure deployment, application configuration, and automation for common DevOps tools. diff --git a/docs/api.md b/docs/api.md index b9010fd9..ae354502 100644 --- a/docs/api.md +++ b/docs/api.md @@ -76,7 +76,7 @@ - Cualquiera que no haga esto serรก despedido. - [thenewstack.io: How to Achieve API Governance](https://thenewstack.io/how-to-achieve-api-governance) With APIs popping up everywhere, API strategy demands common design patterns, central discoverability, and putting users first. - [jkebertz.medium.com: The Art of Writing Amazing REST APIs](https://jkebertz.medium.com/the-art-of-writing-amazing-rest-apis-dc4c4100478d) -- [freecodecamp.org: REST API Design Best Practices Handbook โ€“ How to Build a REST API with JavaScript, Node.js, and Express.js](https://www.freecodecamp.org/news/rest-api-design-best-practices-build-a-rest-api) When you're working with APIs, there are some basic best practices you should follow. And if you really want to learn how they work, build one yourself. In this guide Jean-Marc goes over each best practice as you build a REST API w/ JS, Node, & Express. +- [freecodecamp.org: REST API Design Best Practices Handbook โ€“ How to Build a REST API with JavaScript, Node.js, and Express.js](https://www.freecodecamp.org/news/rest-api-design-best-practices-build-a-rest-api) When you're working with APIs, there are some basic best practices you should follow. And if you really want to learn how they work, build one yourself.Jean-Marc goes over each best practice as you build a REST API w/ JS, Node, & Express. - [infoq.com: Modern API Development and Deployment, from API Gateways to Sidecars](https://www.infoq.com/presentations/api-design-implement-document) - [betterprogramming.pub: How To Deprecate APIs the Right Way](https://betterprogramming.pub/how-to-deprecate-apis-the-right-way-371c1cbf1723) Deprecate your old APIs with the consciousness of your users - [dzone.com: REST vs. Messaging for Microservices ๐ŸŒŸ](https://dzone.com/articles/rest-vs-messaging-for-microservices) Discover how to choose the right communication style for your microservices in this exploration of two common protocols. @@ -129,7 +129,7 @@ - For information about the latest work on SOAP and a full list of SOAP specifications refer to the [W3C Technical Reports](https://www.w3.org/TR) - [guru99.com: SOAP Web Services Tutorial: Simple Object Access Protocol. What is SOAP?](https://www.guru99.com/soap-simple-object-access-protocol.html) - [jitendrazaa.com: Create SOAP message using Java](http://www.jitendrazaa.com/blog/java/create-soap-message-using-java) -- [dzone: Creating a SOAP Web Service With Spring Boot Starter Web Services](https://dzone.com/articles/creating-a-soap-web-service-with-spring-boot-start) In this post, we cover the concepts of SOAP and REST and show you all the code you need to use SOAP web services in a Spring Boot app. +- [dzone: Creating a SOAP Web Service With Spring Boot Starter Web Services](https://dzone.com/articles/creating-a-soap-web-service-with-spring-boot-start) we cover the concepts of SOAP and REST and show you all the code you need to use SOAP web services in a Spring Boot app. ### REST API Protocol (Representational State Transfer) @@ -170,7 +170,7 @@ - [itnext.io: A minimalist guide to gRPC](https://itnext.io/a-minimalist-guide-to-grpc-e4d556293422) REST API is good but is it really the best option that we have? - [==gendocu.com: RPC API Developer Portal==](https://gendocu.com) - [==medium.com/javarevisited: Microservices communication using gRPC Protocol==](https://medium.com/javarevisited/microservices-communication-using-grpc-protocol-dc3a2f8b648d) -- [blog.getambassador.io: Implementing gRPC-Web with Emissary-ingress](https://blog.getambassador.io/implementing-grpc-web-with-emissary-ingress-22aa0d86aac) In this article, you'll learn how to implement gRPC-Web (a JavaScript implementation of gRPC for browser clients) with Emissary-ingress โ€” an Envoy-based API gateway and Ingress controller +- [blog.getambassador.io: Implementing gRPC-Web with Emissary-ingress](https://blog.getambassador.io/implementing-grpc-web-with-emissary-ingress-22aa0d86aac) you'll learn how to implement gRPC-Web (a JavaScript implementation of gRPC for browser clients) with Emissary-ingress โ€” an Envoy-based API gateway and Ingress controller ### Asynchronous APIs diff --git a/docs/argo.md b/docs/argo.md index ea9517bd..cffebdfe 100644 --- a/docs/argo.md +++ b/docs/argo.md @@ -38,12 +38,12 @@ - [medium.com/containers-101: Using GitOps, Multiple Argo Instances, and Environments with Argo CD at Scale](https://medium.com/containers-101/using-gitops-multiple-argo-instances-and-environments-with-argo-cd-at-scale-e6b19c86be36) - [blog.argoproj.io: Best Practices for Multi-tenancy in Argo CD](https://blog.argoproj.io/best-practices-for-multi-tenancy-in-argo-cd-273e25a047b0) - [medium.com/@ScrumPokerPro: Cloud native architecture with Kubernetes and ArgoCD](https://medium.com/@ScrumPokerPro/cloud-native-architecture-with-kubernetes-and-argocd-ebecda7784b8) -- [faun.pub: Deploying Argo CD and Sealed Secrets with Helm](https://faun.pub/deploying-argo-cd-and-sealed-secrets-with-helm-8de12f53051b) In this tutorial, you will go over the declarative setup of Argo CD and Sealed Secrets on a Kubernetes cluster. For deploying Argo CD and Sealed Secrets you will be using Helm Charts +- [faun.pub: Deploying Argo CD and Sealed Secrets with Helm](https://faun.pub/deploying-argo-cd-and-sealed-secrets-with-helm-8de12f53051b) you will go over the declarative setup of Argo CD and Sealed Secrets on a Kubernetes cluster. For deploying Argo CD and Sealed Secrets you will be using Helm Charts - [amralaayassen.medium.com: How to create ArgoCD Applications Automatically using ApplicationSet? โ€œAutomation of GitOpsโ€](https://amralaayassen.medium.com/how-to-create-argocd-applications-automatically-using-applicationset-automation-of-the-gitops-59455eaf4f72) - [blog.getambassador.io: GitOps in Kubernetes with ArgoCD](https://blog.getambassador.io/gitops-in-kubernetes-with-argocd-c6ea0e510741) -- [blog.akuity.io: Unveil the Secret Ingredients of Continuous Delivery at Enterprise Scale with Argo CD](https://blog.akuity.io/unveil-the-secret-ingredients-of-continuous-delivery-at-enterprise-scale-with-argo-cd-7c5b4057ee49) Do you know that Argo CD can support thousands of apps and hundreds of clusters? in this article you will deep dive into Argo CD, bring answers and best practices on operating it at an enterprise scale -- [dev.to: Towards a Modular DevOps Stack](https://dev.to/camptocamp-ops/towards-a-modular-devops-stack-257c) In this article, you will learn how to **modularize your infrastructure using Terraform and ArgoCD** -- [datree.io: ArgoCD Best Practices](https://www.datree.io/resources/argocd-best-practices-you-should-know) In this article, you'll explore some best practices for ArgoCD: +- [blog.akuity.io: Unveil the Secret Ingredients of Continuous Delivery at Enterprise Scale with Argo CD](https://blog.akuity.io/unveil-the-secret-ingredients-of-continuous-delivery-at-enterprise-scale-with-argo-cd-7c5b4057ee49) Do you know that Argo CD can support thousands of apps and hundreds of clusters?you will deep dive into Argo CD, bring answers and best practices on operating it at an enterprise scale +- [dev.to: Towards a Modular DevOps Stack](https://dev.to/camptocamp-ops/towards-a-modular-devops-stack-257c) how to **modularize your infrastructure using Terraform and ArgoCD** +- [datree.io: ArgoCD Best Practices](https://www.datree.io/resources/argocd-best-practices-you-should-know) you'll explore some best practices for ArgoCD: - Disallow providing an empty retryStrategy - Ensure that Workflow pods are not configured to use the default service account - Ensure retry on both Error and TransientError @@ -52,7 +52,7 @@ - [prashant-48386.medium.com: Continuous Delivery for Kubernetes With Argo CD](https://prashant-48386.medium.com/continuous-delivery-for-kubernetes-with-argo-cd-9d5f3b69f1db) - [medium.com/@outlier.developer: Getting Started with ArgoCD for GitOps Kubernetes Deployments](https://medium.com/@outlier.developer/getting-started-with-argocd-for-gitops-kubernetes-deployments-fafc2ad2af0) - [medium.com/@hmquan08011996: Setup Microservices on Kubernetes โ€” Automating Kubernetes with ArgoCD](https://medium.com/@hmquan08011996/setup-microservices-on-kubernetes-automating-kubernetes-with-argocd-cb94622dac5b) -- [datree.io: ArgoCD Best Practices You Should Know](https://www.datree.io/resources/argocd-best-practices-you-should-know) In this article, you'll explore some best practices for ArgoCD: +- [datree.io: ArgoCD Best Practices You Should Know](https://www.datree.io/resources/argocd-best-practices-you-should-know) you'll explore some best practices for ArgoCD: - Disallow providing an empty retryStrategy - Ensure that Workflow pods are not configured to use the default service account - Ensure retry on both Error and TransientError @@ -64,10 +64,10 @@ - [faun.pub: Continuous Deployments of Kubernetes Applications using Argo CD GitOps & Helm Charts](https://faun.pub/continuous-deployments-of-kubernetes-applications-using-argo-cd-gitops-helm-charts-9df917caa2e4) - [jamalshahverdiev.medium.com: ArgoCD ApplicationSet with Applications, Image Updater and Notification controller with SSO](https://jamalshahverdiev.medium.com/argocd-applicationset-with-applications-image-updater-and-notification-controller-with-sso-bba3182dad8a) - [kubebyexample.com: Argo CD Overview ๐ŸŒŸ](https://kubebyexample.com/learning-paths/argo-cd/argo-cd-overview) -- [faun.pub: Hygiene of an ArgoCD-built automation at a scale](https://faun.pub/hygiene-of-argocd-built-automation-at-a-scale-cf63ee459510) In this article, you will find a list of best practices and tips for using ArgoCD automation at scale +- [faun.pub: Hygiene of an ArgoCD-built automation at a scale](https://faun.pub/hygiene-of-argocd-built-automation-at-a-scale-cf63ee459510) you will find a list of best practices and tips for using ArgoCD automation at scale - [blog.devgenius.io: Argo CD Introduction](https://blog.devgenius.io/argo-cd-introduction-4b16f50b0d56) What is ArgoCD and why use it -- [==dev.to: Argo CD and Sealed Secrets is a perfect match==](https://dev.to/timtsoitt/argo-cd-and-sealed-secrets-is-a-perfect-match-1dbf) In this article, you will learn how to configure Sealed Secrets with ArgoCD -- [figments.medium.com: ArgoCD: The first step towards GitOps](https://figments.medium.com/argocd-the-first-step-towards-gitops-899732fbc33e) A core component of GitOps is enforcing the deployment of apps using Git. This means defining the app version and configuration you want in a Git repo, and using a tool like ArgoCD to sync the Git configuration to the deployment. In this article, weโ€™ll look at how we can use ArgoCD to manage automatic Git based deployments of apps. +- [==dev.to: Argo CD and Sealed Secrets is a perfect match==](https://dev.to/timtsoitt/argo-cd-and-sealed-secrets-is-a-perfect-match-1dbf) how to configure Sealed Secrets with ArgoCD +- [figments.medium.com: ArgoCD: The first step towards GitOps](https://figments.medium.com/argocd-the-first-step-towards-gitops-899732fbc33e) A core component of GitOps is enforcing the deployment of apps using Git. This means defining the app version and configuration you want in a Git repo, and using a tool like ArgoCD to sync the Git configuration to the deployment. weโ€™ll look at how we can use ArgoCD to manage automatic Git based deployments of apps. - [medium.com/@nsfabrice2009: How to install ArgoCD on k8s cluster](https://medium.com/@nsfabrice2009/how-to-install-argocd-on-k8s-cluster-ad9084c71f16) - [akuity.io: How many do you need? - Argo CD Architectures Explained](https://akuity.io/blog/argo-cd-architectures-explained) - [piotrminkowski.com: Manage Multiple Kubernetes Clusters with ArgoCD ๐ŸŒŸ](https://piotrminkowski.com/2022/12/09/manage-multiple-kubernetes-clusters-with-argocd) @@ -79,7 +79,7 @@ - You can chain several plugins together - When used with application sets, you can apply Kustomizations - [gokhan-karadas1992.medium.com: ArgoCD + Kubevela Integration](https://gokhan-karadas1992.medium.com/argocd-kubevela-integration-eb88dc0484e0) -- [==blog.tanmaysarkar.tech: Beginners Guide to Argo CD==](https://blog.tanmaysarkar.tech/beginners-guide-to-argo-cd) In this guide, you will learn how to use ArgoCD by practising on a local minikube cluster +- [==blog.tanmaysarkar.tech: Beginners Guide to Argo CD==](https://blog.tanmaysarkar.tech/beginners-guide-to-argo-cd) how to use ArgoCD by practising on a local minikube cluster - [medium.com/devops-techable: GitOps with ArgoCD running in Kubernetes for deployment processing](https://medium.com/devops-techable/gitops-with-argocd-running-in-kubernetes-for-deployment-processing-c5d21770ca97) - [seraf.dev: ArgoCD Tutorial โ€” (with Terraform)](https://seraf.dev/argocd-tutorial-with-terraform-af77ddea2e6e) Here weโ€™ll be deploying ArgoCD resources with Terraform on a local Kubernetes Cluster (KIND) for a true IaC infrastructure - [medium.com/@eduard.mihai.lemnaru: Auto-update helm chart version using ArgoCD](https://medium.com/@eduard.mihai.lemnaru/auto-update-helm-chart-version-using-argocd-4936933a2bac) @@ -89,7 +89,7 @@ - [medium.com/@devopsrockers: Blue-Green Deployment on EKS using Argocd with Kubecost, Istio, External DNS, Grafana-Prometheus and More: โ€œBuild, Deploy a Resilient and Observability-Driven Applicationโ€](https://medium.com/@devopsrockers/blue-green-deployment-on-eks-using-argocd-with-kubecost-istio-external-dns-grafana-prometheus-d5d5508f0748) - [medium.com/@samuelbagattin: Partial Helm values encryption using AWS KMS with ArgoCD](https://medium.com/@samuelbagattin/partial-helm-values-encryption-using-aws-kms-with-argocd-aca1c0d36323) In this blog post, you'll learn how to encrypt only specific yaml fields in `values.yaml`, and how to configure ArgoCD to decrypt these secrets on the fly before installing a Helm release - [blog.devops.dev: GitOps at Scale](https://blog.devops.dev/gitops-at-scale-69639c9a3dd7) Scale your Projects like a Fleet with Argo CD -- [medium.com/@jerome.decoster: Create temporary environment from Pull Request with ArgoCD ApplicationSet](https://medium.com/@jerome.decoster/create-temporary-environment-from-pull-request-with-argocd-applicationset-1cef9803223a) In this post, you'll learn how to create a new environment for each pull request with ArgoCD: +- [medium.com/@jerome.decoster: Create temporary environment from Pull Request with ArgoCD ApplicationSet](https://medium.com/@jerome.decoster/create-temporary-environment-from-pull-request-with-argocd-applicationset-1cef9803223a) you'll learn how to create a new environment for each pull request with ArgoCD: - Creating a Pull Request creates a new environment - Each git push builds an image and updates the app - Closing the pull request terminates the environment @@ -133,12 +133,12 @@ - [==argoproj.github.io: Argo Rollouts - Kubernetes Progressive Delivery Controller==](https://argoproj.github.io/argo-rollouts) **Argo Rollouts is a Kubernetes controller and set of CRDs which provide advanced deployment capabilities such as blue-green, canary, canary analysis, experimentation, and progressive delivery features to Kubernetes** - [jijujacob27.medium.com: Sharded applications on Kubernetes using Helm, ArgoCD, and Argo-Rollouts](https://jijujacob27.medium.com/sharded-saas-applications-on-kubernetes-using-helm-argocd-and-argo-rollouts-a683c66f8646) You will use Argo-Rollouts for deploying the app using the Blue/Green strategy. - [medium.com/@ej.sta.ana: Easy Blue-Green Deployment on Openshift Container Platform using Argo Rollouts](https://medium.com/@ej.sta.ana/easy-blue-green-deployment-on-openshift-container-platform-using-argo-rollouts-4d514b3c5c0f) Argo Rollouts is part of the Argo project which includes the popular ArgoCD gitops tool. Argo Rollouts can help you do blue-green deployment easily on Kubernetes/OpenShift. -- [infracloud.io: Progressive Delivery with Argo Rollouts : Blue-Green Deployment](https://www.infracloud.io/blogs/progressive-delivery-argo-rollouts-blue-green-deployment) In this post, you'll learn how to perform a blue-green deployment using the Argo Rollouts controller and CRD. +- [infracloud.io: Progressive Delivery with Argo Rollouts : Blue-Green Deployment](https://www.infracloud.io/blogs/progressive-delivery-argo-rollouts-blue-green-deployment) you'll learn how to perform a blue-green deployment using the Argo Rollouts controller and CRD. - [infracloud.io: Progressive Delivery with Argo Rollouts: Canary Deployment](https://www.infracloud.io/blogs/progressive-delivery-argo-rollouts-canary-deployment) - [medium.com/everything-full-stack: Deployment Strategies: Argo Rollouts](https://medium.com/everything-full-stack/deployment-strategies-argo-rollouts-1980fc0685e6) -- [faun.pub: Kubernetes Practice โ€” Automating Blue/Green Deployment with Argo Rollouts](https://faun.pub/kubernetes-practice-automating-blue-green-deployment-with-argo-rollouts-2279aa890c53) In this article, we will learn how to automate Blue/Green Deployment with Argo Rollouts. +- [faun.pub: Kubernetes Practice โ€” Automating Blue/Green Deployment with Argo Rollouts](https://faun.pub/kubernetes-practice-automating-blue-green-deployment-with-argo-rollouts-2279aa890c53) we will learn how to automate Blue/Green Deployment with Argo Rollouts. - [infracloud.io: How to Setup Blue Green Deployments with DNS Routing ๐ŸŒŸ](https://www.infracloud.io/blogs/blue-green-deployments-dns-routing) This blog post will teach you how to set up blue-green deployments using Argo Rollouts with DNS routing using **Azure Traffic Manager** -- [codefresh.io: Progressive delivery for Kubernetes Config Maps using Argo Rollouts](https://octopus.com/blog/progressive-delivery-for-kubernetes-config-maps-using-argo-rollouts) In this tutorial, you will learn how to use Argo Rollouts for settings/ConfigMaps using the Kustomize configmap generators. This is useful during blue/green deployments where you need a (templated) copy of the ConfigMap. +- [codefresh.io: Progressive delivery for Kubernetes Config Maps using Argo Rollouts](https://octopus.com/blog/progressive-delivery-for-kubernetes-config-maps-using-argo-rollouts) how to use Argo Rollouts for settings/ConfigMaps using the Kustomize configmap generators. This is useful during blue/green deployments where you need a (templated) copy of the ConfigMap. - [faun.pub: How Helm Subcharts Make the Transition to Argo Rollouts a Breeze](https://faun.pub/how-helm-subcharts-make-the-transition-to-argo-rollouts-a-breeze-aaf160924dbf) ## Argo Workflows @@ -146,7 +146,7 @@ - [blog.argoproj.io: Whatโ€™s new in Argo Workflows v3.3](https://blog.argoproj.io/whats-new-in-argo-workflows-v3-3-dd051d2f1c7) - [dev.to: The three meanings of "template" in Argo Workflows](https://dev.to/crenshaw_dev/the-three-meanings-of-template-in-argo-workflows-2paf) -- [blog.argoproj.io: Practical Argo Workflows Hardening ๐ŸŒŸ](https://blog.argoproj.io/practical-argo-workflows-hardening-dd8429acc1ce) In this post, you'll cover: +- [blog.argoproj.io: Practical Argo Workflows Hardening ๐ŸŒŸ](https://blog.argoproj.io/practical-argo-workflows-hardening-dd8429acc1ce) you'll cover: - High-level best practices you should know to secure your workflows - The various components that make up Argo, and how to secure those components - Dive into operating and using Argo securely diff --git a/docs/aws-databases.md b/docs/aws-databases.md index a0be31be..c72d51ce 100644 --- a/docs/aws-databases.md +++ b/docs/aws-databases.md @@ -59,7 +59,7 @@ ## AWS Redshift -- [Tutorial: Tuning Table Design](http://docs.aws.amazon.com/redshift/latest/dg/tutorial-tuning-tables.html) In this tutorial, you will learn how to optimize the design of your tables. +- [Tutorial: Tuning Table Design](http://docs.aws.amazon.com/redshift/latest/dg/tutorial-tuning-tables.html) you will learn how to optimize the design of your tables. ## AWS Data Mesh and Batch Data Processing diff --git a/docs/aws-devops.md b/docs/aws-devops.md index 9c0d2658..a8d50003 100644 --- a/docs/aws-devops.md +++ b/docs/aws-devops.md @@ -15,7 +15,7 @@ - [k21academy.com: AWS DevOps Vs. Azure DevOps](https://k21academy.com/aws-cloud/aws-devops-vs-azure-devops/?utm_source=linkedin&utm_medium=referral&utm_campaign=awsdevops17_dec20_aws_cloud_computing_for_interested_parties__users) - [Amazon DevOps Guru](https://aws.amazon.com/devops/-guru) ML-powered cloud operations service to improve application availability - [infoq.com: AWS Launches Amazon DevOps Guru](https://www.infoq.com/news/2021/01/aws-devops-guru) -- [aws.plainenglish.io: AWS CodePipeline for Amazon ECS](https://aws.plainenglish.io/aws-codepipeline-for-amazon-ecs-part-2-a-blue-green-deployment-type-c162fd73be91) In this tutorial, I would like to explain to you how to create an AWS CodePipeline for ECS with a Blue/green deployment type. +- [aws.plainenglish.io: AWS CodePipeline for Amazon ECS](https://aws.plainenglish.io/aws-codepipeline-for-amazon-ecs-part-2-a-blue-green-deployment-type-c162fd73be91) I would like to explain to you how to create an AWS CodePipeline for ECS with a Blue/green deployment type. - [aws.amazon.com: Multi-branch pipeline management and infrastructure deployment using AWS CDK Pipelines](https://aws.amazon.com/blogs/devops/multi-branch-pipeline-management-and-infrastructure-deployment-using-aws-cdk-pipelines) - [medium.com/@d.kumarkaran12: DevSecOps with AWS CodePipeline and ECS](https://medium.com/@d.kumarkaran12/devsecops-with-aws-codepipeline-and-ecs-c800f139a9ee) - [aws.amazon.com: AWS CodePipeline adds support for Branch-based development and Monorepos](https://aws.amazon.com/blogs/devops/aws-codepipeline-adds-support-for-branch-based-development-and-monorepos) diff --git a/docs/aws-monitoring.md b/docs/aws-monitoring.md index 01c1ffbd..036c56c7 100644 --- a/docs/aws-monitoring.md +++ b/docs/aws-monitoring.md @@ -28,7 +28,7 @@ - [Amazon CloudWatch Dashboards now supports sharing](https://aws.amazon.com/about-aws/whats-new/2020/09/amazon-cloudwatch-dashboards-supports-sharing) - [How BT uses Amazon CloudWatch to monitor millions of devices](https://aws.amazon.com/blogs/mt/how-bt-uses-amazon-cloudwatch-to-monitor-millions-of-devices) - [Extending and exploring alarm history in Amazon CloudWatch โ€“ part 2](https://aws.amazon.com/blogs/mt/extending-and-exploring-alarm-history-in-amazon-cloudwatch-part-2) -- [dzone: Optimize AWS Costs With CloudWatch's Advanced Metrics, Dashboards, and Alerts](https://dzone.com/articles/optimize-aws-costs-with-cloudwatchs-advanced-metri) In this article, we dive deep into leveraging advanced dashboarding with Amazon CloudWatch to efficiently manage and analyze AWS costs. +- [dzone: Optimize AWS Costs With CloudWatch's Advanced Metrics, Dashboards, and Alerts](https://dzone.com/articles/optimize-aws-costs-with-cloudwatchs-advanced-metri) leveraging advanced dashboarding with Amazon CloudWatch to efficiently manage and analyze AWS costs. ## AWS Cloud Map and HealthChecks diff --git a/docs/aws-networking.md b/docs/aws-networking.md index 9bbf3597..d8ffa07e 100644 --- a/docs/aws-networking.md +++ b/docs/aws-networking.md @@ -112,7 +112,7 @@ ## AWS API Gateway - [alexdebrie.com: A Detailed Overview of AWS API Gateway](https://www.alexdebrie.com/posts/api-gateway-elements) -- [towardsaws.com: Accessing a Private REST API from another Private REST API in AWS API Gateway](https://towardsaws.com/accessing-a-private-rest-api-from-another-private-rest-api-in-aws-api-gateway-5112b835c0d4) In this post, weโ€™ll see how we can access a Private REST API From Another Private REST API In AWS API Gateway. We will create 2 EC2 Instances(EC2A and EC2B) and 2 API Gateways(APIA and APIB). EC2A will be accessing EC2B with following workflow. +- [towardsaws.com: Accessing a Private REST API from another Private REST API in AWS API Gateway](https://towardsaws.com/accessing-a-private-rest-api-from-another-private-rest-api-in-aws-api-gateway-5112b835c0d4) weโ€™ll see how we can access a Private REST API From Another Private REST API In AWS API Gateway. We will create 2 EC2 Instances(EC2A and EC2B) and 2 API Gateways(APIA and APIB). EC2A will be accessing EC2B with following workflow. - [faun.pub: Using AWS API Gateway As Proxy To Our Internal Application](https://faun.pub/using-aws-api-gateway-as-proxy-to-our-internal-application-369eb115db70) - [aws.amazon.com: Architecture patterns for consuming private APIs cross-account](https://aws.amazon.com/blogs/compute/architecture-patterns-for-consuming-private-apis-cross-account) Architecture patterns for consuming private APIs cross-account over AWS PrivateLink diff --git a/docs/aws-serverless.md b/docs/aws-serverless.md index 07348d43..6b177b7a 100644 --- a/docs/aws-serverless.md +++ b/docs/aws-serverless.md @@ -39,7 +39,7 @@ - [medium.com/@andrewjr350: Misunderstanding of Serverless (AWS)](https://medium.com/@andrewjr350/misunderstanding-of-serverless-aws-835c7076ea4c) - [freecodecamp.org: How to Setup a Basic Serverless REST API with AWS Lambda and API Gateway](https://www.freecodecamp.org/news/how-to-setup-a-basic-serverless-backend-with-aws-lambda-and-api-gateway) - [Migrating a monolithic .NET REST API to AWS Lambda](https://aws.amazon.com/blogs/compute/migrating-a-monolithic-net-rest-api-to-aws-lambda) -- [==medium.com/aws-serverless-microservices-with-patterns-best: Cloud-Native Microservices Evolves to AWS Serverless Event-driven Architectures==](https://medium.com/aws-serverless-microservices-with-patterns-best/cloud-native-microservices-evolves-to-aws-serverless-event-driven-architectures-9a38c473f4f8) In this article, we are going to discuss about How Cloud-Native Microservices Evolves to AWS Serverless Event-driven Architectures when developing Serverless E-Commerce application. +- [==medium.com/aws-serverless-microservices-with-patterns-best: Cloud-Native Microservices Evolves to AWS Serverless Event-driven Architectures==](https://medium.com/aws-serverless-microservices-with-patterns-best/cloud-native-microservices-evolves-to-aws-serverless-event-driven-architectures-9a38c473f4f8) we are going to discuss about How Cloud-Native Microservices Evolves to AWS Serverless Event-driven Architectures when developing Serverless E-Commerce application. - [betterprogramming.pub: Exploring the Serverless Event-Driven Architecture](https://betterprogramming.pub/exploring-the-serverless-event-driven-architecture-8d6bda93e823) Meet your old friends Terraform, Lambda, SQS, and Python - [==betterprogramming.pub: Lambda vs. Step Functions: The Battle of Cost and Performance==](https://betterprogramming.pub/lambda-vs-step-functions-the-battle-of-cost-and-performance-5f008045e2ab) With the big push to use Step Functions over Lambda, you might be wondering โ€œwhich is more cost-effectiveโ€? The answer might surprise you. - There are use cases for both, but the consensus for production development lives with a hybrid approach: performing a base set of actions synchronously, like validations and id creation **and kicking off the rest of the processing asynchronously**. Youโ€™d then [use a WebSocket](https://betterprogramming.pub/introduction-to-aws-websockets-8b336a92c379) to inform the user when the workflow is complete. @@ -68,7 +68,7 @@ - [Amazon EFS with Amazon ECS and AWS Fargate โ€“ Part 1](https://aws.amazon.com/es/blogs/containers/developers-guide-to-using-amazon-efs-with-amazon-ecs-and-aws-fargate-part-1) - [Deploy Machine Learning Pipeline on AWS Fargate](https://www.kdnuggets.com/2020/07/deploy-machine-learning-pipeline-aws-fargate.html) - [deloitte.com: Fargate con EKS](https://www.deloitte.com/es/es/services/consulting/blogs/todo-tecnologia/fargate-con-eks.html) ยฟEs Fargate la soluciรณn de AWS con la que siempre soรฑamos para evitar manejar infraestructura con Kubernetes? Sรญ, peroโ€ฆ -- [element7.io: A Hidden Gem: Two Ways to Improve AWS Fargate Container Launch Times](https://www.element7.io/2022/10/a-hidden-gem-two-ways-to-improve-aws-fargate-container-launch-times) In this post you will learn two strategies to speed up the pod creation time: +- [element7.io: A Hidden Gem: Two Ways to Improve AWS Fargate Container Launch Times](https://www.element7.io/2022/10/a-hidden-gem-two-ways-to-improve-aws-fargate-container-launch-times)you will learn two strategies to speed up the pod creation time: - zstd compressed container images - Seekable OCI for lazy loading container images - [medium.com/@HirenDhaduk1: Best choice to run your containers: AWS FARGATE or AWS LAMBDA or Both?](https://medium.com/@HirenDhaduk1/best-choice-to-run-your-containers-aws-fargate-or-aws-lambda-or-both-d9e14685a363) diff --git a/docs/aws-storage.md b/docs/aws-storage.md index 2b55417a..b5b5ef2f 100644 --- a/docs/aws-storage.md +++ b/docs/aws-storage.md @@ -26,7 +26,7 @@ - [dev.to: Adding an EBS volume to a running AWS EC2 Instance](https://dev.to/aws-builders/adding-an-ebs-volume-to-a-running-aws-ec2-instance-311l) - [awstip.com: Uploading files to S3 through API Gateway](https://awstip.com/uploading-files-to-s3-through-api-gateway-7bb78c0d0483) - When you have a front-end application and need to upload files to an S3 bucket securely and keep your bucket private, you can use API Gateway to post your files to S3. - - If you donยดt want to make any modifications to the file and upload it as is, you can upload the files directly from API Gateway to S3. But if some modifications are required, you may consider using Lambda to receive the request from API Gateway and upload to S3. In this article we will not use Lambda. + - If you donยดt want to make any modifications to the file and upload it as is, you can upload the files directly from API Gateway to S3. But if some modifications are required, you may consider using Lambda to receive the request from API Gateway and upload to S3.we will not use Lambda. ## Amazon EFS Elastic File System - [Ceph: A Distributed Object, Block, and File Storage Platform](https://github.com/ceph/ceph) - *(Related to kubernetes-storage topic)* diff --git a/docs/aws-tools-scripts.md b/docs/aws-tools-scripts.md index a3fa7185..9ac9414b 100644 --- a/docs/aws-tools-scripts.md +++ b/docs/aws-tools-scripts.md @@ -47,7 +47,7 @@ - [==github.com/aws-samples/aws-cdk-stack-builder-tool==](https://github.com/aws-samples/aws-cdk-stack-builder-tool) AWS CDK Builder is a browser-based tool designed to streamline bootstrapping of Infrastructure as Code (IaC) projects using the AWS Cloud Development Kit (CDK). - [github.com/containerscrew/aws-sso-auth](https://github.com/containerscrew/aws-sso-rs) Fetch your local ~/.aws/credentials using AWS SSO - [==cloudcatalog.dev==](https://www.cloudcatalog.dev) Documentation tool for AWS Architectures. CloudCatalog is an Open Source project that helps you document your AWS resources, services and assign owners. -- [==spacelift.io/blog/aws-s3-cp: AWS S3 Cp [Copy] Command Overview with Examples==](https://spacelift.io/blog/aws-s3-cp) Effectively working with S3 requires moving data in and out of S3 buckets efficiently, supporting use cases such as web hosting, content distribution, backups, archiving, media storage and streaming, and more. In this article, we will explore how to use the aws s3 cp command to transfer data between your local filesystem and the S3 buckets. +- [==spacelift.io/blog/aws-s3-cp: AWS S3 Cp [Copy] Command Overview with Examples==](https://spacelift.io/blog/aws-s3-cp) Effectively working with S3 requires moving data in and out of S3 buckets efficiently, supporting use cases such as web hosting, content distribution, backups, archiving, media storage and streaming, and more. how to use the aws s3 cp command to transfer data between your local filesystem and the S3 buckets. - [github.com/infrahouse/infrahouse-toolkit](https://github.com/infrahouse/infrahouse-toolkit) A collection of tools for building infrastructure ### AWS CI/CD Tools diff --git a/docs/aws.md b/docs/aws.md index a2ac09c7..074734ea 100644 --- a/docs/aws.md +++ b/docs/aws.md @@ -57,7 +57,7 @@ - [aws/containers-roadmap: AWS Containers Roadmap](https://github.com/aws/containers-roadmap) This is the public roadmap for AWS container services (ECS, ECR, Fargate, and EKS). - [dashbird.io: Get started and keep using AWS for free](https://dashbird.io/blog/use-aws-free) - [dzone: AWS Basics](https://dzone.com/articles/aws-basics) -- [dzone: AWS Basics: Bastion Hosts and NAT](https://dzone.com/articles/aws-basics-bastian-hosts-and-nat) In this post, we will set up Bastion Host and NAT instances in our VPC. We will learn why we need those and some of the options available to us. +- [dzone: AWS Basics: Bastion Hosts and NAT](https://dzone.com/articles/aws-basics-bastian-hosts-and-nat) we will set up Bastion Host and NAT instances in our VPC. We will learn why we need those and some of the options available to us. - [acloudguru.com: The Cloud Dictionary of Pain: Five Of AWSโ€™s Toughest Cloud Topics](https://www.pluralsight.com/resources/blog/cloud/the-cloud-dictionary-of-pain-five-of-awss-toughest-cloud-topics) - [dannys.cloud: 10 Best Free AWS Learning Resources for Beginners](https://dannys.cloud/10-best-free-aws-learning-resources-for-beginners) This blogpost provides free resources for beginners to get started with AWS through videos, whitepapers, labs, and certification guides. - [linkedin pulse: Listado de todos los Servicios de AWS (actualizado 1 de Enero 2021)](https://www.linkedin.com/pulse/listado-de-todos-los-servicios-amazon-web-services-daniel-pe%25C3%25B1a-silva) diff --git a/docs/caching.md b/docs/caching.md index d55bf099..1733cf09 100644 --- a/docs/caching.md +++ b/docs/caching.md @@ -22,7 +22,7 @@ - [nixCraft: 9 Awesome Open Source Web Performance Software For Linux and Unix-like Systems](https://www.cyberciti.biz/open-source/http-web-performance-proxy-load-balancer-accelerator-software) - [Dzone: An Introduction to Caching: How and Why We Do It ๐ŸŒŸ](https://dzone.com/articles/introducing-amp-assimilating-caching-quick-read-fo) When it comes to caching, what was once a nice-to-have it now a must-have. Check out this detailed article to learn everything you need to know about caching! - [medium: Caching โ€” System Design Concept ๐ŸŒŸ](https://medium.com/enjoy-algorithm/caching-system-design-concept-500134cff300) -- [medium: Microservices Distributed Caching](https://medium.com/design-microservices-architecture-with-patterns/microservices-distributed-caching-76828817e41b) In this article, we are going to talk about Microservices Distributed Caching for Microservices Architectures. As you know that we learned practices and patterns and add them into our design toolbox. And we will use these pattern and practices when designing e-commerce microservice architecture. +- [medium: Microservices Distributed Caching](https://medium.com/design-microservices-architecture-with-patterns/microservices-distributed-caching-76828817e41b) we are going to talk about Microservices Distributed Caching for Microservices Architectures. As you know that we learned practices and patterns and add them into our design toolbox. And we will use these pattern and practices when designing e-commerce microservice architecture. - [kothiyal-anuj.medium.com: Serverless Diary: The Ultimate Guide to Caching in the Cloud | Anuj Kothiyal](https://kothiyal-anuj.medium.com/serverless-diary-the-ultimate-guide-to-caching-in-the-cloud-249f6a06915f) - [medium.com/rtkal: Distributed Cache Design](https://medium.com/rtkal/distributed-cache-design-348cbe334df1) - [learncsdesign.medium.com: An Overview of Distributed Caching ๐ŸŒŸ [ARCHIVED]]( http://web.archive.org/web/20220717060745/https://learncsdesign.medium.com/an-overview-of-distributed-caching-e426781d1ff0) @@ -88,7 +88,7 @@ - [Slideshare: Introduction to Redis](http://www.slideshare.net/dvirsky/introduction-to-redis) - [medium: Scaling Millions of Geospatial Queries per minute using Redis](https://medium.com/groupon-eng/scaling-millions-of-geospatial-queries-per-minute-using-redis-7c05bcf6b4db) - [==architecturenotes.co: Redis Explained== ๐ŸŒŸ๐ŸŒŸ](https://architecturenotes.co/p/redis) A deep technical dive into all things Redis. Covering various Redis topologies, data persistence and process forking. -- [faun.pub: Redis High availability with Sentinel on Kubernetes(K8s)](https://faun.pub/redis-high-availability-with-sentinel-on-kubernetes-k8s-a1d67842e0ce) In this tutorial, you will learn how to deploy Redis with Sentinel in Kubernetes. You will also test the availability of the setup by simulating a master failure. +- [faun.pub: Redis High availability with Sentinel on Kubernetes(K8s)](https://faun.pub/redis-high-availability-with-sentinel-on-kubernetes-k8s-a1d67842e0ce) how to deploy Redis with Sentinel in Kubernetes. You will also test the availability of the setup by simulating a master failure. - [medium.com/lightricks-tech-blog: Step by Step Guide: How to create a Dynamic Service Endpoint via K8S API](https://medium.com/lightricks-tech-blog/step-by-step-guide-how-to-create-a-dynamic-service-endpoint-via-k8s-api-1024309cb226) This article explains how to deploy Redis HA in Kubernetes and create a Service that always points to the master Redis. It also demonstrates how to interact with Kubernetes API from inside a pod using a script to update the endpoint dynamically. ## Nginx High-performance caching diff --git a/docs/chaos-engineering.md b/docs/chaos-engineering.md index 8d840733..14ba95f7 100644 --- a/docs/chaos-engineering.md +++ b/docs/chaos-engineering.md @@ -49,8 +49,8 @@ - [thenewstack.io: Operationalizing Chaos Engineering with GitOps](https://thenewstack.io/operationalizing-chaos-engineering-with-gitops) - [medium.com/better-practices: Learn how your Kubernetes clusters respond to failure using Gremlin and Grafana](https://medium.com/better-practices/chaos-d3ef238ec328) Building resilient APIs with chaos engineering - [Chaos engineering on Amazon EKS using AWS Fault Injection Simulator](https://aws.amazon.com/blogs/devops/chaos-engineering-on-amazon-eks-using-aws-fault-injection-simulator) -- [aws.amazon.com: Chaos Engineering with LitmusChaos on Amazon EKS](https://aws.amazon.com/blogs/containers/chaos-engineering-with-litmuschaos-on-amazon-eks) In this tutorial, you will create an Amazon EKS cluster, install LitmusChaos and deploy a demo application. Then, you will define chaos experiments to be run on it and observe the behaviour -- [blog.container-solutions.com: Comparing Chaos Engineering Tools for Kubernetes Workloads](https://blog.container-solutions.com/comparing-chaos-engineering-tools) How do Chaos Toolkit, Pumba, Litmus, and Chaos Mesh stack up against each other as chaos engineering tools for Kubernetes workloads? In this article, you will compare strengths and weaknesses. +- [aws.amazon.com: Chaos Engineering with LitmusChaos on Amazon EKS](https://aws.amazon.com/blogs/containers/chaos-engineering-with-litmuschaos-on-amazon-eks) you will create an Amazon EKS cluster, install LitmusChaos and deploy a demo application. Then, you will define chaos experiments to be run on it and observe the behaviour +- [blog.container-solutions.com: Comparing Chaos Engineering Tools for Kubernetes Workloads](https://blog.container-solutions.com/comparing-chaos-engineering-tools) How do Chaos Toolkit, Pumba, Litmus, and Chaos Mesh stack up against each other as chaos engineering tools for Kubernetes workloads? you will compare strengths and weaknesses. - [blog.palark.com: Attaining harmony of chaos in Kubernetes with Chaos Mesh](https://palark.com/blog/chaos-mesh-in-kubernetes) This article discusses chaos engineering solutions for Kubernetes using the Chaos Mesh operator. It covers tests on: - Failing nodes - Failing infrastructure dependencies diff --git a/docs/container-managers.md b/docs/container-managers.md index cb0dc51c..02e18982 100644 --- a/docs/container-managers.md +++ b/docs/container-managers.md @@ -112,9 +112,9 @@ - [redhat.com: 5 Podman features to try now](https://www.redhat.com/en/blog/podman-features-1) Improve how you use containers with these new Podman features: --latest, --replace, --all, --ignore, and --tz. - Here's how I stop all containers before: ๐Ÿณ `docker stop $(docker ps -aq)` - Here's how I stop/remove all containers with podman: `podman stop -a; podman rm -a` -- [medium.com/@raghavendraguttur: Podman Containers โ€” Beginnerโ€™s Guide](https://medium.com/@raghavendraguttur/podman-containers-beginners-guide-830b931e66f4) In this article, you will learn about Podman โ€” an open-source tool for managing containers, images, volumes, and pods (group of containers). You will also compare it to buildah and skopeo. +- [medium.com/@raghavendraguttur: Podman Containers โ€” Beginnerโ€™s Guide](https://medium.com/@raghavendraguttur/podman-containers-beginners-guide-830b931e66f4) about Podman โ€” an open-source tool for managing containers, images, volumes, and pods (group of containers). You will also compare it to buildah and skopeo. - [nilesh93.medium.com: Replacing Docker Desktop with Podman and Kind in MacOS](https://nilesh93.medium.com/replacing-docker-desktop-with-podman-and-kind-in-macos-c750581a3fda) -- [==dev.to: Containers without Docker (podman, buildah, and skopeo)==](https://dev.to/cedricclyburn/containers-without-docker-podman-buildah-and-skopeo-1eal) In this article, you will learn how you can use Podman, Buildah, and Skopeo as replacements for the traditional Docker workflow, without the use of a daemon or root privileges +- [==dev.to: Containers without Docker (podman, buildah, and skopeo)==](https://dev.to/cedricclyburn/containers-without-docker-podman-buildah-and-skopeo-1eal) how you can use Podman, Buildah, and Skopeo as replacements for the traditional Docker workflow, without the use of a daemon or root privileges - [redhat.com/sysadmin/quadlet-podman](https://www.redhat.com/en/blog/quadlet-podman) Make systemd better for Podman with Quadlet. Quadlet, a tool merged into Podman 4.4, hides the complexity of running containers under systemd to make it easier to maintain unit files written from scratch. #### Podman Desktop diff --git a/docs/crossplane.md b/docs/crossplane.md index e8a3c674..0f0849eb 100644 --- a/docs/crossplane.md +++ b/docs/crossplane.md @@ -15,7 +15,7 @@ - [codefresh.io: Using GitOps for Infrastructure and Applications With Crossplane and Argo CD](https://octopus.com/devops/gitops) - [itnext.io: Why do developers find Kubernetes so hard?](https://itnext.io/why-do-developers-find-kubernetes-hard-6532e8d6ce7f) And how can Crossplane Kubernetes Provider help - [faun.pub: Defining Infrastructure Declaratively with Crossplane](https://faun.pub/defining-infrastructure-declaratively-with-crossplane-eb9e0a98ae38) -- [itnext.io: GitOpsify Cloud Infrastructure with Crossplane and Flux](https://itnext.io/gitopsify-cloud-infrastructure-with-crossplane-and-flux-d605d3043452) In this article, we are going to learn how to automate the provisioning of cloud resources via Crossplane and combine it with GitOps practices. +- [itnext.io: GitOpsify Cloud Infrastructure with Crossplane and Flux](https://itnext.io/gitopsify-cloud-infrastructure-with-crossplane-and-flux-d605d3043452) we are going to learn how to automate the provisioning of cloud resources via Crossplane and combine it with GitOps practices. - [symphony.is: Crossplane - The New Kid in Town](https://symphony.is/blog/crossplane---the-new-kid-in-town-) ## Demo. YAML Your Cloud. Managing Cloud-Hosted Resources from Kubernetes diff --git a/docs/databases.md b/docs/databases.md index 1202edb3..d51d4ec0 100644 --- a/docs/databases.md +++ b/docs/databases.md @@ -87,10 +87,10 @@ - [medium.com/@bijit211987: Kubernetes ready for stateful workloads and to Revolutionize Enterprise Database Management](https://medium.com/@bijit211987/kubernetes-ready-for-stateful-workloads-and-to-revolutionize-enterprise-database-management-3cd619b1a0b2) - [==medium.com/javarevisited: Top Performance issues every developer/architect must know โ€” part 1-Database==](https://medium.com/javarevisited/top-performance-issues-every-developer-architect-must-know-part-1-fc1ad6e1644b) - [infoq.com: Create Your Distributed Database on Kubernetes with Existing Monolithic Databases](https://www.infoq.com/articles/kubernetes-databases-apache-sharding-sphere) -- [==dineshchandgr.medium.com: Why do we need a Database Connection Pool? -every programmer must know==](https://dineshchandgr.medium.com/why-do-we-need-a-database-connection-pool-every-programmer-must-know-9f90e7c8e5af) In this article, we looked at what is Database connection and its life cycle. Then we saw the drawbacks of creating connections on the fly and then saw the need to use a Database Connection Pool. We also looked at the design patterns on where to place the connection pool. We have then looked at the performance issues that can arise from the Database connection pool and concluded the article by looking at the common connection pool frameworks used in Java. +- [==dineshchandgr.medium.com: Why do we need a Database Connection Pool? -every programmer must know==](https://dineshchandgr.medium.com/why-do-we-need-a-database-connection-pool-every-programmer-must-know-9f90e7c8e5af) we looked at what is Database connection and its life cycle. Then we saw the drawbacks of creating connections on the fly and then saw the need to use a Database Connection Pool. We also looked at the design patterns on where to place the connection pool. We have then looked at the performance issues that can arise from the Database connection pool and concluded the article by looking at the common connection pool frameworks used in Java. - [==medium.com/fintechexplained: What Is Database Sharding?==](https://medium.com/fintechexplained/what-is-database-sharding-582b36282f97) Learn How Splitting Database Across Multiple Machines Improves Performance By Processing Requests In Parallel For High Volume Applications -- [==blog.equationlabs.io: Managing database migrations safely in high replicated k8s deployment== ๐ŸŒŸ](https://blog.equationlabs.io/managing-database-migrations-safely-in-high-replicated-k8s-deployment) In this article, you will learn how to run database migrations in Kubernetes using the Job resource, init containers and rolling updates. -- [blog.equationlabs.io: Managing database migrations safely in high replicated k8s deployment](https://blog.equationlabs.io/managing-database-migrations-safely-in-high-replicated-k8s-deployment) In this article, you will learn how to run database migrations in Kubernetes using the Job resource, init containers and rolling updates +- [==blog.equationlabs.io: Managing database migrations safely in high replicated k8s deployment== ๐ŸŒŸ](https://blog.equationlabs.io/managing-database-migrations-safely-in-high-replicated-k8s-deployment) how to run database migrations in Kubernetes using the Job resource, init containers and rolling updates. +- [blog.equationlabs.io: Managing database migrations safely in high replicated k8s deployment](https://blog.equationlabs.io/managing-database-migrations-safely-in-high-replicated-k8s-deployment) how to run database migrations in Kubernetes using the Job resource, init containers and rolling updates - [thenewstack.io: Distributed Database Architecture: What Is It?](https://thenewstack.io/distributed-database-architecture-what-is-it) - [medium.com/@mkremer_75412: Why Postgres RDS didnโ€™t work for us (and why it wonโ€™t work for you if youโ€™re implementing a big data solution)](https://medium.com/@mkremer_75412/why-postgres-rds-didnt-work-for-us-and-why-it-won-t-work-for-you-if-you-re-implementing-a-big-6c4fff5a8644) - [medium.com/@fengruohang: Database in Kubernetes: Is that a good idea?](https://medium.com/@fengruohang/database-in-kubernetes-is-that-a-good-idea-daf5775b5c1f) Perhaps one day, when the reliability and performance of distributed network storage surpass local storage and mainstream databases have some native support for storage-computation separation, things might change again โ€” K8S might become suitable for databases. But for now, I believe putting serious production OLTP databases into K8S is immature and inappropriate. I hope readers will make wise choices on this matter. diff --git a/docs/demos.md b/docs/demos.md index 3594b24a..f7f9521d 100644 --- a/docs/demos.md +++ b/docs/demos.md @@ -190,7 +190,7 @@ - [nfrankel/jvm-controller](https://github.com/nfrankel/jvm-controller) Example on how to write a kubernetes controller in Java. The demo code for nfrankel's talk on Kubernetes operators in Java. - [matthewpalmer.net: Kubernetes Ingress with Nginx Example ๐ŸŒŸ](https://matthewpalmer.net/kubernetes-app-developer/articles/kubernetes-ingress-guide-nginx-example.html) - [developers.redhat.com: Deploying Node.js applications to Kubernetes with Nodeshift and Minikube](https://developers.redhat.com/blog/2021/03/09/deploying-node-js-applications-to-kubernetes-with-nodeshift-and-minikube) -- [itnext.io: Breaking down and fixing Kubernetes](https://itnext.io/breaking-down-and-fixing-kubernetes-4df2f22f87c3) In this article you'll break the cluster, delete certificates and rejoin the nodes without causing any downtime. +- [itnext.io: Breaking down and fixing Kubernetes](https://itnext.io/breaking-down-and-fixing-kubernetes-4df2f22f87c3)you'll break the cluster, delete certificates and rejoin the nodes without causing any downtime. - [dev.to: Implementing a simple K8s admission controller in Go](https://dev.to/douglasmakey/implementing-a-simple-k8s-admission-controller-in-go-2dcg) - [ishantgaurav.in: Complete Application Deployment using Kubernetes](https://ishantgaurav.in/2021/06/22/complete-application-deployment-using-kubernetes) - [betterprogramming.pub: Deploy a Python API With Docker and Kubernetes](https://betterprogramming.pub/python-fastapi-kubernetes-gcp-296e0dc3abb6) Autoscale compute-intensive workloads to keep up with changing demand @@ -203,7 +203,7 @@ - [howtoforge.com: How to deploy your first pod on a Kubernetes Cluster](https://www.howtoforge.com/how-to-deploy-your-first-pod-on-a-kubernetes-cluster) - [==github.com/AdminTurnedDevOps/kubernetes-examples==](https://github.com/AdminTurnedDevOps/kubernetes-examples) This repo contains a bunch of Kubernetes examples - [levelup.gitconnected.com: Deploying a Simple Golang Web App to Kubernetes](https://levelup.gitconnected.com/deploying-simple-golang-webapp-to-kubernetes-25dc1736dcc4) Part II: Deployment Using YAML Configuration -- [==medium.com/groupon-eng: LoadBalancer Services using Kubernetes in Docker (kind)==](https://medium.com/groupon-eng/loadbalancer-services-using-kubernetes-in-docker-kind-694b4207575d) In this tutorial, you'll learn how to build a multi-node kind cluster with `extraPortMappings` to forward requests from your host to an NGINX ingress controller +- [==medium.com/groupon-eng: LoadBalancer Services using Kubernetes in Docker (kind)==](https://medium.com/groupon-eng/loadbalancer-services-using-kubernetes-in-docker-kind-694b4207575d) you'll learn how to build a multi-node kind cluster with `extraPortMappings` to forward requests from your host to an NGINX ingress controller - [devxblog.hashnode.dev: Deploying Microservices with Persistent Volumes in Kubernetes - Kubernetes Microservice Flask Application](https://devxblog.hashnode.dev/kubernetes-microservice-flask-application-1) - [medium.com/@hmquan08011996: Setup Microservices on Kubernetes โ€” Write a Configuration File](https://medium.com/@hmquan08011996/set-up-microservice-on-kubernetes-write-config-file-8df7c2b07a4c) Deployed the microservice to Kubernetes - [==github.com/AdminTurnedDevOps/kubernetes-in-production-examples==](https://github.com/AdminTurnedDevOps/kubernetes-in-production-examples) This repo contains examples of a few tools and services you may use in production. @@ -248,9 +248,9 @@ ### Istio Service Mesh - [github: redhat-developer-demos Istio Tutorial for Java Microservices](https://github.com/redhat-scholars/istio-tutorial) -- [blog.jetstack.io: Istio OIDC Authentication](https://developer.cyberark.com/blog/istio-oidc-authentication) In this article you'll deploy an app and secure it with authenticaiton and authorisation for using Istio +- [blog.jetstack.io: Istio OIDC Authentication](https://developer.cyberark.com/blog/istio-oidc-authentication)you'll deploy an app and secure it with authenticaiton and authorisation for using Istio - [github.com/stefanprodan/gitops-istio: A GitOps recipe for Progressive Delivery with Flux v2, Flagger and Istio ๐ŸŒŸ](https://github.com/stefanprodan/gitops-istio) -- [blog.alexellis.io: A bit of Istio before tea-time](https://blog.alexellis.io/a-bit-of-istio-before-tea-time) In this post you will learn how to set up a full Istio demo running with a public IP directly to your laptop Wirth KinD +- [blog.alexellis.io: A bit of Istio before tea-time](https://blog.alexellis.io/a-bit-of-istio-before-tea-time)you will learn how to set up a full Istio demo running with a public IP directly to your laptop Wirth KinD ### Envoy Service Mesh @@ -369,7 +369,7 @@ - [openshift.com: Simple Canary Deployments using Kubernetes StatefulSets on OpenShift](https://www.redhat.com/en/blog/simple-canary-deployments-using-kubernetes-statefulsets-on-openshift) - [github.com/jbossdemocentral: Red Hat Process Automation Manager Mortgage Demo](https://github.com/jbossdemocentral/rhpam7-mortgage-demo) - [medium: Tutorial : Secure your API with x509 Mutual Authentication with Spring Boot on OpenShift4](https://medium.com/@erfin.feluzy/tutorial-secure-your-api-with-x509-mutual-authentication-with-spring-boot-on-openshift4-416a00a47af8) -- [medium.com: Red Hat OpenShift Virtualization in nested VMware vSphere Cluster](https://medium.com/@carlosedp/red-hat-openshift-virtualization-in-nested-vmware-vsphere-56c5e5d76a80) In this post, I'll go thru the process of running Virtual Machines on OpenShift Virtualization in a nested setup inside VMware vSphere. This requires both ESXi hosts and a VCenter, both on 6.7U3 or up. +- [medium.com: Red Hat OpenShift Virtualization in nested VMware vSphere Cluster](https://medium.com/@carlosedp/red-hat-openshift-virtualization-in-nested-vmware-vsphere-56c5e5d76a80) I'll go thru the process of running Virtual Machines on OpenShift Virtualization in a nested setup inside VMware vSphere. This requires both ESXi hosts and a VCenter, both on 6.7U3 or up. - [schabell.org: CodeReady Containers - Building a Cloud-Native Human Resources Process](https://www.schabell.org/2020/10/codeready-containers-building-cloud-native-hr-process.html) - [developers.redhat.com: Persistent storage in action: Understanding Red Hat OpenShiftโ€™s persistent volume framework ๐ŸŒŸ](https://developers.redhat.com/blog/2020/10/22/persistent-storage-in-action-understanding-red-hat-openshifts-persistent-volume-framework) - [opensource.com: Set up Minishift and run Jenkins on Linux](https://opensource.com/article/20/11/minishift-linux) Install, configure, and use Minishift to create your first pipeline. @@ -416,7 +416,7 @@ - [openshift.com: GitOps Using Red Hat OpenShift Pipelines (Tekton) and Red Hat Advanced Cluster Management to Deploy on Multiple Clusters ๐ŸŒŸ](https://www.redhat.com/en/blog/gitops-using-red-hat-openshift-pipelines-tekton-and-red-hat-advanced-cluster-management-to-deploy-on-multiple-clusters) - [developers.redhat.com: Getting started with Tekton and Pipelines](https://developers.redhat.com/blog/2021/01/13/getting-started-with-tekton-and-pipelines) - [developers.redhat.com: Bootstrap GitOps with Red Hat OpenShift Pipelines and kam CLI](https://developers.redhat.com/articles/2021/07/21/bootstrap-gitops-red-hat-openshift-pipelines-and-kam-cli) Generate a #GitOps repository using the kam CLI for simple GitOps adoption by bootstrapping Git repositories with opinionated layouts for continuous delivery. -- [==dev.to: What is Knative Serving? A Friendly Guide==](https://dev.to/wiggitywhitney/9-waa-w-what-is-knative-serving-a-friendly-guide-28f6) In this article you will explore several benefits of Knative Serving: +- [==dev.to: What is Knative Serving? A Friendly Guide==](https://dev.to/wiggitywhitney/9-waa-w-what-is-knative-serving-a-friendly-guide-28f6)you will explore several benefits of Knative Serving: - Ease of deployment - Scale to zero - Traffic splitting @@ -453,7 +453,7 @@ - [==piotrminkowski.com: Continuous Delivery on Kubernetes with Database using ArgoCD and Liquibase==](https://piotrminkowski.com/2021/12/13/continuous-delivery-on-kubernetes-with-database-using-argocd-and-liquibase) - [medium.com/adaltas: GitOps in practice, deploy Kubernetes applications with ArgoCD](https://medium.com/adaltas/gitops-in-practice-deploy-kubernetes-applications-with-argocd-ca170ce8aba3) - [gokuldevops.medium.com: Argo CD-Sample app deployment](https://gokuldevops.medium.com/argo-cdsample-app-deployment-56b36601f279) Argo CD one of the most popular continues deployment tools used in Kubernetes. It is very simple to use and quite powerful. Personally, it is the first tool in my mind when I think of Kubernetes GitOps. -- [==codefresh.io: Using Argo CD and Kustomize for ConfigMap Rollouts== ๐ŸŒŸ๐ŸŒŸ](https://octopus.com/blog/using-argo-cd-and-kustomize-for-configmap-rollouts) In this article, you will learn how to automatically rollout ConfigMap changes in your GitOps workflows using Argo CD and Kustomize. +- [==codefresh.io: Using Argo CD and Kustomize for ConfigMap Rollouts== ๐ŸŒŸ๐ŸŒŸ](https://octopus.com/blog/using-argo-cd-and-kustomize-for-configmap-rollouts) how to automatically rollout ConfigMap changes in your GitOps workflows using Argo CD and Kustomize. - [medium.com/@martin.hodges: Spring Boot CI/CD on Kubernetes using Terraform, Ansible and GitHub: Part 12](https://medium.com/@martin.hodges/use-terraform-ansible-and-github-actions-to-automate-running-your-spring-boot-application-on-e82424da828e) - [mrcloudbook.com: Automating Tetris Deployments: DevSecOps with ArgoCD, Terraform, and Jenkins for Two Game Versions](https://mrcloudbook.com/automating-tetris-deployments-devsecops-with-argocd-terraform-and-jenkins-for-two-game-versions) - [mrcloudbook.com: GitOps: Deploying Tetris on EKS Using ArgoCD](https://mrcloudbook.com/gitops-deploying-tetris-on-eks-using-argocd) @@ -627,7 +627,7 @@ - [Using Jenkins Pipeline parallel stages to build Maven project with different JDKs](https://e.printstacktrace.blog/using-jenkins-pipeline-parallel-stages-to-build-maven-project-with-different-jdks) - **Demo:** A single Jenkinsfile, a Java Maven project, a single Dockerfile, multiple Java versions build and tested in parallel thanks to SDKMAN: - [Using SDKMAN! as a docker image for Jenkins Pipeline - a step by step guide ๐ŸŒŸ](https://e.printstacktrace.blog/using-sdkman-as-a-docker-image-for-jenkins-pipeline-a-step-by-step-guide) - - [Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN ๐ŸŒŸ](https://www.youtube.com/watch?v=j1lH3vOhucw) In this video, I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job. + - [Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN ๐ŸŒŸ](https://www.youtube.com/watch?v=j1lH3vOhucw) I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job. - [Jenkins Pipeline Maven build demo](https://github.com/wololock/jenkine-pipeline-maven-demo/tree/sdkman) ??? note "Video: Jenkins Pipeline with multiple Java versions. Click to expand!" @@ -669,7 +669,7 @@ Grab them from here: [awesome-kubernetes/scripts](https://github.com/nubenetes/a - [codeburst.io: Spinnaker by Example: Part 1](https://codeburst.io/spinnaker-by-example-part-1-c4de9180d689) - [codeburst.io: Spinnaker by Example: Part 2](https://codeburst.io/spinnaker-by-example-part-2-6f92a1fdaedf) - [codeburst.io: Spinnaker by Example: Part 3](https://codeburst.io/spinnaker-by-example-part-3-c6ed9ac5f8ce) -- [dzone: Continuous Deployment on Kubernetes With Spinnaker](https://dzone.com/articles/continuous-deployment-on-kubernetes-with-spinnaker) In this article, learn how to setup Spinnaker and integrate it with Gitlab CI and Jenkins to build and run CI and CD pipelines. +- [dzone: Continuous Deployment on Kubernetes With Spinnaker](https://dzone.com/articles/continuous-deployment-on-kubernetes-with-spinnaker) learn how to setup Spinnaker and integrate it with Gitlab CI and Jenkins to build and run CI and CD pipelines. - [armory.io: How to Set Up Liquibase in Spinnaker](https://www.harness.io/products/continuous-delivery) - [armory.io: Build a Deployment Pipeline with Spinnaker on Kubernetes](https://www.harness.io/products/continuous-delivery) - [hackernoon: Using Spinnaker with Kubernetes for CI/CD](https://hackernoon.com/using-spinnaker-with-kubernetes-for-cicd-52w3uo9) @@ -761,7 +761,7 @@ Grab them from here: [awesome-kubernetes/scripts](https://github.com/nubenetes/a - [dzone.com: From Spring Boot Microservices to Lambda Functions ๐ŸŒŸ๐ŸŒŸ](https://dzone.com/articles/from-java-microservices-to-lambda-functions-a-jour) Get your microservices where they need to be. - [==AdminTurnedDevOps/DevOps-The-Hard-Way-AWS==](https://github.com/AdminTurnedDevOps/DevOps-The-Hard-Way-AWS) **This repository contains free labs for setting up an entire workflow and DevOps environment from a real-world perspective in AWS** - [==medium.com/@adrianarba: CI/CD defined through terraform using AWS CodePipeline, AWS CodeCommit, and AWS CodeBuild==](https://medium.com/@adrianarba/ci-cd-defined-through-terraform-using-aws-codepipeline-aws-codecommit-and-aws-codebuild-12ade4d9cfa3) -- [faun.pub: Using AWS Session Manager With Ansible To Execute Playbook On EC2](https://faun.pub/using-aws-session-manager-with-ansible-to-execute-playbook-on-ec2-ac97fa17b187) In this post, weโ€™ll see how we can use AWS Session Manager instead of SSH to connect to an EC2 instance and execute a playboook. +- [faun.pub: Using AWS Session Manager With Ansible To Execute Playbook On EC2](https://faun.pub/using-aws-session-manager-with-ansible-to-execute-playbook-on-ec2-ac97fa17b187) weโ€™ll see how we can use AWS Session Manager instead of SSH to connect to an EC2 instance and execute a playboook. - [betterprogramming.pub: Build a Cloud-Native Multiprocessing Framework](https://betterprogramming.pub/build-a-cloud-native-multiprocessing-framework-b33cfc2c02b9) How to convert a local multiprocessing framework to the cloud - [github.com/aws-samples: Guide to Resource Tagging Automation](https://github.com/aws-samples/resource-tagging-automation) A Lambda function for Resource Tagging Automation - [aws.plainenglish.io: Trigger, Function, Message | Brandi McCall](https://aws.plainenglish.io/trigger-function-message-12f117b7f067) Utilizing Amazon API Gateway to Invoke a Python AWS Lambda to Send a Message to Amazon SQS @@ -904,7 +904,7 @@ Grab them from here: [awesome-kubernetes/scripts](https://github.com/nubenetes/a - [codeproject.com: Making a Simple Data Pipeline Part 4: CI/CD with GitHub Actions](https://www.codeproject.com/Articles/5320647/Making-a-Simple-Data-Pipeline-Part-4-CI-CD-with-Gi) - [levelup.gitconnected.com: GitOps: CI/CD using GitHub Actions and ArgoCD on Kubernetes](https://levelup.gitconnected.com/gitops-ci-cd-using-github-actions-and-argocd-on-kubernetes-909d85d37746) Deploying Helm Charts on AWS EKS Cluster using ArgoCD and GitOps. - [freecodecamp.org: How to Setup a CI/CD Pipeline with GitHub Actions and AWS](https://www.freecodecamp.org/news/how-to-setup-a-ci-cd-pipeline-with-github-actions-and-aws) -- [nicwortel.nl: Continuous deployment to Kubernetes with GitHub Actions](https://nth-root.nl/en/guides/automate-kubernetes-deployments-with-github-actions) In this article, you will learn how to use GitHub Actions to automatically test, build and deploy your Docker images to Kubernetes on every commit to the main branch +- [nicwortel.nl: Continuous deployment to Kubernetes with GitHub Actions](https://nth-root.nl/en/guides/automate-kubernetes-deployments-with-github-actions) how to use GitHub Actions to automatically test, build and deploy your Docker images to Kubernetes on every commit to the main branch - [medium.com/geekculture: GitOps โ€” Github Actions K8s Deploy Workflow](https://medium.com/geekculture/gitops-github-actions-k8s-deploy-workflow-54f0d9a1d11b) - [eggboy.medium.com: CI/CD Java apps securely to Azure Kubernetes Service with GitHub Action โ€” Part 1](https://eggboy.medium.com/ci-cd-java-apps-securely-to-azure-kubernetes-service-with-github-action-part-1-16393af4d097) - [github.com/GitHubSecurityLab/actions-permissions: GitHub token permissions Monitor and Advisor actions](https://github.com/GitHubSecurityLab/actions-permissions) **GitHub token permissions Monitor and Advisor actions** diff --git a/docs/developerportals.md b/docs/developerportals.md index 8ab3e439..e9b2d9bb 100644 --- a/docs/developerportals.md +++ b/docs/developerportals.md @@ -126,7 +126,7 @@ - [medium: Running services with Knative & Kong](https://medium.com/nerd-for-tech/running-services-with-knative-kong-3135c0d94dfa) - [==dzone: Breaking Up a Monolithic Database with Kong==](https://dzone.com/articles/breaking-up-a-monolithic-database-with-kong) If your microservice design results in a very large API or multiple services accessing a single database, check out why Kong Gateway should be part of your project. - [konghq.com: Kong and Red Hat: Delivering Seamless Customer Experience](https://konghq.com/blog/news/kong-and-red-hat-collaboration) -- [medium.com/@martin.hodges: Why do I need an API Gateway on a Kubernetes cluster](https://medium.com/@martin.hodges/why-do-i-need-an-api-gateway-on-a-kubernetes-cluster-c70f15da836c) In this article I introduce the concepts of an API Gateway and explain why you would need one in your Kubernetes cluster. In my next article I will show how to set one up using Kong. +- [medium.com/@martin.hodges: Why do I need an API Gateway on a Kubernetes cluster](https://medium.com/@martin.hodges/why-do-i-need-an-api-gateway-on-a-kubernetes-cluster-c70f15da836c)I introduce the concepts of an API Gateway and explain why you would need one in your Kubernetes cluster. In my next article I will show how to set one up using Kong. ### Tyk API Manager @@ -147,7 +147,7 @@ ### Gloo Federation API Gateway Management - [Introducing Gloo Federation for Multi-Cluster API Gateway Management](https://www.solo.io/blog) -- [solo.io: [Tutorial] Securing APIs with OIDC Using Keycloak](https://www.solo.io/blog/tutorial-gloo-integration-with-keycloak) In this tutorial, you will learn how to integrate the Gloo API gateway with Keycloack in Kubernetes +- [solo.io: [Tutorial] Securing APIs with OIDC Using Keycloak](https://www.solo.io/blog/tutorial-gloo-integration-with-keycloak) how to integrate the Gloo API gateway with Keycloack in Kubernetes ### Backstage Developer Portal @@ -175,7 +175,7 @@ ### Spring Cloud Gateway - [Spring Cloud Gateway](https://spring.io/projects/spring-cloud-gateway) -- [dzone: Custom Rate Limiting for Microservices ๐ŸŒŸ](https://dzone.com/articles/rate-limiting-for-microservices) Enforcing rate limits on microservices is a common requirement in the API economy. In this article, we are going to build a custom rate limiting solution. +- [dzone: Custom Rate Limiting for Microservices ๐ŸŒŸ](https://dzone.com/articles/rate-limiting-for-microservices) Enforcing rate limits on microservices is a common requirement in the API economy. we are going to build a custom rate limiting solution. - [cloudtechtwitter.com: Pattern: API Gateway / Backends for Frontends](https://www.cloudtechtwitter.com/2022/05/pattern-api-gateway-backends-for.html) Spring Cloud Gateway provides a library to build an API Gateway. This is the preferred gateway implementation provided by Spring Cloud. It's built with Spring 5, Spring Boot 2, and Project Reactor. To understand the offerings of Spring Cloud Gateway we must understand the API Gateway pattern in detail. - [medium.com/@jeevansathisocial: High-performance API gateway](https://medium.com/@jeevansathisocial/high-performance-api-gateway-3661d5a2fee0s-3661d5a2fee0) diff --git a/docs/devsecops.md b/docs/devsecops.md index 957c79c6..5f5b7f1a 100644 --- a/docs/devsecops.md +++ b/docs/devsecops.md @@ -429,10 +429,10 @@ - [openshift.com: Geographically Distributed Stateful Workloads - Part 3: Keycloak](https://www.redhat.com/en/blog/geographically-distributed-stateful-workloads-part-3-keycloak) - [blog.flant.com: Running fault-tolerant Keycloak with Infinispan in Kubernetes](https://palark.com/blog/ha-keycloak-infinispan-kubernetes) - [baeldung.com: A Quick Guide to Using Keycloak with Spring Boot](https://www.baeldung.com/spring-boot-keycloak) -- [==medium.com/@charled.breteche: Securing Grafana with Keycloak SSO==](https://medium.com/@charled.breteche/securing-grafana-with-keycloak-sso-d01fec05d984) In this article you will learn how to deploy and configure Keycloak in a local Kubernetes cluster, then deploy Grafana and use the Keycloak instance for authentication and authorization +- [==medium.com/@charled.breteche: Securing Grafana with Keycloak SSO==](https://medium.com/@charled.breteche/securing-grafana-with-keycloak-sso-d01fec05d984)you will learn how to deploy and configure Keycloak in a local Kubernetes cluster, then deploy Grafana and use the Keycloak instance for authentication and authorization - [dev.to: KeyCloak with Nginx Ingress](https://dev.to/aws-builders/keycloak-with-nginx-ingress-6fo) - [medium.com/@amirhosseineidy: Kubernetes authentication with keycloak oidc](https://medium.com/@amirhosseineidy/kubernetes-authentication-with-keycloak-oidc-63571eaeed61) -- [medium.com/@martin.hodges: How to install Keycloak IAM on your Kubernetes cluster, backed by Postgres](https://medium.com/@martin.hodges/how-to-install-keycloak-iam-on-your-kubernetes-cluster-backed-by-postgres-1228eae4faeb) In this article I look at installing Keycloak and integrating with a Kong API Gateway inside a Kubernetes cluster to provide an OAuth and OIDC solution for your services. +- [medium.com/@martin.hodges: How to install Keycloak IAM on your Kubernetes cluster, backed by Postgres](https://medium.com/@martin.hodges/how-to-install-keycloak-iam-on-your-kubernetes-cluster-backed-by-postgres-1228eae4faeb)I look at installing Keycloak and integrating with a Kong API Gateway inside a Kubernetes cluster to provide an OAuth and OIDC solution for your services. ### Git Credential Manager Core @@ -462,7 +462,7 @@ - [kubeopsskills/cloud-secret-resolvers: Cloud Secret Resolvers (CSR)](https://github.com/kubeopsskills/cloud-secret-resolvers) Cloud Secret Resolvers is a set of tools to help your applications (on Kubernetes) to retrieve any credentials from cloud managed vaults without the needed to write additional boilerplate code in your applications!. - [thenewstack.io: Managing Secrets in Your DevOps Pipeline](https://thenewstack.io/managing-secrets-in-your-devops-pipeline) - [==thenewstack.io: Kubernetes Secrets Management: 3 Approaches, 9 Best Practices==](https://thenewstack.io/kubernetes-secrets-management-3-approaches-9-best-practices) Developers must make early design choices about where to store secrets, how to retrieve them and how to make them available in an application. -- [siddhivinayak-sk.medium.com: Kubeseal & SealedSecret: Make your โ€˜secretsโ€™ secure in SCM by using โ€˜sealed secretโ€™](https://siddhivinayak-sk.medium.com/kubeseal-sealedsecret-make-your-secrets-secure-in-scm-by-using-sealed-secret-4631bcb39bf8) In this article, you will learn the theory and practice behind encrypting your secrets with SealedSecret & Kubeseal +- [siddhivinayak-sk.medium.com: Kubeseal & SealedSecret: Make your โ€˜secretsโ€™ secure in SCM by using โ€˜sealed secretโ€™](https://siddhivinayak-sk.medium.com/kubeseal-sealedsecret-make-your-secrets-secure-in-scm-by-using-sealed-secret-4631bcb39bf8) the theory and practice behind encrypting your secrets with SealedSecret & Kubeseal ### Anti Patterns. Wrong Secrets @@ -527,7 +527,7 @@ - [piotrminkowski.com: Vault on Kubernetes with Spring Cloud](https://piotrminkowski.com/2021/12/30/vault-on-kubernetes-with-spring-cloud) - [hashicorp.com: Integrating Azure AD Identity with HashiCorp Vault โ€” Part 1: Azure Application Auth via OIDC](https://www.hashicorp.com/blog/integrating-azure-ad-identity-hashicorp-vault-part-1-application-auth-oidc) - [==medium.com/@pratyush.mathur: Secrets Management Using Vault in K8S==](https://medium.com/@pratyush.mathur/secrets-management-using-vault-in-k8s-272462c37fd8) -- [hashicorp.com: Kubernetes Vault Integration via Sidecar Agent Injector vs. CSI Provider](https://www.hashicorp.com/blog/kubernetes-vault-integration-via-sidecar-agent-injector-vs-csi-provider) In this post, you will explore the different methods of integrating HashiCorp Vault with Kubernetes and learn how to choose the best solution for your use case. +- [hashicorp.com: Kubernetes Vault Integration via Sidecar Agent Injector vs. CSI Provider](https://www.hashicorp.com/blog/kubernetes-vault-integration-via-sidecar-agent-injector-vs-csi-provider) you will explore the different methods of integrating HashiCorp Vault with Kubernetes and learn how to choose the best solution for your use case. - [hashicorp.com: Manage Kubernetes Secrets for Flux with HashiCorp Vault](https://www.hashicorp.com/blog/manage-kubernetes-secrets-for-flux-with-hashicorp-vault) Configure the Secrets Store CSI driver with HashiCorp Vault to securely inject secrets into **Flux** or other GitOps tools on Kubernetes. - [==hashicorp.com: How to Integrate Your Application with Vault: Static Secrets==](https://www.hashicorp.com/blog/how-to-integrate-your-application-with-vault-static-secrets) Learn how to retrieve static secrets from HashiCorp Vault in a real-world setting using a new sample application. - [blog.devops.dev: Using Vault in Kubernetes Production for Security Engineers](https://blog.devops.dev/using-vault-in-kubernetes-production-for-security-engineers-54d2f0aca4d1) @@ -539,8 +539,8 @@ - [medium.com/@nikhil.purva: Securing Kubernetes Secrets with HashiCorp Vault](https://medium.com/@nikhil.purva/securing-kubernetes-secrets-with-hashicorp-vault-a9555728e095) - [hashicorp.com: The State of Vault and Kubernetes, and Future Plans](https://www.hashicorp.com/blog/the-state-of-vault-and-kubernetes-and-future-plans) Get an overview of the most common ways to use HashiCorp Vault and Kubernetes together, and get a preview of a new method we're considering. - [alexandre-vazquez.com: How To Inject Secrets in Pods To Improve Security with Hashicorp Vault in 5 Minutes ๐ŸŒŸ](https://alexandre-vazquez.com/inject-secrets-in-pods-using-hashicorp-vault) -- [medium.com/@martin.hodges: Introduction to Vault to provide secret management in your Kubernetes cluster](https://medium.com/@martin.hodges/introduction-to-vault-to-provide-secret-management-in-your-kubernetes-cluster-658b58372569) One of the core Kubernetes resources is a Secret. However, these Secrets are not actually secure, as anyone with access to the cluster may be able to read and update the secret. This article introduces Vault into the cluster to securely manage secrets. - - [medium.com/@martin.hodges: Enabling TLS on your Vault cluster on Kubernetes](https://medium.com/@martin.hodges/enabling-tls-on-your-vault-cluster-on-kubernetes-0d20439b13d0) In this article I look at adding TLS secured connections to our unprotected Vault cluster. We will do this to ensure our secrets remain, well, secret. +- [medium.com/@martin.hodges: Introduction to Vault to provide secret management in your Kubernetes cluster](https://medium.com/@martin.hodges/introduction-to-vault-to-provide-secret-management-in-your-kubernetes-cluster-658b58372569) One of the core Kubernetes resources is a Secret. However, these Secrets are not actually secure, as anyone with access to the cluster may be able to read and update the secret.Vault into the cluster to securely manage secrets. + - [medium.com/@martin.hodges: Enabling TLS on your Vault cluster on Kubernetes](https://medium.com/@martin.hodges/enabling-tls-on-your-vault-cluster-on-kubernetes-0d20439b13d0)I look at adding TLS secured connections to our unprotected Vault cluster. We will do this to ensure our secrets remain, well, secret. - [medium.com/@calvineotieno010: Managing Application Secrets with Hashicorp Vault](https://medium.com/@calvineotieno010/managing-application-secrets-with-hashicorp-vault-8efb5e1d87fd) - [medium.com/@muppedaanvesh: A Hands-On Guide to Vault in Kubernetes](https://medium.com/@muppedaanvesh/a-hand-on-guide-to-vault-in-kubernetes-%EF%B8%8F-1daf73f331bd) Manage k8s Secrets Using HashiCorp Vault: With Practical Examples @@ -549,7 +549,7 @@ - [harness.io: Tutorial: How to Use the New Vault Agent Integration Method With Harness](https://www.harness.io/blog/vault-agent-secrets-management) - [harness.io: Tutorial: Vault Agent Advanced Use Case With Kubernetes Delegates and Shared Volumes ๐ŸŒŸ](https://www.harness.io/blog) - [hashicorp.com: Why Use the Vault Agent for Secrets Management?](https://www.hashicorp.com/blog/why-use-the-vault-agent-for-secrets-management) -- [medium.com/nerd-for-tech: PKI Certs Injection to K8s Pods with Vault Agent Injector](https://medium.com/nerd-for-tech/pki-certs-injection-to-k8s-pods-with-vault-agent-injector-d97482b48f3d) In this article, you'll learn how to use the Vault Agent Injector to dynamically generate and Inject PKI Certs to Pods by rendering secrets to a shared volume, containers within the pod will consume Vault secrets without being Vault aware. +- [medium.com/nerd-for-tech: PKI Certs Injection to K8s Pods with Vault Agent Injector](https://medium.com/nerd-for-tech/pki-certs-injection-to-k8s-pods-with-vault-agent-injector-d97482b48f3d) you'll learn how to use the Vault Agent Injector to dynamically generate and Inject PKI Certs to Pods by rendering secrets to a shared volume, containers within the pod will consume Vault secrets without being Vault aware. - [hashicorp.com: Refresh Secrets for Kubernetes Applications with Vault Agent](https://www.hashicorp.com/blog/refresh-secrets-for-kubernetes-applications-with-vault-agent) Learn the system signal and live reload methods for updating Kubernetes applications when secrets change. See an example via a Spring Boot application. ### Azure Key Vault @@ -629,7 +629,7 @@ ### Sigstore - [==sigstore.dev==](https://www.sigstore.dev) A new standard for signing, verifying and protecting software. Making sure your softwareโ€™s what it claims to be. - - [youtube: Hands-on Introduction to sigstore | Rawkode Live](https://www.youtube.com/watch?v=fZfd4orrn8Y&ab_channel=RawkodeAcademy) In this tutorial, youโ€™ll learn how to sign and verify container images with co-sign, with and without a private key. + - [youtube: Hands-on Introduction to sigstore | Rawkode Live](https://www.youtube.com/watch?v=fZfd4orrn8Y&ab_channel=RawkodeAcademy) youโ€™ll learn how to sign and verify container images with co-sign, with and without a private key. - [==opensource.com: Sign and verify container images with this open source tool (sigstore)==](https://opensource.com/article/21/12/sigstore-container-images) The sigstore project aims at securing supply chain technology. ### Container security best practices @@ -661,7 +661,7 @@ - [falco.org: Detect Malicious Behaviour on Kubernetes API Server through gathering Audit Logs by using FluentBit - Part 2](https://falco.org/blog/detect-malicious-behaviour-on-kubernetes-api-server-through-gathering-audit-logs-by-using-fluentbit-part-2) - [kubearmor.io](https://kubearmor.io) Runtime protection for Kubernetes & other cloud Workloads. KubeArmor uses eBPF and Linux Security Modules (LSM) to provide policy based system to restrict any unwanted, malicious behavior of cloud-native workloads at runtime. - - [itnext.io: Protecting Your Kubernetes Environment With KubeArmor](https://itnext.io/protecting-your-kubernetes-environment-with-kubearmor-76b02fc2209b) In this article, you will learn how to use KubeArmor to define policies and protect your containerized workloads. You will test the setup against the ShellShock vulnerability and compare it to AppArmor. + - [itnext.io: Protecting Your Kubernetes Environment With KubeArmor](https://itnext.io/protecting-your-kubernetes-environment-with-kubearmor-76b02fc2209b) how to use KubeArmor to define policies and protect your containerized workloads. You will test the setup against the ShellShock vulnerability and compare it to AppArmor. ## Helm Charts Security. Helm Secrets diff --git a/docs/docker.md b/docs/docker.md index e501b0ae..bbe1d42c 100644 --- a/docs/docker.md +++ b/docs/docker.md @@ -76,7 +76,7 @@ - [pythonspeed.com: Docker can slow down your code and distort your benchmarks](https://pythonspeed.com/articles/docker-performance-overhead) - [turbofuture.com: A Beginners Guide to Containers and Docker](https://turbofuture.com/computers/introductiontodocker) - [releasehub.com: Cutting Build Time In Half with Dockerโ€™s Buildx Kubernetes Driver](https://release.com/blog/cutting-build-time-in-half-docker-buildx-kubernetes) -- [medium.com/nttlabs: Kubernetes driver for Docker BuildX](https://medium.com/nttlabs/buildx-kubernetes-ad0fe59b0c64) In this article, you will learn how Docker BuildX supports building images using BuildKit pods on a Kubernetes cluster. Docker BuildX, the extended version of docker build CLI, now supports distributed image building using Kubernetes! +- [medium.com/nttlabs: Kubernetes driver for Docker BuildX](https://medium.com/nttlabs/buildx-kubernetes-ad0fe59b0c64) how Docker BuildX supports building images using BuildKit pods on a Kubernetes cluster. Docker BuildX, the extended version of docker build CLI, now supports distributed image building using Kubernetes! - [linuxadictos.com: Docker presenta nuevas capacidades para desarrolladores](https://www.linuxadictos.com/docker-presenta-nuevas-capacidades-para-desarrolladores.html) - [grafana.com: Docker Integration for Grafana Cloud](https://grafana.com/docs/grafana-cloud/monitor-infrastructure/integrations/integration-reference/integration-docker) Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. - [dev.to: Docker CMD vs ENTRYPOINT: explaining the difference](https://dev.to/hood/docker-cmd-vs-entrypoint-explaining-the-difference-55g7) diff --git a/docs/dotnet.md b/docs/dotnet.md index adf5d35c..f28aacdd 100644 --- a/docs/dotnet.md +++ b/docs/dotnet.md @@ -41,7 +41,7 @@ ## .NET MAUI -- [devblogs.microsoft.com: Getting Started with DevOps and .NET MAUI](https://devblogs.microsoft.com/dotnet/devops-for-dotnet-maui) .NET Multi-platform App UI (.NET MAUI) unifies Android, iOS, macOS, and Windows UI frameworks into a single framework so you can write one app that runs natively on many platforms. In this post, we will look at how easy it is to implement basic DevOps pipelines for .NET MAUI apps using GitHub Actions and Azure DevOps. +- [devblogs.microsoft.com: Getting Started with DevOps and .NET MAUI](https://devblogs.microsoft.com/dotnet/devops-for-dotnet-maui) .NET Multi-platform App UI (.NET MAUI) unifies Android, iOS, macOS, and Windows UI frameworks into a single framework so you can write one app that runs natively on many platforms. we will look at how easy it is to implement basic DevOps pipelines for .NET MAUI apps using GitHub Actions and Azure DevOps. ## Polly .NET resilience and transient-fault-handling library diff --git a/docs/faq.md b/docs/faq.md index 08a94526..19b51255 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -51,7 +51,7 @@ - The lift and shift migration style is one of the approaches that can help you transition to the cloud without the need to redesign applications or disrupt workflow operations. - It all starts with containerizing the applications using platforms like Docker and then moving entirely to a microservices architecture. - [dzone: The Best Cloud Migration Approach: Lift-And-Shift, Replatform, Or Refactor?](https://dzone.com/articles/the-best-cloud-migration-approach-lift-and-shift-r) There are a number of ways to get your applications to the cloud, but the question of which method to use is a little up in the air. -- [dzone: 10 Commandments of Microservice Decomposition ๐ŸŒŸ](https://dzone.com/articles/10-commandments-on-microservice-decomposition) In this article, I will try to cover the purposes of terms used while decomposing microservices and try to fit them under one umbrella concept. +- [dzone: 10 Commandments of Microservice Decomposition ๐ŸŒŸ](https://dzone.com/articles/10-commandments-on-microservice-decomposition) I will try to cover the purposes of terms used while decomposing microservices and try to fit them under one umbrella concept. - [acloudguru.com: What is lift and shift cloud migration?](https://www.pluralsight.com/resources/blog/business-and-leadership/what-is-lift-and-shift-cloud-migration) ## Architectural Patterns for Caching Microservices diff --git a/docs/finops.md b/docs/finops.md index c620bbb8..53b76007 100644 --- a/docs/finops.md +++ b/docs/finops.md @@ -43,7 +43,7 @@ - [edgebricks.com: Why Public Clouds Get So Expensive Over Time ๐ŸŒŸ](https://edgebricks.com/why-public-clouds-get-so-expensive-over-time) - [aws.amazon.com: Four Principles of Cloud Financial Management Small and Medium Business Owners Need to Know](https://aws.amazon.com/blogs/smb/four-principles-of-cloud-financial-management-small-and-medium-business-owners-need-to-know) - [logz.io: FinOps Observability: Monitoring Kubernetes Cost](https://logz.io/blog/finops-observability-monitoring-kubernetes-cost) -- [medium.com/adeo-tech: How to save money fast with Kubernetes โ€” Do FinOps](https://medium.com/adeo-tech/how-to-save-money-fast-with-kubernetes-do-finops-3a9cafc9beba) In this article, you will learn how to reduce your cloud bill and some tips on cloud infrastructure optimization +- [medium.com/adeo-tech: How to save money fast with Kubernetes โ€” Do FinOps](https://medium.com/adeo-tech/how-to-save-money-fast-with-kubernetes-do-finops-3a9cafc9beba) how to reduce your cloud bill and some tips on cloud infrastructure optimization - [infoworld.com: Kubernetes cost management for the real world](https://www.infoworld.com/article/2338428/kubernetes-cost-management-for-the-real-world.html) How much will Kubernetes cost to run? That question has become much easier to answer for Azure Kubernetes Service, thanks to OpenCost integration. - [infoworld.com: When finops costs you more in the end](https://www.infoworld.com/article/2338012/when-finops-costs-you-more-in-the-end.html) Cloud finops can save you tons of money on cloud spending and return more value to the business. Unfortunately, mistakes are costing companies big time. - [infoworld.com: Kubernetes costs less, but less than what?](https://www.infoworld.com/article/2338474/kubernetes-costs-less-but-less-than-what.html) Sure, compared to traditional IT, Kubernetes is great, but not much will beat public cloud in the long run. @@ -82,12 +82,12 @@ - [medium.com/armory: Continuous Cost Optimization for Kubernetes](https://medium.com/armory/continuous-cost-optimization-for-kubernetes-4361045f0215) - [==learnk8s/xlskubectl==](https://github.com/learnk8s/xlskubectl) A spreadsheet to control your Kubernetes cluster. xlskubectl integrates Google Spreadsheet with Kubernetes. You can finally administer your cluster from the same spreadsheet that you use to track your expenses. -- [==medium.com/empathyco: Cloud FinOps โ€” Part 4: Kubernetes Cost Report==](https://medium.com/empathyco/cloud-finops-part-4-kubernetes-cost-report-b4964be02dc3) In this article, you will learn how to build your own Kubernetes cost explorer dashboard using Prometheus and Grafana. +- [==medium.com/empathyco: Cloud FinOps โ€” Part 4: Kubernetes Cost Report==](https://medium.com/empathyco/cloud-finops-part-4-kubernetes-cost-report-b4964be02dc3) how to build your own Kubernetes cost explorer dashboard using Prometheus and Grafana. - [==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. - [medium.com/develeap: Cutting down Kubernetes Costs: Cast.ai vs. Karpenter](https://medium.com/develeap/cutting-down-kubernetes-costs-cast-ai-vs-karpenter-20f6788b4c67) - [engineering.razorpay.com: The Culture of Cost Optimization โ€” Reducing Kubernetes cost by $300,000](https://engineering.razorpay.com/the-culture-of-cost-optimization-reducing-kubernetes-cost-by-300-000-32611cdd19d9) - [infoworld.com: 5 steps to bringing Kubernetes costs in line](https://www.infoworld.com/article/2338303/5-steps-to-bringing-kubernetes-costs-in-line.html) -- [medium.com/@suleimanabualrob: Kubernetes cost optimisation](https://medium.com/@suleimanabualrob/kubernetes-cost-optimisation-9e81b76814f6) In this article, you'll discuss resource over-provisioning in Kubernetes and learn some tips to improve utilisation to save money and have a well-architected workload +- [medium.com/@suleimanabualrob: Kubernetes cost optimisation](https://medium.com/@suleimanabualrob/kubernetes-cost-optimisation-9e81b76814f6) you'll discuss resource over-provisioning in Kubernetes and learn some tips to improve utilisation to save money and have a well-architected workload - [thenewstack.io: Grafana Wants to Help You Avoid Getting Dinged by Kubernetes Costs](https://thenewstack.io/grafana-wants-to-help-you-avoid-getting-dinged-by-kubernetes-costs) Grafana introduces new infrastructure and cost monitoring capabilities in Grafana Cloud. ## Licence Managers @@ -104,12 +104,12 @@ ## Kubernetes Governance and Cost Management for the Cloud-Native Enterprise - [ServerlessHorrors: A Web Compiling Nightmares in the Serverless World](https://revistacloud.com/serverlesshorrors-la-web-que-recoge-las-peores-pesadillas-del-mundo-serverless) - *(Related to serverless topic)* -- [medium.com/compass-true-north: Halving Kubernetes Compute Costs With Vertical Pod Autoscaler](https://medium.com/compass-true-north/halving-kubernetes-compute-costs-with-vertical-pod-autoscaler-df658c043301) In this article, you'll learn how the team at Compass managed to reduce the need for over 50 per cent of the total nodes in each cluster (halving their compute costs) by using the vertical pod autoscaler +- [medium.com/compass-true-north: Halving Kubernetes Compute Costs With Vertical Pod Autoscaler](https://medium.com/compass-true-north/halving-kubernetes-compute-costs-with-vertical-pod-autoscaler-df658c043301) you'll learn how the team at Compass managed to reduce the need for over 50 per cent of the total nodes in each cluster (halving their compute costs) by using the vertical pod autoscaler ### Replex - [replex.io](https://www.splunk.com/en_us/appdynamics-joins-splunk.html?301=appdynamics) -- [replex.io: An Introduction to Kubernetes FinOps](https://www.splunk.com/en_us/appdynamics-joins-splunk.html?301=appdynamics) FinOps is a cross domain discipline that represents a set of tools, best practices and processes aimed towards making software and infrastructure more cost effective. In this article we provide an introduction to Kubernetes Finops. +- [replex.io: An Introduction to Kubernetes FinOps](https://www.splunk.com/en_us/appdynamics-joins-splunk.html?301=appdynamics) FinOps is a cross domain discipline that represents a set of tools, best practices and processes aimed towards making software and infrastructure more cost effective.we provide an introduction to Kubernetes Finops. ## Cost Optimization Tools - [Scale with Confidence Using Terraform: Better Cost Visibility, Stronger Governance, and Less Operational Overhead](https://t.co/y414rbxM7l) - *(Related to terraform topic)* diff --git a/docs/flux.md b/docs/flux.md index 0f100861..49580635 100644 --- a/docs/flux.md +++ b/docs/flux.md @@ -44,12 +44,12 @@ - [thenewstack.io: Deploy Stateful Workloads on Kubernetes with Ondat and FluxCD](https://thenewstack.io/deploy-stateful-workloads-on-kubernetes-with-ondat-and-fluxcd) GitOps provides a single source of truth for Kubernetes manifests, preventing configuration drift, allowing easy rollbacks and changes to production safely. - [==gist.github.com: GitOps for Helm Users== ๐ŸŒŸ](https://gist.github.com/scottrigby/a1a42c3292ec7899837c578ffdaaf92a) In this step-by-step tutorial, you will learn how to convert a Helm chart into declarative Custom Resources for Flux and gradually migrate your workloads to be GitOps-friendly. - [levelup.gitconnected.com: Flux CD: Getting Started](https://levelup.gitconnected.com/flux-cd-getting-started-1a06671d718f) This concise tutorial will show you to bootstrap Flux CD on your local cluster and deploy your applications from your GitHub repository. -- [weave.works: Flamingo: Expand Argo CD with Flux](https://www.weave.works/) +- [weave.works: Flamingo: Expand Argo CD with Flux](https://www.weave.works/blog/flamingo-expand-argo-cd-with-flux) ## ArgoCD vs FluxCD - [dzone.com: GitOps: Flux vs Argo CD ๐ŸŒŸ](https://dzone.com/articles/gitops-flux-vs-argo-cd) -- [blog.aenix.io: Argo CD vs Flux CD](https://blog.aenix.io/argo-cd-vs-flux-cd-7b1d67a246ca) In this article, Andrei shares his professional experience and compares two popular GitOps tools: Argo CD and Flux CD. He explores their features, use cases, and the specific problems they solve. +- [blog.aenix.io: Argo CD vs Flux CD](https://blog.aenix.io/argo-cd-vs-flux-cd-7b1d67a246ca) Andrei shares his professional experience and compares two popular GitOps tools: Argo CD and Flux CD. He explores their features, use cases, and the specific problems they solve. ## Flux Terraform Controller diff --git a/docs/gitops.md b/docs/gitops.md index c89a0688..f79c5a1b 100644 --- a/docs/gitops.md +++ b/docs/gitops.md @@ -98,7 +98,7 @@ - [shipa.io: GitOps in the enterprise ๐ŸŒŸ](https://shipa.io/gitops-in-the-enterprise) - [itnext.io: GitOps with Kubernetes ๐ŸŒŸ](https://itnext.io/gitops-with-kubernetes-740f37ea015b) - [shipa.io: GitOps meets AppOps](https://shipa.io/gitops-meets-appops) -- [weave.works: Automating Kubernetes with GitOps (whitepaper) ๐ŸŒŸ](https://www.weave.works/) +- [weave.works: Automating Kubernetes with GitOps (whitepaper) ๐ŸŒŸ](https://go.weave.works/automating-kubernetes-with-gitops-wp.html) - [devopslearners.com: What is GitOps?](https://devopslearners.com/what-is-gitops-168aac9a2ee) A small explanation for GitOps - [go.weave.works: The Practical Guide to GitOps (eBook)](https://www.weave.works/) - [enterprisersproject.com: How to explain GitOps in plain English](https://enterprisersproject.com/article/2021/6/gitops-explained-plain-english) What is GitOps and why is it important? How can IT leaders explain GitOps to others, especially if they donโ€™t speak DevOps or cloud-native? Experts break it down @@ -109,7 +109,7 @@ - [weave.works: The History of GitOps ๐ŸŒŸ](https://www.weave.works/blog/the-history-of-gitops) - [opensource.com: How to get the most out of GitOps right now](https://opensource.com/article/21/8/gitops) GitOps is a great starting point to understand what is running in production, but it may need a little more augmentation to get it working just right for your engineering team. - [redhat.com: 3 rules for applying principles of GitOps to enterprise architecture](https://www.redhat.com/en/blog/3-gitops-rules-architecture) Check out these three rules for using GitOps to get your enterprise architecture up and running effectively. -- [weave.works: Hardening Git for GitOps (white paper)](https://www.weave.works/) +- [weave.works: Hardening Git for GitOps (white paper)](https://go.weave.works/hardening-git-for-gitops.html) - [magalix.com: GitOps 101: Whatโ€™s It All About?](https://www.magalix.com/blog/what-is-gitops) - [containerjournal.com: The 4 Levels of GitOps Maturity](https://cloudnativenow.com/features/the-4-levels-of-gitops-maturity) - [thenewstack.io: How to Get the Most out of GitOps](https://thenewstack.io/how-to-get-the-most-out-of-gitops) __Just as Kubernetes was accepted as the best way to do cloud native applications, GitOps is gaining recognition as the best way to do Kubernetes.__ @@ -147,11 +147,11 @@ - [weave.works: The worldโ€™s largest telcos are now embracing GitOps. Deutsche Telekom explains why](https://www.weave.works/blog/deutsche-telekom-explain-why-they-chose-gitops-for-5g) GitOps and 5G - a deep dive into Deutsche Telekomโ€™s experience - [==thenewstack.io: Kubernetes at Scale without GitOps Is a Bad Idea==](https://thenewstack.io/kubernetes-at-scale-without-gitops-is-a-bad-idea) - [harness.io: GitOps: The New Kid On The DevOps Block!](https://www.harness.io/blog) GitOps: the single source of truth, the evangelizer of as-code, and the bringer of CI/CD automation. Get an intro view into GitOps here! -- [==Dzone: 3 Steps to Developing a Successful GitOps Model==](https://dzone.com/articles/3-steps-to-developing-a-successful-gitops-model) __In this post, explore how GitOps best serves organizations that develop cloud-native solutions based on containerization and microservices.__ +- [==Dzone: 3 Steps to Developing a Successful GitOps Model==](https://dzone.com/articles/3-steps-to-developing-a-successful-gitops-model) __explore how GitOps best serves organizations that develop cloud-native solutions based on containerization and microservices.__ - [linkedin pulse: GitOps vs. DevOps! | Pavan Belagatti](https://www.linkedin.com/pulse/gitops-vs-devops-pavan-belagatti) - [==containerjournal.com: GitOps Workflows and Principles for Kubernetes==](https://cloudnativenow.com/topics/gitops-workflows-and-principles-for-kubernetes) - [harness.io: 6 Actionable GitOps Best Practices To Help You Get Started](https://www.harness.io/blog/gitops-best-practices) -- [==codefresh.io: How to Model Your Gitops Environments and Promote Releases between Them== ๐ŸŒŸ](https://octopus.com/blog/how-to-model-your-gitops-environments) In this article, you'll learn how to use different folders on the same Git branch. Two questions after adopting GitOps are: +- [==codefresh.io: How to Model Your Gitops Environments and Promote Releases between Them== ๐ŸŒŸ](https://octopus.com/blog/how-to-model-your-gitops-environments) you'll learn how to use different folders on the same Git branch. Two questions after adopting GitOps are: - How should I represent different environments on Git? - How should I handle promoting releases between them? - [==piotrminkowski.com: Continuous Development on Kubernetes with GitOps Approach== ๐ŸŒŸ](https://piotrminkowski.com/2022/06/06/continuous-development-on-kubernetes-with-gitops-approach) @@ -359,7 +359,7 @@ - [medium: GitOps with Istio, Tekton and Argo CD โ€” on OpenShift 4](https://medium.com/@joelkaplan1/gitops-with-istio-tekton-and-argo-cd-on-openshift-4-5e42d22994e3) - [thenewstack.io: Red Hat Delivers Full GitOps CI/CD Built on Tekton and Argo](https://thenewstack.io/red-hat-delivers-full-gitops-ci-cd-built-on-tekton-and-argo) - [redhat.com: Red Hat Makes DevOps a Reality with OpenShift GitOps and OpenShift Pipelines ๐ŸŒŸ](https://www.redhat.com/en/about/press-releases/red-hat-makes-devops-reality-openshift-gitops-and-openshift-pipelines) New Red Hat OpenShift features provide fully-integrated CI/CD pipeline for organizations to deliver applications more consistently and with greater predictability across the open hybrid cloud. -- [==piotrminkowski.com: GitOps with Advanced Cluster Management for Kubernetes== ๐ŸŒŸ](https://piotrminkowski.com/2022/10/24/gitops-with-advanced-cluster-management-for-kubernetes) In this article, you will learn how to manage multiple clusters with Argo CD and Advanced Cluster Management for Kubernetes. Advanced Cluster Management (ACM) for Kubernetes is a tool provided by Red Hat based on a community-driven project [Open Cluster Management](https://open-cluster-management.io). Iโ€™ll show you how to use it with OpenShift to implement gitops approach for running apps across multiple clusters. However, you can as well deploy a community-driven version on Kubernetes. +- [==piotrminkowski.com: GitOps with Advanced Cluster Management for Kubernetes== ๐ŸŒŸ](https://piotrminkowski.com/2022/10/24/gitops-with-advanced-cluster-management-for-kubernetes) how to manage multiple clusters with Argo CD and Advanced Cluster Management for Kubernetes. Advanced Cluster Management (ACM) for Kubernetes is a tool provided by Red Hat based on a community-driven project [Open Cluster Management](https://open-cluster-management.io). Iโ€™ll show you how to use it with OpenShift to implement gitops approach for running apps across multiple clusters. However, you can as well deploy a community-driven version on Kubernetes. ### AWS Kubernetes - [Avoiding Mistakes with AWS OIDC Integration Conditions](https://www.wiz.io/blog/avoiding-mistakes-with-aws-oidc-integration-conditions) - *(Related to aws-security topic)* @@ -368,7 +368,7 @@ ### Weave Kubernetes Platform -- [weave.works: Weave Kubernetes Platform](https://www.weave.works/) Automate Enterprise Kubernetes the GitOps way +- [weave.works: Weave Kubernetes Platform](https://www.weave.works) Automate Enterprise Kubernetes the GitOps way - [github: Weave Net - Weaving Containers into Applications](https://github.com/weaveworks/weave) ### Ubuntu Charmed Kubernetes diff --git a/docs/golang.md b/docs/golang.md index e029df1a..e94e1aac 100644 --- a/docs/golang.md +++ b/docs/golang.md @@ -53,7 +53,7 @@ - [dev.to/mavensingh: Advantages and Disadvantages of Go](https://dev.to/mavensingh/advantages-and-disadvantages-of-go-5gha) - [levelup.gitconnected.com: Concurrency in Go: shared memory](https://levelup.gitconnected.com/concurrency-in-go-shared-memory-a2ef201b396b) - [luk4z7/go-concurrency-guide: Go Concurrency Guide ๐ŸŒŸ](https://github.com/luk4z7/go-concurrency-guide) Practical concurrency guide in Go, communication by channels, patterns -- [medium.com/datascale: Know GOMAXPROCS before deploying your GO app to Kubernetes](https://medium.com/datascale/know-gomaxprocs-before-deploying-your-go-app-to-kubernetes-7a458fb63af1) In this article, you will learn why setting GOMAXPROCS for your Go apps is crucial in Kubernetes. And you'll discover why it's better to assign a full-core CPU to your Go containers. +- [medium.com/datascale: Know GOMAXPROCS before deploying your GO app to Kubernetes](https://medium.com/datascale/know-gomaxprocs-before-deploying-your-go-app-to-kubernetes-7a458fb63af1) why setting GOMAXPROCS for your Go apps is crucial in Kubernetes. And you'll discover why it's better to assign a full-core CPU to your Go containers. - [dev.to: Getting Started With Go (golang) | Michael Levan](https://dev.to/thenjdevopsguy/getting-started-with-go-golang-5eh8) ## Design Patterns @@ -71,9 +71,9 @@ - [An example of using dynamic client of k8s.io/client-go](https://ymmt2005.hatenablog.com/entry/2020/04/14/An_example_of_using_dynamic_client_of_k8s.io/client-go) - [medium: Using the Go client framework ๐ŸŒŸ](https://medium.com/programming-kubernetes/building-stuff-with-the-kubernetes-api-part-4-using-go-b1d0e3c1c899) - [iximiuz.com: How To Call Kubernetes API using Go - Types and Common Machinery](https://iximiuz.com/en/posts/kubernetes-api-go-types-and-common-machinery) -- [itnext.io: Generically working with Kubernetes objects in Go](https://itnext.io/generically-working-with-kubernetes-resources-in-go-53bce678f887) Using the unstructured package from k8s API machinery. In this post youโ€™ll learn how to work with live Kubernetes objects in Go using the typed and dynamic clients available from the API machinery sub-project client-go. +- [itnext.io: Generically working with Kubernetes objects in Go](https://itnext.io/generically-working-with-kubernetes-resources-in-go-53bce678f887) Using the unstructured package from k8s API machinery.youโ€™ll learn how to work with live Kubernetes objects in Go using the typed and dynamic clients available from the API machinery sub-project client-go. - [medium.com/codex: Explore client-go Informer Patterns](https://medium.com/codex/explore-client-go-informer-patterns-4415bb5f1fbd) Invoke the Kubernetes resources without overloading the cluster. Many popular Kubernetes tools such as K9s are based on client-go. They use the informer pattern to continuously refresh data without posing additional pressure to the API Server. Learn how the informer pattern works in this article. -- [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. +- [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. 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) @@ -122,7 +122,7 @@ - [github.com/groundcover-com: Container Restarts Watcher](https://github.com/groundcover-com/blog/tree/main/blog_k8s_containers_restarts) - [create-go-app/cli](https://github.com/create-go-app/cli) Create a new production-ready project with backend, frontend and deploy automation by running one CLI command! - [Delve: a debugger for the Go Programming Language](https://github.com/derekparker/delve) - - [alexsniffin.medium.com: Debugging Remotely with Go in Kubernetes](https://alexsniffin.medium.com/debugging-remotely-in-kubernetes-with-go-fda4f3332316) In this tutorial, you will learn how to debug an application deployed in Kubernetes remotely using VS Code and Delve + - [alexsniffin.medium.com: Debugging Remotely with Go in Kubernetes](https://alexsniffin.medium.com/debugging-remotely-in-kubernetes-with-go-fda4f3332316) how to debug an application deployed in Kubernetes remotely using VS Code and Delve ## Go Books diff --git a/docs/grafana.md b/docs/grafana.md index 8f51c742..3455552d 100644 --- a/docs/grafana.md +++ b/docs/grafana.md @@ -75,7 +75,7 @@ - [percona.com: Tips for Designing Grafana Dashboards](https://www.percona.com/blog/designing-grafana-dashboards) - [devblogs.microsoft.com:Monitoring Azure by using Grafana dashboards ๐ŸŒŸ](https://devblogs.microsoft.com/devops/monitoring-azure-by-using-grafana-dashboards) - [github.com/kubevirt/monitoring](https://github.com/kubevirt/monitoring) KubeVirt monitoring dashboards. This repository collects Grafana dashboards for KubeVirt and Prometheus runbooks for alerts shipped with the KubeVirt stack. -- [medium.com/@dotdc: A set of modern Grafana dashboards for Kubernetes ๐ŸŒŸ](https://medium.com/@dotdc/a-set-of-modern-grafana-dashboards-for-kubernetes-4b989c72a4b2) In this article, I will present a set of modern Grafana dashboards I made for Kubernetes, explain why I decided to create them and how they work. +- [medium.com/@dotdc: A set of modern Grafana dashboards for Kubernetes ๐ŸŒŸ](https://medium.com/@dotdc/a-set-of-modern-grafana-dashboards-for-kubernetes-4b989c72a4b2) I will present a set of modern Grafana dashboards I made for Kubernetes, explain why I decided to create them and how they work. - [grafana.com: Grafana dashboards: A complete guide to all the different types you can build](https://grafana.com/blog/grafana-dashboards-a-complete-guide-to-all-the-different-types-you-can-build) - [medium.com/how-tos: How To Provisioning Dashboards In Grafana via Kubernetes](https://medium.com/how-tos/how-to-provisioning-dashboards-in-grafana-via-kubernetes-5d261508658d) Create a nice Dashboard that matches your needs - [==github.com/dotdc/grafana-dashboards-kubernetes== ๐ŸŒŸ](https://github.com/dotdc/grafana-dashboards-kubernetes) @@ -99,7 +99,7 @@ Message Streams like Kafka/Red Hat AMQ Streams|Other|[9777](https://grafana.com/ ## Grafana Loki - [Grafana Loki](https://grafana.com/oss/loki) -- [itnext.io: Logging in Kubernetes with Loki and the PLG Stack](https://itnext.io/logging-in-kubernetes-with-loki-and-the-plg-stack-93b27c90ec34) Loki is a new log aggregation system from Grafana Labs. It is designed to be cost-effective and easy to operate. In this article, you learn more about Loki and how to use the PLG Stack (Promtail, Loki, Grafana) for logging in Kubernetes. +- [itnext.io: Logging in Kubernetes with Loki and the PLG Stack](https://itnext.io/logging-in-kubernetes-with-loki-and-the-plg-stack-93b27c90ec34) Loki is a new log aggregation system from Grafana Labs. It is designed to be cost-effective and easy to operate. you learn more about Loki and how to use the PLG Stack (Promtail, Loki, Grafana) for logging in Kubernetes. - [cleancloud-k8s.com: Handling Multiline Logs with Loki and Fluent Bit on Kubernetes](https://cleancloud-k8s.com/2022/01/19/handling-multiline-logging-with-loki-and-fluent-bit-on-kubernetes) In this blog post, you will learn how to handle multiline logs such as Java stack traces with Loki and Fluent Bit on Kubernetes. - [faun.pub: Grafana, Prometheus, and Loki: Exploring Metrics and Logs](https://faun.pub/grafana-prometheus-and-loki-exploring-metrics-and-logs-f198637784fc) diff --git a/docs/helm.md b/docs/helm.md index 1bdb5dc5..68857680 100644 --- a/docs/helm.md +++ b/docs/helm.md @@ -63,7 +63,7 @@ - [redhat.com: Red Hat OpenShift Certification extends support for Kubernetes-native technologies with Helm ๐ŸŒŸ](https://www.redhat.com/en/blog/red-hat-openshift-certification-extends-support-kubernetes-native-technologies-helm) __Helm or Operators: how to choose__ - [jasiek-petryk.medium.com: Setting up a private Helm chart repository on GitHub](https://jasiek-petryk.medium.com/setting-up-a-private-helm-chart-repository-on-github-4a767703cec8) - [betterprogramming.pub: How To Continuously Test and Deploy Your Helm Charts on Kubernetes Clusters Using Kind](https://betterprogramming.pub/how-to-continuously-test-and-deploy-your-helm-charts-on-kubernetes-clusters-using-kind-d71e3585d2dc) Set up your CI/CD tools to easily test and publish charts on ephemeral Kubernetes clusters -- [blog.flant.com: Making the most out of Helm templates ๐ŸŒŸ](https://palark.com/blog/advanced-helm-templating) The standard Helm library and traditional approaches to creating Helm charts are generally okay to automate non-complex tasks. But the growing complexity and number of Helm charts rapidly make the minimalistic Helm templates and controversial standard Helm library insufficient. In this article, we will show you how to make your Helm templates much more flexible and dynamic by implementing your own Helm โ€œfunctionsโ€ and exploiting the capabilities of the tpl function. +- [blog.flant.com: Making the most out of Helm templates ๐ŸŒŸ](https://palark.com/blog/advanced-helm-templating) The standard Helm library and traditional approaches to creating Helm charts are generally okay to automate non-complex tasks. But the growing complexity and number of Helm charts rapidly make the minimalistic Helm templates and controversial standard Helm library insufficient. we will show you how to make your Helm templates much more flexible and dynamic by implementing your own Helm โ€œfunctionsโ€ and exploiting the capabilities of the tpl function. - [levelup.gitconnected.com: Helm 101 for Developers](https://levelup.gitconnected.com/helm-101-for-developers-1c28e734937e) - [developers.redhat.com: Deploy Helm charts with Jenkins CI/CD in Red Hat OpenShift 4 ๐ŸŒŸ](https://developers.redhat.com/articles/2021/05/24/deploy-helm-charts-jenkins-cicd-red-hat-openshift-4) - [developers.redhat.com: Deploy Node.js applications to Red Hat OpenShift with Helm](https://developers.redhat.com/articles/2021/07/20/deploy-nodejs-applications-red-hat-openshift-helm) @@ -89,8 +89,8 @@ - [mlepeshkin.medium.com: Automated Kubernetes deployment with Helm and additional templating](https://mlepeshkin.medium.com/automated-kubernetes-deployment-with-helm-and-additional-templating-dc960689609f) - [==dev.to/francoislp: Post-mortem: 1h30 downtime on a Saturday morning==](https://dev.to/francoislp/post-mortem-1h30-downtime-on-a-saturday-morning-5af0) Read how 4 YAML lines brought down 3 APIs for 1h30 on a Saturday morning. In the end, the issue was a Helm chart misconfiguration where 2 settings were conflicting with each other. - [==blog.ediri.io: How To Unit Test Your Helm Charts==](https://blog.ediri.io/how-to-unit-test-your-helm-charts) With the help of helm-unittest and the AAA pattern -- [==itnext.io: Reference Other Values in Helm Chart Values File==](https://itnext.io/reference-other-values-in-helm-chart-values-file-19d44d9276c7) Helm offers a template engine that allows you to merge configuration values into templates. This article introduces the __"tpl" function to evaluate strings as templates to have even more flexibility in your values.yaml__ -- [==medium.com/@percenuage: My adventure with Helm as GitOps in a distributed architecture==](https://medium.com/@percenuage/my-adventure-with-helm-as-gitops-in-a-distributed-architecture-6a6fdc6f11bd) In this article, you will learn some practical tips on how to manage your Helm charts and __GitOps__ workflows: +- [==itnext.io: Reference Other Values in Helm Chart Values File==](https://itnext.io/reference-other-values-in-helm-chart-values-file-19d44d9276c7) Helm offers a template engine that allows you to merge configuration values into templates.the __"tpl" function to evaluate strings as templates to have even more flexibility in your values.yaml__ +- [==medium.com/@percenuage: My adventure with Helm as GitOps in a distributed architecture==](https://medium.com/@percenuage/my-adventure-with-helm-as-gitops-in-a-distributed-architecture-6a6fdc6f11bd) some practical tips on how to manage your Helm charts and __GitOps__ workflows: - Common vs multiple Helm charts - Values YAML hierarchy - Git repository management @@ -110,17 +110,17 @@ - [medium.com/kubeshop-i: Monokle, Helm & Quality Kubernetes Deployments](https://medium.com/kubeshop-i/monokle-helm-quality-kubernetes-deployments-af050fcc91db) - [medium.com/gquiman: K8Studio, Helm and Kubernetes management](https://medium.com/itnext/introducing-k8studio-v3-the-ultimate-kubernetes-workspace-just-got-even-better-0bc0de63642c) - [blog.devops.dev: Hosting Your Own Helm Chart on GitHub with Chart Releaser](https://blog.devops.dev/hosting-your-own-helm-chart-on-github-with-chart-releaser-a356ac10ce5c) -- [faun.pub: Package and Deploy Your Application Using Helm Chart](https://faun.pub/package-and-deploy-your-application-using-helm-chart-21f0c568e65c) In this tutorial, you will learn the end-to-end process of creating a spring boot application and deploying it as a Helm chart on a minikube cluster +- [faun.pub: Package and Deploy Your Application Using Helm Chart](https://faun.pub/package-and-deploy-your-application-using-helm-chart-21f0c568e65c) the end-to-end process of creating a spring boot application and deploying it as a Helm chart on a minikube cluster - [medium.com/@badawekoo: Helm theory, demo and commands you need to know!](https://medium.com/@badawekoo/helm-theory-demo-and-commands-you-need-to-know-628777fdb0c2) - [dev.to: Helm Release Time-To-Live(TTL)โณ๐Ÿ’€ for Temporary Environments](https://dev.to/rtpro/helm-release-time-to-livettl-for-temporary-environments-1239) When working with Kubernetes, itโ€™s often the case that youโ€™ll need to create temporary environments/namespaces. You might need this as a way to limit the resources use, handle dev/staging environments, or just as a way to contain your tests while working on them. If you have used Helm before, you know that installing applications via Helm charts is simple by using the helm install command. The problem is that after installing a package, you or the user still needs to manually delete the package. With this in mind, we are going to explore how we set Time-To-Live Expiration for helm releases via the Helm release plugin, and create temporary Environments with Time-To-Live to make our lives easier with Helm. - [sysdig.com: Helm security and best practices](https://www.sysdig.com/blog/how-to-secure-helm) - [medium.com: Helm Your Kubernetes Application](https://medium.com/zeals-tech-blog/helm-your-kubernetes-application-7af6293bcfcf) - [medium.com/linux-shots: Use PostgreSQL database as backend storage for helm](https://medium.com/linux-shots/use-postgresql-as-backend-storage-for-helm-de407cd9c43) By default, Helm 3 stores all release information in Kubernetes cluster itself using K8s secret in release namespace. -- [tratnayake.dev: Using Helm To Include All Files From A Directory In-line](https://tratnayake.dev/helm-include-all-files-from-directory-in-line) In this article, you will learn how to use Helm to fetch all files and their contents from a directory and include them in-line +- [tratnayake.dev: Using Helm To Include All Files From A Directory In-line](https://tratnayake.dev/helm-include-all-files-from-directory-in-line) how to use Helm to fetch all files and their contents from a directory and include them in-line - [fenyuk.medium.com: Helm for Kubernetes. Datree for keeping cluster secure and healthy ๐ŸŒŸ](https://fenyuk.medium.com/helm-for-kubernetes-datree-for-keeping-cluster-secure-and-healthy-6fbd10f0d958) - [fenyuk.medium.com: Helm for Kubernetes. GitOps with Argo CD ๐ŸŒŸ](https://fenyuk.medium.com/helm-for-kubernetes-gitops-with-argo-cd-c8f80330596) - [medium.com/geekculture: HELM โ€” How Release Information is Stored](https://medium.com/geekculture/helm-how-release-information-is-stored-778d7f0b7498) Advanced Helm usage -- [levelup.gitconnected.com: Helm โ€” Data Sharing Between Parent and Child Chart](https://levelup.gitconnected.com/helm-data-sharing-between-parent-and-child-chart-c4487a452d4e) Data exchange between parent and child chart in helm. In this article, you will explore a few strategies to share data between Helm charts: +- [levelup.gitconnected.com: Helm โ€” Data Sharing Between Parent and Child Chart](https://levelup.gitconnected.com/helm-data-sharing-between-parent-and-child-chart-c4487a452d4e) Data exchange between parent and child chart in helm. you will explore a few strategies to share data between Helm charts: - Overriding values from a parent chart - Making child chart data available to the parent chart - Global chart values @@ -146,7 +146,7 @@ - [rafay.co: Helm Chart Hooks Tutorial](https://rafay.co/ai-and-cloud-native-blog/helm-chart-hooks-tutorial) - [itnext.io: Helm: reusable chart โ€” named templates, and a generic chart for multiple applications](https://itnext.io/helm-reusable-chart-named-templates-and-a-generic-chart-for-multiple-applications-13d9b26e9244) Designing reusable chart with Helm: named templates, and a generic chart for multiple applications - [thenewstack.io: Applying Kubernetes Security Best Practices to Helm Charts ๐ŸŒŸ](https://thenewstack.io/applying-kubernetes-security-best-practices-to-helm-charts) -- [medium: Highway to Helm: How to efficiently manage chart sources](https://medium.com/adevinta-tech-blog/highway-to-helm-how-to-efficiently-manage-chart-sources-f5749ba8031e) In this post, weโ€™ll go through two ways to manage the source files of Helm charts, weโ€™ll discuss the different factors that make one more suitable than the other, depending on your organisational structure, and weโ€™ll provide guidance on choosing the right way to go by sharing what conditions are in favour of each of the two methods. +- [medium: Highway to Helm: How to efficiently manage chart sources](https://medium.com/adevinta-tech-blog/highway-to-helm-how-to-efficiently-manage-chart-sources-f5749ba8031e) weโ€™ll go through two ways to manage the source files of Helm charts, weโ€™ll discuss the different factors that make one more suitable than the other, depending on your organisational structure, and weโ€™ll provide guidance on choosing the right way to go by sharing what conditions are in favour of each of the two methods. - [helm-docs](https://github.com/norwoodj/helm-docs) The `helm-docs` tool auto-generates documentation from helm charts into markdown files. The resulting files contain metadata about their respective chart and a table with each of the chart's values, their defaults, and an optional description parsed from comments. ## Helm Dashboard diff --git a/docs/iac.md b/docs/iac.md index 2dd26363..51e9b742 100644 --- a/docs/iac.md +++ b/docs/iac.md @@ -30,7 +30,7 @@ - [==thenewstack.io: Struggling with IT Staff Leaving? Try Infrastructure as Code== ๐ŸŒŸ](https://thenewstack.io/struggling-with-it-staff-leaving-try-infrastructure-as-code) With IaC, the organization retains critical knowledge of deployment and updates in code repositories, lessening the impact of any one expert leaving - [devopscube.com: Immutable Infrastructure Explained For Beginners](https://devopscube.com/immutable-infrastructure) - [medium.com/@bunnyshell: How to Overcome Infrastructure as Code (IaC) Challenges](https://medium.com/@bunnyshell/how-to-overcome-infrastructure-as-code-iac-challenges-f4947be7cde2) -- [dzone.com/articles: A Beginner's Guide to Infrastructure as Code ๐ŸŒŸ](https://dzone.com/articles/a-beginners-guide-to-infrastructure-as-code) In this article, take an in-depth look at how Infrastructure as Code (IaC) works, its benefits, and common challenges. +- [dzone.com/articles: A Beginner's Guide to Infrastructure as Code ๐ŸŒŸ](https://dzone.com/articles/a-beginners-guide-to-infrastructure-as-code) take an in-depth look at how Infrastructure as Code (IaC) works, its benefits, and common challenges. - [javacodegeeks.com: Infrastructure as Code: Best Tools For 2023 Included](https://www.javacodegeeks.com/2023/03/infrastructure-as-code-best-tools-for-2023-included.html) - [thenewstack.io: Infrastructure as Code or Cloud Platforms โ€” You Decide!](https://thenewstack.io/infrastructure-as-code-or-cloud-platforms-you-decide) - [infoworld.com: 5 priorities that cut cloud costs and improve IT ops](https://www.infoworld.com/article/2338245/5-priorities-that-cut-cloud-costs-and-improve-it-ops.html) With infrastructure as code, virtual desktop infrastructure, and a proactive approach to incident management, you can help keep cloud costs reasonable. diff --git a/docs/introduction.md b/docs/introduction.md index 227a2f17..31660b4a 100644 --- a/docs/introduction.md +++ b/docs/introduction.md @@ -58,7 +58,7 @@ - [redhat.com: Why choose Red Hat for microservices?](https://www.redhat.com/en/topics/microservices/why-choose-red-hat-microservices) - [==Monoliths are the future | Kelsey Hightower==](https://changelog.com/posts/monoliths-are-the-future) - [==allthingsdistributed.com: Monoliths are not dinosaurs==](https://www.allthingsdistributed.com/2023/05/monoliths-are-not-dinosaurs.html) -- [weave.works: Going Cloud Native: 6 essential things you need to know](https://www.weave.works/) +- [weave.works: Going Cloud Native: 6 essential things you need to know](https://www.weave.works/technologies/going-cloud-native-6-essential-things-you-need-to-know) - [Operators and Sidecars Are the New Model for Software Delivery](https://thenewstack.io/operators-and-sidecars-are-the-new-model-for-software-delivery) - [jaxenter.com: Practical Implications for Adopting a Multi-Cluster, Multi-Cloud Kubernetes Strategy](https://devm.io/kubernetes/kubernetes-practical-implications-171647) - [jaxenter.com: Six Essential Kubernetes Extensions to Add to Your Toolkit ๐ŸŒŸ](https://devm.io/kubernetes/kubernetes-extensions-172215) @@ -66,7 +66,7 @@ - [addwebsolution.com: How Kubernetes helps businesses manage their IT infrastructure?](https://www.addwebsolution.com/blog/how-kubernetes-helps-businesses-manage-their-it-infrastructure) - [loves.cloud: Kubernetes: An Introduction](https://loves.cloud/kubernetes-an-introduction) - [thenewstack.io: Microservices vs. Monoliths: An Operational Comparison](https://thenewstack.io/microservices/microservices-vs-monoliths-an-operational-comparison) -- [weave.works: 6 Business Benefits of Kubernetes](https://www.weave.works/) +- [weave.works: 6 Business Benefits of Kubernetes](https://www.weave.works/blog/6-business-benefits-of-kubernetes) - [ituser.es: Las principales habilidades que un arquitecto cloud necesita para triunfar](https://www.ituser.es/opinion/2020/07/las-principales-habilidades-que-un-arquitecto-cloud-necesita-para-triunfar) - [Introducing Domain-Oriented Microservice Architecture ๐ŸŒŸ [ARCHIVED]]( http://web.archive.org/web/20220716010821/https://eng.uber.com/microservice-architecture) - [Monolithic versus Microservice architecture](https://www.enterprisetimes.co.uk/2020/07/23/monolithic-versus-microservice-architecture) @@ -140,10 +140,10 @@ - [opensource.com: What do we call post-modern system administrators?](https://opensource.com/article/21/7/system-administrators) Our community discusses the responsibilities, possible titles, and potential skills of today's sysadmins. - [thenewstack.io: Cloud Engineers Try Policy-as-Code to Cure Misconfiguration Woes](https://thenewstack.io/cloud-engineers-try-policy-as-code-to-cure-misconfiguration-woes) - [medium: What is microservices and why is it different? ๐ŸŒŸ](https://medium.com/microservices-for-net-developers/what-is-microservices-and-why-is-it-different-fac017cb8cf4) -- [dzone: How Your Application Architecture Has Evolved ๐ŸŒŸ๐ŸŒŸ](https://dzone.com/articles/how-your-application-architecture-evolved) In this post, I will discuss how application architecture, in my opinion, has evolved in the last few years and what has been the driving factor for each evolution. +- [dzone: How Your Application Architecture Has Evolved ๐ŸŒŸ๐ŸŒŸ](https://dzone.com/articles/how-your-application-architecture-evolved) I will discuss how application architecture, in my opinion, has evolved in the last few years and what has been the driving factor for each evolution. - [simform.com: 6 Multi-Cloud Architecture Designs for an Effective Cloud Strategy ๐ŸŒŸ](https://www.simform.com/blog/multi-cloud-architecture) - [simform.com: Cloud Migration ebook](https://www.simform.com/cloud-migration-ebook) -- [fylamynt.com: Mastering Cloud Automation in the Cloud-Native Era ๐ŸŒŸ](https://www.fylamynt.com/post/mastering-cloud-automation-in-the-cloud-native-era) As cloud computing is increasingly getting adopted all over, automation is taking a prime stage these days in the cloud-native space to streamline and manage various IT-related tasks. In this article, we will discuss cloud automation and various aspects related in brief. +- [fylamynt.com: Mastering Cloud Automation in the Cloud-Native Era ๐ŸŒŸ](https://www.fylamynt.com/post/mastering-cloud-automation-in-the-cloud-native-era) As cloud computing is increasingly getting adopted all over, automation is taking a prime stage these days in the cloud-native space to streamline and manage various IT-related tasks. we will discuss cloud automation and various aspects related in brief. - [dynatrace.com: What are microservices? All you need to know](https://www.dynatrace.com/knowledge-base/microservices) - [medium: Monoliths vs Microservices](https://medium.com/getdefault-in/monoliths-vs-microservices-59cff20bb106) - [dzone: Top 6 Time Wastes as a Software Engineer](https://dzone.com/articles/top-time-wastes-as-a-software-engineer) Increase your productivity and advance in your career by avoiding these 6 time wastes. @@ -163,7 +163,7 @@ - [infoworld.com: Complexity is killing software developers](https://www.infoworld.com/article/2270714/complexity-is-killing-software-developers.html) The growing complexity of modern software systems is slowly killing software developers. How can you regain control, without losing out on the best these technologies have to offer? - [enter.co: Estos son los 10 lenguajes de programaciรณn mรกs populares en 2021](https://www.enter.co/especiales/dev/herramientas-dev/estos-son-los-10-lenguajes-de-programacion-mas-populares-en-2021) - [zesty.co: 10 Cloud Deficiencies You Should Know](https://zesty.co/blog/10-cloud-deficiencies) -- [weave.works: What is a Kubernetes Cluster? ๐ŸŒŸ](https://www.weave.works/) +- [weave.works: What is a Kubernetes Cluster? ๐ŸŒŸ](https://www.weave.works/blog/kubernetes-cluster) - [==techrepublic.com: Enterprises get closer to the app store experience with Kubernetes and GitOps==](https://www.techrepublic.com/article/enterprises-get-closer-to-the-app-store-experience-with-kubernetes-and-gitops) - [==theregister.com: How Kubernetes lowers costs and automates IT department work==](https://www.theregister.com/software/2021/12/21/how-kubernetes-lowers-costs-and-automates-it-department-work/1316708) 75% of global companies will have started using container applications in their production environments by 2022. - [==redhat.com: Top 8 resources for microservices architecture of 2021==](https://www.redhat.com/en/blog/best-microservices-2021) Reining in complexity, doing things consistently, leveraging standards, and modernizing systems are timeless themes in microservices architecture. @@ -341,7 +341,7 @@ ## Self service developer platform -- [weave.works: What is a self-service developer platform and why does it matter?](https://www.weave.works/) +- [weave.works: What is a self-service developer platform and why does it matter?](https://www.weave.works/blog/what-is-a-self-service-developer-platform) - [==thenewstack.io: What We Learned from Enabling Developer Self-Service==](https://thenewstack.io/what-we-learned-from-enabling-developer-self-service) Letโ€™s simplify the developer experience and scale DevOps workflows without compromising the security of multi-Kubernetes environments. ## Shift-Left @@ -381,7 +381,7 @@ - [NodeJS Best Practices (Spanish Translation)](https://github.com/goldbergyoni/nodebestpractices/blob/spanish-translation/README.spanish.md) - *(Related to golang topic)* - [Enterprise Web App Patterns - Azure Architecture Center](https://learn.microsoft.com/en-us/azure/architecture/web-apps/guides/enterprise-app-patterns/overview) - *(Related to azure topic)* -- [dzone: 7 Microservices Best Practices for Developers ๐ŸŒŸ](https://dzone.com/articles/7-microservices-best-practices-for-developers) In this article, weโ€™ll look at some microservices best practices and suggest a few ways to help you design, orchestrate, and secure your microservices architecture. +- [dzone: 7 Microservices Best Practices for Developers ๐ŸŒŸ](https://dzone.com/articles/7-microservices-best-practices-for-developers) weโ€™ll look at some microservices best practices and suggest a few ways to help you design, orchestrate, and secure your microservices architecture. - [zdnet.com: Why microservices need event-driven architecture](https://www.zdnet.com/article/when-microservices-need-event-driven-architecture) A call for greater microservice stability and alignment in legacy environments - [==simform.com: 10 Microservice Best Practices: The 80/20 Way==](https://www.simform.com/blog/microservice-best-practices) __Microservice architecture brings higher flexibility and ease of development through decoupled services. However, microservice architecture has specific challenges like efficiency, consistency, security, etc. So, here are some of the microservice best practices, along with real-life usage accounts from leading companies.__ - [thenewstack.io: Monoliths to Microservices: 4 Modernization Best Practices](https://thenewstack.io/monoliths-to-microservices-4-modernization-best-practices-2) When it comes to refactoring monolithic apps into Microservices, most engineering teams have no idea where to start. @@ -398,7 +398,7 @@ - [dotnetcurry.com: Microservices Architecture Pattern ๐ŸŒŸ](https://www.dotnetcurry.com/microsoft-azure/microservices-architecture) - [geeksarray.com: Microservice Architecture Pattern for Architects ๐ŸŒŸ](https://geeksarray.com/blog/microservice-architecture-pattern-for-architects) - [==developers.redhat.com: 5 design principles for microservices==](https://developers.redhat.com/articles/2022/01/11/5-design-principles-microservices) -- [==elastisys.com: Principles for Designing and Deploying Scalable Applications on Kubernetes== [ARCHIVED]]( http://web.archive.org/web/20251005184420/https://elastisys.com/designing-and-deploying-scalable-applications-on-kubernetes) In this article, you will find 15 principles for how to design and deploy cloud-native applications on Kubernetes - for scalability, observability, automation & security. +- [==elastisys.com: Principles for Designing and Deploying Scalable Applications on Kubernetes== [ARCHIVED]]( http://web.archive.org/web/20251005184420/https://elastisys.com/designing-and-deploying-scalable-applications-on-kubernetes) you will find 15 principles for how to design and deploy cloud-native applications on Kubernetes - for scalability, observability, automation & security. - [simform.com: Microservices Design Principles: Do We Really Know It Well Enough? ๐ŸŒŸ](https://www.simform.com/blog/microservices-design-principles) We are all well aware of microservices architecture, but do we know about its basic design principles and tenants that determine its implementation success? Read to find out more! - [javarevisited.blogspot.com: Top 10 Microservices Design Patterns and Principles - Examples](https://javarevisited.blogspot.com/2021/09/microservices-design-patterns-principles.html) 1. Database per Microservice @@ -414,7 +414,7 @@ - [medium.com/@sandeepsharmaster: Design your Cloud Microservices Apps the DDD way (Hexagonal Architecture)](https://medium.com/@sandeepsharmaster/modernize-your-cloud-microservices-apps-hexagonal-architecture-769696494c0) - [medium.com/@denhox: Sharing Data Between Microservices](https://medium.com/@denhox/sharing-data-between-microservices-fe7fb9471208) -- [medium.com/@maneesha649nirman: Design Patterns For Microservices](https://medium.com/@maneesha649nirman/design-patterns-for-microservices-30bed0d215f5) Design patterns are very important to any development architecture. In this article, I am going to discuss a few design patterns which are most important for microservices. +- [medium.com/@maneesha649nirman: Design Patterns For Microservices](https://medium.com/@maneesha649nirman/design-patterns-for-microservices-30bed0d215f5) Design patterns are very important to any development architecture. I am going to discuss a few design patterns which are most important for microservices. - [==medium.com/@vinciabhinav7: Microservices Communication Architecture Patterns== ๐ŸŒŸ](https://medium.com/@vinciabhinav7/microservices-communication-architecture-patterns-a8e77e614c2c) - [==medium.com/javarevisited: Top 10 Microservices Design Principles and Best Practices for Experienced Developers== ๐ŸŒŸ](https://medium.com/javarevisited/10-microservices-design-principles-every-developer-should-know-44f2f69e960f) Designing Microservices for your organization? Follow these design principle to create a robust and scalable Microservices @@ -552,7 +552,7 @@ ## Domain Driven Design DDD -- [==dzone: The Concept of Domain-Driven Design Explained==](https://dzone.com/articles/the-concept-of-domain-driven-design-explained) In this article, we define the core concepts around domain-driven design, explain them, and highlight the advantages and downsides of the approach. +- [==dzone: The Concept of Domain-Driven Design Explained==](https://dzone.com/articles/the-concept-of-domain-driven-design-explained) we define the core concepts around domain-driven design, explain them, and highlight the advantages and downsides of the approach. - Using microservices means creating applications from loosely coupling services. The application consists of several small services, each representing a separate business goal. They can be developed and easily maintained individually, after what they are joint in a complex application. - __Microservices is an architecture design model with a specific bounded context, configuration, and dependencies. These result from the architectural principles of the domain-driven design and DevOps. Domain-driven design is the idea of solving problems of the organization through code.__ - __The business goal is important to the business users, with a clear interface and functions. This way, the microservice can run independently from other microservices. Moreover, the team can also work on it independently, which is, in fact, the point of the microservice architecture.__ diff --git a/docs/istio.md b/docs/istio.md index 297839ca..d337ebf2 100644 --- a/docs/istio.md +++ b/docs/istio.md @@ -98,16 +98,16 @@ IstioMesh, PrometheusIO, Flux v2 & Flagger. - How are the sidecar injections done in Istio? - How does the sidecar proxy do transparent traffic hijacking? - How is the traffic routed upstream? -- [blog.getambassador.io: Kubernetes Canary Testing and Release with Istio](https://blog.getambassador.io/kubernetes-canary-testing-and-release-with-istio-4cbdedcc9914?gi=816ffb457b0d) In this article, you'll learn about Canary testing in Kubernetes and how Istio can help perform seamless Canary upgrades +- [blog.getambassador.io: Kubernetes Canary Testing and Release with Istio](https://blog.getambassador.io/kubernetes-canary-testing-and-release-with-istio-4cbdedcc9914?gi=816ffb457b0d) you'll learn about Canary testing in Kubernetes and how Istio can help perform seamless Canary upgrades - [medium.com/globant: Istio JWT Authentication & Authorization at the edge](https://medium.com/globant/istio-jwt-authentication-authorization-at-the-edge-b35b612acd97) This article covers: - What is a JWT, and why should you care? - Dissecting Istio's JWT edge authentication & authorization - How to build an external authz service for Istio - [medium.com/codex: Egress Traffic Control for Nginx Ingress Controller with Istio Proxy Sidecar](https://medium.com/codex/egress-traffic-control-for-nginx-ingress-controller-with-istio-proxy-sidecar-ef8f19902b43) -- [medium.com/marionete: How to expose Kubernetes services to external traffic using Istio Gateway](https://medium.com/marionete/how-to-expose-kubernetes-services-to-external-traffic-using-istio-gateway-1a1e6ebd8805) In this article, you'll walk through the necessary configurations to expose services inside a Service Mesh to external traffic. The first scenario covers an HTTP endpoint, while the second examines the HTTPS configurations. +- [medium.com/marionete: How to expose Kubernetes services to external traffic using Istio Gateway](https://medium.com/marionete/how-to-expose-kubernetes-services-to-external-traffic-using-istio-gateway-1a1e6ebd8805) you'll walk through the necessary configurations to expose services inside a Service Mesh to external traffic. The first scenario covers an HTTP endpoint, while the second examines the HTTPS configurations. - [natarajsundar.medium.com: Istio service mesh, a start to finish tutorial with Side Car architecture and an analysis + comparison of the Ambient mesh architecture](https://natarajsundar.medium.com/istio-service-mesh-a-start-to-finish-tutorial-with-side-car-architecture-and-an-analysis-d70a255ea41d) In this blog post, you will find an end-to-end tutorial on how to get Istio up and running in your Kubernetes cluster. You will also discuss the Istio Ambient Mesh. - [alexandrev.medium.com: How To Enable Sticky Session on Your Kubernetes Workloads using Istio? ๐ŸŒŸ](https://alexandrev.medium.com/how-to-enable-sticky-session-on-your-kubernetes-workloads-using-istio-e789014a6acd) -- [medium.com/@wessel__: Istio with Authentik: securing your cluster and providing authentication and authorization](https://medium.com/@wessel__/istio-with-authentik-securing-your-cluster-and-providing-authentication-and-authorization-b5e48b331920) In this article, you will learn how to manage user access to individual apps deployed in your cluster using Istio and Authentik +- [medium.com/@wessel__: Istio with Authentik: securing your cluster and providing authentication and authorization](https://medium.com/@wessel__/istio-with-authentik-securing-your-cluster-and-providing-authentication-and-authorization-b5e48b331920) how to manage user access to individual apps deployed in your cluster using Istio and Authentik - [medium.com/@hammadsaif061: Simplifying Microservices Management with Kubernetes and Service Mesh](https://medium.com/@hammadsaif061/simplifying-microservices-management-with-kubernetes-and-service-mesh-de458ce566f1) - [==itnext.io: Taffic Shaping - Kubernetes & Istio== | Daniele Polencic](https://itnext.io/traffic-shaping-with-kubernetes-and-istio-7e44fbfca200) How can you roll out an app only to a subset of your users in Kubernetes? Let's explore Canary Releases with Istio, Kiali and the Gateway API! - [medium.com/@lupass93: Zero Trust Architecture on Kubernetes with Istio Service Mesh](https://medium.com/@lupass93/zero-trust-architecture-on-kubernetes-with-istio-service-mesh-eade6c5a3c53) This article will show how to implement a Zero Trust Architecture on Kubernetes with Istio: @@ -150,7 +150,7 @@ IstioMesh, PrometheusIO, Flux v2 & Flagger. - [hackernoon.com: A Guide to Deploying Jaeger on Kubernetes in Production](https://hackernoon.com/a-guide-to-deploying-jaeger-on-kubernetes-in-production-0p2n3tub) - [hackernoon.com: How To Use OpenTelemetry And Jaeger To Implement Distributed Tracing And APM](https://hackernoon.com/how-to-use-opentelemetry-and-jaeger-to-implement-distributed-tracing-and-apm-jcx34fi) - [faun.pub: A beginnerโ€™s guide to Jaeger](https://faun.pub/a-beginners-guide-to-jaeger-ed75ce5ed8f4) Welcome to A beginnerโ€™s guide to Jaeger (5 Part Series) -- [infracloud.io: Linking Traces with Continuous Profiling using Pyroscope](https://www.infracloud.io/blogs/linking-traces-continuous-profiling-pyroscope) The future of observability lies in distributed tracing with continuous profiling. In this article, you will learn how you can link traces with continuous profiling using Pyroscope and Jaeger. +- [infracloud.io: Linking Traces with Continuous Profiling using Pyroscope](https://www.infracloud.io/blogs/linking-traces-continuous-profiling-pyroscope) The future of observability lies in distributed tracing with continuous profiling. how you can link traces with continuous profiling using Pyroscope and Jaeger. ## Envoy micro proxy diff --git a/docs/java-and-java-performance-optimization.md b/docs/java-and-java-performance-optimization.md index f5e4a93f..af6bb2a5 100644 --- a/docs/java-and-java-performance-optimization.md +++ b/docs/java-and-java-performance-optimization.md @@ -49,9 +49,9 @@ - [medium: How to reduce your JVM app memory footprint in Docker and Kubernetes ๐ŸŒŸ](https://medium.com/wix-engineering/how-to-reduce-your-jvm-app-memory-footprint-in-docker-and-kubernetes-d6e030d21298) - [tech.olx.com: Improving JVM Warm-up on Kubernetes ๐ŸŒŸ](https://tech.olx.com/improving-jvm-warm-up-on-kubernetes-1b27dd8ecd58) Vikas Kumar explains why you should not run your Java applications with a fixed quota of a single CPU core. Instead, use Burstable QoS to allow for increased CPU usage during start-up. -- [dzone: Best Practices: Java Memory Arguments for Containers ๐ŸŒŸ](https://dzone.com/articles/best-practices-java-memory-arguments-for-container) In this article, we will discuss the possible JVM arguments that can be used to specify the Java heap size and the best option to choose. -- [medium.com/@anurag2397: Tuning JVM containers for better CPU and memory utilisation in K8s environment](https://medium.com/@anurag2397/solving-javas-core-problems-around-memory-and-cpu-4d0c97748c43) In this article, you'll discuss JVM warmup issues, high heap memory utilisation and how those affect Java apps deployed in Kubernetes. You'll then learn how to work around them. -- [danoncoding.com: Tricky Kubernetes memory management for Java applications ๐ŸŒŸ](https://danoncoding.com/tricky-kubernetes-memory-management-for-java-applications-d2f88dd4e9f6) Running Java applications in a container environment requires an understanding of both โ€” JVM memory mechanics and Kubernetes memory management. In this article, you will discuss the settings and optimizations necessary to run Java apps in Kubernetes. +- [dzone: Best Practices: Java Memory Arguments for Containers ๐ŸŒŸ](https://dzone.com/articles/best-practices-java-memory-arguments-for-container) we will discuss the possible JVM arguments that can be used to specify the Java heap size and the best option to choose. +- [medium.com/@anurag2397: Tuning JVM containers for better CPU and memory utilisation in K8s environment](https://medium.com/@anurag2397/solving-javas-core-problems-around-memory-and-cpu-4d0c97748c43) you'll discuss JVM warmup issues, high heap memory utilisation and how those affect Java apps deployed in Kubernetes. You'll then learn how to work around them. +- [danoncoding.com: Tricky Kubernetes memory management for Java applications ๐ŸŒŸ](https://danoncoding.com/tricky-kubernetes-memory-management-for-java-applications-d2f88dd4e9f6) Running Java applications in a container environment requires an understanding of both โ€” JVM memory mechanics and Kubernetes memory management. you will discuss the settings and optimizations necessary to run Java apps in Kubernetes. - [medium.com/nordnet-tech: Setting Java Heap Size Inside a Docker Container](https://medium.com/nordnet-tech/setting-java-heap-size-inside-a-docker-container-b5a4d06d2f46) - [danoncoding.com: Tricky Kubernetes memory management for Java applications ๐ŸŒŸ](https://danoncoding.com/tricky-kubernetes-memory-management-for-java-applications-d2f88dd4e9f6) How to use the Kubernetes memory requests and limits in combination with JVM Heap and stay out of trouble. - [medium.com/@sharprazor.app: Memory settings for Java process running in Kubernetes pod](https://medium.com/@sharprazor.app/memory-settings-for-java-process-running-in-kubernetes-pod-1e608a5d2a64) Managing the memory usage of a Java process running in a Kubernetes pod is more challenging than one might expect. Even with proper JVM memory configurations, OOMKilled issues can still arise and you wonder why. @@ -126,7 +126,7 @@ etc| - [PermGen eliminado](http://www.infoq.com/articles/Java-PERMGEN-Removed) - [On heap vs off heap memory usage](http://www.javacodegeeks.com/2014/12/on-heap-vs-off-heap-memory-usage.html) - [How Garbage Collection differs in the three big JVMs](http://apmblog.dynatrace.com/2011/05/11/how-garbage-collection-differs-in-the-three-big-jvms) -- [DZone: Understanding the Java Memory Model and Garbage Collection ๐ŸŒŸ](https://dzone.com/articles/understanding-the-java-memory-model-and-the-garbag) In this article we will try to understand the Java memory model and how garbage collection works. In this article I have used JDK8 Oracle Hot Spot 64 bit JVM. First let me depict the different memory areas available for Java processes. +- [DZone: Understanding the Java Memory Model and Garbage Collection ๐ŸŒŸ](https://dzone.com/articles/understanding-the-java-memory-model-and-the-garbag)we will try to understand the Java memory model and how garbage collection works.I have used JDK8 Oracle Hot Spot 64 bit JVM. First let me depict the different memory areas available for Java processes. - [DZone: Memory Leaks and Java Code](https://dzone.com/articles/memory-leak-andjava-code) When you aren't using objects, but they aren't touched by GC, a memory leak happens. Here are six ways memory leaks happen to look for and avoid. - [javarevisited.blogspot.com: How Garbage Collection works in Java? Explained (2011)](https://javarevisited.blogspot.com/2011/04/garbage-collection-in-java.html) diff --git a/docs/jenkins.md b/docs/jenkins.md index 22a9ab44..85887086 100644 --- a/docs/jenkins.md +++ b/docs/jenkins.md @@ -148,7 +148,7 @@ jenkinsci CloudBees' advice is to use build tool features when possible (Maven/G - [==youtube: Tech World with Nana - Jenkins Tutorial for Beginners==](https://www.youtube.com/playlist?list=PLy7NrYWoggjw_LIiDK1LXdNN82uYuuuiC) - [==camunda.com: How We Overcame Long-Running Job Limitations in Jenkins Declarative Pipelines==](https://camunda.com/blog/2022/02/how-we-overcame-long-running-job-limitations-in-jenkins-declarative-pipelines) - [==aws.amazon.com: Jenkins high availability and disaster recovery on AWS== ๐ŸŒŸ](https://aws.amazon.com/blogs/devops/jenkins-high-availability-and-disaster-recovery-on-aws) -- [blog.searce.com: Jenkins Distributed Cluster Using Dynamic Build Agents On GKE](https://blog.searce.com/jenkins-distributed-cluster-using-dynamic-build-agents-on-gke-e2262a59dcb3) In this article, you'll learn how to build a distributed Jenkins cluster on GKE and autoscale the Jenkins agents to process more jobs. +- [blog.searce.com: Jenkins Distributed Cluster Using Dynamic Build Agents On GKE](https://blog.searce.com/jenkins-distributed-cluster-using-dynamic-build-agents-on-gke-e2262a59dcb3) you'll learn how to build a distributed Jenkins cluster on GKE and autoscale the Jenkins agents to process more jobs. - [fosstechnix.com: How to Validate Jenkinsfile using Visual Studio Code](https://www.fosstechnix.com/validate-jenkinsfile-using-visual-studio-code) - [freecodecamp.org: Learn Jenkins by Building a CI/CD Pipeline ๐ŸŒŸ](https://www.freecodecamp.org/news/learn-jenkins-by-building-a-ci-cd-pipeline) - [medium.com/ni-tech-talk: Creating Customized Kubernetes Pod Templates using Groovy in Jenkins Pipeline ๐ŸŒŸ](https://medium.com/ni-tech-talk/creating-customized-kubernetes-pod-templates-using-groovy-in-jenkins-pipeline-7007f023a585) diff --git a/docs/kubectl-commands.md b/docs/kubectl-commands.md index 413115ef..2baccf1e 100644 --- a/docs/kubectl-commands.md +++ b/docs/kubectl-commands.md @@ -60,7 +60,7 @@ - [medium.com/codex: Kubectl Output 101](https://medium.com/codex/kubectl-output-101-851f8e61fd51) Cheatsheet & examples of using kubectl get -o - [medium.com/geekculture: kubectl โ€” Best Practices](https://medium.com/geekculture/kubectl-best-practices-c4ff809167dd) - [==learnitguide.net: How to Create ConfigMap from Properties File Using K8s Client==](https://www.learnitguide.net/2023/04/how-to-create-configmap-from-properties.html) -- [shardul.dev: Most Useful kubectl Plugins](https://shardul.dev/most-useful-kubectl-plugins) In this article, you will have a look at the following kubectl plugins: +- [shardul.dev: Most Useful kubectl Plugins](https://shardul.dev/most-useful-kubectl-plugins) you will have a look at the following kubectl plugins: - neat - view-secret - access-matrix @@ -113,7 +113,7 @@ complete -F __start_kubectl k ## kubectl exec - [A Complete Guide to Kubectl exec](https://refine.dev/blog/kubectl-exec-command) - *(Related to kubernetes-tools topic)* -- [itnext.io: Connect to containers using Kubectl Exec](https://itnext.io/connect-to-containers-using-kubectl-exec-b1fb5c171f03) In this article, we will look at the kubectl exec command to show how to get a shell into a running container in your Kubernetes (K8S) cluster, and how to run individual commands on a container with some useful examples. +- [itnext.io: Connect to containers using Kubectl Exec](https://itnext.io/connect-to-containers-using-kubectl-exec-b1fb5c171f03) the kubectl exec command to show how to get a shell into a running container in your Kubernetes (K8S) cluster, and how to run individual commands on a container with some useful examples. - [goteleport.com: kubectl exec vs SSH](https://goteleport.com/blog/ssh-vs-kubectl) This article compares `kubectl exec` and SSH and discusses their strengths and weaknesses ## kubectl scale @@ -158,7 +158,7 @@ kubectl get secret --namespace=โ€Š-o yaml | sed โ€˜s/names ## Buildkit CLI for kubectl a drop in replacement for docker build -- [container-registry.com: Lifting Developersโ€™ Productivity ๐ŸŒŸ](https://container-registry.com/posts/productivity-lift-buildkit-cli-for-kubectl) With BuildKit CLI for kubectl a drop in replacement for docker build. In this post, you will learn how to build container images with BuildKit CLI for kubectl (a replacement for the `docker build` command) +- [container-registry.com: Lifting Developersโ€™ Productivity ๐ŸŒŸ](https://container-registry.com/posts/productivity-lift-buildkit-cli-for-kubectl) With BuildKit CLI for kubectl a drop in replacement for docker build. how to build container images with BuildKit CLI for kubectl (a replacement for the `docker build` command) - [vmware-tanzu/buildkit-cli-for-kubectl (kubectl plugin)](https://github.com/vmware-archive/buildkit-cli-for-kubectl) BuildKit CLI for kubectl is a tool for building container images with your Kubernetes cluster. ## Kubectl Alternatives diff --git a/docs/kubernetes-autoscaling.md b/docs/kubernetes-autoscaling.md index 713cf23b..37eeb773 100644 --- a/docs/kubernetes-autoscaling.md +++ b/docs/kubernetes-autoscaling.md @@ -36,16 +36,16 @@ - Instead, with microservices, we have numerous options for scaling. For instance, we can independently fine-tune the performance of small parts of our system to eliminate bottlenecks and achieve the right mix of performance outcomes. - [cloud.ibm.com: Tutorial - Scalable webapp ๐ŸŒŸ](https://cloud.ibm.com/docs/solution-tutorials?topic=solution-tutorials-scalable-webapp-kubernetes) - [medmouine/Kubernetes-autoscaling-poster: Kubernetes autoscaling poster [PDF] ๐ŸŒŸ](https://github.com/medmouine/Kubernetes-autoscaling-poster/blob/main/k8s-auto-scaling-poster.pdf) -- [medium.com/airbnb-engineering: Dynamic Kubernetes Cluster Scaling at Airbnb](https://medium.com/airbnb-engineering/dynamic-kubernetes-cluster-scaling-at-airbnb-d79ae3afa132) In this post, you'll learn about how Airbnb dynamically size their clusters using the Kubernetes Cluster Autoscaler, and highlight the functionality they've contributed to the sig-autoscaling community +- [medium.com/airbnb-engineering: Dynamic Kubernetes Cluster Scaling at Airbnb](https://medium.com/airbnb-engineering/dynamic-kubernetes-cluster-scaling-at-airbnb-d79ae3afa132) you'll learn about how Airbnb dynamically size their clusters using the Kubernetes Cluster Autoscaler, and highlight the functionality they've contributed to the sig-autoscaling community - [chaitu-kopparthi.medium.com: Scaling Kubernetes workloads using custom Prometheus metrics](https://chaitu-kopparthi.medium.com/scaling-kubernetes-workloads-using-custom-prometheus-metrics-1eb64b23919e) -- [medium.com/@niklas.uhrberg: Auto scaling in Kubernetes using Kafka and application metrics โ€” part 1](https://medium.com/@niklas.uhrberg/auto-scaling-in-kubernetes-using-kafka-and-application-metrics-part-1-a509256b64ff) In this article, you will find a case study on auto scaling long-running jobs in Kubernetes using external metrics from Kafka and the application itself. +- [medium.com/@niklas.uhrberg: Auto scaling in Kubernetes using Kafka and application metrics โ€” part 1](https://medium.com/@niklas.uhrberg/auto-scaling-in-kubernetes-using-kafka-and-application-metrics-part-1-a509256b64ff) you will find a case study on auto scaling long-running jobs in Kubernetes using external metrics from Kafka and the application itself. - [openai.com: Scaling Kubernetes to 7,500 Nodes](https://openai.com/blog/scaling-kubernetes-to-7500-nodes) - [thinksys.com: Understanding Kubernetes Autoscaling](https://thinksys.com/devops/kubernetes-autoscaling) Types of Kubernetes Autoscaling: - Horizontal Pod Autoscaler (HPA) - Vertical Pod Autoscaler (VPA) - Cluster Autoscaler - [medium.com/mindboard: What is Autoscaling in Kubernetes?](https://medium.com/mindboard/what-is-autoscaling-in-kubernetes-109c7b5d321) Autoscaling is useful feature in Kubernetes that helps you to automatically adjust the number & resource consumption of pods in your deployment to meet the changing needs of your app. -- [clickittech.com: Kubernetes Autoscaling: How to use the Kubernetes Autoscaler](https://www.clickittech.com/devops/kubernetes-autoscaling) In this tutorial, you'll install and test three different autoscaler on EKS: +- [clickittech.com: Kubernetes Autoscaling: How to use the Kubernetes Autoscaler](https://www.clickittech.com/devops/kubernetes-autoscaling) you'll install and test three different autoscaler on EKS: - Horizontal Pod Autoscaler - Vertical Pod Autoscaler - Cluster Autoscaler @@ -53,7 +53,7 @@ ## Cluster Autoscaler Kubernetes Tool - [github.com/kubernetes: **Kubernetes Cluster Autoscaler**](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) -- [Kubernetes Autoscaling in Production: Best Practices for **Cluster Autoscaler, HPA and VPA**](https://www.splunk.com/en_us/appdynamics-joins-splunk.html?301=appdynamics) In this article we will take a deep dive into Kubernetes autoscaling tools including the cluster autoscaler, the horizontal pod autoscaler and the vertical pod autoscaler. We will also identify best practices that developers, DevOps and Kubernetes administrators should follow when configuring these tools. +- [Kubernetes Autoscaling in Production: Best Practices for **Cluster Autoscaler, HPA and VPA**](https://www.splunk.com/en_us/appdynamics-joins-splunk.html?301=appdynamics)we will take a deep dive into Kubernetes autoscaling tools including the cluster autoscaler, the horizontal pod autoscaler and the vertical pod autoscaler. We will also identify best practices that developers, DevOps and Kubernetes administrators should follow when configuring these tools. - [gitconnected.com: Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Pod Autoscaler, and Vertical Pod Autoscaler](https://levelup.gitconnected.com/kubernetes-autoscaling-101-cluster-autoscaler-horizontal-pod-autoscaler-and-vertical-pod-2a441d9ad231) - [packet.com: Kubernetes Cluster Autoscaler](https://www.packet.com/resources/guides/kubernetes-cluster-autoscaler-on-packet) - [itnext.io: Kubernetes Cluster Autoscaler: More than scaling out](https://itnext.io/kubernetes-cluster-autoscaler-more-than-scaling-out-7b2d97f10b27) @@ -100,7 +100,7 @@ - [czakozoltan08.medium.com: Stupid Simple Scalability](https://czakozoltan08.medium.com/stupid-simple-scalability-dc4a7fbe67d6) - [sysdig.com: Trigger a Kubernetes HPA with Prometheus metrics](https://www.sysdig.com/blog/kubernetes-hpa-prometheus) Using Keda to query #prometheus in order to automatically create a Kubernetes HPA - [cloudnatively.com: Understanding Horizontal Pod Autoscaling](https://www.cloudnatively.com/kubernetes-hpa-explanation) -- [blog.px.dev: Horizontal Pod Autoscaling with Custom Metrics in Kubernetes ๐ŸŒŸ](https://blog.px.dev/autoscaling-custom-k8s-metric) In this post, you'll learn how to autoscale your Kubernetes deployment using custom application metrics (i.e. HTTP requests/second) +- [blog.px.dev: Horizontal Pod Autoscaling with Custom Metrics in Kubernetes ๐ŸŒŸ](https://blog.px.dev/autoscaling-custom-k8s-metric) you'll learn how to autoscale your Kubernetes deployment using custom application metrics (i.e. HTTP requests/second) - [awstip.com: Kubernetes HPA](https://awstip.com/kubernetes-hpa-8b7cf54f115) HPA, the short form Horizontal pod autoscaling, is nothing but a piece of software that dynamically scales the pods based on thresholds like CPU, Memory, HTTP requests (custom metrics). - [medium.com/@CloudifyOps: Setting up a Horizontal Pod Autoscaler for Kubernetes cluster](https://medium.com/@CloudifyOps/setting-up-a-horizontal-pod-autoscaler-for-kubernetes-cluster-a7d3cf3be7) - [betterprogramming.pub: Advanced Features of Kubernetesโ€™ Horizontal Pod Autoscaler](https://betterprogramming.pub/advanced-features-of-kubernetes-horizontal-pod-autoscaler-536ebd7893ad) Kubernetesโ€™ Horizontal Pod Autoscaler has features you probably donโ€™t know about. Hereโ€™s how to use them to your advantage. @@ -110,21 +110,21 @@ - [faun.pub: Scaling Your Application Using Kubernetes - Harness | Pavan Belagatti](https://faun.pub/scaling-your-application-using-kubernetes-9ad0d6bcf0d6) - [dnastacio.medium.com: Infinite scaling with containers and Kubernetes](https://dnastacio.medium.com/kubernetes-resources-1a1fa1e72dcf) The article starts with a recap of Kubernetes resource management and its core concepts of requests and limits. Then it discusses those static limits in the realm of pod autoscalers, such as HPA, VPA, and KPA. - [medium.com/@badawekoo: Scaling in Kubernetes _What, Why and How?](https://medium.com/@badawekoo/scaling-in-kubernetes-what-why-and-how-d120e99be071) -- [pauldally.medium.com: HorizontalPodAutoscaler uses request (not limit) to determine when to scale by percent](https://pauldally.medium.com/horizontalpodautoscaler-uses-request-not-limit-to-determine-when-to-scale-97643d808997) In this article, you will learn how the Horizontal Pod Autoscaler uses requests (and not limits) when computing the target utilization percentage to scale pods +- [pauldally.medium.com: HorizontalPodAutoscaler uses request (not limit) to determine when to scale by percent](https://pauldally.medium.com/horizontalpodautoscaler-uses-request-not-limit-to-determine-when-to-scale-97643d808997) how the Horizontal Pod Autoscaler uses requests (and not limits) when computing the target utilization percentage to scale pods - [dev.to: Scaling Your Application With Kubernetes | Pavan Belagatti](https://dev.to/pavanbelagatti/scaling-your-application-with-kubernetes-5715) - [github.com/jthomperoo: Predictive Horizontal Pod Autoscaler](https://github.com/jthomperoo/predictive-horizontal-pod-autoscaler) Horizontal Pod Autoscaler built with predictive abilities using statistical models. Predictive Horizontal Pod Autoscalers (PHPAs) are Horizontal Pod Autoscalers (HPAs) with extra predictive capabilities baked in, allowing you to apply statistical models to the results of HPA calculations to make proactive scaling decisions. - [==thenewstack.io: K8s Resource Management: An Autoscaling Cheat Sheet== ๐ŸŒŸ](https://thenewstack.io/k8s-resource-management-an-autoscaling-cheat-sheet) A concise but comprehensive guide to using and managing horizontal and vertical autoscaling in the Kubernetes environment. - [waswani.medium.com: Autoscaling Pods in Kubernetes](https://waswani.medium.com/autoscaling-pods-in-kubernetes-37d05000c41) If you are hosting your workload in a cloud environment, and your traffic pattern is fluctuating in nature (think unpredictable), you need a mechanism to automatically scale out (and off-course scale in) your workload to ensure the service is able to perform as per defined Service Level Objective (SLO), without impacting the User Experience. This semantic is referred to as Autoscaling, to be very precise Horizontal Scaling. - [mckornfield.medium.com: Working with HPAs in Kubernetes](https://mckornfield.medium.com/working-with-hpas-in-kubernetes-ced39263b596) How to make your Kubernetes workloads scale with a few simple steps - [code.egym.de: Vertical Pod Autoscaler in Kubernetes](https://code.egym.de/vertical-pod-autoscaler-in-kubernetes-b12a5c61393f) Learn how to use Vertical Pod Autoscaler (VPA) to vertically scale services in Kubernetes automatically based on resource metrics. -- [faun.pub: Intelligently estimating your Kubernetes resource needs!](https://faun.pub/intelligently-estimating-your-kubernetes-resource-needs-c12a75ea3138) In this tutorial, you will learn how to use the Vertical Pod Autoscaler and Goldilocks to guess the correct requests and limits for your Pods +- [faun.pub: Intelligently estimating your Kubernetes resource needs!](https://faun.pub/intelligently-estimating-your-kubernetes-resource-needs-c12a75ea3138) how to use the Vertical Pod Autoscaler and Goldilocks to guess the correct requests and limits for your Pods - [itnext.io: Kubernetes: vertical Pods scaling with Vertical Pod Autoscaler](https://itnext.io/kubernetes-vertical-pods-scaling-with-vertical-pod-autoscaler-e2e5a3b8e1a9) - [medium.com/@adityadhopade18: Mastering K8s Event Driven AutoScaling](https://medium.com/@adityadhopade18/mastering-k8s-event-driven-autoscaling-cd1b9df78903) ### Kubernetes Scale to Zero - [dzone: Scale to Zero With Kubernetes with KEDA and/or Knative](https://dzone.com/articles/scale-to-zero-with-kubernetes) This article reviews how Kubernetes provides the platform capabilities for dynamic deployment, scaling, and management in Cloud-native applications. -- [==dev.to/danielepolencic: Request-based autoscaling in Kubernetes: scaling to zero==](https://dev.to/danielepolencic/request-based-autoscaling-in-kubernetes-scaling-to-zero-2i73) - [linode.com: Scaling Kubernetes to Zero (And Back)](https://www.linode.com/blog/kubernetes/scaling-kubernetes-to-zero-and-back) **In this article, you will learn how to monitor the HTTP requests to your apps in Kubernetes and define autoscaling rules to increase and decrease replicas for your workloads.** +- [==dev.to/danielepolencic: Request-based autoscaling in Kubernetes: scaling to zero==](https://dev.to/danielepolencic/request-based-autoscaling-in-kubernetes-scaling-to-zero-2i73) - [linode.com: Scaling Kubernetes to Zero (And Back)](https://www.linode.com/blog/kubernetes/scaling-kubernetes-to-zero-and-back) **how to monitor the HTTP requests to your apps in Kubernetes and define autoscaling rules to increase and decrease replicas for your workloads.** ## Cluster Autoscaler and Helm @@ -136,8 +136,8 @@ - [medium.com/backstagewitharchitects: How Autoscaling Works in Kubernetes? Why You Need To Start Using KEDA?](https://medium.com/backstagewitharchitects/how-autoscaling-works-in-kubernetes-why-you-need-to-start-using-keda-b601b483d355) - [partlycloudy.blog: Horizontal Autoscaling in Kubernetes #3 โ€“ KEDA](https://partlycloudy.blog/2020/05/29/horizontal-autoscaling-in-kubernetes-3-keda) - [thenewstack.io: CNCF KEDA 2.0 Scales up Event-Driven Programming on Kubernetes](https://thenewstack.io/microsoft-keda-2-0-scales-up-event-driven-programming-on-kubernetes) -- [blog.cloudacode.com: How to Autoscale Kubernetes pods based on ingress request โ€” Prometheus, KEDA, and K6](https://blog.cloudacode.com/how-to-autoscale-kubernetes-pods-based-on-ingress-request-prometheus-keda-and-k6-84ae4250a9f3) In this article, you will learn how autoscale pods with KEDA, Prometheus and the metrics from the ingress-nginx. You will use k6 to generate the load and observe the pod count increase as more requests are handled by the ingress controller. -- [medium.com/@toonvandeuren: Kubernetes Scaling: The Event Driven Approach - KEDA](https://medium.com/@toonvandeuren/kubernetes-scaling-the-event-driven-approach-bdd58ded4e3f) In this article, you'll discuss two different approaches to automatic scaling of your apps within a Kubernetes cluster: the Horizontal Pod Autoscaler and the Kubernetes Event-Driven Autoscaler (KEDA) - [youtube: Application Autoscaling Made Easy With Kubernetes Event-Driven Autoscaling (KEDA)](https://www.youtube.com/watch?v=c5t1y9V8HWc) +- [blog.cloudacode.com: How to Autoscale Kubernetes pods based on ingress request โ€” Prometheus, KEDA, and K6](https://blog.cloudacode.com/how-to-autoscale-kubernetes-pods-based-on-ingress-request-prometheus-keda-and-k6-84ae4250a9f3) how autoscale pods with KEDA, Prometheus and the metrics from the ingress-nginx. You will use k6 to generate the load and observe the pod count increase as more requests are handled by the ingress controller. +- [medium.com/@toonvandeuren: Kubernetes Scaling: The Event Driven Approach - KEDA](https://medium.com/@toonvandeuren/kubernetes-scaling-the-event-driven-approach-bdd58ded4e3f) you'll discuss two different approaches to automatic scaling of your apps within a Kubernetes cluster: the Horizontal Pod Autoscaler and the Kubernetes Event-Driven Autoscaler (KEDA) - [youtube: Application Autoscaling Made Easy With Kubernetes Event-Driven Autoscaling (KEDA)](https://www.youtube.com/watch?v=c5t1y9V8HWc) - [Dzone: Autoscaling Your Kubernetes Microservice with KEDA](https://dzone.com/articles/autoscaling-your-kubernetes-microservice-with-keda) Introduction to KEDAโ€”event-driven autoscaler for Kubernetes, Apache Camel, and ActiveMQ Artemisโ€”and how to use it to scale a Java microservice on Kubernetes. - [tomd.xyz: Event-driven integration on Kubernetes with Camel & KEDA ๐ŸŒŸ](https://tomd.xyz/kubernetes-event-driven-keda) Can we develop apps in Kubernetes that autoscale based on events? Perhaps, with this example using KEDA, ActiveMQ and Apache Camel. - [faun.pub: Scaling an app in Kubernetes with KEDA (no Prometheus is needed)](https://faun.pub/keda-ec9fc7c8dd81) @@ -146,7 +146,7 @@ - [levelup.gitconnected.com: Scale your Apps using KEDA in Kubernetes](https://levelup.gitconnected.com/scale-your-apps-using-keda-in-kubernetes-a1f2142ecc20) - [blog.devops.dev: KEDA: Autoscaling Kubernetes apps using Prometheus](https://blog.devops.dev/keda-autoscaling-kubernetes-apps-using-prometheus-da037fe572cf) - [purushothamkdr453.medium.com: Event driven autoscaling in kubernetes using KEDA](https://purushothamkdr453.medium.com/event-driven-autoscaling-in-kubernetes-using-keda-a0c16a383619) -- [medium.com/@rtaplamaci: Horizontal Scaling on Kubernetes Clusters Based on AWS CloudWatch Metrics with KEDA](https://medium.com/@rtaplamaci/horizontal-scaling-on-kubernetes-clusters-based-on-aws-cloudwatch-metrics-with-keda-7c9e0e3ba5f) In this article, you will learn how to use KEDA to horizontally scale the workloads running in a Kubernetes cluster based on the custom metrics exposed via AWS CloudWatch +- [medium.com/@rtaplamaci: Horizontal Scaling on Kubernetes Clusters Based on AWS CloudWatch Metrics with KEDA](https://medium.com/@rtaplamaci/horizontal-scaling-on-kubernetes-clusters-based-on-aws-cloudwatch-metrics-with-keda-7c9e0e3ba5f) how to use KEDA to horizontally scale the workloads running in a Kubernetes cluster based on the custom metrics exposed via AWS CloudWatch - [medium.com/@hirushanonline: Dynamic Scaling with Kubernetes Event-driven Autoscaling (KEDA)](https://medium.com/@hirushanonline/dynamic-scaling-with-kubernetes-event-driven-autoscaling-keda-caaa15096e1c) - [kedify.io: Prometheus and Kubernetes Horizontal Pod Autoscaler donโ€™t talk, KEDA does](https://www.kedify.io/resources/blog/prometheus-and-kubernetes-horizontal-pod-autoscaler-dont-talk-keda-does) - [github.com/kedacore/keda/issues/2214](https://github.com/kedacore/keda/issues/2214) Scaler for Amazon managed service for Prometheus diff --git a/docs/kubernetes-backup-migrations.md b/docs/kubernetes-backup-migrations.md index f381f695..bf410f1b 100644 --- a/docs/kubernetes-backup-migrations.md +++ b/docs/kubernetes-backup-migrations.md @@ -44,8 +44,8 @@ - [medium.com/@amitabhprasad: Kubernetes volume backup for disaster recovery](https://medium.com/@amitabhprasad/kubernetes-volume-backup-for-disaster-recovery-56a5facee7fe) - [thenewstack.io: K8s Backup and Disaster Recovery Is More Important Than Ever](https://thenewstack.io/k8s-backup-and-disaster-recovery-is-more-important-than-ever) Here are some considerations of a successful Kubernetes data protection strategy. - [martinheinz.dev: Backup-and-Restore of Containers with Kubernetes Checkpointing API](https://martinheinz.dev/blog/85) Kubernetes v1.25 introduced Container Checkpointing API as an alpha feature. This provides a way to backup-and-restore containers running in Pods, without ever stopping them. This feature is primarily aimed at forensic analysis, but general backup-and-restore is something any Kubernetes user can take advantage of. So, let's take a look at this brand-new feature and see how we can enable it in our clusters and leverage it for backup-and-restore or forensic analysis. -- [martinheinz.dev: Backup-and-Restore of Containers with Kubernetes Checkpointing API](https://martinheinz.dev/blog/85) Kubernetes v1.25 introduced Container Checkpointing API โ€” a way to backup-and-restore containers running in Pods, without stopping them. In this article, you'll take a look at it and learn how to leverage it for backup-and-restore or forensic analysis. -- [blog.palark.com: Kubernetes snapshots: What are they and how to use them? ๐ŸŒŸ](https://palark.com/blog/kubernetes-snaphots-usage) With snapshots, you can make more efficient use of your storage solution by creating consistent backups and cloning volumes. In this article, you will find an introduction to snapshots in Kubernetes and an overview of typical use cases. +- [martinheinz.dev: Backup-and-Restore of Containers with Kubernetes Checkpointing API](https://martinheinz.dev/blog/85) Kubernetes v1.25 introduced Container Checkpointing API โ€” a way to backup-and-restore containers running in Pods, without stopping them. you'll take a look at it and learn how to leverage it for backup-and-restore or forensic analysis. +- [blog.palark.com: Kubernetes snapshots: What are they and how to use them? ๐ŸŒŸ](https://palark.com/blog/kubernetes-snaphots-usage) With snapshots, you can make more efficient use of your storage solution by creating consistent backups and cloning volumes. you will find an introduction to snapshots in Kubernetes and an overview of typical use cases. ## ETCD Backup @@ -82,7 +82,7 @@ - [cloud.redhat.com: Velero Backup and Restore of an Application Using gp2 StorageClass on ROSA](https://www.redhat.com/en/blog/velero-backup-and-restore-of-an-application-using-gp2-storageclass-on-rosa) - [medium.com/@firat.yasar: Backup & Restore Kubernetes resources with VELERO](https://medium.com/@firat.yasar/backup-restore-kubernetes-resources-with-velero-b7fee14e7664) - [skildops.medium.com: Backup an entire Kubernetes cluster using Velero to AWS S3](https://skildops.medium.com/backup-an-entire-kubernetes-cluster-using-velero-to-aws-s3-73d76d51d4bc) Maintaining backup is always rewarding. Learn how to backup and restore an entire K8s cluster in this detailed article -- [blog.devgenius.io: Backup, Restore and Migrate Kubernetes Cluster resources using Velero](https://blog.devgenius.io/backup-restore-and-migrate-kubernetes-cluster-resources-using-velero-a9b6997e4b54) In this tutorial, you'll learn how to take a backup of resources running in a Kubernetes cluster and migrate them to another cluster using Velero +- [blog.devgenius.io: Backup, Restore and Migrate Kubernetes Cluster resources using Velero](https://blog.devgenius.io/backup-restore-and-migrate-kubernetes-cluster-resources-using-velero-a9b6997e4b54) you'll learn how to take a backup of resources running in a Kubernetes cluster and migrate them to another cluster using Velero ## Backup with Portworx PX-Backup diff --git a/docs/kubernetes-based-devel.md b/docs/kubernetes-based-devel.md index c306227d..fd0c174c 100644 --- a/docs/kubernetes-based-devel.md +++ b/docs/kubernetes-based-devel.md @@ -27,7 +27,7 @@ - [itnext.io: How to experiment locally on Kubernetes with minikube and your local Dockerfiles](https://itnext.io/how-to-experiment-locally-on-kubernetes-with-minikube-and-your-local-dockerfiles-48833fcd90c9) - [nfrankel.medium.com: Goodbye minikube](https://nfrankel.medium.com/goodbye-minikube-340070edc5af) Iโ€™ve been using minikube as my local cluster since I started to learn Kubernetes. But Iโ€™ve decided to let it go in favor of kind. Hereโ€™s the story. - [linux.com: Getting Started With Kubernetes Is Easy With Minikube](https://www.linux.com/audience/devops/getting-started-kubernetes-easy-minikube) - - [==faun.pub: Accessing a remote minikube from a local computer==](https://faun.pub/accessing-a-remote-minikube-from-a-local-computer-fd6180dd66dd) Minikube is a lightweight Kubernetes implementation that creates a VM on your local machine. In this article, you will learn how to connect to a remote computer with minikube installed. + - [==faun.pub: Accessing a remote minikube from a local computer==](https://faun.pub/accessing-a-remote-minikube-from-a-local-computer-fd6180dd66dd) Minikube is a lightweight Kubernetes implementation that creates a VM on your local machine. how to connect to a remote computer with minikube installed. - [==adamtheautomator.com: Jumpstart Kubernetes Locally with this MiniKube Tutorial==](https://adamtheautomator.com/minikube-tutorial) You'll usually find Kubernetes where it makes sense โ€” i.e. in cloud environments. But how do you speed up development for Kubernetes? Could you test deployments locally? - [devopscube.com: Kubernetes Minikube Tutorial for Beginners](https://devopscube.com/kubernetes-minikube-tutorial) - [**kind**](https://github.com/kubernetes-sigs/kind) Kubernetes IN Docker - local clusters for testing Kubernetes. Kind is a tool for running local Kubernetes clusters using Docker container โ€œnodesโ€. kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI. diff --git a/docs/kubernetes-client-libraries.md b/docs/kubernetes-client-libraries.md index f109d842..d5f5e4cc 100644 --- a/docs/kubernetes-client-libraries.md +++ b/docs/kubernetes-client-libraries.md @@ -28,7 +28,7 @@ - [kubernetes-client/go: OpenAPI based Generated Go client for Kubernetes](https://github.com/kubernetes-client/go) - [kyaml2go (Pronounced as camel2go ๐Ÿซ) ๐ŸŒŸ](https://github.com/PrasadG193/kyaml2go) K8s Go client code generator from Kubernetes resource yamls. - [itnext.io: Writing a Kubernetes CLI in Go](https://itnext.io/writing-a-kubernetes-cli-in-go-a3970ad58299) -- [blog.devgenius.io: Learn Kubernetes Programming โ€” Part 1](https://blog.devgenius.io/learn-kubernetes-programming-part-1-7384e5f3c481) Learn to programmatically talk to the Kubernetes cluster using the Official Client Go Library. In this tutorial, you'll learn how to build a simple CLI that connects to the Kubernetes cluster and displays the server version. In the process, you will learn Go and the client-go package. +- [blog.devgenius.io: Learn Kubernetes Programming โ€” Part 1](https://blog.devgenius.io/learn-kubernetes-programming-part-1-7384e5f3c481) Learn to programmatically talk to the Kubernetes cluster using the Official Client Go Library. you'll learn how to build a simple CLI that connects to the Kubernetes cluster and displays the server version. In the process, you will learn Go and the client-go package. - [iximiuz.com: How To Develop Kubernetes CLIs Like a Pro](https://iximiuz.com/en/posts/kubernetes-api-go-cli) Build You Own kubectl The Simple Way. Learn how to use the http://k8s.io/cli-runtime library to develop Kubernetes CLI tools that behave like and are as potent as the mighty kubectl. ## Python Client for Kubernetes @@ -37,7 +37,7 @@ - [github.com/kubernetes-client/python-base](https://github.com/kubernetes-client/python-base) - [==medium.com/@dimitrijevskiv: Monitor Kubernetes pod status from a Jenkins pipeline==](https://medium.com/@dimitrijevskiv/monitor-kubernetes-pod-status-from-a-jenkins-pipeline-e25c744d944d) - [blog.devgenius.io: Automate Kubernetes With Python ๐ŸŒŸ](https://blog.devgenius.io/automate-kubernetes-with-python-2150c290afe7) The Kubernetes Python module is a very powerful client that allows you to easily automate interactions with a Kubernetes cluster. -- [martinheinz.dev/blog/73: Automate All the Boring Kubernetes Operations with Python ๐ŸŒŸ](https://martinheinz.dev/blog/73) In this article, you will look at how you can leverage the Kubernetes Python Client library to automate any tasks. Examples: +- [martinheinz.dev/blog/73: Automate All the Boring Kubernetes Operations with Python ๐ŸŒŸ](https://martinheinz.dev/blog/73) you will look at how you can leverage the Kubernetes Python Client library to automate any tasks. Examples: - Triggering a rollout - Scaling a deployment - Applying taints diff --git a/docs/kubernetes-monitoring.md b/docs/kubernetes-monitoring.md index d603d374..49034d0b 100644 --- a/docs/kubernetes-monitoring.md +++ b/docs/kubernetes-monitoring.md @@ -55,11 +55,11 @@ - [grafana.com: Introducing Kubernetes Monitoring in Grafana Cloud](https://grafana.com/blog/introducing-kubernetes-monitoring-in-grafana-cloud) Kubernetes Monitoring is available to all Grafana Cloud users, including on free tier. Container orchestration to deploy at scale, iterate quickly, and manage a large number of apps and services. - [medium.com/@clymeneallen: Best Practices, Monitoring System for Multi-K8s Cluster Environments Using Open Source](https://medium.com/@clymeneallen/best-practices-monitoring-system-for-multi-k8s-cluster-environments-using-open-source-d85544052f37) - [medium.com/@magstherdev: OpenTelemetry on Kubernetes ๐ŸŒŸ](https://medium.com/@magstherdev/opentelemetry-on-kubernetes-c167f024b35f) -- [==betterprogramming.pub: 6 Metrics To Watch for on Your K8s Cluster== ๐ŸŒŸ](https://betterprogramming.pub/6-metrics-to-watch-for-on-your-k8s-cluster-76d58f08397f) The most critical Kubernetes metrics to monitor. In this article, you will cover the 6 most critical metrics based on Kubernetes's metadata that form a good baseline for monitoring your workloads and ensuring they're in a healthy state. +- [==betterprogramming.pub: 6 Metrics To Watch for on Your K8s Cluster== ๐ŸŒŸ](https://betterprogramming.pub/6-metrics-to-watch-for-on-your-k8s-cluster-76d58f08397f) The most critical Kubernetes metrics to monitor. you will cover the 6 most critical metrics based on Kubernetes's metadata that form a good baseline for monitoring your workloads and ensuring they're in a healthy state. - [figments.medium.com: Observable Kubernetes Cluster Using Grafana-Loki-Prometheus](https://figments.medium.com/observable-kubernetes-cluster-using-grafana-loki-prometheus-a661a31d7ad8) - [medium.com/@isalapiyarisi: Getting Started on Kubernetes observability with eBPF](https://medium.com/@isalapiyarisi/getting-started-on-kubernetes-observability-with-ebpf-88139eb13fb2) - [8 Best Kubernetes monitoring tools; Paid & open-source](https://middleware.io/blog/kubernetes-monitoring/tools) -- [dev.to/mikeyglitz: Proactive Kubernetes Monitoring with Alerting](https://dev.to/mikeyglitz/proactive-kubernetes-monitoring-with-alerting-58en) In this tutorial, you'll learn how to combine Prometheus, Alertmanager, Grafana and Linkerd to deliver timely alerts when a problem occurs in a Kubernetes cluster. +- [dev.to/mikeyglitz: Proactive Kubernetes Monitoring with Alerting](https://dev.to/mikeyglitz/proactive-kubernetes-monitoring-with-alerting-58en) you'll learn how to combine Prometheus, Alertmanager, Grafana and Linkerd to deliver timely alerts when a problem occurs in a Kubernetes cluster. - [isovalent.com: What are the 4 Golden Signals for Monitoring Kubernetes?](https://isovalent.com/blog/post/what-are-the-4-golden-signals-for-monitoring-kubernetes) - [grafana.com: How to manage high cardinality metrics in Prometheus and Kubernetes](https://grafana.com/blog/how-to-manage-high-cardinality-metrics-in-prometheus-and-kubernetes) - [medium.com/@HirenDhaduk1: Top Kubernetes Observability Tools and their Usage](https://medium.com/@HirenDhaduk1/top-kubernetes-observability-tools-and-their-usage-e4e8eef8aec3) @@ -73,10 +73,10 @@ - [awstip.com: Monitoring Your EKS Cluster with the Power of Prometheus and Grafana through Helm](https://awstip.com/monitoring-your-eks-cluster-with-the-power-of-prometheus-and-grafana-through-helm-%EF%B8%8F-1e8dc1ad5620) - [grafana.com: A beginner's guide to Kubernetes application monitoring](https://grafana.com/blog/a-beginners-guide-to-kubernetes-application-monitoring) - [medium.com/@poseidon.os: Poseidon: A Kubernetes Cluster Visualization & Cost Analysis Tool](https://medium.com/@poseidon.os/poseidon-a-kubernetes-cluster-visualization-cost-analysis-tool-d0fb55c2858c) -- [==aws.amazon.com: Using Prometheus to Avoid Disasters with Kubernetes CPU Limits== ๐ŸŒŸ](https://aws.amazon.com/blogs/containers/using-prometheus-to-avoid-disasters-with-kubernetes-cpu-limits) **In this article, you'll discuss how CPU throttling can affect Kubernetes' node performance, and how to avoid this by setting the right values for limits. The author also suggests using Prometheus as a tool to help set reasonable limits** +- [==aws.amazon.com: Using Prometheus to Avoid Disasters with Kubernetes CPU Limits== ๐ŸŒŸ](https://aws.amazon.com/blogs/containers/using-prometheus-to-avoid-disasters-with-kubernetes-cpu-limits) **you'll discuss how CPU throttling can affect Kubernetes' node performance, and how to avoid this by setting the right values for limits. The author also suggests using Prometheus as a tool to help set reasonable limits** - [umeey.medium.com: Four Golden Signals Of Monitoring: Site Reliability Engineering (SRE) Metrics](https://umeey.medium.com/four-golden-signals-of-monitoring-site-reliability-engineering-sre-metrics-64031dbe268) Golden Signal Monitoring using FastAPI on k8s - [grafana.com: How to optimize resource utilization with Kubernetes Monitoring for Grafana Cloud ๐ŸŒŸ](https://grafana.com/blog/how-to-optimize-resource-utilization-with-kubernetes-monitoring-for-grafana-cloud) **Overprovisioning or underprovisioning your Kubernetes resources can have significant consequences on both your budget and your app performance.** -- [medium.com/@lambdaEranga: Monitor Kubernets Services/Endpoints with Prometheus Blackbox Exporter ๐ŸŒŸ](https://medium.com/@lambdaEranga/monitor-kubernets-services-endpoints-with-prometheus-blackbox-exporter-a64e062c05d5) In this article, you will discuss monitoring different endpoints/services in a Kubernetes cluster using Prometheus Blackbox Exporter +- [medium.com/@lambdaEranga: Monitor Kubernets Services/Endpoints with Prometheus Blackbox Exporter ๐ŸŒŸ](https://medium.com/@lambdaEranga/monitor-kubernets-services-endpoints-with-prometheus-blackbox-exporter-a64e062c05d5) you will discuss monitoring different endpoints/services in a Kubernetes cluster using Prometheus Blackbox Exporter - [samiislam0306.medium.com: Insightful Monitoring of Kubernetes Clusters with Traces](https://samiislam0306.medium.com/insightful-monitoring-of-kubernetes-clusters-with-traces-c7c3b33ed07e) Gain valuable insights into the performance of your Kubernetes cluster with trace monitoring. A guide that helps you optimize your operations for maximum efficiency and productivity. - [medium.com/@walissonscd: Monitoring Kubernetes Cluster Resources: Using Top Metrics Commands](https://medium.com/@walissonscd/monitoring-kubernetes-cluster-resources-using-top-metrics-commands-a60408765321) - [==blog.devops.dev: Prometheus metrics within Kubernetes โ€” an aerial view== | Joseph Esrig](https://blog.devops.dev/prometheus-metrics-within-kubernetes-an-ariel-view-d1d3b7d75418) @@ -90,7 +90,7 @@ - [kkamalesh117.medium.com: Setting up Prometheus and Grafana Integration on Kubernetes with Helm](https://kkamalesh117.medium.com/setting-up-prometheus-and-grafana-integration-on-kubernetes-with-helm-dfc63823608c) - [medium.com/@MetricFire: Monitoring Kubernetes tutorial: Using Grafana and Prometheus](https://medium.com/@MetricFire/monitoring-kubernetes-tutorial-using-grafana-and-prometheus-3239079b138f) - [medium.com/globant: Monitoring a multi-cluster Kubernetes Deployment](https://medium.com/globant/monitoring-a-multi-cluster-kubernetes-deployment-9e7a418a06b7) Deploying a high resilience monitoring and observation platform for Kubernetes multi-cluster solutions -- [medium.com/@martin.hodges: Adding observability to a Kubernetes cluster using Prometheus](https://medium.com/@martin.hodges/adding-observability-to-a-kubernetes-cluster-using-prometheus-c2cba6c0fdaa) Monitoring your services is vital and should be considered as part of your underlying infrastructure for your services. You should put this in place ahead of creating and deploying your services. In this article I look at how to deploy Prometheus provide the observability you need to run your services. +- [medium.com/@martin.hodges: Adding observability to a Kubernetes cluster using Prometheus](https://medium.com/@martin.hodges/adding-observability-to-a-kubernetes-cluster-using-prometheus-c2cba6c0fdaa) Monitoring your services is vital and should be considered as part of your underlying infrastructure for your services. You should put this in place ahead of creating and deploying your services.I look at how to deploy Prometheus provide the observability you need to run your services. - [addozhang.medium.com: Non-intrusive Inject OpenTelemetry Auto-Instrumentation in Kubernetes](https://addozhang.medium.com/non-intrusive-inject-opentelemetry-auto-instrumentation-in-kubernetes-a9dfd49fc714) - [medium.com/@abhisman.sarkar: Kubernetes Monitoring: Effective Cluster Tracking with Prometheus](https://medium.com/@abhisman.sarkar/kubernetes-monitoring-effective-cluster-tracking-with-prometheus-b0ed5b3efb32) - [==aws.plainenglish.io: Mastering Monitoring: The Complete Guide to Using Prometheus and Grafana with Kubernetes==](https://aws.plainenglish.io/mastering-monitoring-the-complete-guide-to-using-prometheus-and-grafana-with-kubernetes-e53d8306123d) diff --git a/docs/kubernetes-networking.md b/docs/kubernetes-networking.md index afab4827..208f8a59 100644 --- a/docs/kubernetes-networking.md +++ b/docs/kubernetes-networking.md @@ -127,7 +127,7 @@ - [faun.pub: Kubernetes Service Types Tutorial | Pavan Belagatti ๐ŸŒŸ](https://faun.pub/kubernetes-service-types-tutorial-39223391316c) Configure ClusterIP, NodePort, LoadBalancer and Ingress - [medium.com/slalom-build: Managing Ingress Traffic on Kubernetes Platforms ๐ŸŒŸ](https://medium.com/slalom-build/managing-ingress-traffic-on-kubernetes-platforms-ebd537cdfb46) **Why you need an Ingress and how to pick the right one** - [craig-godden-payne.medium.com: How does ingress work in Kubernetes?](https://craig-godden-payne.medium.com/how-does-ingress-work-in-kubernetes-f3b121d0351f) And how to set up ingress in minikube -- [dustinspecker.com: Kubernetes Networking from Scratch: Using BGP and BIRD to Advertise Pod Routes](https://dustinspecker.com/posts/kubernetes-networking-from-scratch-bgp-bird-advertise-pod-routes) In this article, you will learn how Calico sets up pod routes between Kubernetes nodes. In this post, you won't use containers or pods. You'll learn by creating network namespaces and virtual ethernet devices manually. +- [dustinspecker.com: Kubernetes Networking from Scratch: Using BGP and BIRD to Advertise Pod Routes](https://dustinspecker.com/posts/kubernetes-networking-from-scratch-bgp-bird-advertise-pod-routes) how Calico sets up pod routes between Kubernetes nodes. you won't use containers or pods. You'll learn by creating network namespaces and virtual ethernet devices manually. - [==home.robusta.dev: The ultimate guide to Kubernetes Services, LoadBalancers, and Ingress== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://home.robusta.dev/blog/kubernetes-service-vs-loadbalancer-vs-ingress) - [sanjimoh.medium.com: Demystifying Kubernetes Networking โ€” Episode 1](https://sanjimoh.medium.com/demystifying-kubernetes-networking-episode-1-ca5605a97f87) In this series of articles you will learn about Kubernetes networking: - Linux namespaces and Networking namespace @@ -137,7 +137,7 @@ - [medium.com/@mehmetodabashi: Kubernetes networking and service object: Understanding ClusterIp and nodePort with hands on study](https://medium.com/@mehmetodabashi/kubernetes-networking-and-service-object-understanding-clusterip-and-nodeport-with-hands-on-study-90cfeaf66e8c) - [medium.com/@jasonmfehr: Inspecting Kubernetes Client to API Server Network Traffic](https://medium.com/@jasonmfehr/inspecting-kubernetes-client-to-api-server-network-traffic-cd6d1802bb43) - [medium.com/geekculture: K8s Network โ€” CNI Introduction](https://medium.com/geekculture/k8s-network-cni-introduction-b035d42ad68f) Introduction to K8s container network interface -- [==medium.com/patilswapnilv: Getting Started with Kubernetes Networking== ๐ŸŒŸ](https://medium.com/patilswapnilv/getting-started-with-kubernetes-networking-7e10623fc78f) **In this article, you will examine Kubernetes networking with the help of 10 detailed diagrams** +- [==medium.com/patilswapnilv: Getting Started with Kubernetes Networking== ๐ŸŒŸ](https://medium.com/patilswapnilv/getting-started-with-kubernetes-networking-7e10623fc78f) **you will examine Kubernetes networking with the help of 10 detailed diagrams** - [==faun.pub: Kubernetes Ingress with Nginx==](https://faun.pub/kubernetes-ingress-with-nginx-3c77e703e91a) How to install and secure Nginx Ingress - [medium.com/codex: Access Application Externally In Kubernetes Cluster using Load Balancer Service](https://medium.com/codex/access-application-externally-in-kubernetes-cluster-using-load-balancer-service-d1b7858d51) Learn how to create a Pod and how to create a Load Balancer service using Kubernetes cluster. And access the application from outside. - [itnext.io: Inspecting and Understanding k8s Service Network ๐ŸŒŸ](https://itnext.io/inspecting-and-understanding-service-network-dfd8c16ff2c5) @@ -147,10 +147,10 @@ - [blog.devgenius.io: K8s โ€” ipvs Mode Introduction](https://blog.devgenius.io/k8s-ipvs-mode-introduction-6457a02cd91a) - [==edureka.co: Kubernetes Networking โ€“ A Comprehensive Guide To The Networking Concepts In Kubernetes==](https://www.edureka.co/blog/kubernetes-networking) - [whyk8s.substack.com: Why not DNS?](https://whyk8s.substack.com/p/why-not-dns) Why is KubeProxy necessary? Couldn't simple DNS records do the job? You do a DNS lookup on my-service in Kubernetes. You do NOT get back IPs for pods that provide that Service. Have you ever wondered why? -- [medium.com/geekculture: Kubernetes Gateway API: The Intro You Need To Read](https://medium.com/geekculture/kubernetes-gateway-api-the-intro-you-need-to-read-80965f7acd82) In this article, you'll learn how to deploy k3s to a Raspberry Pi cluster with ClusterHat and ClusterCTRL -- [==ksingh7.medium.com: Kubernetes Endpoint Object: Your Bridge to External Services== ๐ŸŒŸ๐ŸŒŸ](https://ksingh7.medium.com/kubernetes-endpoint-object-your-bridge-to-external-services-3fc48263b776) Chances are that you might want to access services external to the cluster, such as a database. In this article, you will learn how to create an endpoint manually to make an external database available to the Pods in the cluster. +- [medium.com/geekculture: Kubernetes Gateway API: The Intro You Need To Read](https://medium.com/geekculture/kubernetes-gateway-api-the-intro-you-need-to-read-80965f7acd82) you'll learn how to deploy k3s to a Raspberry Pi cluster with ClusterHat and ClusterCTRL +- [==ksingh7.medium.com: Kubernetes Endpoint Object: Your Bridge to External Services== ๐ŸŒŸ๐ŸŒŸ](https://ksingh7.medium.com/kubernetes-endpoint-object-your-bridge-to-external-services-3fc48263b776) Chances are that you might want to access services external to the cluster, such as a database. how to create an endpoint manually to make an external database available to the Pods in the cluster. - [medium.com/@ahmet16ck: What Is Load Balancer and How Does It Work In Kubernetes ? ๐ŸŒŸ](https://medium.com/@ahmet16ck/what-is-load-balancer-and-how-does-it-work-in-kubernetes-5ab5f0537069) -- [api7.ai: How Does APISIX Ingress Support Thousands of Pod Replicas?](https://api7.ai/blog/apisix-ingress-support-thousands-pod-replicas) In this article, you'll explore the challenges of deploying large numbers of Pods in your Kubernetes cluster. You'll also compare Endpoints and EndpointSlice and discuss how to enable EndpointSlice when installing APISIX Ingress. +- [api7.ai: How Does APISIX Ingress Support Thousands of Pod Replicas?](https://api7.ai/blog/apisix-ingress-support-thousands-pod-replicas) you'll explore the challenges of deploying large numbers of Pods in your Kubernetes cluster. You'll also compare Endpoints and EndpointSlice and discuss how to enable EndpointSlice when installing APISIX Ingress. - [medium.com/illuminations-mirror: Basic | Networking and Communication Between Pods in Kubernetes](https://medium.com/illuminations-mirror/basic-networking-and-communication-between-pods-in-kubernetes-2e1627b03a87) - [blog.devops.dev: Networking in Kubernetes](https://blog.devops.dev/networking-in-kubernetes-55dcf794b9cd) In this blog post, weโ€™re going to delve into the world of Kubernetes networking and explore the many components that make it such a powerful and reliable platform for modern containerized applications. lets discover the essential networking components that make Kubernetes the go-to choice for cloud-native deployments! - [medium.com/@mustafaaltunok: How Ingress, Service, Deployment and Pod Link to each other](https://medium.com/@mustafaaltunok/how-ingress-service-deployment-and-pod-link-to-eachother-d3a6ae2c0e06) In Kubernetes domain, deployment of an app consists of mainly three components. From outer to inner. @@ -189,7 +189,7 @@ ## TCP Keep Alive Requests -- [kuderko.medium.com: Fixing bad CPU usage distribution in Kubernetes ๐ŸŒŸ](https://kuderko.medium.com/fixing-bad-cpu-usage-distribution-in-kubernetes-e1e43ed87cd6) In this article, you will learn how TCP keep-alive requests could hurt horizontal scaling for your pods. You will also discuss the workarounds you can apply to your apps or web servers. +- [kuderko.medium.com: Fixing bad CPU usage distribution in Kubernetes ๐ŸŒŸ](https://kuderko.medium.com/fixing-bad-cpu-usage-distribution-in-kubernetes-e1e43ed87cd6) how TCP keep-alive requests could hurt horizontal scaling for your pods. You will also discuss the workarounds you can apply to your apps or web servers. ## Headless Kubernetes Service @@ -240,12 +240,12 @@ - [blog.flomesh.io: Kubernetes Gateway API โ€” Evolution of Service Networking](https://blog.flomesh.io/kubernetes-gateway-api-evolution-of-service-networking-aa76ec4efa7e) - [==armosec.io: The New Kubernetes Gateway API and Its Use Cases==](https://www.armosec.io/blog/kubernetes-gateway-api) - [medium.com/google-cloud: Security with Kubernetes Gateway API ๐ŸŒŸ](https://medium.com/google-cloud/security-with-kubernetes-gateway-api-dcbb934ed2a4) -- [navendu.me: Comparing Kubernetes Gateway and Ingress APIs](https://navendu.me/posts/gateway-vs-ingress-api) In this article, you will explore the new Kubernetes Gateway API and compare it with the existing Kubernetes Ingress API for handling external traffic +- [navendu.me: Comparing Kubernetes Gateway and Ingress APIs](https://navendu.me/posts/gateway-vs-ingress-api) you will explore the new Kubernetes Gateway API and compare it with the existing Kubernetes Ingress API for handling external traffic ## Kube-proxy - - [NFTables mode for kube-proxy in Kubernetes](https://kubernetes.io/blog/2025/02/28/nftables-kube-proxy) ๐ŸŒŸ - This article introduces the new nftables mode for kube-proxy, an alpha feature in Kubernetes 1.29 that is currently in beta and expected to reach General Availability (GA) in version 1.33. The new mode addresses long-standing performance issues associated with the iptables mode, particularly for large Kubernetes clusters with numerous Services. It leverages the capabilities of nftables to improve data plane latency by providing a more scalable and efficient way to handle Service proxying compared to the traditional iptables approach. The article encourages users with recent kernels to try out this new mode. + - [NFTables mode for kube-proxy in Kubernetes](https://kubernetes.io/blog/2025/02/28/nftables-kube-proxy) ๐ŸŒŸ -the new nftables mode for kube-proxy, an alpha feature in Kubernetes 1.29 that is currently in beta and expected to reach General Availability (GA) in version 1.33. The new mode addresses long-standing performance issues associated with the iptables mode, particularly for large Kubernetes clusters with numerous Services. It leverages the capabilities of nftables to improve data plane latency by providing a more scalable and efficient way to handle Service proxying compared to the traditional iptables approach. The article encourages users with recent kernels to try out this new mode. -- [dustinspecker.com: iptables: How Kubernetes Services Direct Traffic to Pods](https://dustinspecker.com/posts/iptables-how-kubernetes-services-direct-traffic-to-pods) In this article you will learn how Kubernetes's kube-proxy uses iptables to direct traffic to pods randomly. You'll focus on the ClusterIP type of Kubernetes services. +- [dustinspecker.com: iptables: How Kubernetes Services Direct Traffic to Pods](https://dustinspecker.com/posts/iptables-how-kubernetes-services-direct-traffic-to-pods)you will learn how Kubernetes's kube-proxy uses iptables to direct traffic to pods randomly. You'll focus on the ClusterIP type of Kubernetes services. - [arthurchiao.art: Cracking kubernetes node proxy (aka kube-proxy)](https://arthurchiao.art/blog/cracking-k8s-node-proxy) This post analyzes the Kubernetes node proxy model, and provides 5 demo implementations (within couples of lines of code) of the model, each based on different tech-stacks (userspace/iptables/ipvs/tc-ebpf/sock-ebpf). ## Multicloud communication for Kubernetes @@ -291,7 +291,7 @@ - CockroachDB is built to solve that problem and weโ€™re doing it in production for many applications today. But thatโ€™s not what this blog is about. In this blog, I will provide a solution for the problem of getting Kubernetes pods to talk to each other in multi-region deployments. - [cilium.io: Cilium 1.10: WireGuard, BGP Support, Egress IP Gateway, New Cilium CLI, XDP Load Balancer, Alibaba Cloud Integration and more](https://cilium.io/blog/2021/05/20/cilium-110) Traditional workloads have a fixed and unique IP that can be recognized by a firewall. Traffic coming from a containerized application will come from many different IPs. How can you fix that? Cilium allows users to specify an egress NAT policy -- [medium.com/@charled.breteche: Kubernetes Security โ€” Control pod to pod communications with Cilium network policies](https://medium.com/@charled.breteche/kubernetes-security-control-pod-to-pod-communications-with-cilium-network-policies-d7275b2ed378) In this article, you'll explore Cilium network policies and how you can use them to control pod to pod communications on a 3 nodes and 3 masters cluster. You will also use Hubble to visualise the effect of the network policies in your cluster. +- [medium.com/@charled.breteche: Kubernetes Security โ€” Control pod to pod communications with Cilium network policies](https://medium.com/@charled.breteche/kubernetes-security-control-pod-to-pod-communications-with-cilium-network-policies-d7275b2ed378) you'll explore Cilium network policies and how you can use them to control pod to pod communications on a 3 nodes and 3 masters cluster. You will also use Hubble to visualise the effect of the network policies in your cluster. - [solo.io: Exploring Cilium Layer 7 Capabilities Compared to Istio](https://www.solo.io/blog) - [betterprogramming.pub: K8s: Network Policy Made Simple With Cilium Editor ๐ŸŒŸ](https://betterprogramming.pub/k8s-network-policy-made-simple-with-cilium-editor-a5b55781291c) An intuitive graphical tool to define complex network policies diff --git a/docs/kubernetes-on-premise.md b/docs/kubernetes-on-premise.md index 2373e54e..b38608b6 100644 --- a/docs/kubernetes-on-premise.md +++ b/docs/kubernetes-on-premise.md @@ -73,7 +73,7 @@ $ sudo mv kops-linux-amd64 /usr/local/bin/kops - [Kubernetes Cluster with **Kubeadm**](https://github.com/kubernetes/kubeadm) It works on any deb / rpm compatible Linux OS, for example Ubuntu, Debian, RedHat or CentOS. This is the main advantage of kubeadm. The tool itself is still in beta (Q1 2018), but is expected to become stable somewhere this year. It's very easy to use and lets you spin kubernetes cluster in just a couple of minutes. - [medium.com: **Demystifying High Availability in Kubernetes Using Kubeadm**](https://medium.com/velotio-perspectives/demystifying-high-availability-in-kubernetes-using-kubeadm-3d83ed8c458b) - [Setting Up a Kubernetes Cluster on Ubuntu 18.04](https://loves.cloud/setting-up-a-kubernetes-cluster-on-ubuntu-18-04) -- [itnext.io: Up and running out of the cloud โ€” How to setup the Masters using kubeadm bootstrap](https://itnext.io/kubernetes-journey-up-and-running-out-of-the-cloud-how-to-setup-the-masters-using-kubeadm-9a496a14fbc1) In this article, youโ€™ll see how to make use of kubeadm bootstrap to set up and join 3 master instances as members of our cluster. +- [itnext.io: Up and running out of the cloud โ€” How to setup the Masters using kubeadm bootstrap](https://itnext.io/kubernetes-journey-up-and-running-out-of-the-cloud-how-to-setup-the-masters-using-kubeadm-9a496a14fbc1) youโ€™ll see how to make use of kubeadm bootstrap to set up and join 3 master instances as members of our cluster. - [Set up a Bare Metal Kubernetes cluster with](https://www.theodo.com/en-fr/blog) - [blog.tobias-huebner.org: Low-budget self-hosted Kubernetes ๐ŸŒŸ](https://blog.tobias-huebner.org/low-budget-kubernetes-self-hosted-series) - [mirantis.com: How to install Kubernetes with Kubeadm: A quick and dirty guide](https://www.mirantis.com/blog/how-install-kubernetes-kubeadm) @@ -81,7 +81,7 @@ $ sudo mv kops-linux-amd64 /usr/local/bin/kops - [blog.radwell.codes: Provisioning Single-node Kubernetes Cluster using kubeadm on Ubuntu 20.04](https://blog.radwell.codes/2021/05/provisioning-single-node-kubernetes-cluster-using-kubeadm-on-ubuntu-20-04) - [medium.com/@ZiXianZeroX: Setting Up an On-premise Kubernetes Cluster from Scratch](https://medium.com/@ZiXianZeroX/setting-up-an-on-premise-kubernetes-cluster-from-scratch-8e3a6b415387) - [thenewstack.io: How to Deploy Kubernetes with Kubeadm and containerd](https://thenewstack.io/how-to-deploy-kubernetes-with-kubeadm-and-containerd) -- [faun.pub: Configuring HA Kubernetes cluster on bare metal servers with kubeadm. 1/3](https://faun.pub/configuring-ha-kubernetes-cluster-on-bare-metal-servers-with-kubeadm-1-2-1e79f0f7857b) In this article, you'll create a HA Kubernetes cluster with multi masters topology, with an external Etcd cluster as a base layer and a MetalLB load balancer. On all worker nodes, you'll deploy a GlusterFS for storage. +- [faun.pub: Configuring HA Kubernetes cluster on bare metal servers with kubeadm. 1/3](https://faun.pub/configuring-ha-kubernetes-cluster-on-bare-metal-servers-with-kubeadm-1-2-1e79f0f7857b) you'll create a HA Kubernetes cluster with multi masters topology, with an external Etcd cluster as a base layer and a MetalLB load balancer. On all worker nodes, you'll deploy a GlusterFS for storage. - [blog.learncodeonline.in: Kubernetes Cluster Deployment on CentOS Linux](https://blog.learncodeonline.in/kubernetes-cluster-deployment-on-centos-linux) - [github.com/kubernetes/kubeadm: High Availability Considerations](https://github.com/kubernetes/kubeadm/blob/main/docs/ha-considerations.md) - [medium.com/@brunosquassoni: Creating a Kubernetes Cluster [STEP BY STEP]](https://medium.com/@brunosquassoni/creating-a-kubernetes-cluster-step-by-step-bd9ae3c85275) @@ -200,7 +200,7 @@ $ sudo mv kops-linux-amd64 /usr/local/bin/kops ### Weave Kubernetes Platform -- [weave.works: Weave Kubernetes Platform](https://www.weave.works/) Automate Enterprise Kubernetes the GitOps way +- [weave.works: Weave Kubernetes Platform](https://www.weave.works) Automate Enterprise Kubernetes the GitOps way - [github: Weave Net - Weaving Containers into Applications](https://github.com/weaveworks/weave) ### Ubuntu Charmed Kubernetes diff --git a/docs/kubernetes-operators-controllers.md b/docs/kubernetes-operators-controllers.md index ff231b7c..b28cc06c 100644 --- a/docs/kubernetes-operators-controllers.md +++ b/docs/kubernetes-operators-controllers.md @@ -93,16 +93,16 @@ - [medium.com/@timebertt: Kubernetes Controllers at Scale: Clients, Caches, Conflicts, Patches Explained](https://medium.com/@timebertt/kubernetes-controllers-at-scale-clients-caches-conflicts-patches-explained-aa0f7a8b4332) A developer guideline to Kubernetes clients in go. As most development in the Kubernetes space is done in Go, available client libraries for interacting with the Kubernetes API have evolved over time to make controllers more scalable. - [openshift/machine-api-operator](https://github.com/openshift/machine-api-operator) The Machine API Operator manages the lifecycle of specific purpose CRDs, controllers and RBAC objects that extend the Kubernetes API. This allows to convey desired state of machines in a cluster in a declarative fashion - [rancher/system-upgrade-controller: System Upgrade Controller](https://github.com/rancher/system-upgrade-controller) This project aims to provide a general-purpose, Kubernetes-native upgrade controller (for nodes). It introduces a new CRD, the Plan, for defining any and all of your upgrade policies/requirements. A Plan is an outstanding intent to mutate nodes in your cluster. -- [alenkacz.medium.com: Kubernetes operator best practices: Implementing observedGeneration](https://alenkacz.medium.com/kubernetes-operator-best-practices-implementing-observedgeneration-250728868792) There's a lot of hidden knowledge in core controllers and api conventions doc that is not followed by many controllers in the wild. One of these patterns is observedGeneration. In this article, you will learn what problems it can help solve. +- [alenkacz.medium.com: Kubernetes operator best practices: Implementing observedGeneration](https://alenkacz.medium.com/kubernetes-operator-best-practices-implementing-observedgeneration-250728868792) There's a lot of hidden knowledge in core controllers and api conventions doc that is not followed by many controllers in the wild. One of these patterns is observedGeneration. what problems it can help solve. - [ckotzbauer/vulnerability-operator](https://github.com/ckotzbauer/vulnerability-operator) Scans SBOMs for vulnerabilities. This operator scans all SBOMs from a git-repository for vulnerabilities using Grype. The result-list can be emitted as JSON-file served via an endpoint and/or as Prometheus metrics. There may be more targets in the future. The scans are done periodically. - [Michaelpalacce/SimpleSecrets](https://github.com/Michaelpalacce/SimpleSecrets) K8S Secrets Manager Operator. SimpleSecrets is a secure operator that allows you to create secrets on demand. You can commit the SimpleSecrets, which are references to a database secret, and the operator will create Kubernetes Secrets automatically for you. -- [learnsteps.com: Advance Kubernetes: What exactly are Kubernetes Operators?](https://www.learnsteps.com/advanced-kubernetes-what-exactly-are-kubernetes-operators) Kubernetes has gained a lot of traction recently and is one of the standards followed across organizations when it comes to running and managing their containerized workloads. In this article, we are going to talk about Kubernetes operators. +- [learnsteps.com: Advance Kubernetes: What exactly are Kubernetes Operators?](https://www.learnsteps.com/advanced-kubernetes-what-exactly-are-kubernetes-operators) Kubernetes has gained a lot of traction recently and is one of the standards followed across organizations when it comes to running and managing their containerized workloads. we are going to talk about Kubernetes operators. - [betterprogramming.pub: Build a Kubernetes Operator in 10 Minutes ๐ŸŒŸ](https://betterprogramming.pub/build-a-kubernetes-operator-in-10-minutes-11eec1492d30) - [alain-airom.medium.com: Kubernetes Operators Patterns and Best Practices ๐ŸŒŸ](https://alain-airom.medium.com/kubernetes-operators-patterns-and-best-practices-b7fbaa4cbd1) Using operators to manage the lifecycle of multi-cloud, Kubernetes-based applications. - [OT-CONTAINER-KIT/mongodb-operator: MongoDB Operator](https://github.com/OT-CONTAINER-KIT/mongodb-operator) MongoDB Operator is an operator created in Golang to create, update, and manage MongoDB standalone, replicated, and arbiter replicated setup on Kubernetes and Openshift clusters. - [prosimcorp/reforma](https://github.com/prosimcorp/reforma) Reforma is a Kubernetes operator to patch resources with information from other resources. It is intended to use with GitOps and lets you do things such as creating annotation on a Service Account from metadata stored in a ConfigMap. - [weaveworks/tf-controller: Weave GitOps Terraform Controller](https://github.com/flux-iac/tofu-controller) A GitOps Terraform controller for Kubernetes. Weave TF-controller is a controller for Flux to reconcile Terraform resources in the GitOps way. -- [awstip.com: Manage AWS services directly from Kubernetes - AWS Controllers for Kubernetes (ACK)](https://awstip.com/manage-aws-services-directly-from-kubernetes-%EF%B8%8F-6c94e376febb) The AWS team released the ACK project, which allows users to create AWS services from within a Kubernetes cluster. In this tutorial, you will learn how to create an S3 bucket with a "Bucket" CRD. +- [awstip.com: Manage AWS services directly from Kubernetes - AWS Controllers for Kubernetes (ACK)](https://awstip.com/manage-aws-services-directly-from-kubernetes-%EF%B8%8F-6c94e376febb) The AWS team released the ACK project, which allows users to create AWS services from within a Kubernetes cluster. how to create an S3 bucket with a "Bucket" CRD. - [vitobotta/velero-notifications](https://github.com/vitobotta/velero-notifications) Velero-notifications is a simple Kubernetes controller written in Ruby that sends email/Slack/webhook notifications when backups or restores are performed by Velero in a Kubernetes cluster. - [NVIDIA/gpu-operator](https://github.com/NVIDIA/gpu-operator) NVIDIA GPU Operator creates/configures/manages GPUs atop Kubernetes. The NVIDIA GPU is a Kubernetes operator that automates the management of all NVIDIA software components needed to provision GPUs. These components include drivers, the Kubernetes device plugin, the NVIDIA Container Runtime, etc. - [NVIDIA/k8s-device-plugin: NVIDIA device plugin for Kubernetes](https://github.com/NVIDIA/k8s-device-plugin) The NVIDIA device plugin for Kubernetes is a Daemonset that allows you to automatically: @@ -139,11 +139,11 @@ - [github.com/actions/actions-runner-controller ๐ŸŒŸ](https://github.com/actions/actions-runner-controller) Actions Runner Controller (ARC) is a Kubernetes controller for GitHub Actions self-hosted runners. With ARC, you can: - Deploy self-hosted runners on Kubernetes clusters with a simple set of commands - Auto scale runners based on demand -- [medium.com/sda-se: Kubernetes Operator to the rescue. How our own MongoDB Operator improved our deployments](https://medium.com/sda-se/kubernetes-operator-to-the-rescue-how-our-own-mongodb-operator-improved-our-deployments-6d5ba3324abc) In this article you will learn about the challenges that the team at SDA SE faced when using a GitOps deployment and why they implemented their own Kubernetes Operator for MongoDB to speed up our deployments and reduce mistakes. -- [==blog.frankel.ch: Introduction to Kubernetes extensibility== ๐ŸŒŸ](https://blog.frankel.ch/kubernetes-extensibility) In this article, you'll learn several extension points in Kubernetes: the data model, admission controllers, and client-side. +- [medium.com/sda-se: Kubernetes Operator to the rescue. How our own MongoDB Operator improved our deployments](https://medium.com/sda-se/kubernetes-operator-to-the-rescue-how-our-own-mongodb-operator-improved-our-deployments-6d5ba3324abc)you will learn about the challenges that the team at SDA SE faced when using a GitOps deployment and why they implemented their own Kubernetes Operator for MongoDB to speed up our deployments and reduce mistakes. +- [==blog.frankel.ch: Introduction to Kubernetes extensibility== ๐ŸŒŸ](https://blog.frankel.ch/kubernetes-extensibility) you'll learn several extension points in Kubernetes: the data model, admission controllers, and client-side. - At its most basic level, Kubernetes is just a platform able to run container images. It stores its configuration in a distributed storage engine, etcd. The most significant part of this configuration is dedicated to the desired state for objects. For example, you only update this state when you schedule a pod using the kubectl command line. - Other components, called controllers, watch configuration changes and read the desired state. Then, they try to reconcile the desired state with the actual state. Itโ€™s nothing revolutionary: Puppet is based on the same control-loop approach, and AFAIK, Chef. Generally, a controller manages a single type of object, e.g., the DeploymentController manages deployments. -- [superorbital.io: Testing Production Kubernetes Controllers](https://superorbital.io/blog/testing-production-controllers) In this article, you will learn how to test Kubernetes controllers using a mix of unit tests, local integration tests, and more fully featured runtime integration tests. +- [superorbital.io: Testing Production Kubernetes Controllers](https://superorbital.io/blog/testing-production-controllers) how to test Kubernetes controllers using a mix of unit tests, local integration tests, and more fully featured runtime integration tests. - [github.com/lukaszraczylo/jobs-manager-operator ๐ŸŒŸ](https://github.com/lukaszraczylo/jobs-manager-operator) - [itnext.io: Simplify Advanced Workflows in Kubernetes with Jobs Manager Operator](https://itnext.io/kubernetes-operator-to-manage-jobs-7ee96744c74a) A problem and idea led to the latest invention, which saved me hours of confusion and frustration and finally untangled the web of dependencies. - [github.com/ricoberger/vault-secrets-operator](https://github.com/ricoberger/vault-secrets-operator) Create Kubernetes secrets from Vault for a secure GitOps based workflow. @@ -152,9 +152,9 @@ - [betterprogramming.pub: How To Use Server-Side Apply in K8S Operators](https://betterprogramming.pub/how-to-use-server-side-apply-in-k8s-operators-5cbff023183c) Explore the benefits of SSA vs. CSA. Server-side apply (SSA) is an excellent mechanism to improve Kubernetes operators' performance and is becoming the default way to apply resources in a cluster. - [github.com/sieve-project/sieve](https://github.com/sieve-project/sieve) Automated Reliability Testing for Kubernetes Controllers/Operators. Sieve is a tool to help developers test their Kubernetes controllers by deterministically injecting faults and detecting dormant bugs at development time. - [betterprogramming.pub: Goldilocks vs. KRR](https://betterprogramming.pub/goldilocks-vs-krr-c986dfd7484d) The resources recommendation showdown!. Goldilocks is a Kubernetes operator written in Go, and it watches over a few custom resources to give out its Updates or Recommendations. -- [medium.com/lonto-digital-services-integrator: Why We Developed Own Kubernetes Controller to Copy Secrets](https://medium.com/lonto-digital-services-integrator/why-we-developed-own-kubernetes-controller-to-copy-secrets-e46368ae6db9) In this article, you will learn the thought process, design decision and code that led to writing a custom controller to copy secrets from Hashicorp Vault to Kubernetes +- [medium.com/lonto-digital-services-integrator: Why We Developed Own Kubernetes Controller to Copy Secrets](https://medium.com/lonto-digital-services-integrator/why-we-developed-own-kubernetes-controller-to-copy-secrets-e46368ae6db9) the thought process, design decision and code that led to writing a custom controller to copy secrets from Hashicorp Vault to Kubernetes - [thenewstack.io: HashiCorp Vault Operator Manages Kubernetes Secrets](https://thenewstack.io/hashicorp-vault-operator-manages-kubernetes-secrets) HashiCorp's new open source project, released alongside Vault 1.13 and now available in beta, makes it easier to use Vault with Kubernetes Secrets, automating tasks that were previously manual. -- [medium.com/@senjutide2000: Designing a Controller for Custom Resources from scratch for absolute beginners](https://medium.com/@senjutide2000/designing-a-controller-for-custom-resources-from-scratch-for-absolute-beginners-9cb84b7f906f) In this tutorial (and related repository and follow-up article), you will learn how to create your first Custom Resource Definition, Custom Resource and get a basic idea of the workflow of a controller +- [medium.com/@senjutide2000: Designing a Controller for Custom Resources from scratch for absolute beginners](https://medium.com/@senjutide2000/designing-a-controller-for-custom-resources-from-scratch-for-absolute-beginners-9cb84b7f906f) (and related repository and follow-up article), you will learn how to create your first Custom Resource Definition, Custom Resource and get a basic idea of the workflow of a controller - [github.com/2-alchemists/krossboard-kubernetes-operator](https://github.com/2-alchemists/krossboard) Kubernetes Operator to handle cross-site, cross-distribution & multi-Kubernetes usage tracking, analytics and accounting (vanilla Kubernetes, OpenShift, EKS, AKS, GKE and other distros). - Krossboard is a multi-cluster and cross-distribution Kubernetes usage accounting and analytics software - Each instance of Krossboard enables tracking the usage of a set of Kubernetes clusters listed in a kubeconfig secret @@ -192,7 +192,7 @@ ## Red Hat Container Community of Practice Operators -- [==cloud.redhat.com: Red Hat Container Community of Practice Operators==](https://www.redhat.com/en/blog/red-hat-container-community-of-practice-operators) In this post, you will find a summary of the operators maintained by Red Hat and how they can be used to facilitate the adoption of OpenShift. +- [==cloud.redhat.com: Red Hat Container Community of Practice Operators==](https://www.redhat.com/en/blog/red-hat-container-community-of-practice-operators) you will find a summary of the operators maintained by Red Hat and how they can be used to facilitate the adoption of OpenShift. ## Operator Capability Levels @@ -231,7 +231,7 @@ - [Writing a Kubernetes Operator in Java Cheat Sheet](https://developers.redhat.com/cheat-sheets/writing-kubernetes-operator-java) - [linuxera.org: Writing Operators using the Operator Framework SDK](https://linuxera.org/writing-operators-using-operator-framework) - [openshift.com: 7 Best Practices for Writing Kubernetes Operators: An SRE Perspective](https://www.redhat.com/en/blog/7-best-practices-for-writing-kubernetes-operators-an-sre-perspective) -- [medium: From Zero to Kubernetes Operator](https://medium.com/@victorpaulo/from-zero-to-kubernetes-operator-dd06436b9d89) In this post you will learn how to build a simple Kubernetes Operator. The article starts with the main concepts and then continues with hands-on labs where you will create a Kubernetes Operator from the ground up. +- [medium: From Zero to Kubernetes Operator](https://medium.com/@victorpaulo/from-zero-to-kubernetes-operator-dd06436b9d89)you will learn how to build a simple Kubernetes Operator. The article starts with the main concepts and then continues with hands-on labs where you will create a Kubernetes Operator from the ground up. - [openshift.com: Build Your Kubernetes Operator With the Right Tool ๐ŸŒŸ](https://www.redhat.com/en/blog/build-your-kubernetes-operator-with-the-right-tool) **Go-based operators are by far the most popular. That is why Go is probably the first option to consider.** The other good choice is Helm, especially if you already have a Helm chart for your software or you want to build your operator quickly and you don't need any complex [capability levels](https://operatorframework.io/operator-capabilities). I'd leave Operator Frameworks or Bare Programming Language implementations only for the cases when keeping a single programming language in your organization is a priority. - [rookout.com: Lessons Learned When Building A Kubernetes Operator](https://www.dynatrace.com/solutions/observability-for-developers) - [brennerm.github.io: Kubernetes operators with Python #1: Creating CRDs](https://shipit.dev/posts/k8s-operators-with-python-part-1.html) @@ -239,7 +239,7 @@ - [cloudark.medium.com: Writing Kubernetes Custom Controllers](https://cloudark.medium.com/kubernetes-custom-controllers-b6c7d0668fdf) - [developers.redhat.com: Managing stateful applications with Kubernetes Operators in Golang ๐ŸŒŸ](https://developers.redhat.com/articles/2021/08/04/managing-stateful-applications-kubernetes-operators-golang) Explore this pattern by creating a Kubernetes Operator in Golang to keep a WordPress site up to date. - [medium: Kubernetes Dummy Operator in Java](https://medium.com/xgeeks/kubernetes-dummy-operator-in-java-6b2f26198a55) - [youtube: Creating a Kubernetes Operator in Java by Rudy De Busscher](https://www.youtube.com/watch?v=C0E93Uc4h5k&t=761s&ab_channel=xgeeks) -- [betterprogramming.pub: Build a Highly Available Kubernetes Operator Using Golang](https://betterprogramming.pub/building-a-highly-available-kubernetes-operator-using-golang-fe4a44c395c2) Develop a simple Kubernetes operator from scratch. In this article, you will build a "hello worldโ€ operator using the client-go library, make adaptations to it to achieve high availability, and deploy it to a Kubernetes cluster using Helm. +- [betterprogramming.pub: Build a Highly Available Kubernetes Operator Using Golang](https://betterprogramming.pub/building-a-highly-available-kubernetes-operator-using-golang-fe4a44c395c2) Develop a simple Kubernetes operator from scratch. you will build a "hello worldโ€ operator using the client-go library, make adaptations to it to achieve high availability, and deploy it to a Kubernetes cluster using Helm. - [==kubernetes/sample-controller==](https://github.com/kubernetes/sample-controller) Repository for sample controller. Complements sample-apiserver - [betterprogramming.pub: Writing Custom Kubernetes Controller and Webhooks](https://betterprogramming.pub/writing-custom-kubernetes-controller-and-webhooks-141230820e9) Create a Kubernetes API, controller, validate webhooks, and test. - [betterprogramming.pub: How To Write Tests for Your Kubernetes Operator](https://betterprogramming.pub/write-tests-for-your-kubernetes-operator-d3d6a9530840) diff --git a/docs/kubernetes-releases.md b/docs/kubernetes-releases.md index 9bcf92d3..9a695fa0 100644 --- a/docs/kubernetes-releases.md +++ b/docs/kubernetes-releases.md @@ -48,12 +48,12 @@ - [aws.amazon.com: Amazon EKS now supports Kubernetes 1.22](https://aws.amazon.com/blogs/containers/amazon-eks-now-supports-kubernetes-1-22) - [blog.aquasec.com: Kubernetes Version 1.23: What's New for Security?](https://blog.aquasec.com/kubernetes-version-1.23-security-features) - [sysdig.com: Kubernetes 1.24 โ€“ Whatโ€™s new?](https://www.sysdig.com/blog/kubernetes-1-24-whats-new) -- [inder-devops.medium.com: Itโ€™s Time to Migrate your Container Runtime, Kubernetes 1.24 is coming](https://inder-devops.medium.com/its-time-to-migrate-your-container-runtime-kubernetes-1-24-is-coming-f0c0b6b9bb90) In this post, you'll learn the terminology and tooling around container runtimes. By the end, you'll have a better idea of what a container runtime is, how the container landscape has evolved over time, and how we got to where we are today. +- [inder-devops.medium.com: Itโ€™s Time to Migrate your Container Runtime, Kubernetes 1.24 is coming](https://inder-devops.medium.com/its-time-to-migrate-your-container-runtime-kubernetes-1-24-is-coming-f0c0b6b9bb90) you'll learn the terminology and tooling around container runtimes. By the end, you'll have a better idea of what a container runtime is, how the container landscape has evolved over time, and how we got to where we are today. - [kubernetes.io: Kubernetes Removals and Major Changes In 1.25](https://kubernetes.io/blog/2022/08/04/upcoming-changes-in-kubernetes-1-25) - [sysdig.com: Kubernetes 1.25 โ€“ Whatโ€™s new?](https://www.sysdig.com/blog/kubernetes-1-25-whats-new) - [kubernetes.io: Kubernetes v1.25: Combiner](https://kubernetes.io/blog/2022/08/23/kubernetes-v1-25-release) Announcing the release of Kubernetes v1.25! ๐Ÿš€ This release includes a total of 40 enhancements. 15 of those are entering Alpha, 10 are graduating to Beta, and 13 are graduating to Stable. We also have two features being deprecated or removed. - [kubernetes.io: PodSecurityPolicy: The Historical Context ๐ŸŒŸ](https://kubernetes.io/blog/2022/08/23/podsecuritypolicy-the-historical-context) PodSecurityPolicy (PSP) admission controller has been removed as of Kubernetes v1.25. This blog shares some historical context and why it has been replaced by Pod Security admission control. -- [macchaffee.com: The Fumbled Deprecation of PodSecurityPolicies](https://www.macchaffee.com/blog/2022/psp-deprecation) In this article, you will learn why PodSecurityPolicies never made it as a GA feature, why they had to be replaced and what you should consider going forward. +- [macchaffee.com: The Fumbled Deprecation of PodSecurityPolicies](https://www.macchaffee.com/blog/2022/psp-deprecation) why PodSecurityPolicies never made it as a GA feature, why they had to be replaced and what you should consider going forward. - [datree.io: EKS 1.22 Upgrade Tutorial](https://www.datree.io/resources/eks-1-22-upgrade-tutorial) - [kubernetes.io: registry.k8s.io: faster, cheaper and Generally Available (GA)](https://kubernetes.io/blog/2022/11/28/registry-k8s-io-faster-cheaper-ga) Starting with Kubernetes 1.25, our container image registry has changed from k8s.gcr.io to [registry.k8s.io](https://github.com/kubernetes/registry.k8s.io). This new registry spreads the load across multiple Cloud Providers & Regions, functioning as a sort of content delivery network (CDN) for Kubernetes container images. This change reduces the projectโ€™s reliance on a single entity and provides a faster download experience for a large number of users. - [sysdig.com: Kubernetes 1.26 โ€“ Whatโ€™s new?](https://www.sysdig.com/blog/kubernetes-1-26-whats-new) @@ -65,7 +65,7 @@ - [itnext.io: Unleashing the Power of Kubernetes 1.26: Exploring the New ValidatingAdmissionPolicy Feature with CEL](https://itnext.io/unleashing-the-power-of-kubernetes-1-26-56979ee667fd) - [kubernetes.io: Kubernetes 1.26: Job Tracking, to Support Massively Parallel Batch Workloads, Is Generally Available](https://kubernetes.io/blog/2022/12/29/scalable-job-tracking-ga) After multiple iterations and scale verifications, Kubernetes switched to a new Job Controller. Paired with the Indexed completion mode, the Job controller can handle massively parallel batch jobs, supporting up to 100k concurrent Pods. - [alexandrev.medium.com: Kubernetes Autoscaling 1.26: A Game-Changer for KEDA Users?](https://alexandrev.medium.com/kubernetes-autoscaling-1-26-a-game-changer-for-keda-users-c718a81fb155) -- [kubernetes.io: Kubernetes v1.26: Advancements in Kubernetes Traffic Engineering](https://kubernetes.io/blog/2022/12/30/advancements-in-kubernetes-traffic-engineering) In this article, you will learn about the significant advancements in network traffic engineering in Kubernetes v1.26 (Service internal traffic policy support, EndpointSlice terminating conditions and Proxy terminating endpoints. +- [kubernetes.io: Kubernetes v1.26: Advancements in Kubernetes Traffic Engineering](https://kubernetes.io/blog/2022/12/30/advancements-in-kubernetes-traffic-engineering) about the significant advancements in network traffic engineering in Kubernetes v1.26 (Service internal traffic policy support, EndpointSlice terminating conditions and Proxy terminating endpoints. - [sysdig.com: Kubernetes 1.27 โ€“ Whatโ€™s new?](https://www.sysdig.com/blog/kubernetes-1-27-whats-new) - [kubernetes.io: Kubernetes v1.27: Chill Vibes](https://kubernetes.io/blog/2023/04/11/kubernetes-v1-27-release) v1.27 is the first release that anyone can remember where we didn't receive a single exception request after the enhancements freeze. Even as the release progressed, things remained much calmer than any of us are used to. This release consist of 60 enhancements. 18 of those enhancements are entering Alpha, 29 are graduating to Beta, and 13 are graduating to Stable. - [medium.com/@jonathan_37674: Kubernetes 1.27: Everything You Should Know | ARMO](https://medium.com/@jonathan_37674/kubernetes-1-27-everything-you-should-know-armo-236de6d77272) diff --git a/docs/kubernetes-security.md b/docs/kubernetes-security.md index 6b45834c..94f39ddd 100644 --- a/docs/kubernetes-security.md +++ b/docs/kubernetes-security.md @@ -52,7 +52,7 @@ - [medium: How to Harden Your Kubernetes Cluster for Production ๐ŸŒŸ](https://medium.com/better-programming/how-to-harden-your-kubernetes-cluster-for-production-7e47990efc2a) - [kubernetes.io: Cloud native security for your clusters](https://kubernetes.io/blog/2020/11/18/cloud-native-security-for-your-clusters) - [tldrsec.com: Risk8s Business: Risk Analysis of Kubernetes Clusters ๐ŸŒŸ](https://tldrsec.com/?404=%2Fguides%2Fkubernetes) A zero-to-hero guide for assessing the security risk of your Kubernetes cluster and hardening it. -- [labs.bishopfox.com: Bad Pods: Kubernetes Pod Privilege Escalation ๐ŸŒŸ](https://bishopfox.com/blog/kubernetes-pod-privilege-escalation) What are the risks associated with overly permissive pod creation in Kubernetes? The answer varies based on which of the hostโ€™s namespaces and security contexts are allowed. In this post, I will describe eight insecure pod configurations and the corresponding methods to perform privilege escalation. This article and the accompanying repository were created to help penetration testers and administrators better understand common misconfiguration scenarios. +- [labs.bishopfox.com: Bad Pods: Kubernetes Pod Privilege Escalation ๐ŸŒŸ](https://bishopfox.com/blog/kubernetes-pod-privilege-escalation) What are the risks associated with overly permissive pod creation in Kubernetes? The answer varies based on which of the hostโ€™s namespaces and security contexts are allowed. I will describe eight insecure pod configurations and the corresponding methods to perform privilege escalation. This article and the accompanying repository were created to help penetration testers and administrators better understand common misconfiguration scenarios. - [sysdig.com: Kubernetes Security Guide ๐ŸŒŸ](https://www.sysdig.com/blog/kubernetes-security-guide) Best practices, guidance and steps for implementing Kubernetes security. - [resources.whitesourcesoftware.com: Kubernetes Security Best Practices ๐ŸŒŸ](https://resources.whitesourcesoftware.com/blog-whitesource/kubernetes-security) - [sysdig.com: Getting started with Kubernetes audit logs and Falco ๐ŸŒŸ](https://www.sysdig.com/blog/kubernetes-audit-log-falco) @@ -62,7 +62,7 @@ - [youtube: Kubernetes Security: Attacking and Defending K8s Clusters - by Magno Logan](https://www.youtube.com/watch?v=OOHmg1J_8ck&ab_channel=RedTeamVillage) - [cncf.io: Kubernetes Security ๐ŸŒŸ](https://www.cncf.io/blog/2021/03/22/kubernetes-security) - [microsoft.com: Secure containerized environments with updated threat matrix for Kubernetes](https://www.microsoft.com/security/blog/2021/03/23/secure-containerized-environments-with-updated-threat-matrix-for-kubernetes) -- [kyverno.io ๐ŸŒŸ](https://kyverno.io) Kubernetes Native Policy Management. Kyverno 1.18 (released May 2026) introduced advanced supply chain security, simplified YAML-based policy management, and enhanced support for Gateway API. +- [kyverno.io ๐ŸŒŸ](https://kyverno.io) Kubernetes Native Policy Management. Kyverno provides advanced supply chain security, simplified YAML-based policy management, and enhanced support for Gateway API. - [Tetragon (Cilium)](https://github.com/cilium/tetragon) - eBPF-based Security Observability and Runtime Enforcement. Tetragon provides deep visibility into process execution, network activity, and file access, with the ability to enforce policies at the kernel level. - [==kyverno.io/policies== ๐ŸŒŸ](https://kyverno.io/policies) K8s policies available in the community repository - [cyberark.com: Attacking Kubernetes Clusters Through Your Network Plumbing: Part 1](https://www.cyberark.com/resources/threat-research-blog/attacking-kubernetes-clusters-through-your-network-plumbing-part-1?utm_sq=goa40uvlx1) @@ -109,7 +109,7 @@ - How to use PSP - [blog.gitguardian.com: Kubernetes Hardening Tutorial Part 2: Network](https://blog.gitguardian.com/kubernetes-tutorial-part-2-network) How to achieve Control Plane security, true resource separation with network policies, and use Kubernetes Secrets more securely. - [==medium.com/@jonathan_37674: Kubernetes Security Best Practices: Definitive Guide==](https://medium.com/@jonathan_37674/kubernetes-security-best-practices-definitive-guide-bcb546e9f529) -- [isovalent.com: Detecting a Container Escape with Cilium and eBPF](https://isovalent.com/blog/post/2021-11-container-escape) In this article youโ€™ll learn how an attacker with access to a Kubernetes cluster can escape from a container and: +- [isovalent.com: Detecting a Container Escape with Cilium and eBPF](https://isovalent.com/blog/post/2021-11-container-escape)youโ€™ll learn how an attacker with access to a Kubernetes cluster can escape from a container and: - run a pod to gain root privileges - escape to the host - persist the attack with invisible pods and fileless executions @@ -119,19 +119,19 @@ - Etcd localhost port access due to SSRF vulnerability - Etcd Credential Stealing - Kube API server command execution -- [faun.pub: From dev to admin: an easy Kubernetes privilege escalation you should be aware of โ€” the attack](https://faun.pub/from-dev-to-admin-an-easy-kubernetes-privilege-escalation-you-should-be-aware-of-the-attack-950e6cf76cac) In this post, you will learn how easily a limited user (such as a developer) can escalate their privileges and become an admin of a cluster which has been set up using kubeadm. +- [faun.pub: From dev to admin: an easy Kubernetes privilege escalation you should be aware of โ€” the attack](https://faun.pub/from-dev-to-admin-an-easy-kubernetes-privilege-escalation-you-should-be-aware-of-the-attack-950e6cf76cac) how easily a limited user (such as a developer) can escalate their privileges and become an admin of a cluster which has been set up using kubeadm. - [xenitab.github.io: Kubernetes Ephemeral Container Security ๐ŸŒŸ](https://xenitab.github.io/blog/2022/04/12/ephemeral-container-security) Ephemeral containers are temp containers that can be attached after a Pod is created. But what happens when you use them on a hardened cluster? The answer is not so obvious as OPA, Kyverno, PSPs, etc. will do their best to (rightly) prevent execution. -- [==armosec.io: How to Secure Deployments in Kubernetes?== ๐ŸŒŸ](https://www.armosec.io/blog/secure-kubernetes-deployment) In Kubernetes, there are two aspects to security: cluster security and application security. In this post, you'll explore how to secure โ€ŒKubernetes deployments and applications in general. +- [==armosec.io: How to Secure Deployments in Kubernetes?== ๐ŸŒŸ](https://www.armosec.io/blog/secure-kubernetes-deployment) In Kubernetes, there are two aspects to security: cluster security and application security. you'll explore how to secure โ€ŒKubernetes deployments and applications in general. - [==medium.com/@dotdc: Is your Kubernetes API Server exposed? Learn how to check and fix!== ๐ŸŒŸ](https://medium.com/@dotdc/is-your-kubernetes-api-server-exposed-learn-how-to-check-and-fix-609ab9638fae) - [levelup.gitconnected.com: The Core of Kubernetes Security: Clusters](https://levelup.gitconnected.com/the-core-of-kubernetes-security-clusters-5d9a69f1dba4) -- [sysdig.com: How attackers use exposed Prometheus server to exploit Kubernetes clusters | Miguel Hernรกndez](https://www.sysdig.com/blog/exposed-prometheus-exploit-kubernetes-kubeconeu) What happens if an attacker accesses your Prometheus server? How much information can they get for fingerprinting the cluster? In this article, you will learn how attackers use this information and how to secure your cluster. +- [sysdig.com: How attackers use exposed Prometheus server to exploit Kubernetes clusters | Miguel Hernรกndez](https://www.sysdig.com/blog/exposed-prometheus-exploit-kubernetes-kubeconeu) What happens if an attacker accesses your Prometheus server? How much information can they get for fingerprinting the cluster? how attackers use this information and how to secure your cluster. - [==cast.ai: Kubernetes Security: 10 Best Practices from the Industry and Community== ๐ŸŒŸ](https://cast.ai/blog/kubernetes-security-10-best-practices) - [thenewstack.io: Basic Principles Key to Securing Kubernetesโ€™ Future](https://thenewstack.io/key-basic-principles-to-secure-kubernetes-future) Once these capabilities have been established, Ops teams can begin to look further afield and explore leveraging the value of their data through activities like testing and optimization. -- [medium.com/@codingkarma: Kubernetes Goat Part-1](https://medium.com/@codingkarma/kubernetes-goat-part-1-8718b1345a42) In this article, you will learn how to attack and defend a Kubernetes cluster by solving the challenges of Kubernetes goat โ€” an intentionally vulnerable cluster environment to learn and practice Kubernetes security +- [medium.com/@codingkarma: Kubernetes Goat Part-1](https://medium.com/@codingkarma/kubernetes-goat-part-1-8718b1345a42) how to attack and defend a Kubernetes cluster by solving the challenges of Kubernetes goat โ€” an intentionally vulnerable cluster environment to learn and practice Kubernetes security - [==medium.com/@badawekoo: Limit number of processes running in a Kubernetes pod==](https://medium.com/@badawekoo/limit-number-of-processes-running-in-a-kubernetes-pod-50ccf156ec18) When it comes to Kubernetes security, It is very important to harden the core components of the cluster which are pods, and limit the risks that can be originated from inside the pods. Thatโ€™s why limiting number of processes that can run inside a pod will limit any vulnerabilities in your cluster. - [copado.com: Applying a Zero Trust Infrastructure in Kubernetes](https://www.copado.com/resources/blog/applying-a-zero-trust-infrastructure-in-kubernetes) - [dev.to/pavanbelagatti: Kubernetes Security Best Practices For Developers](https://dev.to/pavanbelagatti/kubernetes-security-best-practices-for-developers-2b92) -- [==itnext.io: Journey Of A Microservice Application In The Kubernetes World== ๐ŸŒŸ](https://itnext.io/journey-of-a-microservice-application-in-the-kubernetes-world-6abd625c60fe) Security considerations: security related tools. In this article, you will discuss some security considerations and see how you can ensure (at least to some extent) that the application's specifications follow some of the best security practices. +- [==itnext.io: Journey Of A Microservice Application In The Kubernetes World== ๐ŸŒŸ](https://itnext.io/journey-of-a-microservice-application-in-the-kubernetes-world-6abd625c60fe) Security considerations: security related tools. you will discuss some security considerations and see how you can ensure (at least to some extent) that the application's specifications follow some of the best security practices. - [tutorialboy24.blogspot.com: A Detailed Talk about K8S Cluster Security from the Perspective of Attackers (Part 2) ๐ŸŒŸ](https://tutorialboy24.blogspot.com/2022/09/a-detailed-talk-about-k8s-cluster.html) In this 2-part series, you will address 12 common attack points in Kubernetes clusters and discuss various risks in cloud-native scenarios based on practical experience - [medium.com/cloudyrion: Kubernetes end-to-end chain exploit](https://medium.com/cloudyrion/kubernetes-end-to-end-chain-exploit-c2be32688fd0) This article details the security flaws discovered in Kubernetes and GitOps tools due to improper configurations. It also demonstrates how an attacker could perform post-exploitation attacks, increasing their privileges and the attack surface. - [==itnext.io: Performing Security Checks for Deployed Kubernetes Manifests==](https://itnext.io/performing-security-checks-for-deployed-kubernetes-manifests-fa9d442b7951) An effective tool for checking security rule violations in Kubernetes deployments using **Polaris** @@ -156,7 +156,7 @@ - [curity.io: OAuth 2.0 Overview](https://curity.io/resources/learn/oauth-overview) - [curity.io: OpenID Connect Overview](https://curity.io/resources/learn/openid-connect-overview) - [curity.io: Client Security](https://curity.io/resources/client-security) Client security primarily covers web and mobile, to ensure best security in the browser and on devices -- [dev.to/gabrielbiasi: Automatic SSO in Kubernetes workloads using a sidecar container](https://dev.to/gabrielbiasi/automatic-sso-in-kubernetes-workloads-using-a-sidecar-container-3752) In this tutorial, you will learn how to use oauth2-proxy as a sidecar container to authorize requests to your Identity Provider of choice +- [dev.to/gabrielbiasi: Automatic SSO in Kubernetes workloads using a sidecar container](https://dev.to/gabrielbiasi/automatic-sso-in-kubernetes-workloads-using-a-sidecar-container-3752) how to use oauth2-proxy as a sidecar container to authorize requests to your Identity Provider of choice ## Securing Kubernetes Deployments @@ -173,7 +173,7 @@ ## Kubernetes Security Scanners - [GitHub Code Security Risk Assessment: Free Vulnerability Scanning](https://github.blog/security/application-security/how-exposed-is-your-code-find-out-in-minutes-for-free) - *(Related to devsecops topic)* -- [==blog.cloudsecque.com: How to Improve the Security of Your Applications with Kubernetes Security Scanners==](https://blog.cloudsecque.com/how-to-improve-the-security-of-your-applications-with-kubernetes-security-scanners-cda97fd2f574) Kubernetes security scanners are tools that can be used to detect vulnerabilities and security issues in your applications. In this article you will find: +- [==blog.cloudsecque.com: How to Improve the Security of Your Applications with Kubernetes Security Scanners==](https://blog.cloudsecque.com/how-to-improve-the-security-of-your-applications-with-kubernetes-security-scanners-cda97fd2f574) Kubernetes security scanners are tools that can be used to detect vulnerabilities and security issues in your applications.you will find: - Grype - Trivy - Kubesec @@ -186,7 +186,7 @@ - [k21academy.com: Secure and Harden Kubernetes, AKS and EKS Cluster with kube-bench, kube-hunter and CIS Benchmarks ๐ŸŒŸ](https://k21academy.com/kubernetes/kube-bench-cis) - [==aninditabasak.medium.com: A Lap around Kubernetes Security & Vulnerability scanning Tools โ€” checkov, kube-hunter, kube-bench & Starboard==](https://aninditabasak.medium.com/a-lap-around-kubernetes-security-vulnerability-scanning-tools-checkov-kube-hunter-kube-bench-4ffda92c4cf1) - [==blog.flant.com: Kubernetes cluster security assessment with kube-bench and kube-hunter==](https://palark.com/blog/kubernetes-security-with-kube-bench-and-kube-hunter) -- [raesene.github.io: Let's talk about Kubernetes on the Internet](https://raesene.github.io/blog/2022/07/03/lets-talk-about-kubernetes-on-the-internet) In this article, you will learn how to scan and discover publicly accessible Kubernetes clusters and how you can protect against it +- [raesene.github.io: Let's talk about Kubernetes on the Internet](https://raesene.github.io/blog/2022/07/03/lets-talk-about-kubernetes-on-the-internet) how to scan and discover publicly accessible Kubernetes clusters and how you can protect against it - [==github.com/Shopify/kubeaudit== ๐ŸŒŸ๐ŸŒŸ](https://github.com/Shopify/kubeaudit) kubeaudit helps you audit your Kubernetes clusters against common security controls. kubeaudit is a command line tool and a Go package to audit Kubernetes clusters for various different security concerns, such as: - Run as non-root - Use a read-only root filesystem @@ -207,7 +207,7 @@ - [owasp.org: OWASP Kubernetes Top Ten](https://owasp.org/www-project-kubernetes-top-ten) OWASP Kubernetes Top Ten is aimed at helping security practitioners, system administrators, and developers prioritize risks around the Kubernetes ecosystem. This is a prioritized list of these risks backed by data. - [darkreading.com: Top 10 Kubernetes Security Risks Every DevSecOps Pro Should Know](https://www.darkreading.com/dr-tech/top-10-kubernetes-security-risks-every-devsecops-needs-to-know) The mission to run any containerized application on any infrastructure makes security a challenge on Kubernetes. - [==sysdig.com: OWASP Kubernetes Top 10== ๐ŸŒŸ](https://www.sysdig.com/blog/top-owasp-kubernetes) One of the biggest concerns when using Kubernetes is whether we are complying with the security posture and taking into account all possible threats. -- [itnext.io: Kubernetes OWASP Top 10: Secrets Management](https://itnext.io/kubernetes-owasp-top-10-secrets-management-c996faa87b47) In this article, you will discuss secrets management in Kubernetes: +- [itnext.io: Kubernetes OWASP Top 10: Secrets Management](https://itnext.io/kubernetes-owasp-top-10-secrets-management-c996faa87b47) you will discuss secrets management in Kubernetes: - Secrets objects - Managing Kubernetes Secrets - Manual Secret Creation @@ -235,13 +235,13 @@ - [infoq.com](https://www.infoq.com/news/2021/09/kubernetes-hardening-guidance) NSA and CISA Publish Kubernetes Hardening Guidance - [thenewstack.io: NSA on How to Harden Kubernetes](https://thenewstack.io/nsa-on-how-to-harden-kubernetes) - [blog.gitguardian.com: Hardening Your Kubernetes Cluster - Threat Model (Pt. 1) ๐ŸŒŸ๐ŸŒŸ](https://blog.gitguardian.com/hardening-your-k8-pt-1) The NSA and CISA recently released a guide on Kubernetes hardening. We'll cover this guide in a three part series. First, let's explore the Threat Model and how it maps to K8s components. - - [blog.gitguardian.com: Kubernetes Hardening Tutorial Part 3: Authn, Authz, Logging & Auditing](https://dev.to/gitguardian/kubernetes-hardening-tutorial-part-3-authn-authz-logging-auditing-3fec) In this tutorial, you will learn the authentication, authorization, logging, and auditing of a Kubernetes cluster. Specifically, you will discuss some of the best practices in AWS EKS. + - [blog.gitguardian.com: Kubernetes Hardening Tutorial Part 3: Authn, Authz, Logging & Auditing](https://dev.to/gitguardian/kubernetes-hardening-tutorial-part-3-authn-authz-logging-auditing-3fec) the authentication, authorization, logging, and auditing of a Kubernetes cluster. Specifically, you will discuss some of the best practices in AWS EKS. - [armosec.io: NSA & CISA Kubernetes Hardening Guide โ€“ what is new with version 1.1](https://www.armosec.io/blog/nsa-cisa-kubernetes-hardening-guide) In March 2022, NSA & CISA has issued a new version of the Kubernetes Hardening Guide โ€“ 1.1. Here are the most important points addressed in this new version. ## CIS Benchmarks and CIS Operator - [ibm.com: CIS Benchmarks](https://www.ibm.com/topics) Developed by a global community of cybersecurity professionals, CIS Benchmarks are a collection of best practices for securely configuring IT systems, software, networks, and cloud infrastructure. -- [aymen-abdelwahed.medium.com: K8s Operators โ€” CIS Kubernetes Benchmarks](https://aymen-abdelwahed.medium.com/k8s-operators-cis-benchmarks-8d7915d5cb2d) How can I run my workloads securely on top of Kubernetes? In this post, we'll be taking a look at the CIS-Benchmark, breaking the concept down to simple terms, and in the end, deploying the CIS-Operator using Helm charts and custom values +- [aymen-abdelwahed.medium.com: K8s Operators โ€” CIS Kubernetes Benchmarks](https://aymen-abdelwahed.medium.com/k8s-operators-cis-benchmarks-8d7915d5cb2d) How can I run my workloads securely on top of Kubernetes? we'll be taking a look at the CIS-Benchmark, breaking the concept down to simple terms, and in the end, deploying the CIS-Operator using Helm charts and custom values - [rancher/cis-operator](https://github.com/rancher/cis-operator) This is an operator that can run on a given Kubernetes cluster and provide ability to run security scans as per the CIS benchmarks, on the cluster. ## User and Workload identities in Kubernetes @@ -269,7 +269,7 @@ ## Kubernetes Secrets -- [cncf.io: Revealing the secrets of Kubernetes secrets ๐ŸŒŸ](https://www.cncf.io/blog/2021/04/22/revealing-the-secrets-of-kubernetes-secrets) In this article you will learn how to protect Secrets in your Kubernetes cluster +- [cncf.io: Revealing the secrets of Kubernetes secrets ๐ŸŒŸ](https://www.cncf.io/blog/2021/04/22/revealing-the-secrets-of-kubernetes-secrets)you will learn how to protect Secrets in your Kubernetes cluster - [Hands on your first Kubernetes secrets ๐ŸŒŸ](https://www.theodo.com/en-uk/blog) - [dev.to: Store your Kubernetes Secrets in Git thanks to Kubeseal. Hello SealedSecret! ๐ŸŒŸ](https://dev.to/stack-labs/store-your-kubernetes-secrets-in-git-thanks-to-kubeseal-hello-sealedsecret-2i6h) - [blog.doit-intl.com: Kubernetes and Secrets Management in the Cloud](https://blog.doit-intl.com/kubernetes-and-secrets-management-in-cloud-858533c20dca) @@ -293,8 +293,8 @@ - [carlosalca.medium.com: How to manage all my K8s secrets in git securely with Bitnami Sealed Secrets](https://carlosalca.medium.com/how-to-manage-all-my-k8s-secrets-in-git-securely-with-bitnami-sealed-secrets-43580b8fa0c7) - [==cloud.redhat.com: A Guide to Secrets Management with GitOps and Kubernetes== ๐ŸŒŸ](https://www.redhat.com/en/blog/a-guide-to-secrets-management-with-gitops-and-kubernetes) **This article will discuss two architectural approaches to managing secrets with GitOps: encrypted secrets stored in Git and storing a reference to secrets in Git** - [itnext.io: Vault cluster with auto unseal on Kubernetes](https://itnext.io/vault-cluster-with-auto-unseal-on-kubernetes-8e469f9cdcfd) -- [pjame-fb.medium.com: Kubernetes Secrets from Secrets Manager using External Secrets Operators](https://pjame-fb.medium.com/kubernetes-secrets-from-secrets-manager-using-external-secrets-operators-4819562c3b02) In this article, you will learn how to store your credentials in the Secrets Manager and automatically retrieve them for creating Kubernetes Secrets using External Secrets. -- [mixi-developers.mixi.co.jp: Comparing External Secrets Operator with Secret Storage CSI as Kubernetes External Secrets is Deprecated](https://mixi-developers.mixi.co.jp/compare-eso-with-secret-csi-402bf37f20bc?gi=a7ce4398a8d7) In this article, you will compare the External Secrets Operator with Secret Storage CSI for using external secrets in a Kubernetes cluster. You will compare: +- [pjame-fb.medium.com: Kubernetes Secrets from Secrets Manager using External Secrets Operators](https://pjame-fb.medium.com/kubernetes-secrets-from-secrets-manager-using-external-secrets-operators-4819562c3b02) how to store your credentials in the Secrets Manager and automatically retrieve them for creating Kubernetes Secrets using External Secrets. +- [mixi-developers.mixi.co.jp: Comparing External Secrets Operator with Secret Storage CSI as Kubernetes External Secrets is Deprecated](https://mixi-developers.mixi.co.jp/compare-eso-with-secret-csi-402bf37f20bc?gi=a7ce4398a8d7) you will compare the External Secrets Operator with Secret Storage CSI for using external secrets in a Kubernetes cluster. You will compare: - Architecture - Authorization management - Resource usage @@ -303,7 +303,7 @@ - [medium.com/@knoldus: Using sealed secrets in Kubernetes](https://medium.com/@knoldus/using-sealed-secrets-in-kubernetes-7f7518d4c984) - [medium.com/@knoldus: Introduction to sealed secrets in Kubernetes](https://medium.com/@knoldus/introduction-to-sealed-secrets-in-kubernetes-7857b361a845) - [eminalemdar.medium.com: Cloud Native Secret Management with External Secrets Operator](https://eminalemdar.medium.com/cloud-native-secret-management-with-external-secrets-operator-2912f41f9c49) -- [piotrminkowski.com: Sealed Secrets on Kubernetes with ArgoCD and Terraform](https://piotrminkowski.com/2022/12/14/sealed-secrets-on-kubernetes-with-argocd-and-terraform) In this article, you will learn how to manage secrets securely on Kubernetes in the GitOps approach using Sealed Secrets, ArgoCD, and Terraform +- [piotrminkowski.com: Sealed Secrets on Kubernetes with ArgoCD and Terraform](https://piotrminkowski.com/2022/12/14/sealed-secrets-on-kubernetes-with-argocd-and-terraform) how to manage secrets securely on Kubernetes in the GitOps approach using Sealed Secrets, ArgoCD, and Terraform - [medium.com/google-cloud: Handle Kubernetes Secrets the GitOps Way โ€” Part 1](https://medium.com/google-cloud/handle-kubernetes-secrets-the-gitops-way-part-1-7079bd8221f3) - [dev.to: A Detailed Talk about K8S Cluster Security from the Perspective of Attackers (Part 1)](https://dev.to/tutorialboy/a-detailed-talk-about-k8s-cluster-security-from-the-perspective-of-attackers-part-1-3mm5) This 2-part series summarizes the methods and experience of attacking Kubernetes components, external services of nodes, business pods, and container escaping, including lateral attacks, as well as attacks on the Kubernetes management platform @@ -321,8 +321,8 @@ - [github.com/cert-manager: Policy Approver](https://github.com/cert-manager/approver-policy) Policy Approver is a cert-manager approver that is responsible for Approving or Denying CertificateRequests. - [jetstack.io: Getting started using cert-manager with the sig-network Gateway API](https://www.cyberark.com/venafi-and-cyberark-machine-identity-security) - [medium.com/@knoldus: Configure SSL certificate with cert-manager on Kubernetes](https://medium.com/@knoldus/configure-ssl-certificate-with-cert-manager-on-kubernetes-e5ca8a804e16) -- [blog.devgenius.io: Automated DNS/TLS with External DNS & LetsEncrypt on Kubernetes](https://blog.devgenius.io/automated-dns-tls-with-external-dns-letsencrypt-on-kubernetes-6f4f41827df9) In this article, you'll learn how to create TLS certificates for your application with cert-manager and DNS entries with external DNS. Finally, you will expose your applications with an ingress resource to tie it all together. -- [itnext.io: Upgrade Cert-Manager for Your Production Deployment Without Downtime](https://itnext.io/upgrade-cert-manager-for-your-production-deployment-without-downtime-ee5d32fabec8) When upgrading Cert-Manager, it's often required to update the CRDs. Unfortunately, it's not a straightforward process. In this article, you'll learn a few options that ensure a smooth Cert-Manager upgrade to avoid downtime of production deployment. +- [blog.devgenius.io: Automated DNS/TLS with External DNS & LetsEncrypt on Kubernetes](https://blog.devgenius.io/automated-dns-tls-with-external-dns-letsencrypt-on-kubernetes-6f4f41827df9) you'll learn how to create TLS certificates for your application with cert-manager and DNS entries with external DNS. Finally, you will expose your applications with an ingress resource to tie it all together. +- [itnext.io: Upgrade Cert-Manager for Your Production Deployment Without Downtime](https://itnext.io/upgrade-cert-manager-for-your-production-deployment-without-downtime-ee5d32fabec8) When upgrading Cert-Manager, it's often required to update the CRDs. Unfortunately, it's not a straightforward process. you'll learn a few options that ensure a smooth Cert-Manager upgrade to avoid downtime of production deployment. - [==faun.pub: Letโ€™s encrypt and CertManager==](https://faun.pub/lets-encrypt-and-certmanager-aa88775730b8) How to use CertManager and Letโ€™s encrypt in Kubernetes - [armin.su: SSL certificates from Letโ€™s Encrypt for Kubernetes Private Ingress via Terraform](https://armin.su/ssl-certificates-from-lets-encrypt-for-kubernetes-private-ingress-via-terraform-c9f595ee65fa) - [==dev.to: Kubernetes TLS, Demystified== ๐ŸŒŸ](https://dev.to/otomato_io/possible-paths-2hfc) @@ -348,7 +348,7 @@ Fine-grained access control through the use of role-based access control (RBAC) Support for custom headers and footers to customize the user interface Overall, OAuth2 Proxy is a powerful tool for securing web applications using OAuth2 providers. It simplifies the authentication and authorization process and makes it easy to manage access to your applications in a Kubernetes environment. -- [geek-cookbook.funkypenguin.co.nz: Using OAuth2 proxy for Kubernetes Dashboard](https://geek-cookbook.funkypenguin.co.nz/recipes/kubernetes/oauth2-proxy) In this tutorial, you will learn how to set up OAuth2 Proxy to pass authentication headers to Kubernetes Dashboard, which doesn't provide its authentication but instead relies on Kubernetes' own RBAC auth +- [geek-cookbook.funkypenguin.co.nz: Using OAuth2 proxy for Kubernetes Dashboard](https://geek-cookbook.funkypenguin.co.nz/recipes/kubernetes/oauth2-proxy) how to set up OAuth2 Proxy to pass authentication headers to Kubernetes Dashboard, which doesn't provide its authentication but instead relies on Kubernetes' own RBAC auth - [imanishchaudhary.medium.com: Securing Kubernetes Dashboards: SSO Authentication and RBAC Implementation with Okta and OAuth2 Proxy](https://imanishchaudhary.medium.com/secure-kubernetes-dashboards-with-sso-authentication-using-okta-oauth2-proxy-9e52189e9749) ### Alternatives @@ -370,7 +370,7 @@ Each of these alternatives provides different features and may be more suitable ## RBAC and Access Control - Kubernetes does not have objects which represent normal user accounts. Normal users cannot be added to a cluster through an API call. So how do you create a user? -- [Configure RBAC in Kubernetes Like a Boss ๐ŸŒŸ](https://medium.com/trendyol-tech/configure-rbac-in-kubernetes-like-a-boss-665e2a8665dd) Learn how to configure RBAC in kubernetes. In this post, you will configure RBAC both with kubectl and yaml definitions. +- [Configure RBAC in Kubernetes Like a Boss ๐ŸŒŸ](https://medium.com/trendyol-tech/configure-rbac-in-kubernetes-like-a-boss-665e2a8665dd) Learn how to configure RBAC in kubernetes. you will configure RBAC both with kubectl and yaml definitions. - [infracloud.io: How to setup Role based access (RBAC) to Kubernetes Cluster ๐ŸŒŸ](https://www.infracloud.io/blogs/role-based-access-kubernetes) - [Kubernetes RBAC Permission Manager ๐ŸŒŸ](https://toolbox.kali-linuxtr.net/kubernetes-rbac-permission-manager.tool) - [Krane ๐ŸŒŸ](https://github.com/appvia/krane) is a Kubernetes RBAC static analysis tool. It identifies potential security risks in K8s RBAC design and makes suggestions on how to mitigate them. Krane dashboard presents current RBAC security posture and lets you navigate through its definition. @@ -386,7 +386,7 @@ Each of these alternatives provides different features and may be more suitable - [anaisurl.com: RBAC Explained with Examples ๐ŸŒŸ](https://anaisurl.com/kubernetes-rbac) Kubernetes RBAC tutorial with two examples, using ServiceAccounts and openssl to create separate contexts for users - [medium.com/@badawekoo: Using RBAC in Kubernetes for authorization-Complete Demo-Part 1](https://medium.com/@badawekoo/using-rbac-in-kubernetes-for-authorization-complete-demo-part-1-83f0a1fb8f) - [thenewstack.io: Securing Access to Kubernetes Environments with Zero Trust](https://thenewstack.io/securing-access-to-kubernetes-environments-with-zero-trust) -- [==learnk8s.io: Limiting access to Kubernetes resources with RBAC== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://learnkube.com/rbac-kubernetes) What happens when you combine a Kubernetes RoleBinding to a ClusterRole? Are you even allowed? In this article, Yanan Zhao explores the K8s RBAC authorization model by rebuilding it from scratch. +- [==learnk8s.io: Limiting access to Kubernetes resources with RBAC== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://learnkube.com/rbac-kubernetes) What happens when you combine a Kubernetes RoleBinding to a ClusterRole? Are you even allowed? Yanan Zhao explores the K8s RBAC authorization model by rebuilding it from scratch. - [==medium.com/@15daniel10: YOYO attack on a K8S cluster==](https://medium.com/@15daniel10/yoyo-attack-on-a-k8s-cluster-102bc1d5ca3e) In addition to the performance degradation for the attacked service, the underlying idea behind the attack is to exploit the autoscaling mechanism in order to make the victim deploy excessive resources and pay for them while having as little cost footprint for the attacker as possible. In other words, the attacker harnesses the power of the cloud against the organization that uses it. - [dev.to: Binding AWS IAM roles to Kubernetes Service Account for on-prem clusters | Daniele Polencic ๐ŸŒŸ](https://dev.to/danielepolencic/binding-aws-iam-roles-to-kubernetes-service-account-for-on-prem-clusters-1icc) AWS IAM to Kubernetes service accounts integration, but for on-prem clusters (i.e. non EKS, just regular clusters). Process to grant permissions to Pods. - [==medium.com/@danielepolencic: How does RBAC work in kubernetes== ๐ŸŒŸ](https://medium.com/@danielepolencic/how-does-rbac-work-in-kubernetes-d50dd34771ca) A short and visual thread on how Kubernetes RBAC works in Kubernetes @@ -396,9 +396,9 @@ Each of these alternatives provides different features and may be more suitable - [medium.com/@danielepolencic: AWS IAM Roles for service accounts for on-prem clusters](https://medium.com/@danielepolencic/binding-aws-iam-roles-to-kubernetes-service-account-for-on-prem-clusters-b8bac41f269d) In this short tutorial, you will learn how to configure the IAM roles for Service Account for a bare-metal cluster using minikube as an example. - [medium.com/andcloudio: Setting up Authentication and RBAC Authorization in Kubernetes](https://medium.com/andcloudio/creating-authentication-and-authorization-in-kubernetes-c6c5f0f1d2ad) - [dev.to: Configure RBAC in Kubernetes Like a Boss](https://dev.to/mstryoda/configure-rbac-in-kubernetes-like-a-boss-h67) You will configure RBAC both with kubectl and yaml definitions. -- [raesene.github.io: Auditing RBAC - Redux](https://raesene.github.io/blog/2022/08/14/auditing-rbac-redux) The challenges of auditing Kubernetes authorization. Auditing Kubernetes authorization can be a bit of a tricky task. In this article, you will learn what techniques and tools you can use to identify, reassign and manage RBAC rules in your cluster. +- [raesene.github.io: Auditing RBAC - Redux](https://raesene.github.io/blog/2022/08/14/auditing-rbac-redux) The challenges of auditing Kubernetes authorization. Auditing Kubernetes authorization can be a bit of a tricky task. what techniques and tools you can use to identify, reassign and manage RBAC rules in your cluster. - [goteleport.com: A Simple Overview of Authentication Methods for Kubernetes Clusters](https://goteleport.com/blog/kube-authn-methods) -- [medium.com/@mehmetodabashi: Authentication and Authorization in Kubernetes: Client Certificates and Role Based Access Control (RBAC)](https://medium.com/@mehmetodabashi/authentication-and-authorization-in-kubernetes-client-certificates-and-role-based-access-control-d4e98a3c1098) In this tutorial, you'll learn how to authenticate and authorize a user to access Kubernetes Clusters with client certificates +- [medium.com/@mehmetodabashi: Authentication and Authorization in Kubernetes: Client Certificates and Role Based Access Control (RBAC)](https://medium.com/@mehmetodabashi/authentication-and-authorization-in-kubernetes-client-certificates-and-role-based-access-control-d4e98a3c1098) you'll learn how to authenticate and authorize a user to access Kubernetes Clusters with client certificates - [medium.com/@brunoolimpio: Kubernetes DeepDive โ€” Parte 2 - Kubernetes RBAC and more... | Bruno Olimpio](https://medium.com/@brunoolimpio/kubernetes-deepdive-parte-2-a65ffdce596d) - [==youtube: Kubernetes RBAC Explained== | Anton Putra ๐ŸŒŸ](https://www.youtube.com/watch?v=iE9Qb8dHqWI) @@ -448,7 +448,7 @@ Each of these alternatives provides different features and may be more suitable 7. If breached, scale suspicious pods to zero - [thenewstack.io: 6 Kubernetes Security Best Practices ๐ŸŒŸ](https://thenewstack.io/6-kubernetes-security-best-practices) - [==armosec.io: Kubernetes Security Best Practices: Definitive Guide==](https://www.armosec.io/blog/kubernetes-security-best-practices) -- [semaphoreci.com: Secure Your Kubernetes Deployments](https://semaphore.io/blog/kubernetes-deployments) In this tutorial, we present three tools to validate and secure your Kubernetes deployments: +- [semaphoreci.com: Secure Your Kubernetes Deployments](https://semaphore.io/blog/kubernetes-deployments) we present three tools to validate and secure your Kubernetes deployments: - Kubeval - Kubeconform - Kubescore @@ -458,7 +458,7 @@ Each of these alternatives provides different features and may be more suitable - How NetworkPolicies are structured - Best practices for defining NetworkPolicies - An example of defining NetworkPolicies -- [blog.frankel.ch: Learning by auditing Kubernetes manifests](https://blog.frankel.ch/learning-auditing-kubernetes-manifests) In this article, you will learn about Kubernetes security and architecture by reviewing reports from Chekov โ€” a tool designed to find misconfigurations before theyโ€™re deployed. +- [blog.frankel.ch: Learning by auditing Kubernetes manifests](https://blog.frankel.ch/learning-auditing-kubernetes-manifests) about Kubernetes security and architecture by reviewing reports from Chekov โ€” a tool designed to find misconfigurations before theyโ€™re deployed. - [spectrocloud.com: Kubernetes security best practices: 5 easy ways to cut risk](https://www.spectrocloud.com/blog/kubernetes-security-best-practices-5-easy-ways-to-cut-risk) - [medium.com/@cloud_tips: Kubernetes Security Best Practices](https://medium.com/@cloud_tips/kubernetes-security-best-practices-ea1e3913c001) diff --git a/docs/kubernetes-storage.md b/docs/kubernetes-storage.md index 53e0fd96..b080a06b 100644 --- a/docs/kubernetes-storage.md +++ b/docs/kubernetes-storage.md @@ -61,7 +61,7 @@ - [storj.io: Integrating Decentralized Cloud Storage with Duplicati](https://www.storj.io/cloud-object-storage) - [thenewstack.io: The Biggest Gap in Kubernetes Storage Architecture?](https://thenewstack.io/whats-the-biggest-gap-in-kubernetes-storage-architecture) - [medium: Provisioning storage in Kubernetes](https://medium.com/avmconsulting-blog/provisioning-storage-in-kubernetes-e1dc5610318d) -- [kylezsembery.com: Persistent Storage in Kubernetes](https://www.kylezsembery.com/persistent-storage-kubernetes) In this post Iโ€™ll briefly explain how persistent storage works in Kubernetes. +- [kylezsembery.com: Persistent Storage in Kubernetes](https://www.kylezsembery.com/persistent-storage-kubernetes)Iโ€™ll briefly explain how persistent storage works in Kubernetes. - [blog.mayadata.io: Container Attached Storage (CAS) vs. Software-Defined Storage - Which One to Choose?](https://blog.mayadata.io/container-attached-storage-cas-vs.-software-defined-storage-which-one-to-choose) - [thenewstack.io: Stateful Workloads on Kubernetes with Container Attached Storage ๐ŸŒŸ](https://thenewstack.io/stateful-workloads-on-kubernetes-with-container-attached-storage) - [developers.redhat.com: How to maximize data storage for microservices and Kubernetes, Part 1: An introduction ๐ŸŒŸ](https://developers.redhat.com/articles/2021/08/11/how-maximize-data-storage-microservices-and-kubernetes-part-1-introduction) @@ -74,10 +74,10 @@ - [armosec.io: Data Storage in Kubernetes](https://www.armosec.io/blog/kubernetes-data-storage) Kubernetes in cooperation with cloud vendor infrastructure provides flexible mechanisms for data storage and management. It is up to the users to decide which mechanism best fits their application needs. However, the security side of the data storage falls completely under the userโ€™s responsibility. Most of the default settings are wide open and require significant security expertise to protect your applications from data leakage. - [==infoq.com: Best Practices for Running Stateful Applications on Kubernetes==](https://www.infoq.com/articles/kubernetes-stateful-applications) - [blog.flant.com: Comparing Ceph, LINSTOR, Mayastor, and Vitastor storage performance in Kubernetes](https://palark.com/blog/kubernetes-storage-performance-linstor-ceph-mayastor-vitastor) Are you looking for an easy-to-use, reliable block-type storage for your cluster? -- [medium.com/@amir.ilw: Kubernetes Storage Migration ๐ŸŒŸ](https://medium.com/@amir.ilw/kubernetes-storage-migration-ac48f6f9f5a5) Storage migrations, storage path changes or even moving to a newer faster CSI can be overwhelming. In this article, you'll learn the required steps, how to avoid the pitfalls of immutable volumes and how to plan your next migration. +- [medium.com/@amir.ilw: Kubernetes Storage Migration ๐ŸŒŸ](https://medium.com/@amir.ilw/kubernetes-storage-migration-ac48f6f9f5a5) Storage migrations, storage path changes or even moving to a newer faster CSI can be overwhelming. you'll learn the required steps, how to avoid the pitfalls of immutable volumes and how to plan your next migration. - [discoblocks.io ๐ŸŒŸ](https://discoblocks.io) - [ondat/discoblocks](https://github.com/ondat/discoblocks) **Open Source declarative disk configuration system for Kubernetes.** Discoblocks is an open-source declarative disk configuration system for Kubernetes helping to automate CRUD (Create, Read, Update, Delete) operations for cloud disk device resources attached to Kubernetes cluster nodes. - [medium.com/geekculture: Storage | Kubernetes](https://medium.com/geekculture/storage-kubernetes-92eb3d027282) A Deep Dive into Kubernetes Storage -- [itnext.io: Temporary Storage for Kubernetes Pods](https://itnext.io/temporary-storage-for-kubernetes-pods-f8330ad8db88) Or emptyDir vs. container File System. Kubernetes applications might need some temporary storage that could be discarded after a container is stopped/removed. In this article, you will compare emptyDir and the container's local storage. +- [itnext.io: Temporary Storage for Kubernetes Pods](https://itnext.io/temporary-storage-for-kubernetes-pods-f8330ad8db88) Or emptyDir vs. container File System. Kubernetes applications might need some temporary storage that could be discarded after a container is stopped/removed. you will compare emptyDir and the container's local storage. - [==container-object-storage-interface.github.io: Kubernetes COSI== [ARCHIVED]]( http://web.archive.org/web/20250117155441/https://container-object-storage-interface.github.io) Kubernetes Container Object Storage Interface (COSI) is a standard for exposing object storage to containerized workloads running in Kubernetes. COSI is meant to be a departure from the CSI since the latter does not work well with object storage. - [medium.com/nerd-for-tech: Persistence with Kubernetes](https://medium.com/nerd-for-tech/persistence-with-kubernetes-46f039d9a2ad) - [cncf.io: Kubernetes storage is complex, but itโ€™s getting better](https://www.cncf.io/blog/2023/03/28/kubernetes-storage-is-complex-but-its-getting-better) @@ -86,7 +86,7 @@ ## Kubernetes Storage API Interface -- [danielmangum.com: K8s ASA: The Storage Interface](https://danielmangum.com/posts/k8s-asa-the-storage-interface) The primary function of the Kubernetes API Server is to ingest data, store it, and then return it when requested. In this article, you will learn how the API Server stores data. +- [danielmangum.com: K8s ASA: The Storage Interface](https://danielmangum.com/posts/k8s-asa-the-storage-interface) The primary function of the Kubernetes API Server is to ingest data, store it, and then return it when requested. how the API Server stores data. ## Kubernetes Storage Classes @@ -109,7 +109,7 @@ - [giffgaff.io: Resizing StatefulSet Persistent Volumes with zero downtime ๐ŸŒŸ](https://www.giffgaff.io/tech/resizing-statefulset-persistent-volumes-with-zero-downtime) - [kubermatic.com: Keeping the State of Apps 1: Introduction to Volume and volumeMounts](https://www.kubermatic.com/blog/keeping-the-state-of-apps-1-introduction-to-volume-and-volumemounts) In this blog post, you will get a hands-on practice and learn how to provide persistent storage in the form of different volumes to the Pods. - [blog.cloudnloud.com: Kubernetes Volume](https://blog.cloudnloud.com/kubernetes-volume) -- [==adamtheautomator.com: Effortless Storage Management With Kubernetes PVC== ๐ŸŒŸ](https://adamtheautomator.com/kubernetes-pvc) In this tutorial, you'll learn about Kubernetes PVC and set up a persistent volume for a MySQL database. You'll also confirm that the data persists even after deleting and recreating the pods. +- [==adamtheautomator.com: Effortless Storage Management With Kubernetes PVC== ๐ŸŒŸ](https://adamtheautomator.com/kubernetes-pvc) you'll learn about Kubernetes PVC and set up a persistent volume for a MySQL database. You'll also confirm that the data persists even after deleting and recreating the pods. - [portworx.com: Kubernetes Persistent Volume Tutorial by Portworx](https://portworx.com/tutorial-kubernetes-persistent-volumes) - What is K8s PV? - How do they differ from k8s volumes? diff --git a/docs/kubernetes-tools.md b/docs/kubernetes-tools.md index c7d8f778..d73520dc 100644 --- a/docs/kubernetes-tools.md +++ b/docs/kubernetes-tools.md @@ -326,7 +326,7 @@ - [kube-secret-syncer ๐ŸŒŸ](https://github.com/contentful-labs/kube-secret-syncer) is a Kubernetes operator developed using the Kubebuilder framework that keeps the values of Kubernetes Secrets synchronised to secrets in AWS Secrets Manager. - [contentful.com: Open-sourcing kube-secret-syncer: A Kubernetes operator to sync secrets from AWS Secrets Manager](https://www.contentful.com/blog/open-source-kube-secret-syncer) Kube-secret-syncer is a Kubernetes operator developed using the Kubebuilder framework that keeps the values of Kubernetes Secrets synchronised to secrets in AWS Secrets Manager. - [kapp ๐ŸŒŸ](https://carvel.dev/kapp) is a CLI that calculates changes between your configuration and live cluster state and applies changes you approve. - - [thecloudblog.net: Managing Applications in Kubernetes with the Carvel Kapp Controller](https://thecloudblog.net/post/managing-applications-in-kubernetes-with-the-carvel-kapp-controller) kapp enables users to group a set of resources (resources with the same label) as an application. In this tutorial, you will learn how to deploy a front-end and backend app with Redis as a single unit with kapp. + - [thecloudblog.net: Managing Applications in Kubernetes with the Carvel Kapp Controller](https://thecloudblog.net/post/managing-applications-in-kubernetes-with-the-carvel-kapp-controller) kapp enables users to group a set of resources (resources with the same label) as an application. how to deploy a front-end and backend app with Redis as a single unit with kapp. - [garden.io](https://docs.garden.io) Break down the barriers between development, testing, and CI. Use the same workflows and production-like Kubernetes environments at every step of the process - [thenewstack.io: Garden: The Configure-Once Kubernetes Platform for Seamless Dev/Prod Integration](https://thenewstack.io/garden-the-configure-once-kubernetes-platform-for-seamless-dev-prod-integration) - [pvc-autoresizer](https://github.com/topolvm/pvc-autoresizer) resizes PersistentVolumeClaims (PVCs) when the free amount of storage is below the threshold. It queries the volume usage metrics from Prometheus that collects metrics from kubelet. @@ -421,7 +421,7 @@ - [nerdctl ๐ŸŒŸ](https://github.com/containerd/nerdctl) Docker-compatible CLI for containerd - [El Carro: The Oracle Operator for Kubernetes ๐ŸŒŸ](https://github.com/GoogleCloudPlatform/elcarro-oracle-operator) El Carro is a new project that offers a way to run Oracle databases in Kubernetes as a portable, open source, community driven, no vendor lock-in container orchestration system. El Carro provides a powerful declarative API for comprehensive and consistent configuration and deployment as well as for real-time operations and monitoring. - [jspolicy](https://github.com/loft-sh/jspolicy) jsPolicy is an operator that helps you define Kubernetes Policies using JavaScript or TypeScript. Easier & Faster Kubernetes Policies using JavaScript or TypeScript. - - [blog.ediri.io: Writing Kubernetes policies with jsPolicy and deploy them via FluxCD](https://blog.ediri.io/writing-kubernetes-policies-with-jspolicy) In this tutorial, you will learn how to write Kubernetes policies using JavaScript/Typescript with the help of jsPolicy and deploy them via GitOps using Flux + - [blog.ediri.io: Writing Kubernetes policies with jsPolicy and deploy them via FluxCD](https://blog.ediri.io/writing-kubernetes-policies-with-jspolicy) how to write Kubernetes policies using JavaScript/Typescript with the help of jsPolicy and deploy them via GitOps using Flux - [k8scr ๐ŸŒŸ](https://github.com/hasheddan/k8scr) A kubectl plugin for pushing OCI images through the Kubernetes API server. - [jsonnet-controller](https://github.com/pelotech/jsonnet-controller) A fluxcd controller for managing manifests declared in jsonnet. - [rback: RBAC in Kubernetes visualizer ๐ŸŒŸ๐ŸŒŸ](https://github.com/team-soteria/rback) A simple "RBAC in Kubernetes" visualizer. No matter how complex the setup, rback queries all RBAC related information of an Kubernetes cluster in constant time and generates a graph representation of service accounts, (cluster) roles, and the respective access rules in dot format. @@ -573,7 +573,7 @@ - [==steveteuber/kubectl-graph== โญ](https://github.com/steveteuber/kubectl-graph) **A kubectl plugin to visualize Kubernetes resources and relationships.** - [crazy-max/diun](https://github.com/crazy-max/diun) Diun is a CLI application written in Go and delivered as a single executable (and a Docker image) to receive notifications when a Docker image is updated on a Docker registry. - [==omrikiei/ktunnel== โญ](https://github.com/omrikiei/ktunnel) **A cli that exposes your local resources to kubernetes. A CLI tool that establishes a reverse tunnel between a kubernetes cluster and your local machine.** -- [dev.to: Pixie: an X-ray Machine for Kubernetes Traffic](https://dev.to/otomato_io/pixie-an-x-ray-machine-for-kubernetes-traffic-23pd) Pixie is one of a handful of observability tools that offer eBPF or kernel-level observability. In this tutorial, you will learn how to see all of your applications' metrics, events, logs, and traces using Pixie with Kubernetes. +- [dev.to: Pixie: an X-ray Machine for Kubernetes Traffic](https://dev.to/otomato_io/pixie-an-x-ray-machine-for-kubernetes-traffic-23pd) Pixie is one of a handful of observability tools that offer eBPF or kernel-level observability. how to see all of your applications' metrics, events, logs, and traces using Pixie with Kubernetes. - [plural.sh: Deploy open-source software on Kubernetes in record time โญ](https://www.plural.sh) An open-source platform to build, maintain, and scale infrastructure on Kubernetes. Batteries included. - [medium.com/@michaeljguarino: How we Created an in-Browser Kubernetes Experience](https://medium.com/@michaeljguarino/how-we-created-an-in-browser-kubernetes-experience-58c065cda803) - [pan-net-security/kcount](https://github.com/pan-net-security/kcount) kcount counts Kubernetes objects across namespaces and clusters. It can be used as a CLI tool or as a daemon (service) exposing Prometheus metrics. @@ -690,7 +690,7 @@ elastic quotas - Effortless optimization at its finest! - https://github.com/kcp-dev/ - [kcp: a prototype of a Kubernetes API server that is not a Kubernetes cluster - a place to create, update, and maintain Kube-like APIs with controllers above or without clusters](https://github.com/kcp-dev/kcp) Kubernetes is mainly known as a container orchestration platform today, but we believe it can be even more. With the power of CustomResourceDefinitions, Kubernetes provides a flexible platform for declarative APIs of all types, and the reconciliation pattern common to Kubernetes controllers is a powerful tool in building robust, expressive systems. At the same time, a diverse and creative community of tools and services has sprung up around Kubernetes APIs. Imagine a declarative Kubernetes-style API for anything, supported by an ecosystem of Kubernetes-aware tooling, separate from Kubernetes-the-container-orchestrator. That's kcp. -- [cloudnativesimplified.substack.com: kcp: Kubernetes-like control plane](https://cloudnativesimplified.substack.com/p/tool-series-1-kcp) kcp is a control plane for workloads on many clusters. In this article, you will explore how to use it to manage multiple tenants: +- [cloudnativesimplified.substack.com: kcp: Kubernetes-like control plane](https://cloudnativesimplified.substack.com/p/tool-series-1-kcp) kcp is a control plane for workloads on many clusters. you will explore how to use it to manage multiple tenants: - In a single cluster with workspaces (isolated namespaces) - In multiple clusters with SyncTarget and Placements @@ -838,10 +838,10 @@ elastic quotas - Effortless optimization at its finest! ## MetalLB -- [medium.com/@charled.breteche: Kind, Cilium, MetalLB, and still no kube-proxy](https://medium.com/@charled.breteche/kind-cilium-metallb-and-no-kube-proxy-a9fe66ddfad6) In this article I will show you how to add MetalLB into the mix to enable services of type LoadBalancer to work in your local cluster. +- [medium.com/@charled.breteche: Kind, Cilium, MetalLB, and still no kube-proxy](https://medium.com/@charled.breteche/kind-cilium-metallb-and-no-kube-proxy-a9fe66ddfad6)I will show you how to add MetalLB into the mix to enable services of type LoadBalancer to work in your local cluster. - [patrick.easte.rs: Forging an optimal MetalLB configuration](https://patrick.easte.rs/post/2022/forging-optimal-metallb-config) MetalLB discovers services needing load balancers, allocates IP addresses, and advertises them. There are 2 primary modes for announcing load balancers: Layer 2 and 3 (BGP). Each mode has its pros and cons and this article compares them. - [adaltas.com: Ingresses and Load Balancers in Kubernetes with MetalLB and nginx-ingress](https://www.adaltas.com/en/2022/09/08/kubernetes-metallb-nginx) This tutorial will teach you how to use MetalLB and nginx-ingress to load-balance requests in a bare-metal Kubernetes cluster -- [itnext.io: Configuring routing for MetalLB in L2 mode](https://itnext.io/configuring-routing-for-metallb-in-l2-mode-7ea26e19219e) In this article, you will discover how to configure source-based and policy-based routing for the external network on your cluster using MetalLB +- [itnext.io: Configuring routing for MetalLB in L2 mode](https://itnext.io/configuring-routing-for-metallb-in-l2-mode-7ea26e19219e) you will discover how to configure source-based and policy-based routing for the external network on your cluster using MetalLB ## Kubermatic Kubernetes Platform @@ -880,7 +880,7 @@ elastic quotas - Effortless optimization at its finest! - [armosec.io: Use Kubescape to check if your Kubernetes clusters are exposed to the latest K8s Symlink vulnerability (CVE-2021-25741)](https://www.armosec.io/cve-vulnerability-database) - [medium.com/@sheraznadeem1: Kubescape & Kubernetes Hardening- Demystified](https://medium.com/@sheraznadeem1/kubescape-kubernetes-hardening-demystified-87fba47f3b6a) - [blog.devgenius.io: Scanning Kubernetes YAML Files for Security ๐ŸŒŸ](https://blog.devgenius.io/scanning-kubernetes-yaml-files-for-security-e302542b5407) -- [infracloud.io: Securing Kubernetes Cluster using Kubescape and kube-bench](https://www.infracloud.io/blogs/securing-kubernetes-cluster-kubescape-kubebench) In this article, you will discuss how you can secure a Kubernetes cluster using Kubescape and kube-bench +- [infracloud.io: Securing Kubernetes Cluster using Kubescape and kube-bench](https://www.infracloud.io/blogs/securing-kubernetes-cluster-kubescape-kubebench) you will discuss how you can secure a Kubernetes cluster using Kubescape and kube-bench ## Kubectl Connections - [A Complete Guide to Kubectl exec](https://refine.dev/blog/kubectl-exec-command) ๐ŸŒŸ - This article provides a comprehensive guide to using `kubectl exec`, a crucial command for gaining shell access to containers within a Kubernetes cluster. It covers the necessity of shell access for debugging and configuration, introduces `kubectl exec`, details its components and parameters, compares it with `docker exec` and `ssh`, offers practical examples, discusses security implications, and provides troubleshooting tips. @@ -945,7 +945,7 @@ elastic quotas - Effortless optimization at its finest! - [medium.com/@micheldirk: On Amazon EKS and Karpenter](https://medium.com/@micheldirk/on-amazon-eks-and-karpenter-2b84e75e254e) - [medium.com/@gajaoncloud: Unleash the Power of Karpenter: Automating AWS EKS Scaling and Cost Optimization](https://medium.com/@gajaoncloud/unleash-the-power-of-karpenter-automating-aws-eks-scaling-and-cost-optimization-7e236319eda4) - [medium.com/@gajaoncloud: Karpenter Mastery: NodePools & NodeClasses for Workload Nirvana](https://medium.com/@gajaoncloud/karpenter-mastery-nodepools-nodeclasses-for-workload-nirvana-bc89850fa934) -- [medium.com/@gajaoncloud: Demystifying Karpenterโ€™s Advanced Features: Consolidation, Drift, and Spot Handling](https://medium.com/@gajaoncloud/demystifying-karpenters-advanced-features-consolidation-drift-and-spot-handling-007fbad29549) In this article, you will learn about Karpenter's advanced features, such as consolidation for optimal resource utilization, drift detection for automatic updates, and spot instance handling for graceful interruptions +- [medium.com/@gajaoncloud: Demystifying Karpenterโ€™s Advanced Features: Consolidation, Drift, and Spot Handling](https://medium.com/@gajaoncloud/demystifying-karpenters-advanced-features-consolidation-drift-and-spot-handling-007fbad29549) about Karpenter's advanced features, such as consolidation for optimal resource utilization, drift detection for automatic updates, and spot instance handling for graceful interruptions ## Kuby (easy deployments of Ruby Rails App) @@ -1120,7 +1120,7 @@ elastic quotas - Effortless optimization at its finest! - [vcluster.com](https://www.vcluster.com) Virtual Kubernetes Clusters that run inside regular namespaces. Create fully functional virtual Kubernetes clusters - Each vcluster runs inside a namespace of the underlying k8s cluster. It's cheaper than creating separate full-blown clusters and it offers better multi-tenancy and isolation than regular namespaces. - [thenewstack.io: Locking Down Kubernetes Containers with vcluster](https://thenewstack.io/locking-down-kubernetes-containers-with-vcluster) -- [salaboy.com: Building platforms on top of Kubernetes: VCluster and Crossplane](https://www.salaboy.com/2022/08/03/building-platforms-on-top-of-kubernetes-vcluster-and-crossplane) In this tutorial, you'll learn how to: +- [salaboy.com: Building platforms on top of Kubernetes: VCluster and Crossplane](https://www.salaboy.com/2022/08/03/building-platforms-on-top-of-kubernetes-vcluster-and-crossplane) you'll learn how to: - Create an isolated cluster with vcluster - Package apps with Helm - Submit a request for a "new environment" that will automatically create a new cluster and install the Helm chart using Crossplane diff --git a/docs/kubernetes-troubleshooting.md b/docs/kubernetes-troubleshooting.md index 44afa053..f2e9520d 100644 --- a/docs/kubernetes-troubleshooting.md +++ b/docs/kubernetes-troubleshooting.md @@ -41,7 +41,7 @@ - [andydote.co.uk: The Problem with CPUs and Kubernetes](https://andydote.co.uk/2021/06/02/os-cpus-and-kubernetes) - [medium: Better Debugging Environment for your Micro-Services](https://medium.com/@moshe.beladev.mb/better-debugging-environment-for-your-micro-services-9420a71b8a37) - [thenewstack.io: 6 Kubernetes Best Practices to Empower Devs to Troubleshoot](https://thenewstack.io/6-kubernetes-best-practices-to-empower-devs-to-troubleshoot) -- [youtube: 3 Ways to Detect Evil "Latest" Image Tags in Kubernetes - Kubevious](https://www.youtube.com/watch?v=93RlMqO4glM&t=6s&ab_channel=Kubevious) The "latest" image tag is a disaster waiting to happen. In this video, you will learn how to detect usage of the latest images using 3 different methods. +- [youtube: 3 Ways to Detect Evil "Latest" Image Tags in Kubernetes - Kubevious](https://www.youtube.com/watch?v=93RlMqO4glM&t=6s&ab_channel=Kubevious) The "latest" image tag is a disaster waiting to happen. you will learn how to detect usage of the latest images using 3 different methods. - [thenewstack.io: Living with Kubernetes: Debug Clusters in 8 Commands ๐ŸŒŸ](https://thenewstack.io/living-with-kubernetes-debug-clusters-in-8-commands) - [dzone.com: The Three Pillars of Kubernetes Troubleshooting ๐ŸŒŸ [ARCHIVED]]( http://web.archive.org/web/20220309105258/https://dzone.com/articles/the-three-pillars-of-kubernetes-troubleshooting) Diving into how the three pillars of understanding, managing and preventing for Kubernetes troubleshooting, and how it helps to conceive of whatโ€™s needed to be able to properly troubleshoot real-world Kubernetes stacks that are the hallmark of complex, distributed systems. - [freecodecamp.org: How to Simplify Kubernetes Troubleshooting](https://www.freecodecamp.org/news/how-to-simplify-kubernetes-troubleshooting) @@ -51,36 +51,36 @@ - In this paper, we will explore different options to facilitate debugging by bringing back the shell. - [==speakerdeck.com/mhausenblas (redhat): Troubleshooting Kubernetes apps==](https://speakerdeck.com/mhausenblas/kubecologne-keynote-troubleshooting-kubernetes-apps) - [medium.com/@andrewachraf: Detect crashes in your Kubernetes cluster using kwatch and Slack ๐ŸŒŸ](https://medium.com/@andrewachraf/detect-crashes-in-your-cluster-using-kwatch-an-slack-84b979e93e03) Monitor all changes in your Kubernetes(K8s) cluster & detects crashes in your running apps in real time -- [==research.nccgroup.com: Detection Engineering for Kubernetes clusters==](https://www.nccgroup.com/research) In this article you will learn how to detect anomalies in your cluster using Kubernetes Audit logs and Anomalies Detection Engineering. +- [==research.nccgroup.com: Detection Engineering for Kubernetes clusters==](https://www.nccgroup.com/research)you will learn how to detect anomalies in your cluster using Kubernetes Audit logs and Anomalies Detection Engineering. - [pauldally.medium.com: Kubernetes โ€” Debugging NetworkPolicy (Part 1)](https://pauldally.medium.com/debugging-networkpolicy-part-1-249921cdba37) - [pauldally.medium.com: Kubernetes โ€” Debugging NetworkPolicy (Part 2)](https://pauldally.medium.com/debugging-networkpolicy-part-2-2d5c42d8465c) - [medium.com/geekculture: Common Pod Errors in Kubernetes to Watch Out For](https://medium.com/geekculture/common-pod-errors-in-kubernetes-to-watch-out-for-d808737f4ade) -- [==faun.pub: Kubernetes โ€” Debugging NetworkPolicy (Part 1)==](https://faun.pub/debugging-networkpolicy-part-1-249921cdba37) For something as important as NetworkPolicy, debugging is surprisingly painful. In this article you will learn a few practical tips on how to debug your network policies +- [==faun.pub: Kubernetes โ€” Debugging NetworkPolicy (Part 1)==](https://faun.pub/debugging-networkpolicy-part-1-249921cdba37) For something as important as NetworkPolicy, debugging is surprisingly painful.you will learn a few practical tips on how to debug your network policies - [==pauldally.medium.com: Kubernetes โ€” Debugging NetworkPolicy (Part 2)==](https://pauldally.medium.com/debugging-networkpolicy-part-2-2d5c42d8465c) -- [tratnayake.dev: Oncall Adventures - When your Prometheus-Server mounted to GCE Persistent Disk on K8s is Full](https://tratnayake.dev/oncall-adventures-prometheus-filled-disk) In this article, you will follow Thilina's journey on debugging a failing Prometheus server on Kubernetes. The story starts with a wake-up call at 3.30 am ๐Ÿ˜… +- [tratnayake.dev: Oncall Adventures - When your Prometheus-Server mounted to GCE Persistent Disk on K8s is Full](https://tratnayake.dev/oncall-adventures-prometheus-filled-disk) you will follow Thilina's journey on debugging a failing Prometheus server on Kubernetes. The story starts with a wake-up call at 3.30 am ๐Ÿ˜… - [==sysdig.com: Understanding Kubernetes pod pending problems==](https://www.sysdig.com/blog/kubernetes-pod-pending-problems) -- [==blog.alexellis.io: How to Troubleshoot Applications on Kubernetes== ๐ŸŒŸ](https://blog.alexellis.io/troubleshooting-on-kubernetes) In this article, you will learn a practical framework to troubleshoot applications deployed on Kubernetes: +- [==blog.alexellis.io: How to Troubleshoot Applications on Kubernetes== ๐ŸŒŸ](https://blog.alexellis.io/troubleshooting-on-kubernetes) a practical framework to troubleshoot applications deployed on Kubernetes: - Is it there? - Why isn't it working? - It starts, but doesn't work - There are too many pods! - But can you `curl` it? -- [blog.devgenius.io: All You Need to Know about Debugging Kubernetes Cronjob](https://blog.devgenius.io/all-you-need-to-know-about-debugging-kubernetes-cronjob-61989a998513) Walkthrough tools & configs & knowledge used in Kubernetes cronjob/deployment debug. In this article, you will create and deploy a (broken) CronJob. Then you will debug it and in the process learn about environment variables, RBAC, pod resource configuration, logging, and more. +- [blog.devgenius.io: All You Need to Know about Debugging Kubernetes Cronjob](https://blog.devgenius.io/all-you-need-to-know-about-debugging-kubernetes-cronjob-61989a998513) Walkthrough tools & configs & knowledge used in Kubernetes cronjob/deployment debug. you will create and deploy a (broken) CronJob. Then you will debug it and in the process learn about environment variables, RBAC, pod resource configuration, logging, and more. - [saiteja313.medium.com: Tracing DNS issues in Kubernetes](https://saiteja313.medium.com/tracing-dns-issues-in-kubernetes-28b38f782103) -- [medium.com/@jasonmfehr: Kubernetes Informers: Opening the Mystery Box](https://medium.com/@jasonmfehr/kubernetes-informers-opening-the-mystery-box-4cd690a43a4) In this article, you will learn how the team at Cloudera found a performance issue with Kubernetes informers and how they managed to rectify the issue -- [maxilect-company.medium.com: Graceful shutdown in a cloud environment (the example of Kubernetes + Spring Boot) ๐ŸŒŸ](https://maxilect-company.medium.com/graceful-shutdown-in-a-cloud-environment-the-example-of-kubernetes-spring-boot-f922b41adaa0) In this article, you'll learn why it is crucial to think about graceful shutdown in Kubernetes and how you can approach this task. Many people think about starting an application in the cloud but rarely pay attention to how it ends. Once, we caught quite a few errors explicitly related to pods stopping. For example, we saw that Kubernetes occasionally kills our application before it releases resources, although it seems that this should not happen. It was impossible to reproduce the problem immediately, and we wondered what was happening under the hood? +- [medium.com/@jasonmfehr: Kubernetes Informers: Opening the Mystery Box](https://medium.com/@jasonmfehr/kubernetes-informers-opening-the-mystery-box-4cd690a43a4) how the team at Cloudera found a performance issue with Kubernetes informers and how they managed to rectify the issue +- [maxilect-company.medium.com: Graceful shutdown in a cloud environment (the example of Kubernetes + Spring Boot) ๐ŸŒŸ](https://maxilect-company.medium.com/graceful-shutdown-in-a-cloud-environment-the-example-of-kubernetes-spring-boot-f922b41adaa0) you'll learn why it is crucial to think about graceful shutdown in Kubernetes and how you can approach this task. Many people think about starting an application in the cloud but rarely pay attention to how it ends. Once, we caught quite a few errors explicitly related to pods stopping. For example, we saw that Kubernetes occasionally kills our application before it releases resources, although it seems that this should not happen. It was impossible to reproduce the problem immediately, and we wondered what was happening under the hood? - [martinheinz.dev: Backup-and-Restore of Containers with Kubernetes Checkpointing API](https://martinheinz.dev/blog/85) Kubernetes v1.25 introduced Container Checkpointing API as an alpha feature. This provides a way to backup-and-restore containers running in Pods, without ever stopping them. This feature is primarily aimed at forensic analysis, but general backup-and-restore is something any Kubernetes user can take advantage of. So, let's take a look at this brand-new feature and see how we can enable it in our clusters and leverage it for backup-and-restore or forensic analysis. - [madeeshafernando.medium.com: Capturing Heap Dumps of stateless Kubernetes pods before container termination and export to AWS S3](https://madeeshafernando.medium.com/capturing-heap-dumps-of-stateless-kubernetes-pods-before-container-termination-and-export-to-aws-s3-9602378ee60b) -- [faun.pub: Troubleshooting Kubernetes nodes storage space shortage on Aliyun (Alibaba Cloud)](https://faun.pub/troubleshooting-kubernetes-nodes-storage-space-shortage-on-aliyun-alibaba-cloud-ac28230fe3d3) In this article, you will follow Stephen's journey to identifying the root cause for cluster nodes running out of space on the Aliyun cloud +- [faun.pub: Troubleshooting Kubernetes nodes storage space shortage on Aliyun (Alibaba Cloud)](https://faun.pub/troubleshooting-kubernetes-nodes-storage-space-shortage-on-aliyun-alibaba-cloud-ac28230fe3d3) you will follow Stephen's journey to identifying the root cause for cluster nodes running out of space on the Aliyun cloud - [thenewstack.io: What David Flanagan Learned Fixing Kubernetes Clusters](https://thenewstack.io/what-david-flanagan-learned-fixing-kubernetes-clusters) David Flanagan has fixed 50+ Kubernetes clusters as part of his YouTube series, 'Klustered.' He shared what he learned at Civo Navigate. - [==github.com/metaleapca: metaleap-k8s-troubleshooting.pdf== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://github.com/metaleapca/metaleap-k8s-troubleshooting/blob/main/metaleap-k8s-troubleshooting.pdf) - [nicolasbarlatier.hashnode.dev: .NET Core Tip 2: How to troubleshoot Memory Leaks within a .NET Console application running in a Linux Docker Container in Kubernetes](https://nicolasbarlatier.hashnode.dev/net-core-tip-2-how-to-troubleshoot-memory-leaks-within-a-net-console-application-running-in-a-linux-docker-container-in-kubernetes) In this step-by-step guide, you will learn how to troubleshoot a memory leak in a .Net Core application running within a Kubernetes cluster. -- [blog.devgenius.io: All You Need to Know about Debugging Kubernetes Cronjob](https://blog.devgenius.io/all-you-need-to-know-about-debugging-kubernetes-cronjob-61989a998513) Walkthrough tools & configs & knowledge used in Kubernetes cronjob/deployment debug. In this article, you will create and deploy a (broken) CronJob. Then you will debug it and in the process learn about environment variables, RBAC, pod resource configuration, logging, and more +- [blog.devgenius.io: All You Need to Know about Debugging Kubernetes Cronjob](https://blog.devgenius.io/all-you-need-to-know-about-debugging-kubernetes-cronjob-61989a998513) Walkthrough tools & configs & knowledge used in Kubernetes cronjob/deployment debug. you will create and deploy a (broken) CronJob. Then you will debug it and in the process learn about environment variables, RBAC, pod resource configuration, logging, and more - [==dzone.com: Tackling the Top 5 Kubernetes Debugging Challenges==](https://dzone.com/articles/tackling-the-top-5-kubernetes-debugging-challenges) Bugs are inevitable and typically occur as a result of an error or oversight. Learn five Kubernetes debugging challenges and how to tackle them. -- [levelup.gitconnected.com: Access Kubernetes Objects Data From /Proc Directory ๐ŸŒŸ](https://levelup.gitconnected.com/access-kubernetes-objects-data-from-proc-directory-8d2ec6a0faba) **The `/proc` directory is a special directory that holds all the details about our Linux system, such as โ€” kernel, processes, and configuration parameters. In this article, you will learn how to explore the directory in a Kubernetes cluster** +- [levelup.gitconnected.com: Access Kubernetes Objects Data From /Proc Directory ๐ŸŒŸ](https://levelup.gitconnected.com/access-kubernetes-objects-data-from-proc-directory-8d2ec6a0faba) **The `/proc` directory is a special directory that holds all the details about our Linux system, such as โ€” kernel, processes, and configuration parameters. how to explore the directory in a Kubernetes cluster** - [learnitguide.net: How To Troubleshoot Kubernetes Pods](https://www.learnitguide.net/2023/04/how-to-troubleshoot-kubernetes-pods.html) - [learnitguide.net: How to Check Memory Usage of a Pod in Kubernetes?](https://www.learnitguide.net/2023/04/how-to-check-memory-usage-of-pod-in.html) -- [alexsniffin.medium.com: Debugging Remotely with Go in Kubernetes](https://alexsniffin.medium.com/debugging-remotely-in-kubernetes-with-go-fda4f3332316) In this tutorial, you will learn how to debug an application deployed in Kubernetes remotely using VS Code and Delve +- [alexsniffin.medium.com: Debugging Remotely with Go in Kubernetes](https://alexsniffin.medium.com/debugging-remotely-in-kubernetes-with-go-fda4f3332316) how to debug an application deployed in Kubernetes remotely using VS Code and Delve - [thenewstack.io: Kubernetes Troubleshooting Primer](https://thenewstack.io/kubernetes-troubleshooting-primer) A quick methodology for overcoming common error messages with examples of commands to help โ€” useful for both the administrator and developer alike. - [devzero.io: Kubernetes Debugging Tips](https://www.devzero.io/blog/kubernetes-autoscaling) - [vik-y.medium.com: An easier way to auto-remediate memory leaks on Kubernetes!](https://vik-y.medium.com/an-easier-way-to-auto-remediate-memory-leaks-on-kubernetes-a922457674f4) @@ -100,7 +100,7 @@ ## Exit Codes in Containers and Kubernetes -- [==komodor.com: Exit Codes In Containers & Kubernetes โ€“ The Complete Guide== ๐ŸŒŸ](https://komodor.com/learn/exit-codes-in-containers-and-kubernetes-the-complete-guide) In this article, you will learn everything there is to know about exit codes used by container engines to indicate reasons for container termination. +- [==komodor.com: Exit Codes In Containers & Kubernetes โ€“ The Complete Guide== ๐ŸŒŸ](https://komodor.com/learn/exit-codes-in-containers-and-kubernetes-the-complete-guide) everything there is to know about exit codes used by container engines to indicate reasons for container termination. ## ImagePullBackOff - [10 Real-World Kubernetes Troubleshooting Scenarios and Solutions](https://livingdevops.com/devops/10-real-world-kubernetes-troubleshooting-scenarios-and-solutions) ๐ŸŒŸ - This article provides practical, hands-on solutions for common Kubernetes production issues. It details 10 real-world scenarios, including ImagePullBackOff due to private registry authentication failure, and offers exact kubectl commands and steps for diagnosis and resolution. It also touches upon cloud-managed Kubernetes solutions and IAM roles for registry authentication. @@ -131,7 +131,7 @@ - [medium.com/@reefland: Tracking Down โ€œInvisibleโ€ OOM Kills in Kubernetes](https://medium.com/@reefland/tracking-down-invisible-oom-kills-in-kubernetes-192a3de33a60) An โ€œInvisibleโ€ OOM Kill happens when a child process in a container is killed, not the init process. It is โ€œinvisibleโ€ to Kubernetes and not detected. What is OOM? well.. not a good thing. - [baykara.medium.com: A Gentle Inspection of OOMKilled in Kubernetes](https://baykara.medium.com/a-gentle-inspection-of-oomkilled-in-kubernetes-4b4124cd23a8) Quality of Service in Kubernetes - [cloudyuga.guru: How does Kubernetes assign QoS class to pods through OOM score?](https://cloudyuga.guru/blogs/k8s-qos-oomkilled) This article discusses how to handle OOMKilled errors and how to configure Pod QoS to avoid them -- [sysdig.com: Kubernetes OOM and CPU Throttling](https://www.sysdig.com/blog/troubleshoot-kubernetes-oom) Troubleshooting Memory and CPU problems. Do you know how memory and CPU usage can affect your cloud applications? In this article, you will discuss Out of Memory (OOM) and Throttling in Kubernetes. +- [sysdig.com: Kubernetes OOM and CPU Throttling](https://www.sysdig.com/blog/troubleshoot-kubernetes-oom) Troubleshooting Memory and CPU problems. Do you know how memory and CPU usage can affect your cloud applications? you will discuss Out of Memory (OOM) and Throttling in Kubernetes. - [medium.com/@bm54cloud: Stressing a Kubernetes Pod to Induce an OOMKilled Error](https://medium.com/@bm54cloud/stressing-a-kubernetes-pod-to-induce-an-oomkilled-error-96f3be9c931d) Learn about memory requests and limits, and what happens when those limits are exceeded - [itnext.io: Kubernetes Silent Pod Killer](https://itnext.io/kubernetes-silent-pod-killer-104e7c8054d9) Tracking down invisible OOM Kills in Kubernetes - This article delves into the issue of "Invisible OOM Kills" in Kubernetes, where child processes getting OOM Killed go unnoticed. @@ -192,13 +192,13 @@ - [medium.com/linux-shots: Debug Kubernetes Pods Using Ephemeral Container](https://medium.com/linux-shots/debug-kubernetes-pods-using-ephemeral-container-f01378243ff) - [medium.com/@blgreco72: Debugging Kubernetes Services Locally ๐ŸŒŸ](https://medium.com/@blgreco72/debugging-kubernetes-services-locally-8cb14bf8745a) There are various approaches for debugging Microservices hosted within Kubernetes. The approach used here does not alter the Kubernetes cluster in anyway to support developing Microservices, running external to the cluster, within the developerโ€™s IDE. This is accomplished by mapping ports on the developerโ€™s workstation to services that are normally only accessible from containers running within the cluster. - [zendesk.engineering: Debugging containerd](https://zendesk.engineering/debugging-containerd-a20f28a2a8bf) -- [==heka-ai.medium.com: Introduction to Debugging: locally and live on Kubernetes with VSCode== ๐ŸŒŸ](https://heka-ai.medium.com/introduction-to-debugging-locally-and-live-on-kubernetes-8c8ecd3acbaa) In this article, you'll learn how to debug your code in real-time on a Pod running on Kubernetes using VS Code +- [==heka-ai.medium.com: Introduction to Debugging: locally and live on Kubernetes with VSCode== ๐ŸŒŸ](https://heka-ai.medium.com/introduction-to-debugging-locally-and-live-on-kubernetes-8c8ecd3acbaa) you'll learn how to debug your code in real-time on a Pod running on Kubernetes using VS Code - [iximiuz.com: Kubernetes Ephemeral Containers and kubectl debug Command ๐ŸŒŸ](https://iximiuz.com/en/posts/kubernetes-ephemeral-containers) Learn how to use Ephemeral Containers to debug Kubernetes workloads with and without the kubectl debug command -- [eminaktas.medium.com: Debug Containerd in Production](https://eminaktas.medium.com/debug-containerd-in-production-fe93ef4e3ce2) In this article, you will learn how you can debug containerd with VSCode in a remote production environment. +- [eminaktas.medium.com: Debug Containerd in Production](https://eminaktas.medium.com/debug-containerd-in-production-fe93ef4e3ce2) how you can debug containerd with VSCode in a remote production environment. - [medium.com/@alex.ivenin: Exploring ephemeral containers in kubernetes ๐ŸŒŸ](https://medium.com/@alex.ivenin/exploring-ephemeral-containers-in-kubernetes-bcceaf21101c) Ephemeral containers, a feature that was introduced in Kubernetes 1.16 as an alpha release, advanced to beta status in version 1.23, and has finally graduated to stable status in Kubernetes 1.25. This capability provides an easy and safe way to debug running containers in a pod, without requiring full access to the underlying node. - [labs.iximiuz.com: How to work with container images using ctr](https://labs.iximiuz.com/courses/containerd-cli/ctr/image-management) ctr is a command-line client shipped as part of the containerd project. If you have containerd running on a machine, chances are the ctr binary is also present there. -- [medium.com/@danielepolencic: Isolating kubernetes pods for debugging](https://medium.com/@danielepolencic/isolating-kubernetes-pods-for-debugging-5fe41e630e9) This article introduces a technique that helps you with debugging running Pods in production by changing labels, you can detach Pods from the Service (no traffic), and you troubleshoot them live -- [medium.com/adaltas: Kubernetes: debugging with ephemeral containers](https://medium.com/adaltas/kubernetes-debugging-with-ephemeral-containers-e4be659d9ef6) In this article, you will learn how to debug pods using kubectl debug and ephemeral containers +- [medium.com/@danielepolencic: Isolating kubernetes pods for debugging](https://medium.com/@danielepolencic/isolating-kubernetes-pods-for-debugging-5fe41e630e9)a technique that helps you with debugging running Pods in production by changing labels, you can detach Pods from the Service (no traffic), and you troubleshoot them live +- [medium.com/adaltas: Kubernetes: debugging with ephemeral containers](https://medium.com/adaltas/kubernetes-debugging-with-ephemeral-containers-e4be659d9ef6) how to debug pods using kubectl debug and ephemeral containers ## Troubleshooting Tools - [The Definitive Guide to Importing Your Cloud Resources into IaC](https://blog.cloudgeni.ai/the-definitive-guide-to-importing-your-cloud-resources-into-iac) - *(Related to iac topic)* diff --git a/docs/kubernetes.md b/docs/kubernetes.md index a4dd8260..c99c929e 100644 --- a/docs/kubernetes.md +++ b/docs/kubernetes.md @@ -164,7 +164,7 @@ - [hackernoon.com: The Ultimate Beginners Guide To Kubernetes and Container Orchestration](https://hackernoon.com/the-ultimate-beginners-guide-to-kubernetes-and-container-orchestration-5d83354y) - [k21academy.com: Kubernetes Architecture. An Introduction to Kubernetes Components](https://k21academy.com/kubernetes/kubernetes-architecture-components-overview-for-beginners) - [dzone: Introduction To Kubernetes ๐ŸŒŸ](https://dzone.com/articles/introduction-to-kubernetes-part-1) An orchestration tool takes care of provisioning and deployment, allocation of resources, load balancing, and many other important aspects of any system. -- [weave.works: Kubernetes components that make up its architecture ๐ŸŒŸ](https://www.weave.works/) Great intro +- [weave.works: Kubernetes components that make up its architecture ๐ŸŒŸ](https://www.weave.works/blog/kubernetes-components-that-makeup-its-architecture) Great intro - [dzone refcard: Advanced kubernetes ๐ŸŒŸ](https://dzone.com/refcardz/advanced-kubernetes) - [redhat.com: Kubernetes basics for sysadmins](https://www.redhat.com/en/blog/kubernetes-basics-sysadmins) Learn when Kubernetes can be effectively used and how the containers it manages might be better than virtual machines. - [redhat.com: Kubernetes Components - A sysadmin's guide to basic Kubernetes components ๐ŸŒŸ](https://www.redhat.com/en/blog/kubernetes-components) Kubernetes control plane nodes and worker nodes, their features, and how they interact. @@ -181,7 +181,7 @@ - [thenewstack.io: Living with Kubernetes: Cluster Upgrades ๐ŸŒŸ](https://thenewstack.io/living-with-kubernetes-cluster-upgrades) - [thenewstack.io: 5 Things Developers Need to Know About Kubernetes Management](https://thenewstack.io/5-things-developers-need-to-know-about-kubernetes-management) - [How to handle environment variables with Kubernetes? ๐ŸŒŸ](https://humanitec.com/blog/handling-environment-variables-with-kubernetes) -- [weave.works: The Definitive Guide to Kubernetes in Production ๐ŸŒŸ๐ŸŒŸ](https://www.weave.works/) +- [weave.works: The Definitive Guide to Kubernetes in Production ๐ŸŒŸ๐ŸŒŸ](https://www.weave.works/blog/the-definitive-guide-to-kubernetes-in-production) - [vmblog.com: The Rise of Modern Day Kubernetes Operations](https://vmblog.com/archive/2021/10/07/the-rise-of-modern-day-kubernetes-operations.aspx) - [thenewstack.io: What Workloads Do Businesses Run on Kubernetes?](https://thenewstack.io/what-workloads-do-businesses-run-on-kubernetes) - [itnext.io: The subtleties of ensuring zero downtime during pod lifecycle events in Kubernetes](https://itnext.io/the-subtleties-of-ensuring-zero-downtime-during-pod-lifecycle-events-in-kubernetes-6461c12f7736) @@ -210,10 +210,10 @@ - [==blog.scaleway.com: How to deploy and distribute the workload on a multi-cloud Kubernetes environment== ๐ŸŒŸ](https://www.scaleway.com/en/blog/how-to-deploy-and-distribute-the-workload-on-a-multi-cloud-kubernetes-environment) **This article will guide you through the best practices to deploy and distribute the workload on a multi-cloud Kubernetes environment** - [cloudtechtwitter.com: KubeApiServer components ๐ŸŒŸ](https://www.cloudtechtwitter.com/2022/04/kubeapiserver.html) Kube API Server is the only component that as a user we will directly interact with. - [medium.com/@portainerio: Kubernetes, the ultimate enabler of automation](https://medium.com/@portainerio/kubernetes-the-ultimate-enabler-of-automation-27d5a3502807) -- [==marcusnoble.co.uk: Managing Kubernetes without losing your cool== ๐ŸŒŸ](https://marcusnoble.co.uk/2022-07-04-managing-kubernetes-without-losing-your-cool) In this article, you will find 10 tips for working with Kubernetes clusters all day long. +- [==marcusnoble.co.uk: Managing Kubernetes without losing your cool== ๐ŸŒŸ](https://marcusnoble.co.uk/2022-07-04-managing-kubernetes-without-losing-your-cool) you will find 10 tips for working with Kubernetes clusters all day long. - [==cloudtechtwitter.com: Introduction to Kubernetes== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://www.cloudtechtwitter.com/2022/05/dont-miss-next-article-be-first-to-be.html) - [medium.com/@kajan26: The Myth of scalability in Kubernetes](https://medium.com/@kajan26/the-myth-of-scalability-in-kubernetes-e49953944b8e) -- [medium.com/@raymon_dut: Whatโ€™s the relationShip between Pod, Deployment, ReplicaSet, and Service in Kubernetes? ๐ŸŒŸ](https://medium.com/@raymon_dut/whats-the-relationship-between-pod-deployment-replicaset-and-service-in-kubernetes-57bf3be22abb ๐ŸŒŸ) In this article, you will work out the relationships between Pod, Deployment, ReplicaSet, and Service in Kubernetes by using kubectl and inspecting a live deployment. +- [medium.com/@raymon_dut: Whatโ€™s the relationShip between Pod, Deployment, ReplicaSet, and Service in Kubernetes? ๐ŸŒŸ](https://medium.com/@raymon_dut/whats-the-relationship-between-pod-deployment-replicaset-and-service-in-kubernetes-57bf3be22abb ๐ŸŒŸ) you will work out the relationships between Pod, Deployment, ReplicaSet, and Service in Kubernetes by using kubectl and inspecting a live deployment. - [cloudnatively.com: The State of Stateful apps on Kubernetes ๐ŸŒŸ](https://www.cloudnatively.com/stateful-apps-on-kubernetes) - [==iximiuz.com: How Kubernetes Reinvented Virtual Machines (in a good sense)== ๐ŸŒŸ๐ŸŒŸ](https://labs.iximiuz.com/tutorials/kubernetes-vs-virtual-machines) **Wonder why the history of Ops took us from imperative, state-full, pets centric prod on VMs, to declarative, ephemeral, and disposable Ops on Containers?** - How Virtual Machines are used to deploy services @@ -296,7 +296,7 @@ - [freecodecamp.org: How to Deploy an Application to a Kubernetes Cluster](https://www.freecodecamp.org/news/deploy-docker-image-to-kubernetes) - [medium.com/@kylelzk: Kubernetes Theory - Understanding Kubernetes Components: A Deep Dive](https://medium.com/@kylelzk/kubernetes-theory-understanding-kubernetes-components-a-deep-dive-ac31b7463df2) - [medium.com/@bijit211987: Kubernetes Roadmap](https://medium.com/@bijit211987/kubernetes-roadmap-edd06067fa72) Kubernetes has quickly become the de facto standard for container orchestration and management. As more organizations adopt Kubernetes, there is a growing need for Kubernetes skills and expertise. This comprehensive roadmap will take you from Kubernetes fundamentals all the way to advanced management, security, and governance. -- [serokell.io/blog/kubernetes-guide: A Guide to Kubernetes](https://serokell.io/blog/kubernetes-guide) Modern cloud native computing heavily relies on the use of containers and the adoption of Kubernetes. Despite being a relatively new technology, it is deployed by many global enterprises to manage business-critical applications in their production environments. The popularity of Kubernetes is driven by a growing range of features, such as enhanced security, better management of microservices, improved observability, and more efficient scaling and resource use. In this article, we take a look at the essence of technology, its architecture, and its real-world applications. +- [serokell.io/blog/kubernetes-guide: A Guide to Kubernetes](https://serokell.io/blog/kubernetes-guide) Modern cloud native computing heavily relies on the use of containers and the adoption of Kubernetes. Despite being a relatively new technology, it is deployed by many global enterprises to manage business-critical applications in their production environments. The popularity of Kubernetes is driven by a growing range of features, such as enhanced security, better management of microservices, improved observability, and more efficient scaling and resource use. we take a look at the essence of technology, its architecture, and its real-world applications. ### Kubernetes Jobs Market - [OOMKilled in Kubernetes: Understanding and Preventing Hidden Memory Leaks](https://unixarena.com/2025/04/oomkilled-in-kubernetes-the-hidden-memory-leaks-youre-missing.html) - *(Related to kubernetes-troubleshooting topic)* @@ -467,14 +467,14 @@ - [platform9.com: The Gorilla Guide to Kubernetes in the Enterprise](https://platform9.com/blog/kubernetes-service-mesh) Discover key capabilities for Kubernetes at scale. - A complete Enterprise Kubernetes infrastructure needs proper DNS, load balancing, Ingress, stateful services, K8โ€™s role-based access control (RBAC), integration with LDAP and authentication systems, and more. Once Kubernetes is deployed, day-2 operational challenges and life-cycle management comes into play: monitoring, alerting, troubleshooting, upgrades, security patching, compliance checking and much more. - The Gorilla guide to Kubernetes in the Enterprise is your resource to ensure the success of your Enterprise Kubernetes projects by thinking through critical decisions around deployment options, day-2 operational considerations, use cases, and choosing your Kubernetes implementation solutions. -- [magalix.com: Influencing Kubernetes Scheduler Decisions](https://www.magalix.com/blog/influencing-kubernetes-scheduler-decisions) To ensure maximum possible performance and availability given the infrastructure at hand, the scheduler uses complex algorithms to ensure the most efficient Pod placement. In this article, we discuss how the scheduler selects the best node to host the Pod and how we can influence its decision. +- [magalix.com: Influencing Kubernetes Scheduler Decisions](https://www.magalix.com/blog/influencing-kubernetes-scheduler-decisions) To ensure maximum possible performance and availability given the infrastructure at hand, the scheduler uses complex algorithms to ensure the most efficient Pod placement. we discuss how the scheduler selects the best node to host the Pod and how we can influence its decision. - [medium: Making Sense of Taints and Tolerations in Kubernetes](https://medium.com/kubernetes-tutorials/making-sense-of-taints-and-tolerations-in-kubernetes-446e75010f4e) - [devopscube.com: 10 Key Considerations for Kubernetes Cluster Design & Setup ๐ŸŒŸ](https://devopscube.com/key-considerations-kubernetes-cluster-design-setup) - [blog.pixielabs.ai: Building Kubernetes Native SaaS applications: iterating quickly by deploying in-cluster data planes](https://blog.pixielabs.ai/hybrid-architecture/hybrid-architecture) - [itnext.io: CKS Exam Series #9 RBAC v2](https://itnext.io/cks-exam-series-9-rbac-v2-23ee24dd77cd) Kubernetes CKS Example Exam Question Series - [infoq.com: Experts Discuss Top Kubernetes Trends and Production Challenges](https://www.infoq.com/articles/kubernetes-trends-and-challenges) - [blog.appstack.one: How to run Ghost blog inside Kubernetes](https://blog.appstack.one/how-to-run-ghost-blog-inside-kubernetes) -- [learnk8s.io: Scaling Celery workers with RabbitMQ on Kubernetes](https://learnkube.com/scaling-celery-rabbitmq-kubernetes) In this article, you will explore how to use Kubernetes and KEDA to scale Celery workers based on the number of messages in a RabbitMQ queue. +- [learnk8s.io: Scaling Celery workers with RabbitMQ on Kubernetes](https://learnkube.com/scaling-celery-rabbitmq-kubernetes) you will explore how to use Kubernetes and KEDA to scale Celery workers based on the number of messages in a RabbitMQ queue. 1. Learn how to set up a metrics pipeline 2. How you can drive autoscaling based on metrics from RabbitMQ. 3. Why KEDA might be an alternative to prometheus+adapters @@ -505,7 +505,7 @@ - [thenewstack.io: Governance, Risk and Compliance with Kubernetes](https://thenewstack.io/governance-risk-and-compliance-with-kubernetes) - [zhimin-wen.medium.com: Custom Notifications with Alert Managerโ€™s Webhook Receiver in Kubernetes](https://zhimin-wen.medium.com/custom-notifications-with-alert-managers-webhook-receiver-in-kubernetes-8e1152ba2c31) - [harness.io: Introducing Recommendations API: Find Potential Cost Savings Programmatically](https://www.harness.io/blog/recommendations-api) -- [blog.harbur.io: Demystifying stateful apps on Kubernetes by deploying an etcd cluster](https://blog.harbur.io/demystifying-stateful-apps-on-kubernetes-by-deploying-an-etcd-cluster-b85bf8c16fea) In this tutorial you will learn how to deploy an etcd cluster in Kubernetes +- [blog.harbur.io: Demystifying stateful apps on Kubernetes by deploying an etcd cluster](https://blog.harbur.io/demystifying-stateful-apps-on-kubernetes-by-deploying-an-etcd-cluster-b85bf8c16fea) how to deploy an etcd cluster in Kubernetes - [blog.kintone.io: Rebooting a LOT of Kubernetes nodes in a declarative way](https://blog.kintone.io/entry/2021/01/14/160935) - [infoworld.com: How Kubernetes works](https://www.infoworld.com/article/2265488/how-kubernetes-works.html) If you want to understand containers, microservices architecture, modern application development, and cloud native computing, you need to understand Kubernetes. - [infoq.com: Cloud Native and Kubernetes Observability: Expert Panel](https://www.infoq.com/articles/cloud-native-observability) @@ -560,7 +560,7 @@ - [fairwinds.com: K8s Clinic: How to Run Kubernetes Securely and Efficiently ๐ŸŒŸ](https://www.fairwinds.com/blog/k8s-clinic-how-to-run-kubernetes-securely-and-efficiently) - With the adoption of containers, software packaging is increasingly shifting left, which means (depending on your organization) that developers are taking on responsibility for the containerization of applications. Developers may also be responsible for some parts of Kubernetes configuration. As that process shifts left, developers need support to make the right decisions for the organization in order to run Kubernetes securely and efficiently. - Many companies are adopting cloud native technologies to deliver speed to market. For businesses seeking to compete in today's marketplace, itโ€™s important to ship new features and meet customer needs where they are โ€” and increasingly those needs are being met through software. -- [weave.works: Production Ready Checklists for Kubernetes ๐ŸŒŸ](https://www.weave.works/) +- [weave.works: Production Ready Checklists for Kubernetes ๐ŸŒŸ](https://go.weave.works/production-ready-kubernetes-checklist.html) - [containerjournal.com: The Rise of the KubeMaster ๐ŸŒŸ](https://cloudnativenow.com/features/the-rise-of-the-kubemaster) - It wasnโ€™t obvious while it was happening, probably because everyone was focused on dealing with a global pandemic, but your IT environment became more complex. Cloud technology continued to evolve, and while that was happening, cloud use grew. Hybrid cloud use, already growing before the pandemic, became much more established with a year-over-year annual growth rate of 17.8%, according to Quince Market Insights. And with more distinct technology advances from each of the major cloud service providers, multi-cloud use also became more established. - This more complex environment encouraged the use of containers, and Kubernetes became the preferred means of managing them. Unfortunately, the great irony of Kubernetes is that the technology created to make the management of modern cloud applications easier is, itself, incredibly difficult to manage. Just to deploy and manage a single application in your own data center requires working familiarity with a Kubernetes distribution and working integrations with a number of supporting systems and enterprise software including code registries, CI/CD, secrets management, storage management, networking, logging and monitoring, service mesh, backup and disaster recovery (DR). Thatโ€™s just for one environment. In a hybrid infrastructure, perhaps using one of the leading cloud service providers such as AWS, Azure or GCP, you could double this overhead. @@ -590,7 +590,7 @@ - Mortal (Kubernetes Pods are mortal. They are born and when they die, they are not resurrected) - No persistence Storage - Client Cookies can be used to make service stateless -- [cncf.io: Advanced Kubernetes pod to node scheduling](https://www.cncf.io/blog/2021/07/27/advanced-kubernetes-pod-to-node-scheduling) In this article, you'll review some of the use cases for advanced pod scheduling in Kubernetes as well as best practices for implementing it in real-world situations. +- [cncf.io: Advanced Kubernetes pod to node scheduling](https://www.cncf.io/blog/2021/07/27/advanced-kubernetes-pod-to-node-scheduling) you'll review some of the use cases for advanced pod scheduling in Kubernetes as well as best practices for implementing it in real-world situations. - [medium: Create A Pod In Kubernetes Cluster](https://medium.com/codex/create-a-pod-in-kubernetes-cluster-b9e0c33bb904) Learn what is Pod and how to create a Pod in the Kubernetes cluster. - [cloudsavvyit.com: How to Scale Docker Containers Across Servers Using Kubernetes](https://www.cloudsavvyit.com/13039/how-to-scale-docker-containers-across-servers-using-kubernetes) - [Kubernetes. Label and Selector. Important Topic. Identify object in cluster. CKA Exam Tips](https://www.youtube.com/watch?app=desktop&v=Vh3piGAxcf8&ab_channel=AlokKumar) @@ -617,7 +617,7 @@ - [Assess managed Kubernetes services for your workloads.](https://www.techtarget.com/searchcloudcomputing/tip/Weigh-the-pros-and-cons-of-managed-Kubernetes-services) Managed services from cloud providers can simplify Kubernetes deployment but create some snags in a multi-cloud model. Follow three steps to see if these services can benefit you. - [itnext.io: Evolution of PaaSes to Platform-as-Code in Kubernetes world](https://itnext.io/evolution-of-paases-to-platform-as-code-in-kubernetes-world-74464b0013ca) - [medium: Wordpress High Availability on Kubernetes](https://medium.com/@icheko/wordpress-high-availability-on-kubernetes-f6c0bcc2f28d) Wordpress is configured to support two separate ingress paths โ€” a private for edits and a public for read-only traffic. By โ€œread-onlyโ€, mean that Wordpress is only able to execute SELECTs on the DB. The HA MySQL cluster is accomplished using oracleโ€™s mysql-operator. This makes it extremely easy to handle the master-slave replication for the DB side of things. -- [cloudfoundry.org: Deploy A Laravel Application To Kubernetes Using Cloud Foundry [ARCHIVED]]( http://web.archive.org/web/20230203230209/https://www.cloudfoundry.org/blog/deploy-laravel-app-to-k8s-with-cf) This tutorial uses the Google Kubernetes Engine (GKE). However, the steps followed in this guide can be applied to Kubernetes clusters running on any cloud provider, as long as Cloud Foundry (cf-for-k8s) has been installed on it. Also, the series of install steps outlined here can function for any โ€œcomposerโ€ based PHP application such as Drupal, Symfony, etc. +- [cloudfoundry.org: Deploy A Laravel Application To Kubernetes Using Cloud Foundry [ARCHIVED]]( http://web.archive.org/web/20230203230209/https://www.cloudfoundry.org/blog/deploy-laravel-app-to-k8s-with-cf) This tutorial uses the Google Kubernetes Engine (GKE). However, the steps followedcan be applied to Kubernetes clusters running on any cloud provider, as long as Cloud Foundry (cf-for-k8s) has been installed on it. Also, the series of install steps outlined here can function for any โ€œcomposerโ€ based PHP application such as Drupal, Symfony, etc. - [thenewstack.io: The State of Kubernetes: Key Challenges and the Role of AI](https://thenewstack.io/the-state-of-kubernetes-key-challenges-and-the-role-of-ai) - [learnsteps.com: Basics on Kubernetes: What exactly is a ReplicaSet](https://www.learnsteps.com/basics-on-kubernetes-what-exactly-is-a-replicaset) - [ithands-on.com: Kubernetes 101 : Switching namespaces](https://www.ithands-on.com/2021/10/kubernetes-101-switching-namespaces.html) @@ -631,7 +631,7 @@ - [containerjournal.com: When is Kubernetes Service Ownership the Right Fit?](https://cloudnativenow.com/features/when-is-kubernetes-service-ownership-the-right-fit) - Why is Kubernetes service ownership emerging as the way for software delivery and operations teams to establish full โ€œownershipโ€ of the services they support? Because ownership covers the lifespan of software from development to deployment to the sunsetting process. And this shift to full-spectrum accountability brings about dramatic improvements in the overall speed, reliability, security and cost of applications. - Of course, itโ€™s not always easy to determine which organizations need this level of ownership. When businesses grow, they typically discover that pushing the delivery of applications and services through a gate of operations is challenging at best, impossible at worst. Even so, the DevSecOps mindset is on the rise, which means teams are now seeking ways to make this type of shift into more meaningful and effective ownership. It is the shift that enables a deep fundamental change to occur within an organization. -- [itnext.io: Kubernetes โ€” Running Multiple Container Runtimes](https://itnext.io/kubernetes-running-multiple-container-runtimes-65220b4f9ef4) In this post, you'll learn how to run multiple OCI container runtimes on Kubernetes. You will see how to configure containerd to run both runC and Kata Containers +- [itnext.io: Kubernetes โ€” Running Multiple Container Runtimes](https://itnext.io/kubernetes-running-multiple-container-runtimes-65220b4f9ef4) you'll learn how to run multiple OCI container runtimes on Kubernetes. You will see how to configure containerd to run both runC and Kata Containers - [iximiuz.com: Why and How to Use containerd from the Command Line](https://labs.iximiuz.com/courses/containerd-cli/ctr/image-management) - [medium: Kubernetes for dummies: introduction. Part 1](https://medium.com/@mfsilv/kubernetes-a-gentle-introduction-9d23de7f00e0) - [medium: Kubernetes for dummies: the cluster. Part 2](https://medium.com/@mfsilv/kubernetes-for-dummies-the-cluster-7cf6a7b5532) @@ -674,7 +674,7 @@ - [itnext.io: Kubernetes Draining Nodes Properly](https://itnext.io/kubernetes-draining-nodes-properly-79e18dca4d5e) - [medium.com/devops-mojo: Kubernetes โ€” Open Standards (OCI, CRI, CNI, CSI, SMI, CPI) Overview](https://medium.com/devops-mojo/kubernetes-open-standards-oci-cri-cni-csi-smi-cpi-overview-what-is-k8s-open-standards-introduction-a860905af6f7) - [itnext.io: Introduction to Kubernetes extensibility](https://itnext.io/kubernetes-extensibility-c5fed27f0952) -- [faun.pub: Deep into Container โ€” How Kubernetes works with Container Runtime](https://faun.pub/kubernetes-story-how-kubernetes-works-with-container-runtime-ce618a306f64) In this article, you'll learn how Kubernetes uses the Container Runtime to create containers. You will also discuss different types of container runtimes. +- [faun.pub: Deep into Container โ€” How Kubernetes works with Container Runtime](https://faun.pub/kubernetes-story-how-kubernetes-works-with-container-runtime-ce618a306f64) you'll learn how Kubernetes uses the Container Runtime to create containers. You will also discuss different types of container runtimes. - [blog.axiomio.com: Seven Kubernetes Trends to Watch in Upcoming Years](https://blog.axiomio.com/seven-kubernetes-trends-to-watch-in-upcoming-years-e7d48e86c614) - Using deployments - RollingUpdate update strategy @@ -683,7 +683,7 @@ - [medium.com/@Paddy_Adallah: How to Choose Kubernetes Platforms for Enterprise Deployments](https://medium.com/@Paddy_Adallah/how-to-choose-kubernetes-platforms-for-enterprise-deployments-c04d5e436543) - [sunnykkc13.medium.com: Deep Dive into Kubernetes](https://sunnykkc13.medium.com/deep-dive-into-kubernetes-238258c9a536) - [medium.com/@issy972: Balancing reliability, cost and performance with Kubernetes](https://medium.com/@issy972/balancing-reliability-cost-and-performance-with-kubernetes-45aae8489a3c) -- [imoisharma.medium.com: How Leader election works in Kubernetesโ€” By M. Sharma](https://imoisharma.medium.com/how-leader-election-works-in-kubernetes-by-m-sharma-635d213b3fd1) In this post, you'll learn how you can use Kubernetes to easily perform leader elections in your distributed application +- [imoisharma.medium.com: How Leader election works in Kubernetesโ€” By M. Sharma](https://imoisharma.medium.com/how-leader-election-works-in-kubernetes-by-m-sharma-635d213b3fd1) you'll learn how you can use Kubernetes to easily perform leader elections in your distributed application - [howtogeek.com: How to Clean Up Old Containers and Images in Your Kubernetes Cluster](https://www.howtogeek.com/devops/how-to-clean-up-old-containers-and-images-in-your-kubernetes-cluster) An active Kubernetes cluster can accumulate old containers and images. Ensuring discarded resources are removed when redundant helps to free up resources on your clusterโ€™s nodes. Hereโ€™s how to approach garbage collection in Kubernetes - [medium.com/blablacar: Operating Node.js in Kubernetes at scale at BlaBlaCar](https://medium.com/blablacar/operating-node-js-in-kubernetes-at-scale-at-blablacar-3afb6d5d4299) In this case study, you will learn how BlaBlaCar uses CPU and memory metrics and other Kubernetes features to configure scaling for Node.js apps - [infoworld.com: How to beat the Kubernetes skills shortage](https://www.infoworld.com/article/2337368/how-to-beat-the-kubernetes-skills-shortage.html) While Kubernetes container management is key to digital transformation, Kubernetes talent is in short supply. Follow these 4 strategies of successful companies to fill the gap. @@ -691,12 +691,12 @@ - [==faun.pub: Git Clone using Init-container | Kubernetes==](https://faun.pub/git-clone-using-init-container-kubernetes-b49535be6968) - [itnext.io: K8s Tips: Accessing the API Server From a Pod](https://itnext.io/k8s-tips-accessing-the-api-server-from-a-pod-f6f72bc847de) Donโ€™t let this happen unless it is really necessary - [medium.com/@tamerberatcelik: When and why to use Kubernetes?](https://medium.com/@tamerberatcelik/when-and-why-to-use-kubernetes-fface756859f) -- [kymidd.medium.com: Letโ€™s Do DevOps: EKS K8s & Python Fuzzy Staging with AWS Secrets Manager, K8s Init disk, Secrets Injection](https://kymidd.medium.com/lets-do-devops-eks-k8s-python-fuzzy-staging-with-aws-secrets-manager-k8s-init-disk-secrets-b0d8022f3a5d) In this tutorial, you'll learn how to create a python program that uses IAM for Service Account to search for secrets in Secrets Manager and store them in a volume. The script can be used as an init container to inject secrets into any pod. +- [kymidd.medium.com: Letโ€™s Do DevOps: EKS K8s & Python Fuzzy Staging with AWS Secrets Manager, K8s Init disk, Secrets Injection](https://kymidd.medium.com/lets-do-devops-eks-k8s-python-fuzzy-staging-with-aws-secrets-manager-k8s-init-disk-secrets-b0d8022f3a5d) you'll learn how to create a python program that uses IAM for Service Account to search for secrets in Secrets Manager and store them in a volume. The script can be used as an init container to inject secrets into any pod. - [medium.com/@AceTheCloud-Abhishek: 50 Shades of Containers and Kubernetes](https://medium.com/@AceTheCloud-Abhishek/50-shades-of-containers-and-kubernetes-d2217fbea788) -- [dev.to: How to make exclusive locks in Kubernetes](https://dev.to/madmaxx/how-to-make-exclusive-locks-in-kubernetes-23if) In this tutorial, you will learn how to protect an application deployed in Kubernetes from any modifications โ€” except if those modifications are coming from a predefined actor - https://github.com/robert-nemet/klock +- [dev.to: How to make exclusive locks in Kubernetes](https://dev.to/madmaxx/how-to-make-exclusive-locks-in-kubernetes-23if) how to protect an application deployed in Kubernetes from any modifications โ€” except if those modifications are coming from a predefined actor - https://github.com/robert-nemet/klock - [faun.pub: Optimize Kubernetes Resource Management with Time-To-Live (TTL) for Cleaner Cluster](https://faun.pub/optimize-kubernetes-resource-management-with-time-to-live-ttl-for-cleaner-cluster-ea1c6e0c1e73) Streamline Kubernetes Resource Management: Learn How to Use Time-To-Live (TTL) to Keep Your Cluster Clean and Optimized. - [github.com/genuinetools: contained.af](https://github.com/genuinetools/contained.af) A stupid game for learning about containers, capabilities, and syscalls. -- [abhii85.hashnode.dev: How to get started with K8s contributions](https://abhii85.hashnode.dev/how-to-get-started-with-k8s-contributions) In this article, you'll explore how to contribute to the Kubernetes project, discuss the skills you need to get started and learn the best ways to get your first Pull Request accepted +- [abhii85.hashnode.dev: How to get started with K8s contributions](https://abhii85.hashnode.dev/how-to-get-started-with-k8s-contributions) you'll explore how to contribute to the Kubernetes project, discuss the skills you need to get started and learn the best ways to get your first Pull Request accepted - [itnext.io: Kubernetes Sandbox Environments with Virtual Clusters](https://itnext.io/kubernetes-sandbox-environments-with-virtual-clusters-fb465b296777) Achieving strong isolation without sacrificing resource utilization with Virtual Clusters. - [medium.com/@alexmogfr: ZEvent Place: How we handled 100k+ CCU on a real-time collective canvas](https://medium.com/@alexmogfr/zevent-place-how-we-handled-100k-ccu-on-a-real-time-collective-canvas-71d3d346e0ab) In this case study, you will learn how Alexandre & William designed and scaled a Kubernetes cluster to 250k concurrent users for a charity event - [blog.devgenius.io: DevOps in K8s โ€” Pod Cgroups](https://blog.devgenius.io/devops-in-k8s-pod-cgroups-ed05181865f9) DevOps in K8s bootcamp series @@ -832,12 +832,12 @@ - [mouliveera.medium.com: How to update configmap on POD without restart](https://mouliveera.medium.com/how-to-update-configmap-on-pod-without-restart-be3c0b4433af) - [devopscube.com: Kubernetes Pod Priority, PriorityClass, and Preemption Explained ๐ŸŒŸ](https://devopscube.com/pod-priorityclass-preemption) - [medium.com/@meng.yan: What Happens When Deleting a Pod](https://medium.com/@meng.yan/what-happens-when-deleting-a-pod-d1219c7e1b53) -- [==itnext.io: Kubernetes Graceful Shutdown | Daniele Polencic== ๐ŸŒŸ](https://itnext.io/how-do-you-gracefully-shut-down-pods-in-kubernetes-fb19f617cd67) - [community.ops.io: How do you gracefully shut down Pods in Kubernetes?](https://community.ops.io/danielepolencic/how-do-you-gracefully-shut-down-pods-in-kubernetes-30fa) Get tips on smoothly decommissioning your k8s pods. In this article, you will learn what happens when a pod is deleted (voluntarily or not) in the cluster and how Kubernetes handles graceful shutdown. +- [==itnext.io: Kubernetes Graceful Shutdown | Daniele Polencic== ๐ŸŒŸ](https://itnext.io/how-do-you-gracefully-shut-down-pods-in-kubernetes-fb19f617cd67) - [community.ops.io: How do you gracefully shut down Pods in Kubernetes?](https://community.ops.io/danielepolencic/how-do-you-gracefully-shut-down-pods-in-kubernetes-30fa) Get tips on smoothly decommissioning your k8s pods. what happens when a pod is deleted (voluntarily or not) in the cluster and how Kubernetes handles graceful shutdown. - [nunoadrego.com: Abusing Pod Priority](https://nunoadrego.com/posts/abusing-pod-priority) Pod Priority can be useful for some use cases, such as prioritizing critical applications, but definitely can catch you off guard if you don't have the right guardrails in place. This post illustrates the potential consequences of not having them. - [blog.devgenius.io: DevOps in K8s โ€” Pod Downward API](https://blog.devgenius.io/devops-in-k8s-pod-downward-api-571399049013) The K8s Downward API is a feature that allows containers running in a pod to access metadata about themselves and the pod they are running in. This metadata can be exposed as environment variables or as files within the containerโ€™s file system. - [==itnext.io: POD rebalancing and allocations in kubernetes | Daniele Polencic== ๐ŸŒŸ๐ŸŒŸ](https://itnext.io/pod-rebalancing-and-allocations-in-kubernetes-df3dbfb1e2f9) **Does Kubernetes rebalance your Pods? If there's a node that has more space, does Kubernetes recompute and balance the workloads?** - [==kubernetes.io: Protect Your Mission-Critical Pods From Eviction With PriorityClass==](https://kubernetes.io/blog/2023/01/12/protect-mission-critical-pods-priorityclass) Pod priority and preemption help to make sure that mission-critical pods are up in the event of a resource crunch by deciding order of scheduling and eviction. -- [neonmirrors.net: Reducing Pod Volume Update Times](https://neonmirrors.net/post/2022-12/reducing-pod-volume-update-times) Changes to a Secret of ConfigMap mounted into a pod can take 60 to 90 seconds to propagate to the container. In this article, you'll discuss how you could speed up the process with a Kyverno policy. +- [neonmirrors.net: Reducing Pod Volume Update Times](https://neonmirrors.net/post/2022-12/reducing-pod-volume-update-times) Changes to a Secret of ConfigMap mounted into a pod can take 60 to 90 seconds to propagate to the container. you'll discuss how you could speed up the process with a Kyverno policy. - [==itnext.io: Kubernetes Scheduler Deep Dive== | Daniele Polencic](https://itnext.io/kubernetes-scheduler-deep-dive-fdfcb516be30) - [kubernetes.io: configure-pod-container / Use a User Namespace With a Pod](https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces) - **InPlacePodVerticalScaling (kubernetes v1.27):** [==engineering.doit.com: No Restarts, No Disruptions: Seamless Pod Resource updates with In-Place Resizing](https://engineering.doit.com/no-restarts-no-disruptions-seamless-pod-resource-updates-with-in-place-resizing-f3cf41654216) Kubernetes v1.27 introduces InPlacePodVerticalScaling, allowing seamless pod resource resizing without restarts. This feature enhances efficiency, reduces downtime, and offers cost savings @@ -865,7 +865,7 @@ - [linuxadvise.com: Kubernetes Secrets](https://www.linuxadvise.com/post/kubernetes-secrets) - https://blog.newrelic.com/engineering/how-to-use-kubernetes-secrets/ -- [==mixi-developers.mixi.co.jp: Comparing External Secrets Operator with Secret Storage CSI as Kubernetes External Secrets is Deprecated==](https://mixi-developers.mixi.co.jp/compare-eso-with-secret-csi-402bf37f20bc) In this article, you will compare the External Secrets Operator with Secret Storage CSI for using external secrets in a Kubernetes cluster. You will compare: +- [==mixi-developers.mixi.co.jp: Comparing External Secrets Operator with Secret Storage CSI as Kubernetes External Secrets is Deprecated==](https://mixi-developers.mixi.co.jp/compare-eso-with-secret-csi-402bf37f20bc) you will compare the External Secrets Operator with Secret Storage CSI for using external secrets in a Kubernetes cluster. You will compare: - Architecture - Authorization management - Resource usage @@ -897,7 +897,7 @@ - [kubesphere.io: Kubernetes Multi-tenancy in KubeSphere [ARCHIVED]]( http://web.archive.org/web/20220120133734/https://kubesphere.io/docs/access-control-and-account-management/multi-tenancy-in-kubesphere) - [kubernetes.io: Three Tenancy Models For Kubernetes](https://kubernetes.io/blog/2021/04/15/three-tenancy-models-for-kubernetes) What are your tenancy options with Kubernetes? This post calls out three: by namespace, by cluster, by control plane. - [thenewstack.io: Avoiding the Pitfalls of Multitenancy in Kubernetes](https://thenewstack.io/avoiding-the-pitfalls-of-multitenancy-in-kubernetes) -- [blog.sighup.io: Hierarchical Namespace Controller (HNC): a look into the future of Kubernetes Multitenancy](https://blog.sighup.io/an-introduction-to-hierarchical-namespace-controller-hnc) Hierarchical Namespace Controller (HNC) is bringing a better multi-tenancy model to Kubernetes. In this article we are exploring the current state of the project and useful use-cases. +- [blog.sighup.io: Hierarchical Namespace Controller (HNC): a look into the future of Kubernetes Multitenancy](https://blog.sighup.io/an-introduction-to-hierarchical-namespace-controller-hnc) Hierarchical Namespace Controller (HNC) is bringing a better multi-tenancy model to Kubernetes.we are exploring the current state of the project and useful use-cases. - [vamsitalkstech.com: Introduction to Kubernetes Multi-tenancy..(1/2)](https://www.vamsitalkstech.com/architecture/a-deepdive-into-kubernetes-multitenancy-1-2) - [asonisg.medium.com: Multi-tenancy with Kubernetes (Part-1)](https://asonisg.medium.com/multi-tenancy-with-kubernetes-part-1-8ac4e5083e31) - [openshift.com: The Hidden Dangers of Terminating Namespaces ๐ŸŒŸ](https://www.redhat.com/en/blog/the-hidden-dangers-of-terminating-namespaces) @@ -910,7 +910,7 @@ - [==kubernetes.io: Multi-tenancy== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://kubernetes.io/docs/concepts/security/multi-tenancy) - [thinksys.com: Understanding Multi-Tenancy in Kubernetes ๐ŸŒŸ](https://thinksys.com/devops/kubernetes-multi-tenancy) - [doordash.engineering: Fast Feedback Loop for Kubernetes Product Development in a Production Environment](https://doordash.engineering/2022/06/23/fast-feedback-loop-for-kubernetes-product-development-in-a-production-environment) -- [towardsaws.com: Kubernetes Multi-Tenancy Approach](https://towardsaws.com/kubernetes-multi-tenancy-approach-b0f58d615971) Using Minikube For Demonstration. In this article, you'll compare 2 approaches to multi-tenancy: +- [towardsaws.com: Kubernetes Multi-Tenancy Approach](https://towardsaws.com/kubernetes-multi-tenancy-approach-b0f58d615971) Using Minikube For Demonstration. you'll compare 2 approaches to multi-tenancy: - Using RBAC and namespaces - Using the Capsule operator - [loft.sh: 10 Essentials For Kubernetes Multi-Tenancy](https://website.vcluster.com/blog/kubernetes-multi-tenancy-10-essential-considerations) @@ -925,7 +925,7 @@ - Secrets Encryption at Rest - Policy Engines - [medium.com/@het.trivedi05: Designing Multi-Tenant Applications on Kubernetes](https://medium.com/@het.trivedi05/designing-multi-tenant-applications-on-kubernetes-f0470f8e641c) -- [blog.joshgav.com: Clusters for all! - 16 May 2022 on Multitenancy, Clusters](https://blog.joshgav.com/posts/cluster-level-multitenancy) In this article you will compare different tools for multitenancy in Kubernetes: +- [blog.joshgav.com: Clusters for all! - 16 May 2022 on Multitenancy, Clusters](https://blog.joshgav.com/posts/cluster-level-multitenancy)you will compare different tools for multitenancy in Kubernetes: - vcluster - Cluster API Provider Nested (CAPN) - HyperShift @@ -950,7 +950,7 @@ #### Kubernetes Labels and Selectors - [Centralized Add-on Management Across N Kubernetes Clusters](https://dev.to/gianlucam76/centralized-add-on-management-across-n-kubernetes-clusters-308k) - This article discusses a centralized management approach using selectors to streamline add-on deployments and simplify Kubernetes multi-cluster management, addressing the complexity of managing distributed clusters across various environments. -- [sandeepbaldawa.medium.com: K8s Labels & Selectors](https://sandeepbaldawa.medium.com/k8s-labels-selectors-9ad2fcf78a4e) In this post, we will look at What Kubernetes(K8s) Labels and Selectors are, Why do we need them, How to use them. +- [sandeepbaldawa.medium.com: K8s Labels & Selectors](https://sandeepbaldawa.medium.com/k8s-labels-selectors-9ad2fcf78a4e) What Kubernetes(K8s) Labels and Selectors are, Why do we need them, How to use them. - [blog.kubecost.com: The Guide to Kubernetes Labels](https://blog.kubecost.com/blog/kubernetes-labels) - [millionvisit.blogspot.com: Kubernetes for Developers #8: Kubernetes Object Name, Labels, Selectors and Namespace](http://millionvisit.blogspot.com/2021/02/kubernetes-for-developers-8-Object%20Name-Labels-Selectors-Namespace.html) - [millionvisit.blogspot.com: Kubernetes for Developers #11: Pod Organization using Labels](http://millionvisit.blogspot.com/2021/03/kubernetes-for-developers-11-pod-organization-using-labels.html) @@ -982,26 +982,26 @@ - [medium: Kubernetes Deployment: Connect Your Front End to Your Back End With Nginx](https://medium.com/better-programming/kubernetes-deployment-connect-your-front-end-to-your-back-end-with-nginx-7e4e7cfef177) - [mirantis.com: Introduction to YAML: Creating a Kubernetes deployment](https://www.mirantis.com/blog/introduction-to-yaml-creating-a-kubernetes-deployment) - [medium: Kubernetes Deployment Explained](https://medium.com/geekculture/kubernetes-deployment-explained-9b2b89dd3977) Learn what is Deployment in the Kubernetes cluster and learn the advantages of the Deployment object. -- [==learnk8s.io: Graceful shutdown and zero downtime deployments in Kubernetes==](https://learnkube.com/graceful-shutdown) In this article, you will learn how to prevent broken connections when a Pod starts up or shuts down. You will also learn how to shut down long-running tasks gracefully. +- [==learnk8s.io: Graceful shutdown and zero downtime deployments in Kubernetes==](https://learnkube.com/graceful-shutdown) how to prevent broken connections when a Pod starts up or shuts down. You will also learn how to shut down long-running tasks gracefully. - [thoughtbot.com: Zero Downtime Rails Deployments with Kubernetes](https://thoughtbot.com/blog/zero-downtime-rails-deployments-with-kubernetes) - [medium: Deployment types in Kubernetes](https://medium.com/avmconsulting-blog/deployment-types-in-kubernetes-14b70ca7ef93) - [hackernoon.com: How To Deploy Code Faster Using Kubernetes](https://hackernoon.com/how-to-deploy-code-faster-using-kubernetes-jh1y3ul0) - [fosstechnix.com: Rolling out and Rolling back updates with Zero Downtime on Kubernetes Cluster](https://www.fosstechnix.com/rolling-out-and-rolling-back-updates-with-zero-downtime-on-kubernetes-cluster) - [medium: 5 Things We Overlooked When Deploying Our First App on Kubernetes](https://medium.com/gumgum-tech/5-things-we-overlooked-when-putting-our-first-app-on-kubernetes-58583c1783e4) -- [Our Journey to Zero Downtime Rolling Updates with Ambassador](https://eng.lifion.com/journey-to-zero-downtime-rolling-updates-with-ambassador-badda6a7d450) In this article you will cover: How Kubernetes lifecycle hooks can be used to shutdown applications gracefully. How pods are removed from the system and why it is necessary to understand and carefully handle the shutdown sequence appropriately. +- [Our Journey to Zero Downtime Rolling Updates with Ambassador](https://eng.lifion.com/journey-to-zero-downtime-rolling-updates-with-ambassador-badda6a7d450)you will cover: How Kubernetes lifecycle hooks can be used to shutdown applications gracefully. How pods are removed from the system and why it is necessary to understand and carefully handle the shutdown sequence appropriately. - [medium: Kubernetes Tip: How Statefulsets Behave Differently Than Deployments When Node Fails?](https://medium.com/tailwinds-navigator/kubernetes-tip-how-statefulsets-behave-differently-than-deployments-when-node-fails-d29e36bca7d5) What happens to the Pods when a node fails in Kubernetes? - [learnsteps.com: Basics on Kubernetes: What exactly is a deployment?](https://www.learnsteps.com/basics-on-kubernetes-what-exactly-is-a-deployment) - [polarsquad.com: Check your Kubernetes deployments!](https://polarsquad.com/blog/check-your-kubernetes-deployments) - [yankeexe.medium.com: How Rolling and Rollback Deployments work in Kubernetes](https://yankeexe.medium.com/how-rolling-and-rollback-deployments-work-in-kubernetes-8db4c4dce599) - [medium.com/okteto: Beginnerโ€™s Guide to Kubernetes Deployments](https://medium.com/okteto/beginners-guide-to-kubernetes-deployments-50f066d95d2b) - [blog.devgenius.io: Zero downtime deployment with Kubernetes using Rolling update Strategy](https://blog.devgenius.io/zero-downtime-deployment-with-kubernetes-using-rolling-update-strategy-bff45de8c3c3) -- [dinushad92.medium.com: Building a resilient deployment on Kubernetes-part 3: Keep the deployment up to date with the latest releases](https://dinushad92.medium.com/building-a-resilient-deployment-on-kubernetes-part-3-keep-the-deployment-up-to-date-with-the-7296f18f275a) In this article, you'll learn the two strategies to update a Kubernetes deployment and their benefits: +- [dinushad92.medium.com: Building a resilient deployment on Kubernetes-part 3: Keep the deployment up to date with the latest releases](https://dinushad92.medium.com/building-a-resilient-deployment-on-kubernetes-part-3-keep-the-deployment-up-to-date-with-the-7296f18f275a) you'll learn the two strategies to update a Kubernetes deployment and their benefits: - Rolling update - Recreate - [medium.com/@chamakenjefi: Kubernetes deployments using a ConfigMap with a custom index.html page](https://medium.com/@chamakenjefi/kubernetes-deployments-using-a-configmap-with-a-custom-index-html-page-5b4de0a7aa1b) - [medium.com/@vrnvav97: Canary Deployment in Kubernetes](https://medium.com/@vrnvav97/canary-deployment-in-kubernetes-a18c81cb9b) Canary deployment is pattern used to rollout changes to apps in controlled & safe manner. It involves releasing new version of app to a subset of users/nodes, allowing new version to be tested in prod-like environment. - [medium.com/@the.nick.miller: Custom Deployments with Kubernetes](https://medium.com/@the.nick.miller/multi-container-deployments-with-kubernetes-33c824d8d9a4) -- [==amolmote.hashnode.dev: ReplicaSet & Deployment In Kubernetes== ๐ŸŒŸ](https://amolmote.hashnode.dev/replicaset-deployment-in-kubernetes#heading-what-is-deployment) In this article, you'll learn the basic concepts of the ReplicaSet and Deployment, how they are different and when you should use one or the other +- [==amolmote.hashnode.dev: ReplicaSet & Deployment In Kubernetes== ๐ŸŒŸ](https://amolmote.hashnode.dev/replicaset-deployment-in-kubernetes#heading-what-is-deployment) you'll learn the basic concepts of the ReplicaSet and Deployment, how they are different and when you should use one or the other - [teplyheng.medium.com: Understand the difference between Deployments and ReplicaSet ๐ŸŒŸ](https://teplyheng.medium.com/understand-the-difference-between-deployments-and-replicaset-7e1cfd4d8639) - [teplyheng.medium.com: In-depth understanding of Deployments in Kubernetes](https://teplyheng.medium.com/in-depth-understanding-of-deployments-in-kubernetes-af2c93ca4a24) When running apps on Kubernetes, most of you must have used Deployments to manage ReplicaSet and Pods. However, itโ€™s hard to say that weโ€™ve used Deployments effectively. - [routerhan.medium.com: Understanding Kubernetes Deployment โ€” A Beginnerโ€™s Guide](https://routerhan.medium.com/understanding-kubernetes-deployment-a-beginners-guide-6723c19dbd57) In K8s, a Deployment is a resource object that defines the desired state of an app or workload. It provides a way to declaratively manage the deployment & scaling of containerized apps. @@ -1050,7 +1050,7 @@ #### Kubernetes Services - [blog.alexellis.io: A Primer: Accessing services in Kubernetes](https://blog.alexellis.io/primer-accessing-kubernetes-services) Learn how to access your applications on Kubernetes and the differences between a LoadBalancer, NodePort, port-forwarding and Ingress through examples -- [faun.pub: Kubernetes โ€” Active/Passive Load Balancing with Services](https://faun.pub/active-passive-load-balancing-with-kubernetes-services-742cae1938af) There can be a number of reasons one might want to do active/passive load balancing, for example licensing constraints, etc. In this article, you will learn how to do so in Kubernetes using labels and services +- [faun.pub: Kubernetes โ€” Active/Passive Load Balancing with Services](https://faun.pub/active-passive-load-balancing-with-kubernetes-services-742cae1938af) There can be a number of reasons one might want to do active/passive load balancing, for example licensing constraints, etc. how to do so in Kubernetes using labels and services - [harness.io: Kubernetes Services Explained ๐ŸŒŸ](https://www.harness.io/blog/kubernetes-services-explained) This tutorial will explain the difference between four Kubernetes service types, and how you should choose the best one for your application. - [devineer.medium.com: Kubernetes Services Explained](https://devineer.medium.com/kubernetes-services-explained-22b4dd11de02) - How Kubernetes solves Service Discovery @@ -1060,7 +1060,7 @@ - [whyk8s.substack.com: Why Services?](https://whyk8s.substack.com/p/why-services) Could Kubernetes have been built with only Pods and Deployments? What do load balancers and DNS have to do with it? - [medium.com/@ankitrai_13207: Kubernetes: Deployment & Service](https://medium.com/@ankitrai_13207/kubernetes-deployment-service-6f32b7e63f16) - [betterprogramming.pub: An Overview to Kubernetes Services](https://betterprogramming.pub/kubernetes-service-types-3c4a3088a5c) Know the different types of Kubernetes Services and Ingress controllers -- [nitishblog.hashnode.dev: Kubernetes Services - Your way to connect with your application](https://nitishblog.hashnode.dev/kubernetes-services-your-way-to-connect-with-your-application) In this post, you'll take a closer look at what are Kubernetes services and how they help you to connect with your application running on various Pods. The article includes a complete hands-on demo for a better understanding of Kubernetes Services +- [nitishblog.hashnode.dev: Kubernetes Services - Your way to connect with your application](https://nitishblog.hashnode.dev/kubernetes-services-your-way-to-connect-with-your-application) you'll take a closer look at what are Kubernetes services and how they help you to connect with your application running on various Pods. The article includes a complete hands-on demo for a better understanding of Kubernetes Services - [sumanprasad.hashnode.dev: Everything About Kubernetes Services - Discovery, Load Balancing, Networking](https://sumanprasad.hashnode.dev/everything-about-kubernetes-services-discovery-load-balancing-networking) - [==dev.to/vromanov: Kubernetes Services== ๐ŸŒŸ](https://dev.to/vromanov/kubernetes-services-1bj) This article provides an in-depth overview of Kubernetes Services: ClusterIP, LoadBalancer, Headless, and NodePort services. It explains how those facilitate IP assignment, load balancing, and direct communication with specific pods within a cluster. - [blog.devops.dev: Kubernetes Services: Explained with Examples](https://blog.devops.dev/kubernetes-services-explained-with-examples-3d1897a875b7) @@ -1070,7 +1070,7 @@ - [youtube: deployment strategies in kubernetes | recreate | rolling update | blue/green | canary](https://www.youtube.com/watch?v=efiMiaFjtn8&feature=youtu.be) - [auth0.com: Deployment Strategies In Kubernetes](https://auth0.com/blog/deployment-strategies-in-kubernetes) Learn what are the different deployment strategies available in Kubernetes and how to use them. - [educative.io: A deep dive into Kubernetes Deployment strategies](https://www.educative.io/blog/kubernetes-deployments-strategies) -- [weave.works: Kubernetes Deployment Strategies ๐ŸŒŸ](https://www.weave.works/) +- [weave.works: Kubernetes Deployment Strategies ๐ŸŒŸ](https://www.weave.works/blog/kubernetes-deployment-strategies) - [medium.com: Kubernetes Canary Deployment #1 Gitlab CI](https://medium.com/@wuestkamp/kubernetes-canary-deployment-1-gitlab-ci-518f9fdaa7ed) - [semaphoreci.com: Continuous Blue-Green Deployments With Kubernetes](https://semaphore.io/blog/continuous-blue-green-deployments-with-kubernetes) - [medium: Fully automated canary deployments in Kubernetes](https://medium.com/containers-101/fully-automated-canary-deployments-in-kubernetes-70a671105273) @@ -1082,7 +1082,7 @@ - [blog.devgenius.io: Kubernetes Blue-Green Deployment](https://blog.devgenius.io/kubernetes-blue-green-deployment-a69ed17cd4cd) - [prakashkumar0301.medium.com: Blue-Green Deployment with Kubernetes](https://prakashkumar0301.medium.com/blue-green-deployment-with-kubernetes-a37a534a2ef4) - [emirayhan.medium.com: Kubernetes (k8s) Deployment Strategies](https://emirayhan.medium.com/kubernetes-k8s-deployment-strategies-eb3a0f5cbc49) -- [faun.pub: Kubernetes Deployment Strategies](https://faun.pub/kubernetes-deployment-strategies-f36e7e4d2be) In this post, we will delve into Kubernetes (K8s) deployment concepts and some common strategies, looking at the advantages and disadvantages of each. A suitable deployment strategy enables you to minimize downtime, enhance your customer experience, and increase reliability when releasing your application. +- [faun.pub: Kubernetes Deployment Strategies](https://faun.pub/kubernetes-deployment-strategies-f36e7e4d2be) we will delve into Kubernetes (K8s) deployment concepts and some common strategies, looking at the advantages and disadvantages of each. A suitable deployment strategy enables you to minimize downtime, enhance your customer experience, and increase reliability when releasing your application. - [blog.devgenius.io: Kubernetes Deployment Strategy Explained ๐ŸŒŸ](https://blog.devgenius.io/kubernetes-deployment-strategy-explained-bf27fea088e1) - [==developers.redhat.com: Run the Canary Deployment pattern on Kubernetes== ๐ŸŒŸ](https://developers.redhat.com/developer-sandbox/activities/run-the-canary-deployment-pattern-on-kubernetes) In this activity, you will use basic Kubernetes skills to understand and implement the Canary Deployment. - [blog.werf.io: Canary releases in Kubernetes based on Ingress-NGINX Controller](https://blog.werf.io/canary-releases-in-kubernetes-based-on-ingress-nginx-controller-96193efe34f9) @@ -1110,15 +1110,15 @@ - And more! - [==iximiuz.com: Working with Kubernetes API==](https://iximiuz.com/en/series/working-with-kubernetes-api) If you are working in Go with the Kubernetes API, these articles are pure gold. Get the full difference between resources and kinds. -- [iximiuz.com: How To Extend Kubernetes API - Kubernetes vs. Django](https://iximiuz.com/en/posts/kubernetes-api-how-to-extend) In this article, you'll learn how to extend Kubernetes API with: +- [iximiuz.com: How To Extend Kubernetes API - Kubernetes vs. Django](https://iximiuz.com/en/posts/kubernetes-api-how-to-extend) you'll learn how to extend Kubernetes API with: - Kubernetes Custom Resources - Kubernetes Custom Controllers - Kubernetes Admission Webhooks - [==dev.to: The Kubernetes API architecture | Daniele Polencic== ๐ŸŒŸ](https://dev.to/danielepolencic/the-kubernetes-api-architecture-1pi9) - [medium.com/cp-massive-programming: Kubernetes API Server Discovery](https://medium.com/cp-massive-programming/kubernetes-api-server-discovery-ac3b358e878e) A little excursion into the Kubernetes API server - [==itnext.io: Working with the kubernetes API | Daniele Polencic== ๐ŸŒŸ](https://itnext.io/working-with-the-kubernetes-api-587bc5941992) Working with Kubernetes API. Learn how to navigate and issue requests to the Kubernetes API with curl or your favourite programming language. Kubernetes exposes a robust API that lets you control every aspect of the cluster. Most of the time, it's hidden behind kubectl. But, you can also use the K8s API directly. Find out how in this post. -- [medium.com/linux-shots: Find Deprecated API Resources used in a Kubernetes Cluster](https://medium.com/linux-shots/find-deprecated-api-resources-used-in-a-kubernetes-cluster-44756c1126c8) In this article, you will discuss the challenges of how to upgrade clusters with breaking changes and use kube-no-trouble to test the upgrade path. -- [blog.jimmyray.io: Discover K8s Through Its APIs](https://blog.jimmyray.io/discover-k8s-through-its-apis-e2f90937a19f) In this article, you will learn how to use the Kubernetes APIs through the Swagger UI. You will learn how to retrieve the full config for the kubelet, as well as how to use gron for easier JSON processing. +- [medium.com/linux-shots: Find Deprecated API Resources used in a Kubernetes Cluster](https://medium.com/linux-shots/find-deprecated-api-resources-used-in-a-kubernetes-cluster-44756c1126c8) you will discuss the challenges of how to upgrade clusters with breaking changes and use kube-no-trouble to test the upgrade path. +- [blog.jimmyray.io: Discover K8s Through Its APIs](https://blog.jimmyray.io/discover-k8s-through-its-apis-e2f90937a19f) how to use the Kubernetes APIs through the Swagger UI. You will learn how to retrieve the full config for the kubelet, as well as how to use gron for easier JSON processing. #### Multi-Cluster Services API @@ -1145,18 +1145,18 @@ - [==thenewstack.io: Kubernetes Health Checks Using Probes==](https://thenewstack.io/kubernetes-health-checks-using-probes) - [faun.pub: Straight to the Point: Kubernetes Probes](https://faun.pub/straight-to-the-point-kubernetes-probes-e5b23e267d9d) Both readiness and liveness probe run in parallel throughout the life of a container. Use the liveness probe to detect an internal failure and restart the container (e.g. HTTP server down). Use the readiness probe to detect if you can serve traffic (e.g. established DB connection) and wait (not restart) for the container. A dead container is also not a ready container. To serve traffic, all containers within a pod must be ready. - [guyzsarun.medium.com: Kubernetes Liveness, Readiness Probe Explained](https://guyzsarun.medium.com/kubernetes-liveness-readiness-probe-explained-352691dcccf1) -- [hmh.engineering: Dive into Kubernetes Healthchecks (part 1) ๐ŸŒŸ](https://hmh.engineering/dive-into-kubernetes-healthchecks-part-1-73a900fa6dbd) In this article, you'll learn about health checks and: +- [hmh.engineering: Dive into Kubernetes Healthchecks (part 1) ๐ŸŒŸ](https://hmh.engineering/dive-into-kubernetes-healthchecks-part-1-73a900fa6dbd) you'll learn about health checks and: - How Kubernetes validates the state of your app - How to troubleshoot common issues - How to configure the deployment manifest of your application to efficiently report its state - [hmh.engineering: Dive into Kubernetes Healthchecks (part 2)](https://hmh.engineering/dive-into-kubernetes-healthchecks-part-2-a9f83eb712d5) - [medium.com/devops-mojo: Kubernetes โ€” Probes (Liveness, Readiness, and Startup) Overview](https://medium.com/devops-mojo/kubernetes-probes-liveness-readiness-startup-overview-introduction-to-probes-types-configure-health-checks-206ff7c24487) Introduction to Types of Probes and Configure Health Checks using Probes in Kubernetes. -- [doordash.engineering: How to Handle Kubernetes Health Checks](https://doordash.engineering/2022/08/09/how-to-handle-kubernetes-health-checks) In this article, the team at DoorDash shares the lessons learned from not paying enough attention to the Kubernetes probes and how those contributed to an outage during Black Friday +- [doordash.engineering: How to Handle Kubernetes Health Checks](https://doordash.engineering/2022/08/09/how-to-handle-kubernetes-health-checks) the team at DoorDash shares the lessons learned from not paying enough attention to the Kubernetes probes and how those contributed to an outage during Black Friday - [datree.io: 6 Best Practices for Effective Readiness and Liveness Probes](https://www.datree.io/resources/kubernetes-readiness-and-liveness-probes-best-practices) - [thenewstack.io: Kubernetes Probes (and Why They Matter for Autoscaling) ๐ŸŒŸ](https://thenewstack.io/kubernetes-probes-and-why-they-matter-for-autoscaling) In addition to validating our workloadsโ€™ health, we can use them to monitor and gather information about other events affecting containers. -- [faun.pub: Kubernetes Liveness Probes](https://faun.pub/kubernetes-liveness-probes-1a053f53690c) In this article, we will take a look at Liveness Probes in Kubernetes (K8S), with some useful examples. Defining probes correctly can improve pod resilience and availability. +- [faun.pub: Kubernetes Liveness Probes](https://faun.pub/kubernetes-liveness-probes-1a053f53690c) we will take a look at Liveness Probes in Kubernetes (K8S), with some useful examples. Defining probes correctly can improve pod resilience and availability. - [dev.to: Configure Kubernetes Readiness and Liveness Probes - Tutorial | Pavan Belagatti ๐ŸŒŸ](https://dev.to/pavanbelagatti/configure-kubernetes-readiness-and-liveness-probes-tutorial-478p) -- [dnastacio.medium.com: The Art and Science of Probing a Kubernetes Container](https://dnastacio.medium.com/the-art-and-science-of-probing-a-kubernetes-container-db1f16539080) In this article, you'll learn how to author Kubernetes container probes, with particular attention to the relatively new addition of startup probes to the mix +- [dnastacio.medium.com: The Art and Science of Probing a Kubernetes Container](https://dnastacio.medium.com/the-art-and-science-of-probing-a-kubernetes-container-db1f16539080) you'll learn how to author Kubernetes container probes, with particular attention to the relatively new addition of startup probes to the mix - [medium.com/@eumaho: Setting up readiness and liveness health-check probes in Kubernetes with SpringBoot ๐ŸŒŸ](https://medium.com/@eumaho/setting-up-readiness-and-liveness-health-check-probes-in-kubernetes-with-springboot-674eb1038377) - [kamsjec.medium.com: liveness and readiness probesโ€ฆ](https://kamsjec.medium.com/liveness-and-readiness-probes-91919f24e305) - [dev.to/otomato_io: Liveness Probes: Feel the Pulse of the App](https://dev.to/otomato_io/liveness-probes-feel-the-pulse-of-the-app-133e) This article provides some helpful examples to correctly configure your liveness, startup and readiness probes in Kubernetes @@ -1175,7 +1175,7 @@ - [magalix.com: Capacity Planning](https://www.magalix.com/blog/kubernetes-patterns-capacity-planning) When we have multiple Pods with different Priority Class values, the admission controller starts by sorting Pods according to their priority. What happens when there are no nodes with available resources to schedule a high-priority pods? - [sysdig.com: Kubernetes capacity planning: How to rightsize the requests of your cluster](https://www.sysdig.com/blog/kubernetes-capacity-planning) - [kubernetes.io Policy Limit Ranges](https://kubernetes.io/docs/concepts/policy/limit-range) -- [==sysdig.com: Understanding Kubernetes limits and requests by example== ๐ŸŒŸ](https://www.sysdig.com/blog/kubernetes-limits-requests) Choosing the optimal limits for our Kubernetes cluster is key in order to get the best of both energy consumption and costs. In this article, you will learn how to set the right requests and limits for your containers. +- [==sysdig.com: Understanding Kubernetes limits and requests by example== ๐ŸŒŸ](https://www.sysdig.com/blog/kubernetes-limits-requests) Choosing the optimal limits for our Kubernetes cluster is key in order to get the best of both energy consumption and costs. how to set the right requests and limits for your containers. - [dev.to/aurelievache: Understanding Kubernetes: part 22 โ€“ LimitRange](https://dev.to/aurelievache/understanding-kubernetes-part-22-limitrange-144l) - [dzone: Dive Deep Into Resource Requests and Limits in Kubernetes](https://dzone.com/articles/dive-deep-into-resource-requests-and-limits-in-kub) This article will be helpful for you to understand how Kubernetes requests and limits work, and why they can work in an expected way. - [sysdig.com: How to rightsize the Kubernetes resource limits](https://www.sysdig.com/blog/kubernetes-resource-limits) @@ -1194,7 +1194,7 @@ - TL;DR: We would highly recommend removing CPU Limits in Kubernetes (or Disable CFS quota in Kublet) if you are using a kernel version with CFS quota bug unpatched. There is a serious, known CFS bug in the kernel that causes un-necessary throttling and stalls. - [hackernoon.com: Kubernetes Resource Quotas](https://hackernoon.com/kubernetes-resource-quotas) - [==home.robusta.dev: You can't have both high utilization and high reliability== ๐ŸŒŸ](https://home.robusta.dev/blog/kubernetes-utilization-vs-reliability) Everyone wants high utilization and high reliability. The hard truth about Kubernetes is that you need to pick one or the other. A Kubernetes pod uses 2 CPUs on average and occasionally spikes to 3 CPUs. What should its resource allocation look like? This article explores the answers with a few strategies (and some tradeoffs) -- [==dev.to: Kubernetes Capacity and Resource Management: It's Not What You Think It Is== ๐ŸŒŸ](https://dev.to/mkdev/kubernetes-capacity-and-resource-management-its-not-what-you-think-it-is-1oik) In this article, you'll learn how to manage resources and capacity in Kubernetes. Takeaways: +- [==dev.to: Kubernetes Capacity and Resource Management: It's Not What You Think It Is== ๐ŸŒŸ](https://dev.to/mkdev/kubernetes-capacity-and-resource-management-its-not-what-you-think-it-is-1oik) you'll learn how to manage resources and capacity in Kubernetes. Takeaways: - Set Resource Quotas for each namespace; - Set LimitRanges for each namespace; - Enforce rations between requests and limits @@ -1207,12 +1207,12 @@ - [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) 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. +- [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) 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) - [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 -- [medium.com/@eliran89c: For the love of god, learn when to use CPU limits on Kubernetes](https://medium.com/@eliran89c/for-the-love-of-god-learn-when-to-use-cpu-limits-on-kubernetes-2225341e9dbd) In this article, you'll explore how CPU requests and limits work, why they were introduced, and how to monitor CPU usage -- [wbhegedus.me: Demystifying Kubernetes CPU Limits (and Throttling)](https://wbhegedus.me/understanding-kubernetes-cpu-limits) In this article, you will discuss a clear example of CPU throttling on Kubernetes and how you could monitor and fix it +- [medium.com/@eliran89c: For the love of god, learn when to use CPU limits on Kubernetes](https://medium.com/@eliran89c/for-the-love-of-god-learn-when-to-use-cpu-limits-on-kubernetes-2225341e9dbd) you'll explore how CPU requests and limits work, why they were introduced, and how to monitor CPU usage +- [wbhegedus.me: Demystifying Kubernetes CPU Limits (and Throttling)](https://wbhegedus.me/understanding-kubernetes-cpu-limits) you will discuss a clear example of CPU throttling on Kubernetes and how you could monitor and fix it - [medium.com/@jettycloud: Making Sense of Kubernetes CPU Requests And Limits](https://medium.com/@jettycloud/making-sense-of-kubernetes-cpu-requests-and-limits-390bbb5b7c92) - [loft.sh: How to Set Up Kubernetes Requests and Limits](https://www.vcluster.com/blog/how-to-set-up-kubernetes-requests-and-limits) - [dev.to: Impacts Of Not Setting Requests, Limits, and Quotas | Michael Levan](https://dev.to/thenjdevopsguy/impacts-of-not-setting-requests-limits-and-quotas-5f4b) @@ -1262,7 +1262,7 @@ - [itnext.io: Breaking down and fixing etcd cluster](https://itnext.io/breaking-down-and-fixing-etcd-cluster-d81e35b9260d) - [medium: ETCD - the Easy Way | Vaibhav Rajput](https://medium.com/nerd-for-tech/etcd-the-easy-way-4c01e243f285) This is a guide which will help you get started with etcd and help you understand how it is used in a kubernetes setup. - [kubernetes.io: Operating etcd clusters for Kubernetes](https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/#securing-etcd-clusters) Securing etcd clusters. Access to etcd is equivalent to root permission in the cluster so ideally only the API server should have access to it. It is recommended to grant permission to only those nodes that require access to etcd clusters. -- [dev.to: A Detailed Brief About Offence and Defence on Cloud Security - Etcd Risks](https://dev.to/tutorialboy/a-detailed-brief-about-offence-and-defence-on-cloud-security-etcd-risks-4h02) In this article, you will assess the correct configuration for an etcd cluster in Kubernetes and discuss a few attack scenarios. +- [dev.to: A Detailed Brief About Offence and Defence on Cloud Security - Etcd Risks](https://dev.to/tutorialboy/a-detailed-brief-about-offence-and-defence-on-cloud-security-etcd-risks-4h02) you will assess the correct configuration for an etcd cluster in Kubernetes and discuss a few attack scenarios. ### Kubernetes Sidecars @@ -1274,7 +1274,7 @@ - [medium: Delaying application start until sidecar is ready](https://medium.com/@marko.luksa/delaying-application-start-until-sidecar-is-ready-2ec2d21a7b74) Taking advantage of a peculiar Kubernetes implementation detail to block containers from starting before another container starts. - [pauldally.medium.com: Kubernetes โ€“ An Introduction to Sidecars](https://pauldally.medium.com/kubernetes-an-introduction-to-sidecars-21d99fbd7de3) - [thenewstack.io: Sidecars are Changing the Kubernetes Load-Testing Landscape](https://thenewstack.io/sidecars-are-changing-the-kubernetes-load-testing-landscape) Sidecars don't just capture traffic. They can replay it as well. They can also transform any metadata, like timestamps, before it sends it to your application. -- [saurabhdashora.hashnode.dev: Implementing Sidecar Design Pattern with Kubernetes Pod](https://saurabhdashora.hashnode.dev/implementing-sidecar-design-pattern-with-kubernetes-pod) Build a Git Workflow with Sidecar. In this post, you will cover the theoretical aspects of the sidecar pattern and different use cases. Then, you will implement a complete Git workflow using a Kubernetes pod to demonstrate the sidecar pattern. +- [saurabhdashora.hashnode.dev: Implementing Sidecar Design Pattern with Kubernetes Pod](https://saurabhdashora.hashnode.dev/implementing-sidecar-design-pattern-with-kubernetes-pod) Build a Git Workflow with Sidecar. you will cover the theoretical aspects of the sidecar pattern and different use cases. Then, you will implement a complete Git workflow using a Kubernetes pod to demonstrate the sidecar pattern. - [dev.to/fermyon: Scaling Sidecars to Zero in Kubernetes](https://dev.to/fermyon/scaling-sidecars-to-zero-in-kubernetes-2m23) ### Kubernetes Annotations @@ -1327,7 +1327,7 @@ - [snapt.net: Best Practices for Load Balancing Kubernetes Containers](https://www.snapt.net/blog/best-practices-for-load-balancing-kubernetes-containers) - [==vladimir.varank.in: Making sense of requests for CPU resources in Kubernetes== ๐ŸŒŸ](https://vladimir.varank.in/notes/2021/09/making-sense-of-requests-for-cpu-resources-in-kubernetes) - [==harness.io: Kubernetes Mistakes: A Beginnerโ€™s Guide To Avoiding Common Pitfalls==](https://www.harness.io/blog/kubernetes-mistakes) -- [martinheinz.dev: Keeping Kubernetes Clusters Clean and Tidy ๐ŸŒŸ](https://martinheinz.dev/blog/60) As your cluster grows, so does the number of resources, volumes or other API objects and sooner or later you will reach the limits somewhere. In this article, youโ€™ll learn how to keep it clean and tidy. +- [martinheinz.dev: Keeping Kubernetes Clusters Clean and Tidy ๐ŸŒŸ](https://martinheinz.dev/blog/60) As your cluster grows, so does the number of resources, volumes or other API objects and sooner or later you will reach the limits somewhere. youโ€™ll learn how to keep it clean and tidy. - [==pionative.com: 6 Important things you need to run Kubernetes in production==](https://pionative.com/6-important-things-you-need-to-run-kubernetes-in-production) - [youtube: Common Kubernetes Mistakes - CPU and Memory Requests (part 1) | Robusta](https://www.youtube.com/watch?v=_nknHwTKlh8) - [medium.com/mycloudseries: Must-haves for your Kubernetes Cluster to be Production Ready](https://medium.com/mycloudseries/must-haves-for-your-kubernetes-cluster-to-be-production-ready-dc7d1d18c4a2) @@ -1395,7 +1395,7 @@ - [kubectl-cost](https://github.com/kubecost/kubectl-cost) is a kubectl plugin that provides easy CLI access to Kubernetes cost allocation metrics via the kubecost APIs. It allows developers, devops, and others to quickly determine the cost & efficiency for any Kubernetes workload - [blog.kubecost.com: AKS Cost Monitoring and Governance With Kubecost](https://blog.kubecost.com/blog/aks-cost) - [thenewstack.io: KubeCost: Monitor Kubernetes Costs with kubectl](https://thenewstack.io/kubecost-monitor-kubernetes-costs-with-kubectl) -- [rtfm.co.ua: Kubernetes: Cluster Cost Monitoring โ€“ Kubernetes Resource Report and Kubecost](https://rtfm.co.ua/en/kubernetes-cluster-cost-monitoring-kubernetes-resource-report-and-kubecost) In this article, you will explore the Kubernetes Resource Report and Kubecost projects and +- [rtfm.co.ua: Kubernetes: Cluster Cost Monitoring โ€“ Kubernetes Resource Report and Kubecost](https://rtfm.co.ua/en/kubernetes-cluster-cost-monitoring-kubernetes-resource-report-and-kubecost) you will explore the Kubernetes Resource Report and Kubecost projects and will dive into the details of how they work - [medium.com/@randhirthakur076: Optimizing Kubernetes Cost Management: A Deep Dive into Kubecost](https://medium.com/@randhirthakur076/optimizing-kubernetes-cost-management-a-deep-dive-into-kubecost-5b07c9926c87) @@ -1427,7 +1427,7 @@ will dive into the details of how they work - [platform9.com: Kubernetes Cluster Sizing โ€“ How Large Should a Kubernetes Cluster Be?](https://platform9.com/blog/kubernetes-cluster-sizing-how-large-should-a-kubernetes-cluster-be) - [==redhat.com: 3 questions to answer when considering a multi-cluster Kubernetes architecture==](https://www.redhat.com/en/blog/multi-cluster-kubernetes-architecture) A multi-cluster Kubernetes architecture is complex, but its versatility and resiliency make the tradeoffs worthwhile for large-scale enterprise applications. - [==itnext.io: Do You Need Multi-Clusters?== ๐ŸŒŸ](https://itnext.io/do-you-need-multi-clusters-6e58556f7f06) Evaluate CNCF multi-clusters solutions and go our own way. - - In this article, you will discuss the limitations of running a single cluster and the options you have to go multicluster. You will investigate: + - you will discuss the limitations of running a single cluster and the options you have to go multicluster. You will investigate: - Kubefed - GitOps - Karmada @@ -1600,7 +1600,7 @@ will dive into the details of how they work - [developers.redhat.com: Kubernetes configuration patterns, Part 1: Patterns for Kubernetes primitives](https://developers.redhat.com/blog/2021/04/28/kubernetes-configuration-patterns-part-1-patterns-for-kubernetes-primitives) - [betterprogramming.pub: 10 Anti-Patterns for Kubernetes Deployments](https://betterprogramming.pub/10-antipatterns-for-kubernetes-deployments-e97ce1199f2d) Common practices in Kubernetes deployments that have better solutions - [medium: Kubernetes โ€” Learn Init Container Pattern](https://medium.com/bb-tutorials-and-thoughts/kubernetes-learn-init-container-pattern-7a757742de6b) Understanding Init Container Pattern With an Example Project. -- [weave.works: Tools for Automating and Implementing Cloud Native Patterns](https://www.weave.works/) +- [weave.works: Tools for Automating and Implementing Cloud Native Patterns](https://www.weave.works/blog/tools-for-automating-and-implementing-cloud-native-patterns) - [dzone: Microservices Patterns: Sidecar](https://dzone.com/articles/microservices-patterns-sidecar) Learn about Microservice architecture and single responsibility principle, know more on how to achieve it using sidecars. - [dzone: Multi-Container Pod Design Patterns in Kubernetes](https://dzone.com/articles/multi-container-pod-design-patterns-in-kubernetes) In Kubernetes, Pods are the single deployable units. If an application is to be deployed, it must be so in a Pod as a container. Learn how to use multi-container pods. - [linkedin.com/pulse: Avoid These Kubernetes Anti-Patterns | Pavan Belagatti](https://www.linkedin.com/pulse/avoid-kubernetes-anti-patterns-pavan-belagatti) @@ -1624,7 +1624,7 @@ will dive into the details of how they work - **Node affinity**, nodeSelector is the simplest way to constrain Pods to nodes with specified labels. - **Pod Affinity**, ensures two pods to be co-located in a single node. Whenever higher availability is desired, anti-affinity settings can be used to place pods - Using **taints and tolerations**, Taints are the opposite โ€” they allow a node to repel a set of pods. Tolerations are applied to pods. Tolerations allow the scheduler to schedule pods with matching taints. - - In this article you will cover GKE and: + -you will cover GKE and: - Vertical Pod Autoscaler - Horizontal Pod Autoscaler - Cluster Autoscaler @@ -1680,7 +1680,7 @@ will dive into the details of how they work - [KubeFed: Kubernetes Cluster Federation](https://github.com/kubernetes-retired/kubefed) - [aquasec.com: Kubernetes Federation: The Basics and a 5-Step Tutorial](https://www.aquasec.com/cloud-native-academy/kubernetes-in-production/kubernetes-federation) Learn about Kubernetes Federation use cases, how it works, and see how to create your first Kubernetes Federation in 5 steps. - Kubernetes Federation, or KubeFed, is a tool for coordinating the configuration of multiple clusters in Kubernetes. You can determine which clusters KubeFed will manage, and what their configuration looks like, all from a single group of APIs in the hosting cluster. KubeFed offers low-level mechanisms that can be used as a foundation for increasingly complex production Kubernetes use cases across multiple clusters, such as geographic redundancy and disaster recovery. -- [medium.com/expedia-group-tech: Manage multi-cluster Kubernetes infrastructure with Kubefed v2](https://medium.com/expedia-group-tech/managing-a-federated-kubernetes-cluster-using-kubefed-v2-5f115dbdbe05) In this article, you will discuss the need for a multi-cluster architecture and how kubefed solves that. Then, you will deploy an app and proceed to test the setup with a hands-on example +- [medium.com/expedia-group-tech: Manage multi-cluster Kubernetes infrastructure with Kubefed v2](https://medium.com/expedia-group-tech/managing-a-federated-kubernetes-cluster-using-kubefed-v2-5f115dbdbe05) you will discuss the need for a multi-cluster architecture and how kubefed solves that. Then, you will deploy an app and proceed to test the setup with a hands-on example ### KubeCarrier diff --git a/docs/kustomize.md b/docs/kustomize.md index 500b26f6..4ba82a43 100644 --- a/docs/kustomize.md +++ b/docs/kustomize.md @@ -22,7 +22,7 @@ - [opensource.com: Modify your Kubernetes manifests with Kustomize](https://opensource.com/article/21/6/kustomize-kubernetes) Modify your Kubernetes manifests without losing control of what's in the original versions. - [dev.to: Introduction to Kustomize - How to customize Kubernetes objects kubernetes](https://dev.to/katiatalhi/introduction-to-kustomize-how-to-customize-kubernetes-objects-3e08) - [mirantis.com: Kustomize Tutorial: Creating a Kubernetes app out of multiple pieces](https://www.mirantis.com/blog/introduction-to-kustomize-part-1-creating-a-kubernetes-app-out-of-multiple-pieces) -- [codefresh.io: Applied GitOps with Kustomize](https://octopus.com/blog/applied-gitops-with-kustomize) In this article, you will learn Kustomize and how it can help deploy Kubernetes manifest with GitOps. This will allow you to leverage the power of Kustomize to define YAML files without using a templating engine +- [codefresh.io: Applied GitOps with Kustomize](https://octopus.com/blog/applied-gitops-with-kustomize) Kustomize and how it can help deploy Kubernetes manifest with GitOps. This will allow you to leverage the power of Kustomize to define YAML files without using a templating engine - [tech.aabouzaid.com: Set OpenAPI patch strategy for Kubernetes Custom Resources - Kustomize](https://tech.aabouzaid.com/2022/11/set-openapi-patch-strategy-for-kubernetes-custom-resources-kustomize.html) Kustomize supports 2 main client-side patching methods for Kubernetes manifests: JSON Patching and Strategic Merge Patch. This article discusses the pros and cons and shows how to add a merging strategy extension for Custom Resources. - [nakamasato.medium.com: Comparison between Helm and Kustomize for Kubernetes yaml management](https://nakamasato.medium.com/comparison-between-helm-and-kustomize-for-kubernetes-yaml-management-aed32cef2627) - [pauldally.medium.com: Kustomize Best Practices (Part 1)](https://pauldally.medium.com/kustomize-best-practices-part-1-86f9f22d2f20) Kubectl includes a very useful command called kustomize that allows a template-free way to customize Kubernetes application configuration. @@ -30,13 +30,13 @@ - [notmattlucas.com: Kubernetes Configuration with Kustomize](https://notmattlucas.com/kubernetes-configuration-with-kustomize-f4dbba250f3) - [medium.com/@nanditasahu031: How to Start with Kustomize โ€” itโ€™s Features](https://medium.com/@nanditasahu031/how-to-start-with-kustomize-its-features-dd541c3d2fa8) - [harness.io: Comparing Helm vs Kustomize](https://www.harness.io/blog/helm-vs-kustomize) -- [nicolasbarlatier.hashnode.dev: Introduction Kubernetes and Kustomize: How to easily customize any resource configuration with Kustomize?](https://nicolasbarlatier.hashnode.dev/introduction-kubernetes-and-kustomize-how-to-easily-customize-any-resource-configuration-with-kustomize) In this tutorial, you will learn how to use Kustomize to template the number of replicas in a workload based on the environment (e.g. 1 pod in dev, 10 pods in prod) +- [nicolasbarlatier.hashnode.dev: Introduction Kubernetes and Kustomize: How to easily customize any resource configuration with Kustomize?](https://nicolasbarlatier.hashnode.dev/introduction-kubernetes-and-kustomize-how-to-easily-customize-any-resource-configuration-with-kustomize) how to use Kustomize to template the number of replicas in a workload based on the environment (e.g. 1 pod in dev, 10 pods in prod) - [==github.com/kostis-codefresh: How to Model Your Gitops Environments with kustomize== ๐ŸŒŸ](https://github.com/kostis-codefresh/gitops-environment-promotion) In this repository, you'll find an example of how to model Kustomize folders for a GitOps application and promote releases between environments - [dev.to: Kubernetes Kustomize Tutorial: A Beginner-Friendly Developer Guide!](https://dev.to/pavanbelagatti/kubernetes-kustomize-tutorial-a-beginner-friendly-developer-guide-322n) - [pauldally.medium.com: Kustomize Best Practices (part 3)](https://pauldally.medium.com/kustomize-best-practices-part-3-1dbaa15fd16a) - [levelup.gitconnected.com: Helm vs. Kustomize: Navigating Kubernetes Configuration Complexity](https://levelup.gitconnected.com/helm-vs-kustomize-navigating-kubernetes-configuration-complexity-ae86596c3cf2) - [==devopscube.com/kustomize-tutorial: Kustomize Tutorial: Comprehensive Guide For Beginners== ๐ŸŒŸ](https://devopscube.com/kustomize-tutorial) -- [blog.devgenius.io: Kustomize โ€” K8 manifest patching](https://blog.devgenius.io/kustomize-simple-manifest-manipulation-9330f7f40d5d) In this tutorial, you will learn how to manipulate YAML files using Kustomize +- [blog.devgenius.io: Kustomize โ€” K8 manifest patching](https://blog.devgenius.io/kustomize-simple-manifest-manipulation-9330f7f40d5d) how to manipulate YAML files using Kustomize - [faun.pub: How to build a GitOps workflow with ArgoCD, Kustomize and GitHub Actions](https://faun.pub/how-to-build-a-gitops-workflow-with-argocd-kustomize-and-github-actions-f919e7443295) Gain speed and clarity by adopting GitOps for your deployments - [==techiescamp.com: Kubernetes Kustomize Crash Course==](https://courses.devopscube.com/l/products) In this Kustomize crash course, you will learn all the Kustomize concepts and deploy an application using Kustomize on a Kubernetes cluster. - [==devopscube.com/kuztomize-configmap-generators: Kuztomize Secret & Configmap Generators [Practical Examples]==](https://devopscube.com/kuztomize-configmap-generators) @@ -50,7 +50,7 @@ - [itnext.io: Helm Is Not Enough, You Also Need Kustomize](https://itnext.io/helm-is-not-enough-you-also-need-kustomize-82bae896816e) Customize the YAMLโ€™s to enforce policies from application operators, security operators, and cluster operators. - [harness.io: Comparing Helm vs Kustomize ๐ŸŒŸ](https://www.harness.io/blog/helm-vs-kustomize) -- [nakamasato.medium.com: Comparison between Helm and Kustomize for Kubernetes yaml management](https://nakamasato.medium.com/comparison-between-helm-and-kustomize-for-kubernetes-yaml-management-aed32cef2627) Helm and Kustomize are often compared with each other in the context of managing Kubernetes manifest file. Although those two tools have similar features, they are fundamentally different. In this post, Iโ€™ll compare them from several points of view with a sample application. +- [nakamasato.medium.com: Comparison between Helm and Kustomize for Kubernetes yaml management](https://nakamasato.medium.com/comparison-between-helm-and-kustomize-for-kubernetes-yaml-management-aed32cef2627) Helm and Kustomize are often compared with each other in the context of managing Kubernetes manifest file. Although those two tools have similar features, they are fundamentally different. Iโ€™ll compare them from several points of view with a sample application. ## Boilerplate diff --git a/docs/managed-kubernetes-in-public-cloud.md b/docs/managed-kubernetes-in-public-cloud.md index 9ada5e90..3e131ee0 100644 --- a/docs/managed-kubernetes-in-public-cloud.md +++ b/docs/managed-kubernetes-in-public-cloud.md @@ -30,7 +30,7 @@ ## Introduction - [infoworld.com: 6 reasons to switch to managed Kubernetes](https://www.infoworld.com/article/2264256/6-reasons-to-switch-to-managed-kubernetes.html) Managed Kubernetes services have matured to the point where many enterprises are handing over the keys to their clusters. Here we identify some of the main drivers behind that trend. -- [Allocatable memory and CPU in Kubernetes Nodes ๐ŸŒŸ](https://learnkube.com/allocatable-resources) Not all CPU and memory in your Kubernetes nodes can be used to run Pods. In this article, you will learn how managed Kubernetes Services such AKS, EKS and GKE reserve resources for workloads, operating systems, daemons and Kubernetes agent. +- [Allocatable memory and CPU in Kubernetes Nodes ๐ŸŒŸ](https://learnkube.com/allocatable-resources) Not all CPU and memory in your Kubernetes nodes can be used to run Pods. how managed Kubernetes Services such AKS, EKS and GKE reserve resources for workloads, operating systems, daemons and Kubernetes agent. - [==armosec.io: Which Managed Kubernetes Is Right for Me?==](https://www.armosec.io/blog/which-managed-kubernetes-is-right-for-me) This blog will compare on-premises, or self-hosted,Kubernetes clusters to managed ones, as well as outline your options for Kubernetes in the cloud - [==infoworld.com: CNCF survey: Managed Kubernetes becomes the norm==](https://www.infoworld.com/article/2334477/cncf-survey-managed-kubernetes-becomes-the-norm.html) Cloud Native Computing Foundationโ€™s latest survey shows that container and Kubernetes usage continues to rise, as managed services ease the operational burden on their teams. - [redhat.com: What architects need to know about managed Kubernetes](https://www.redhat.com/en/blog/managed-kubernetes-architects) Should you assemble your own Kubernetes stack or adopt a managed platform such as Red Hat OpenShift? Evaluate the differences. @@ -135,7 +135,7 @@ - [blog.searce.com: Optimise cost for AWS EKS cluster using Spotinst ๐ŸŒŸ](https://blog.searce.com/optimize-cost-for-aws-eks-cluster-using-spotinst-ffcebe8e3571) - [thenewstack.io: How We Built Preview Environments on Kubernetes and AWS](https://thenewstack.io/how-we-built-preview-environments-on-kubernetes-and-aws) - [aws.amazon.com: Mount Amazon EFS file systems cross-account from Amazon EKS, and utilize AWS Organizations more effectively](https://aws.amazon.com/blogs/storage/mount-amazon-efs-file-systems-cross-account-from-amazon-eks) -- [==Onfidoโ€™s Journey to a Multi-Cluster Amazon EKS Architecture==](https://aws.amazon.com/blogs/containers/onfidos-journey-to-a-multi-cluster-amazon-eks-architecture) In this article, you will learn how moving to an active/active cluster architecture has allowed Onfido to shift traffic away from an Amazon EKS cluster when performing infrastructure maintenance. +- [==Onfidoโ€™s Journey to a Multi-Cluster Amazon EKS Architecture==](https://aws.amazon.com/blogs/containers/onfidos-journey-to-a-multi-cluster-amazon-eks-architecture) how moving to an active/active cluster architecture has allowed Onfido to shift traffic away from an Amazon EKS cluster when performing infrastructure maintenance. - [medium.com/@abhinav.ittekot: Granting IAM permissions to pods in EKS using OIDC](https://medium.com/@abhinav.ittekot/granting-iam-permissions-to-pods-in-eks-using-oidc-f2044c88a53) - [medium.com/@ishana98dadhich: Integrating AWS Secret Manager with EKS and use Secrets inside the Pods: Part-1](https://medium.com/@ishana98dadhich/integrating-aws-secret-manager-with-eks-and-use-secrets-inside-the-pods-part-1-1938b0c3c2fb) This blog provides you enough details on how you can use secrets (managed by AWS Secrets Manager) inside AWS EKS pods. - [medium.com/@radha.sable25: Enabling IAM users/roles Access on Amazon EKS cluster](https://medium.com/@radha.sable25/enabling-iam-users-roles-access-on-amazon-eks-cluster-f69b485c674f) @@ -149,7 +149,7 @@ - [==github.com/aws-ia/terraform-aws-eks-blueprints (examples) ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ==](https://github.com/aws-ia/terraform-aws-eks-blueprints) - [Direction for v5 of Terraform EKS Blueprints](https://github.com/aws-ia/terraform-aws-eks-blueprints/blob/main/docs/v4-to-v5/motivation.md) - [akintola-lonlon.medium.com: AWS Kubernetes: The #1 Rule You Need To Master Before Going To Production.](https://akintola-lonlon.medium.com/aws-kubernetes-the-1-rule-you-need-to-master-before-going-to-production-628b75ba1b6a) This is the most important thing to consider before going to production on EKS. -- [amod-kadam.medium.com: Are there two Load Balancer Controllers with EKS? ๐ŸŒŸ](https://amod-kadam.medium.com/are-there-two-load-balancer-controllers-with-eks-8a7b04db8c93) In this article, you will learn how AWS provision different types of load balancers (Classic vs Network) to expose your applications depending on the annotations that you use. +- [amod-kadam.medium.com: Are there two Load Balancer Controllers with EKS? ๐ŸŒŸ](https://amod-kadam.medium.com/are-there-two-load-balancer-controllers-with-eks-8a7b04db8c93) how AWS provision different types of load balancers (Classic vs Network) to expose your applications depending on the annotations that you use. - [aws.amazon.com: Streaming Kubernetes Events in Slack](https://aws.amazon.com/blogs/containers/streaming-kubernetes-events-in-slack) This post describes how you can send events from your Kubernetes cluster to a Slack channel using BotKube, a messaging bot for monitoring and debugging Kubernetes clusters. - [joachim8675309.medium.com: ExternalDNS with EKS and Route53](https://joachim8675309.medium.com/externaldns-with-eks-and-route53-90aa23fa3aba) After deploying a web app on Kubernetes, you might need to update the DNS records. ExternalDNS can automate this process and this tutorial demonstrates how to set up and configure this on Amazon EKS using Amazon Route 53 DNS zones. - [==aws-quickstart/cdk-eks-blueprints: Amazon EKS Blueprints for CDK==](https://github.com/awslabs/cdk-eks-blueprints) **This repository contains the source code for the eks-blueprints NPM module that can be used to configure and manage complete EKS clusters that are fully bootstrapped with the operational software that is needed to deploy and operate workloads** @@ -163,22 +163,22 @@ - [==Amazon EKS Best Practices Guide for Networking==](https://aws.github.io/aws-eks-best-practices/networking/index) Intro to Amazon VPC Container Network Interface (VPC CNI) in the context of Kubernetes cluster networking. VPC CNI is the default networking plugin supported by EKS. The VPC CNI is highly configurable to support different use cases. - [medium.com/@chandranathmondal: ==Self-service Amazon EKS Cluster provisioning with Kubernetes configuration applied== ๐ŸŒŸ](https://medium.com/@chandranathmondal/self-service-amazon-eks-cluster-provisioning-with-kubernetes-configuration-applied-372bce839d7) - [AWS and Kubecost collaborate to deliver cost monitoring for EKS customers](https://aws.amazon.com/blogs/containers/aws-and-kubecost-collaborate-to-deliver-cost-monitoring-for-eks-customers) -- [eng.grip.security: Enabling AWS IAM Group Access to an EKS Cluster Using RBAC](https://eng.grip.security/enabling-aws-iam-group-access-to-an-eks-cluster-using-rbac) There is no standardized method for providing IAM group access to an EKS cluster or namespace. In this article, you will learn how you can use an IAM role to authenticate the user group automatically and transparently when kubectl is being used. -- [medium.com/@andriikrymus: DNS config for EKS](https://medium.com/@andriikrymus/dns-config-for-eks-61eb70c3e31e) Elastic Kubernetes Service provide coredns add-on for k8s. Unfortunately, this add-on lucks of configuration options (for example, nodeSelector). In this article, you will learn how to patch it, and configure it the way you want it. +- [eng.grip.security: Enabling AWS IAM Group Access to an EKS Cluster Using RBAC](https://eng.grip.security/enabling-aws-iam-group-access-to-an-eks-cluster-using-rbac) There is no standardized method for providing IAM group access to an EKS cluster or namespace. how you can use an IAM role to authenticate the user group automatically and transparently when kubectl is being used. +- [medium.com/@andriikrymus: DNS config for EKS](https://medium.com/@andriikrymus/dns-config-for-eks-61eb70c3e31e) Elastic Kubernetes Service provide coredns add-on for k8s. Unfortunately, this add-on lucks of configuration options (for example, nodeSelector). how to patch it, and configure it the way you want it. - [cast.ai: EKS Security Checklist: 10 Best Practices for a Secure Cluster](https://cast.ai/blog/eks-security-checklist-10-best-practices-for-a-secure-cluster) - [==github.com/kubernetes-sigs/aws-load-balancer-controller==](https://github.com/kubernetes-sigs/aws-load-balancer-controller) AWS Load Balancer Controller is a controller to help manage Elastic Load Balancers for a Kubernetes cluster. It satisfies: - Ingress resources by provisioning Application Load Balancers - Service resources by provisioning Network Load Balancers - [thenewstack.io: Amazon Web Services Gears Elastic Kubernetes Service for Batch Work](https://thenewstack.io/amazon-web-services-gears-elastic-kubernetes-service-for-batch-jobs) AWS Batch is ideal for developers looking for a more simplified workflow when it comes to managing Kubernetes clusters and pods to use with their batch jobs. -- [silvr.medium.com: Using Kyverno To Enforce AWS Load Balancer Annotations For Centralized Logging To S3](https://silvr.medium.com/using-kyverno-to-enforce-aws-load-balancer-annotations-for-centralized-logging-to-s3-af5dc1f1f3e0) In this tutorial, you'll learn how to use Kyverno to automatically configure annotations that enable access logs for an AWS Network Load Balancer (NLB) to be forwarded to an S3 bucket for a service of type `LoadBalancer`. -- [blog.jimmyray.io: Kubernetes Workload Identity with AWS SDK for Go v2](https://blog.jimmyray.io/kubernetes-workload-identity-with-aws-sdk-for-go-v2-927d2f258057) Using AWS SDK for Go v2 and AWS IAM Roles for Service Accounts. In this article, you'll learn how to use the AWS SDK for Go v2 and AWS IAM Roles for Service Accounts to grant permissions to access AWS services from wuthin Kubernetes +- [silvr.medium.com: Using Kyverno To Enforce AWS Load Balancer Annotations For Centralized Logging To S3](https://silvr.medium.com/using-kyverno-to-enforce-aws-load-balancer-annotations-for-centralized-logging-to-s3-af5dc1f1f3e0) you'll learn how to use Kyverno to automatically configure annotations that enable access logs for an AWS Network Load Balancer (NLB) to be forwarded to an S3 bucket for a service of type `LoadBalancer`. +- [blog.jimmyray.io: Kubernetes Workload Identity with AWS SDK for Go v2](https://blog.jimmyray.io/kubernetes-workload-identity-with-aws-sdk-for-go-v2-927d2f258057) Using AWS SDK for Go v2 and AWS IAM Roles for Service Accounts. you'll learn how to use the AWS SDK for Go v2 and AWS IAM Roles for Service Accounts to grant permissions to access AWS services from wuthin Kubernetes - [github.com/rebataur/djkube](https://github.com/rebataur/fskube) Tool for Django Developers to setup full stack EKS Kubernetes with all necessary tools including DevSecOps in 40 minutes. If you are a Python Django developer then djkube provides you with best user experience in easily running your full-stack Django apps on Kubernetes in AWS with just a few clicks. - [==aws.amazon.com: Troubleshooting Amazon EKS API servers with Prometheus and Grafana==](https://aws.amazon.com/blogs/containers/troubleshooting-amazon-eks-api-servers-with-prometheus) - [medium.com/geekculture: EKS โ€” Kubernetes โ€” Not Ready nodes](https://medium.com/geekculture/eks-kubernetes-not-ready-nodes-dafb300ed299) Today Iโ€™m going to talk about an issue that I encounter a couple of days ago while working on EKS 1.21. - [==faun.pub: How to access AWS services from EKS==](https://faun.pub/how-to-access-aws-services-from-eks-ab5fa003a1b6) Solutions to access AWS APIs from Kubernetes - [aws.amazon.com: Persistent storage for Kubernetes](https://aws.amazon.com/blogs/storage/persistent-storage-for-kubernetes) - [aws.amazon.com: Machine Learning with Kubeflow on Amazon EKS with Amazon EFS](https://aws.amazon.com/blogs/storage/machine-learning-with-kubeflow-on-amazon-eks-with-amazon-efs) -- [faun.pub: AWS EKS: The Ultimate Guide To Deploy AWS Load Balancer Controller add-on](https://faun.pub/aws-eks-the-ultimate-guide-to-deploy-an-ingress-controller-on-kubernetes-5952cb27c067) In this article, you'll learn how to set up an Ingress Controller on EKS in 5 steps: +- [faun.pub: AWS EKS: The Ultimate Guide To Deploy AWS Load Balancer Controller add-on](https://faun.pub/aws-eks-the-ultimate-guide-to-deploy-an-ingress-controller-on-kubernetes-5952cb27c067) you'll learn how to set up an Ingress Controller on EKS in 5 steps: - Creating a cluster with EKSctl - Creating the IAM OIDC provider - Creating an IAM Policy @@ -197,12 +197,12 @@ - [aws.amazon.com: Addressing latency and data transfer costs on EKS using Istio](https://aws.amazon.com/blogs/containers/addressing-latency-and-data-transfer-costs-on-eks-using-istio) In this blog, you will learn how to use Istio topology-aware routing to reduce latency and data transfer costs between EKS nodes deployed in different Availability Zones - [aws.amazon.com: Addressing IPv4 address exhaustion in Amazon EKS clusters using private NAT gateways](https://aws.amazon.com/blogs/containers/addressing-ipv4-address-exhaustion-in-amazon-eks-clusters-using-private-nat-gateways) This post highlights the advantages of implementing a network architecture with a private NAT Gateway to deploy an Amazon EKS cluster. This enables communication across Amazon EKS clusters deployed to VPCs with overlapping CIDRs. - [hardiks.medium.com: Where should you manage your Kubernetes in 2023? Amazon ECS or EKS](https://hardiks.medium.com/where-should-you-manage-your-kubernetes-in-2023-amazon-ecs-or-eks-6f503e93f7a7) -- [awstip.com: Amazon Elastic Kubernetes Service (Amazon EKS) โ€” The Only Resource Hub You Ever Need](https://awstip.com/amazon-elastic-kubernetes-service-amazon-eks-the-only-resource-hub-you-ever-need-3b802687df36) In this article, you will find a collection of links to learn and master Amazon EKS +- [awstip.com: Amazon Elastic Kubernetes Service (Amazon EKS) โ€” The Only Resource Hub You Ever Need](https://awstip.com/amazon-elastic-kubernetes-service-amazon-eks-the-only-resource-hub-you-ever-need-3b802687df36) you will find a collection of links to learn and master Amazon EKS - [awstip.com: Working The Amazon EKS Immersion Workshop โ€” Chapter 1 โ€” Deploying A Microservices Application In A Kubernetes Cluster](https://awstip.com/working-the-amazon-eks-immersion-workshop-chapter-1-deploying-a-microservices-application-in-a-9acae5df2f01) This 12-part series covers how to provision an EKS cluster, deploy apps, and route traffic into the cluster using Ingress and the AWS Load Balancer controller - [Understanding and Cost Optimizing Amazon EKS Control Plane Logs](https://aws.amazon.com/blogs/containers/understanding-and-cost-optimizing-amazon-eks-control-plane-logs) - [itnext.io: Top 10 Ways to Protect EKS Workloads from Ransomware](https://itnext.io/top-10-ways-to-protect-eks-workloads-from-ransomware-ae96d1c1e839) Here are the top 10 things you should focus on to protect EKS workloads against ransomware and all intrusions - [blog.antoinechoula.ga: Native EKS Ingress with AWS Load Balancer Controller](https://blog.antoinechoula.ga/native-eks-ingress-with-aws-load-balancer-controller) This tutorial will teach you how to install and configure the AWS Load Balancer Controller using Terraform and Helm. You will also learn how to manage multiple ingresses and secure the traffic with SSL/TLS -- [devopslearning.medium.com: Lesson learned while scaling Kubernetes cluster to 1000 pods in AWS EKS](https://devopslearning.medium.com/lesson-learned-while-scaling-kubernetes-cluster-to-1000-pods-in-aws-eks-d2d399152bc2) In this article, you will follow Prashant's journey in scaling EKS to 1000+ pods and learn how to overcome these challenges: +- [devopslearning.medium.com: Lesson learned while scaling Kubernetes cluster to 1000 pods in AWS EKS](https://devopslearning.medium.com/lesson-learned-while-scaling-kubernetes-cluster-to-1000-pods-in-aws-eks-d2d399152bc2) you will follow Prashant's journey in scaling EKS to 1000+ pods and learn how to overcome these challenges: - AWS resource limits - IP addresses exhaustion - Packets drop @@ -212,17 +212,17 @@ - [medium.com: Saving costs in Google Kubernetes Engine using Spot VMs](https://medium.com/@vaibhav176/saving-costs-in-google-kubernetes-engine-using-spot-vms-2e6d0157815e) - [medium.com/@benjamin.christmann_12432: Setting up your first EKS cluster on AWS: some practical tips](https://medium.com/@benjamin.christmann_12432/setting-up-your-first-eks-cluster-on-aws-some-practical-tips-60400963c588) - [blog.ratnopamc.com: Reduce cross-AZ traffic costs on EKS using topology aware hints](https://blog.ratnopamc.com/reduce-cross-az-traffic-costs-on-eks-using-topology-aware-hints) Topology Aware Hints is a new feature in EKS that reduces data transfer costs by keeping traffic within the same availability zone. It uses Pod Topology Spread Constraints to spread Pods evenly onto multiple node topologies -- [itnext.io: Running resilient workloads in EKS using Spot instances](https://itnext.io/running-production-workloads-in-eks-using-spot-instances-fc6808a7b462) In this article, you will learn how giffgaff run all of their applications in an EKS cluster using 100% spot instances and what additional safeguards they put in place to improve reliability +- [itnext.io: Running resilient workloads in EKS using Spot instances](https://itnext.io/running-production-workloads-in-eks-using-spot-instances-fc6808a7b462) how giffgaff run all of their applications in an EKS cluster using 100% spot instances and what additional safeguards they put in place to improve reliability - [Simplifying Amazon EBS volume migration and modification on Kubernetes using the EBS CSI Driver](https://aws.amazon.com/de/blogs/storage/simplifying-amazon-ebs-volume-migration-and-modification-using-the-ebs-csi-driver) -- [Eliminate Kubernetes node scaling lag with pod priority and over-provisioning](https://aws.amazon.com/blogs/containers/eliminate-kubernetes-node-scaling-lag-with-pod-priority-and-over-provisioning) In this post, you'll learn how to over-provision the cluster worker nodes using dummy pods for quicker scaling. The dummy pods contain a pause container that is scheduled by the scheduler according to pod specifications' placements and CPU/memory. -- [medium.com/@danielresponda: Testing Spot Reclamation Mechanisms with AWS Node Termination Handler and Kubernetes Autoscaler](https://medium.com/@danielresponda/testing-spot-reclamation-mechanisms-with-aws-node-termination-handler-and-kubernetes-autoscaler-43194d05dae0) What happens if a spot instance is reclaimed, but no more capacity is available in the cluster? In this article, you will learn how to use the AWS Node Termination Handler with Kubernetes Autoscaler to handle spot reclamations seamlessly +- [Eliminate Kubernetes node scaling lag with pod priority and over-provisioning](https://aws.amazon.com/blogs/containers/eliminate-kubernetes-node-scaling-lag-with-pod-priority-and-over-provisioning) you'll learn how to over-provision the cluster worker nodes using dummy pods for quicker scaling. The dummy pods contain a pause container that is scheduled by the scheduler according to pod specifications' placements and CPU/memory. +- [medium.com/@danielresponda: Testing Spot Reclamation Mechanisms with AWS Node Termination Handler and Kubernetes Autoscaler](https://medium.com/@danielresponda/testing-spot-reclamation-mechanisms-with-aws-node-termination-handler-and-kubernetes-autoscaler-43194d05dae0) What happens if a spot instance is reclaimed, but no more capacity is available in the cluster? how to use the AWS Node Termination Handler with Kubernetes Autoscaler to handle spot reclamations seamlessly - [Amazon EKS introduces EKS Pod Identity](https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-eks-pod-identity) - [itnext.io: AWS Elastic Kubernetes Service: RBAC Authorization via AWS IAM and RBAC Groups](https://itnext.io/aws-elastic-kubernetes-service-rbac-authorization-via-aws-iam-and-rbac-groups-7b70ded144b5) - [medium.com/@leocherian: Simple CDK app to create EKS Cluster](https://medium.com/@leocherian/simple-cdk-app-to-create-eks-cluster-06f651a12ccd) - [blog.clouddrove.com: AWS EKS Blue/Green Deployment with Best Practices](https://blog.clouddrove.com/aws-eks-blue-green-deployment-with-best-practices-99be4b7baa38) - [devoriales.com: AWS EKS Secret Encryption: Securing Your EKS Secrets At Rest with AWS KMS](https://devoriales.com/aws-eks-secret-encryption-securing-your-eks-secrets-at-rest-with-aws-kms) - [blog.stackademic.com: Create the AWS EKS Cluster with a Managed Node Group Using Custom Launch Templates](https://blog.stackademic.com/create-the-aws-eks-cluster-with-a-managed-node-group-using-custom-launch-templates-185744a0cc79) -- [blog.devops.dev: HACKING KUBERNETES in AWS](https://blog.devops.dev/hacking-kubernetes-in-aws-54f4681f1478) In this article, you'll learn how to secure EKS by intentionally attaching the wrong policies to pods and hacking the cluster. You will misconfigure AWS Identity and Access Management (IAM) roles for the service accounts (IRSA) feature +- [blog.devops.dev: HACKING KUBERNETES in AWS](https://blog.devops.dev/hacking-kubernetes-in-aws-54f4681f1478) you'll learn how to secure EKS by intentionally attaching the wrong policies to pods and hacking the cluster. You will misconfigure AWS Identity and Access Management (IAM) roles for the service accounts (IRSA) feature - [rahulbhatia1998.medium.com: Designing A Multi-Region Kubernetes Cluster For Disaster Recovery On AWS EKS](https://rahulbhatia1998.medium.com/designing-a-multi-region-kubernetes-cluster-for-disaster-recovery-on-aws-eks-0a0a98ad5854) - [towardsaws.com: From Scratch to Production: Deploying EKS Clusters and Applications with CI/CD using Jenkins and Terraform](https://towardsaws.com/from-scratch-to-production-deploying-eks-clusters-and-applications-with-ci-cd-using-jenkins-and-f27d4686d5fe) - [awstip.com: Per-pod PIDs limit on EKS](https://awstip.com/per-pod-pids-limit-on-eks-fe320638c7e9) @@ -255,7 +255,7 @@ - [anywhere.eks.amazonaws.com: Compare EKS Anywhere and EKS](https://anywhere.eks.amazonaws.com/docs/concepts/eksafeatures) - [aws.amazon.com: Getting started with Amazon EKS Anywhere](https://aws.amazon.com/blogs/containers/introducing-general-availability-of-amazon-eks-anywhere) - [gokulchandrapr.medium.com: Amazon EKS Anywhere & EKS Connector](https://gokulchandrapr.medium.com/amazon-eks-anywhere-eks-connector-600953aaa42d) -- [ambar-thecloudgarage.medium.com: EKS Anywhere., decoding the architecture.](https://ambar-thecloudgarage.medium.com/eks-anywhere-decoding-the-architecture-fd2741b03e0a) In this article, you will take a deeper look into the EKS Anywhere architecture as well as compare it with EKS Distro. Then, you will discuss the different type of installations: +- [ambar-thecloudgarage.medium.com: EKS Anywhere., decoding the architecture.](https://ambar-thecloudgarage.medium.com/eks-anywhere-decoding-the-architecture-fd2741b03e0a) you will take a deeper look into the EKS Anywhere architecture as well as compare it with EKS Distro. Then, you will discuss the different type of installations: - Standalone clusters - Distribute environments - [blog.techknowtrendz.com: Taking Amazon EKS Anywhere for a spin](https://blog.techknowtrendz.com/taking-amazon-eks-anywhere-for-a-spin) Bringing EKS to a datacenter near you @@ -370,7 +370,7 @@ - [github.com/OvidiuBorlean/kubectl-windumps](https://github.com/OvidiuBorlean/kubectl-windumps) Network traffic capture in AKS Windows Nodes - [infoq.com: Microsoft Brings Kubernetes to the Edge with AKS Edge Essentials](https://www.infoq.com/news/2023/03/aks-edge-essentials-ga) - [==azuredevopslabs.com: Deploying a multi-container application to Azure Kubernetes Services==](https://azuredevopslabs.com/labs/vstsextend/kubernetes) -- [danielstechblog.io: Mitigating slow container image pulls on Azure Kubernetes Service](https://www.danielstechblog.io/mitigating-slow-container-image-pulls-on-azure-kubernetes-service) It is not easy identifying the root cause for slow container image pulls on your AKS. In this article, you'll follow Daniel's journey in debugging the OS disk queue depth and how it affects image pulls. +- [danielstechblog.io: Mitigating slow container image pulls on Azure Kubernetes Service](https://www.danielstechblog.io/mitigating-slow-container-image-pulls-on-azure-kubernetes-service) It is not easy identifying the root cause for slow container image pulls on your AKS. you'll follow Daniel's journey in debugging the OS disk queue depth and how it affects image pulls. - [==grafana.com: Scrape Azure metrics and monitor AKS using Grafana Agent== ๐ŸŒŸ](https://grafana.com/blog/scrape-azure-metrics-and-monitor-aks-using-grafana-agent) In this blog post, we will demonstrate how to configure Grafana Agent to scrape metrics from Microsoft Azure, specifically from AKS, using the newly released [azure_exporter](https://archive.grafana.com/docs/agent/v0.32/configuration/integrations/azure-exporter-config). - [medium.com/microsoftazure: Automating Managed Prometheus and Grafana with Terraform for scalable observability on Azure Kubernetes Service and Istio ๐ŸŒŸ](https://medium.com/microsoftazure/automating-managed-prometheus-and-grafana-with-terraform-for-scalable-observability-on-azure-4e5c5409a6b1) - [kristhecodingunicorn.com: Setting Up OAuth 2.0 Authentication for Applications in AKS With NGINX and OAuth2 Proxy](https://www.kristhecodingunicorn.com/post/aks-oauth2-proxy-with-nginx-ingress-controller) @@ -385,9 +385,9 @@ - [medium.com/@lfoster49203: Kubernetes on Azure: Setting up a cluster on Microsoft Azure (with Azure AKS)](https://medium.com/@lfoster49203/kubernetes-on-azure-setting-up-a-cluster-on-microsoft-azure-with-azure-aks-d6bee3eaa65) - [medium.com/@pauldotyu: Effortlessly Deploy to AKS with Open Source Tools Draft and Acorn](https://medium.com/@pauldotyu/app-to-aks-with-draft-and-acorn-2d25f19649b7) - [techcommunity.microsoft.com: How to install an AKS cluster with the Istio service mesh add-on via Bicep](https://techcommunity.microsoft.com/blog/fasttrackforazureblog/how-to-install-an-aks-cluster-with-the-istio-service-mesh-add-on-via-bicep/3802069) -- [adamtheautomator.com: Getting Started with the Azure Kubernetes Service (AKS)](https://adamtheautomator.com/azure-kubernetes-service) In this tutorial, you'll learn how to get started with Microsoft Azure Kubernetes Service (AKS) using the Azure Portal and the Azure CLI +- [adamtheautomator.com: Getting Started with the Azure Kubernetes Service (AKS)](https://adamtheautomator.com/azure-kubernetes-service) you'll learn how to get started with Microsoft Azure Kubernetes Service (AKS) using the Azure Portal and the Azure CLI - [techcommunity.microsoft.com: Kubernetes External DNS for Azure DNS & AKS](https://techcommunity.microsoft.com/blog/coreinfrastructureandsecurityblog/kubernetes-external-dns-for-azure-dns--aks/3809393) -- [medium.com/adessoturkey: Azure DevOps Agents on AKS with the kaniko Option](https://medium.com/adessoturkey/azure-devops-agents-on-aks-with-kaniko-option-f672f900a177) In this article, you will learn how to build container images in your Azure DevOps agents using kaniko. kaniko doesn't depend on a Docker daemon and executes each command within a Dockerfile completely in userspace. +- [medium.com/adessoturkey: Azure DevOps Agents on AKS with the kaniko Option](https://medium.com/adessoturkey/azure-devops-agents-on-aks-with-kaniko-option-f672f900a177) how to build container images in your Azure DevOps agents using kaniko. kaniko doesn't depend on a Docker daemon and executes each command within a Dockerfile completely in userspace. - [techcommunity.microsoft.com: Securing Windows workloads on Azure Kubernetes Service with Calico](https://techcommunity.microsoft.com/blog/containers/securing-windows-workloads-on-azure-kubernetes-service-with-calico/3815429) - [infoworld.com: Kubernetes cost management for the real world](https://www.infoworld.com/article/2338428/kubernetes-cost-management-for-the-real-world.html) How much will Kubernetes cost to run? That question has become much easier to answer for Azure Kubernetes Service, thanks to OpenCost integration. - [==inder-devops.medium.com: AKS Networking Deep Dive: Kubenet vs Azure-CNI vs Azure-CNI (overlay)==](https://inder-devops.medium.com/aks-networking-deep-dive-kubenet-vs-azure-cni-vs-azure-cni-overlay-a51709171ce9) When deploying an AKS cluster, there are three networking models you can choose from: @@ -407,7 +407,7 @@ - [azure-and-k8s-architecture: East-West Traffic shared cluster and shared responsibilities using Calico](https://github.com/stephaneey/azure-and-k8s-architecture/blob/main/networking/azure-kubernetes-service/east-west-traffic/east-west-shared-calico.md) - [techcommunity.microsoft.com: Running GPU accelerated workloads with NVIDIA GPU Operator on AKS ๐ŸŒŸ](https://techcommunity.microsoft.com/blog/azurehighperformancecomputingblog/running-gpu-accelerated-workloads-with-nvidia-gpu-operator-on-aks/4061318) - [dinantpaardenkooper.nl: Azure Day with Kubernetes](https://dinantpaardenkooper.nl/posts/aks-2024-03-18) Within this blog, I want to give an overview of all the feature which where shared at KubeCon Europe 2024 that becomes available in General Availability, Technical Preview or End of Support by Microsoft. This information can be found at Microsoft [Azure Updates](https://azure.microsoft.com/en-us/updates/?query=AKS). -- [==youtube: Day -25 | No Dockerfile, No K8s Manifests | Setup CI/CD in 5 minutes for any programming language==](https://www.youtube.com/watch?v=io_yBU7vhIo) This video is part of Azure Zero to Hero (Free Azure Course including Azure DevOps). In this video of Automated CI/CD Pipeline Generator. You will learn how to setup and implement automated CI/CD deployment on the AKS platform of Azure. No Dockerfile, No Kubernetes manifests, No CI/CD Pipeline. Everything is generated automatically for you. Best way to start learning CI/CD and automated deployments. This makes life of DevOps Engineers extremely easy. +- [==youtube: Day -25 | No Dockerfile, No K8s Manifests | Setup CI/CD in 5 minutes for any programming language==](https://www.youtube.com/watch?v=io_yBU7vhIo) This video is part of Azure Zero to Hero (Free Azure Course including Azure DevOps). of Automated CI/CD Pipeline Generator. You will learn how to setup and implement automated CI/CD deployment on the AKS platform of Azure. No Dockerfile, No Kubernetes manifests, No CI/CD Pipeline. Everything is generated automatically for you. Best way to start learning CI/CD and automated deployments. This makes life of DevOps Engineers extremely easy. - [medium.com/@anjkeesari: Install Grafana Loki-Stack Helmchart in Azure Kubernetes Services (AKS)](https://medium.com/@anjkeesari/install-grafana-loki-stack-helmchart-in-azure-kubernetes-services-aks-1359281b3321) - [==pixelrobots.co.uk: Exploring Azure Kubernetes Serviceโ€™s Node Autoprovision: A Deep Dive into the Latest Public Preview Feature==](https://pixelrobots.co.uk/2023/12/exploring-azure-kubernetes-services-node-autoprovision-a-deep-dive-into-the-latest-public-preview-feature) - Node Autoprovision (NAP) in AKS is a game-changer for managing node pools. As your workloads expand and diversify in complexity, needing various CPU, memory, and capability configurations, managing your VM configurations can become quite daunting. This is where NAP steps in. @@ -463,7 +463,7 @@ - [cloud.google.com: How to do multi-cluster Kubernetes in the real worldโ€”one GKE shopโ€™s approach](https://cloud.google.com/blog/products/containers-kubernetes/multi-cluster-kubernetes-with-gke-at-geotab) - [cloud.google.com: Know more, spend less: how GKE cost optimization insights help you optimize Kubernetes](https://cloud.google.com/blog/products/containers-kubernetes/gke-cost-optimization-insights-now-ga) - [medium.com/@glen.yu: Getting started with eBPF and Cilium on GKE](https://medium.com/@glen.yu/getting-started-with-ebpf-and-cilium-on-gke-6553c5d7e02a) Through Cilium, users can add functionality such as encryption and L7 network policy enforcement previously only available in a service mesh โ€” but without the operational complexity of having to manage one. -- [medium.com/@glen.yu: NGINX Ingress or GKE Ingress?](https://medium.com/@glen.yu/nginx-ingress-or-gke-ingress-d87dd9db504c) There are tons of ingress controllers out there in the Kubernetes ecosystem, so how do we know which one is right for you? In this article, you will learn the differences between the NGINX and GKE Ingress. +- [medium.com/@glen.yu: NGINX Ingress or GKE Ingress?](https://medium.com/@glen.yu/nginx-ingress-or-gke-ingress-d87dd9db504c) There are tons of ingress controllers out there in the Kubernetes ecosystem, so how do we know which one is right for you? the differences between the NGINX and GKE Ingress. - [medium.com/google-developer-experts: Getting started with GKE Gateway controller](https://medium.com/google-developer-experts/getting-started-with-gke-gateway-controller-ee45c3bc8996) - [cloud.google.com: Introducing Kubernetes control plane metrics in GKE](https://cloud.google.com/blog/products/containers-kubernetes/kubernetes-control-plane-metrics-are-generally-available) - [google/gke-policy-automation](https://github.com/google/gke-policy-automation) This repository contains the tool and the policy library for validating GKE clusters against configuration best practices @@ -475,14 +475,14 @@ - [blog.devgenius.io: Explore API Priority and Fairness to Ease the Load of the APIServer](https://blog.devgenius.io/explore-api-priority-and-fairness-to-ease-the-load-of-the-apiserver-a4fe9c4e7174) Walk through incident remediation using APF - [faun.pub: Make Your Kubernetes Cluster Highly Available and Fault Tolerant ๐ŸŒŸ](https://faun.pub/deploy-active-active-multi-region-kubernetes-cluster-with-terraform-f2652e43f47e) End to End setup of Multi Region Autopilot Kubernetes Cluster with Application Deployment Example - [medium.com/@pbijjala: reCap: Kube vrs Cloud DNS in GKE](https://medium.com/@pbijjala/recap-kube-vrs-cloud-dns-in-gke-b8d1d407e00d) When deciding on how to use DNS with GKE, what are the available native Kubernetes options, which options exist on Google Cloud for GKE, and how do these two things play together? -- [medium.com/google-cloud: Ingress in Google Kubernetes Products](https://medium.com/google-cloud/ingress-in-google-kubernetes-products-f22ded21f4ed) In this article, you will discuss, enumerate and compare all the options you have to route traffic into a Kubernetes cluster running in Google Cloud (GKE) or on-premise (Anthos on Bare Metal, Anthos on VMware) +- [medium.com/google-cloud: Ingress in Google Kubernetes Products](https://medium.com/google-cloud/ingress-in-google-kubernetes-products-f22ded21f4ed) you will discuss, enumerate and compare all the options you have to route traffic into a Kubernetes cluster running in Google Cloud (GKE) or on-premise (Anthos on Bare Metal, Anthos on VMware) - [medium.com/@pbijjala: Considerations for Hardening your GKE, a workload perceptive](https://medium.com/@pbijjala/considerations-for-hardening-your-gke-a-workload-perceptive-943be26949d2) This article has a few tips for hardening your GKE setup: - Network policies - Custom service accounts - Workload identities - Pod Security admissions and admission controllers - GKE sandbox -- [medium.com/@jjlakis: GCP Secret Manager with self-hosted Kubernetes](https://medium.com/@jjlakis/gcp-secret-manager-with-self-hosted-kubernetes-db35d01d65f0) In this article, you will learn how to use the GCP secret manager to store secrets for an on-prem k3s cluster +- [medium.com/@jjlakis: GCP Secret Manager with self-hosted Kubernetes](https://medium.com/@jjlakis/gcp-secret-manager-with-self-hosted-kubernetes-db35d01d65f0) how to use the GCP secret manager to store secrets for an on-prem k3s cluster - [tech.loveholidays.com: GKE Multi-Cluster Services โ€” one bad probe away from disaster](https://tech.loveholidays.com/gke-multi-cluster-services-one-bad-probe-away-from-disaster-62051fafe84e) - [Looking for GPU Capacity ? DWS got you covered !](https://medium.com/zencore/looking-for-gpu-capacity-dws-got-you-covered-d736b8c63ba6) - [medium.com/google-cloud: Understanding health checks in GKE & Gateway API](https://medium.com/google-cloud/understanding-health-checks-in-gke-gateway-api-1c89f82bfba8) This article discusses the difference between Kubernetes readiness and GCP's Application Load Balancer health checks. Despite a pod being marked as unready by Kubernetes, if GCP's health check deems it healthy, traffic will still be forwarded to it @@ -496,7 +496,7 @@ - [Linode Kubernetes Engine (LKE)](https://www.linode.com/products/kubernetes) - [medium: Create Kubernetes Cluster Using Linode LKE](https://medium.com/codex/create-kubernetes-cluster-using-linode-lke-4f9c71d03a8d) -- [dev.to: Practical Introduction to Kubernetes Autoscaling Tools with Linode Kubernetes Engine ๐ŸŒŸ](https://dev.to/rahulrai/practical-introduction-to-kubernetes-autoscaling-tools-with-linode-kubernetes-engine-2i7k) In this article you will practice scaling apps with the: +- [dev.to: Practical Introduction to Kubernetes Autoscaling Tools with Linode Kubernetes Engine ๐ŸŒŸ](https://dev.to/rahulrai/practical-introduction-to-kubernetes-autoscaling-tools-with-linode-kubernetes-engine-2i7k)you will practice scaling apps with the: - Horizontal Pod Autoscaler - Vertical Pod Autoscaler - Proportional Autoscaler diff --git a/docs/maven-gradle.md b/docs/maven-gradle.md index e689f512..0fb65d6f 100644 --- a/docs/maven-gradle.md +++ b/docs/maven-gradle.md @@ -142,7 +142,7 @@ jar tf target/example-1.0.0-SNAPSHOT.jar - [Using Jenkins Pipeline parallel stages to build Maven project with different JDKs](https://e.printstacktrace.blog/using-jenkins-pipeline-parallel-stages-to-build-maven-project-with-different-jdks) - **Demo:** A single Jenkinsfile, a Java Maven project, a single Dockerfile, multiple Java versions build and tested in parallel thanks to SDKMAN: - [Using SDKMAN! as a docker image for Jenkins Pipeline - a step by step guide ๐ŸŒŸ](https://e.printstacktrace.blog/using-sdkman-as-a-docker-image-for-jenkins-pipeline-a-step-by-step-guide) - - [Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN๐ŸŒŸ](https://www.youtube.com/watch?v=j1lH3vOhucw) In this video, I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job. + - [Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN๐ŸŒŸ](https://www.youtube.com/watch?v=j1lH3vOhucw) I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job. - [Jenkins Pipeline Maven build demo](https://github.com/wololock/jenkine-pipeline-maven-demo/tree/sdkman) ## Related Tools diff --git a/docs/message-queue.md b/docs/message-queue.md index e7fa4523..f78d1a93 100644 --- a/docs/message-queue.md +++ b/docs/message-queue.md @@ -64,7 +64,7 @@ - [wiprodigital.com: A Guide to Enterprise Event-Driven Architecture](https://wiprodigital.com/2020/11/10/a-guide-to-enterprise-event-driven-architecture) - [medium: Introduction to Event-Driven Architecture ๐ŸŒŸ](https://medium.com/microservicegeeks/introduction-to-event-driven-architecture-e94ef442d824) The essential concepts that every developer should know - [ibm.com: Event-driven cloud-native applications (microservices)](https://www.ibm.com/think/topics/cloud-native) The event backbone is being part of the microservices mesh, providing the publish-and-subscribe communication between microservices and enabling the support of loosely coupled event-driven microservices. -- [stackoverflow.blog: How event-driven architecture solves modern web app problems ๐ŸŒŸ](https://stackoverflow.blog/2020/03/16/how-event-driven-architecture-solves-modern-web-app-problems) In this article, weโ€™ll discuss some of the problems driving innovation in modern web development. Then weโ€™ll dive into the basics of event-driven architecture (EDA), which tries to address these problems by thinking about back-end architecture in a novel way. +- [stackoverflow.blog: How event-driven architecture solves modern web app problems ๐ŸŒŸ](https://stackoverflow.blog/2020/03/16/how-event-driven-architecture-solves-modern-web-app-problems) weโ€™ll discuss some of the problems driving innovation in modern web development. Then weโ€™ll dive into the basics of event-driven architecture (EDA), which tries to address these problems by thinking about back-end architecture in a novel way. - [sebalopezz.medium.com: Monolith to Microservices + Event-Driven Architecture ๐ŸŒŸ](https://sebalopezz.medium.com/monolith-to-microservices-event-driven-architecture-ff4284bf4ecf) - [confluent.io: Event-Driven Microservices Architecture (white paper) ๐ŸŒŸ](https://www.confluent.io/resources/white-paper/event-driven-microservices) Microservices are an architectural pattern that structures an application as a collection of small, loosely coupled services that operate together to achieve a common goal. Because they work independently, they can be added, removed, or upgraded without interfering with other applications. While there are numerous benefits to microservices architecture, like easier deployment and testing, improved productivity, flexibility, and scalability, they also pose a few disadvantages, as independently run microservices require a seamless method of communication to operate as one larger application. Event-driven microservices allow for real-time microservices communication, enabling data to be consumed in the form of events before theyโ€™re even requested. In this white paper, weโ€™ll cover how event-driven microservices work, presenting a sample currency exchange platform to illustrate the design and architecture of an application composed of event-driven microservices using Apache Kafkaยฎ and Confluent Platform. We also discuss other aspects of microservices architectures, such as team structure, continuous delivery, deployment, and testing. Lastly, we discuss how Apache Kafka and Confluent Platform enable and extend core principles of microservices, including decoupling, separation of concerns, agility, and real-time streaming of event data. - [redhat.com: Event-driven architecture: Understanding the essential benefits ๐ŸŒŸ](https://www.redhat.com/en/blog/event-driven-architecture-essentials) Event-driven architectures bring significant benefits when managing many endpoints, but it also has its complexities to be aware of. @@ -102,7 +102,7 @@ - [thenewstack.io: The Path to Getting the Full Data Stack on Kubernetes](https://thenewstack.io/the-path-to-getting-the-full-data-stack-on-kubernetes) - [medium.com/tinyclues-vision: 4 Design Principles for Robust Data Pipelines](https://medium.com/tinyclues-vision/4-design-principles-for-robust-data-pipelines-5bbd40de4a43) Design Principles for traditional Software Engineering quickly fail when working with large and diverse sets of data โ€” a new way of thinking about this difference. - [medium.com/fiverr-engineering: How to Share Data Between Microservices on High Scale](https://medium.com/fiverr-engineering/how-to-share-data-between-microservices-on-high-scale-ab2bc663898d) Several approaches suitable for a scalable system considering tradeoffs between availability and consistency -- [medium.com/codex: Microservices Communication โ€” Queues Topics and Streams](https://medium.com/codex/microservices-communication-queues-topics-and-streams-597664d4b786) In this article, I will speak about types of messages broker that are famous in microservices communication. +- [medium.com/codex: Microservices Communication โ€” Queues Topics and Streams](https://medium.com/codex/microservices-communication-queues-topics-and-streams-597664d4b786) I will speak about types of messages broker that are famous in microservices communication. - [blog.bitsrc.io: Why Microservices Should use Event Sourcing ๐ŸŒŸ](https://blog.bitsrc.io/why-microservices-should-use-event-sourcing-9755a54ebfb4) 6 Reasons where you need to use Event Sourcing in Micro-services - [==emirayhan.medium.com: What is the difference Message Queue and Message Bus?== ๐ŸŒŸ](https://emirayhan.medium.com/what-is-the-difference-message-queue-and-message-bus-7f2e2867eff6) - [verraes.net: DDD and Messaging Architectures ๐ŸŒŸ](https://verraes.net/2019/05/ddd-msg-arch) **An overview of my different series on patterns in distributed systems. A good collection of Messaging Patterns** @@ -174,7 +174,7 @@ - [devops.com: Best of 2019: Implementing Message Queue in Kubernetes](https://devops.com/implementing-message-queue-in-kubernetes) - [kubemq.io: Kafka VS KubeMQ ๐ŸŒŸ](https://kubemq.io/kafka-vs-kubemq) - [github.com/kubemq-io/kubemq-community ๐ŸŒŸ](https://github.com/kubemq-io/kubemq-community) KubeMQ community version is now available as an open-source project! -- [dzone: KubeMQ: A Modern Alternative to Kafka](https://dzone.com/articles/seamless-migration-from-kafka-to-kubemq) This article introduces a modern, Kubernetes-native message queue called KubeMQ, to show how organizations trying to implement Kafka on Kubernetes can benefit from it. +- [dzone: KubeMQ: A Modern Alternative to Kafka](https://dzone.com/articles/seamless-migration-from-kafka-to-kubemq)a modern, Kubernetes-native message queue called KubeMQ, to show how organizations trying to implement Kafka on Kubernetes can benefit from it. ### Google Cloud Platform Pub/Sub @@ -347,18 +347,18 @@ comsysto about their usage of Debezium, touching on many details like outbox pat - [blog.developer.adobe.com: Exploring Kafka Producerโ€™s Internals ๐ŸŒŸ](https://blog.developer.adobe.com/exploring-kafka-producers-internals-37411b647d0f) This is the first part of a series where we explore Kafka client's internals. This post focuses on the Kafka Producer. - [medium.com/altitudehq: Kafka retries and maintaining the order of retry events ๐ŸŒŸ](https://medium.com/altitudehq/kafka-retries-and-maintain-order-of-retry-events-313482044351) - [medium.com/cloudnesil: Kafka Streams State Store at Scale](https://medium.com/cloudnesil/kafka-streams-state-store-at-scale-390d9717b42a) Managing Interactive Queries on multiple application instances Alternative solutions and their comparisons. -- [towardsdev.com: Performance Testing Your Kubernetes Kafka Cluster](https://towardsdev.com/performance-testing-your-kubernetes-kafka-cluster-95f6e7d8dfc5) In this article, you will learn how to benchmark Apache Kafka instances running on Kubernetes against parallel loads. +- [towardsdev.com: Performance Testing Your Kubernetes Kafka Cluster](https://towardsdev.com/performance-testing-your-kubernetes-kafka-cluster-95f6e7d8dfc5) how to benchmark Apache Kafka instances running on Kubernetes against parallel loads. - [==medium.com/@hardiktaneja_99752: Lessons after running Kafka in production== ๐ŸŒŸ](https://medium.com/@hardiktaneja_99752/lessons-after-running-kafka-in-production-626974ffd700) TLDR: Have atleast as many paritions (P) as max number of consumers(C), but number of partitions should always be multiple of number of consumers. P = n * C, n =1,2,3โ€ฆ - [==betterprogramming.pub: Monitoring Kafka Applications โ€” Implementing Healthchecks and Tracking Lag==](https://betterprogramming.pub/monitoring-kafkaapplications-implementing-healthchecks-and-tracking-lag-3976cc6f00d5) For KafkaConsumer, Streams, Spring-Kafka, Kafka-Connect - [thenewstack.io: LinkedIn Layered Architecture Minimizes Kafka Scaling Issues](https://thenewstack.io/linkedin-layered-architecture-minimizes-kafka-scaling-issues) With Kafka, too many data producers can cause issues, as can having too many data consumers. Here's how LinkedIn separated the resources to alleviate exhaustion. - [developers.redhat.com: End-to-end field-level encryption for Apache Kafka Connect](https://developers.redhat.com/articles/2022/09/27/end-end-field-level-encryption-apache-kafka-connect) -- [blog.datumo.io: Setting up Kafka on Kubernetes - an easy way](https://blog.datumo.io/setting-up-kafka-on-kubernetes-an-easy-way-26ae150b9ca8) In this article, you will learn how to create a basic deployment for Kafka (with Zookeeper) on Kubernetes +- [blog.datumo.io: Setting up Kafka on Kubernetes - an easy way](https://blog.datumo.io/setting-up-kafka-on-kubernetes-an-easy-way-26ae150b9ca8) how to create a basic deployment for Kafka (with Zookeeper) on Kubernetes - [==linkedin.com: Kafka Cluster Setup on Kubernetes==](https://www.linkedin.com/pulse/kaka-cluster-setup-kubernetes-avinash-kumar-chandran) - [medium.com/wix-engineering: Troubleshooting Kafka for 2000 Microservices at Wix](https://medium.com/wix-engineering/troubleshooting-kafka-for-2000-microservices-at-wix-986ee382fd1e) Debugging microservicesโ€™ event driven communication is not trivial, especially when itโ€™s based on event streaming platforms like Apache Kafka. While scale grows more easily and the distributed system becomes more decoupled and resilient, the operational aspects become much harder. - [engineering.grab.com: Zero trust with Kafka](https://engineering.grab.com/zero-trust-with-kafka) - [freecodecamp.org: The Apache Kafka Handbook โ€“ How to Get Started Using Kafka ๐ŸŒŸ](https://www.freecodecamp.org/news/apache-kafka-handbook) Apache Kafka is an open source event streaming tool that transports tons of data w/ low latency. This link covers its core concepts, how to use its CLI, & how to install + build a project with it. - [medium.com/@rramiz.rraza: Kafka metrics monitoring with Prometheus and Grafana ๐ŸŒŸ](https://medium.com/@rramiz.rraza/kafka-metrics-integration-with-prometheus-and-grafana-14fe318fbb8b) -- [rogulski.it: Consume Kafka events with Knative service and FastAPI on kubernetes ๐ŸŒŸ](https://rogulski.it/blog/kafka-consumer-knative-fastapi) In this article, you will learn how to build a fully scalable, event-driven and easy-to-maintain system using Python (FastAPI), Kafka, and Knative +- [rogulski.it: Consume Kafka events with Knative service and FastAPI on kubernetes ๐ŸŒŸ](https://rogulski.it/blog/kafka-consumer-knative-fastapi) how to build a fully scalable, event-driven and easy-to-maintain system using Python (FastAPI), Kafka, and Knative - [piotrminkowski.com: Concurrency with Kafka and Spring Boot](https://piotrminkowski.com/2023/04/30/concurrency-with-kafka-and-spring-boot) - [==thenewstack.io: Kafka on Kubernetes: Should You Adopt a Managed Solution?==](https://thenewstack.io/kafka-on-kubernetes-should-you-adopt-a-managed-solution) A look at the various factors to consider when deciding whether to deploy Kafka yourself or to purchase a managed solution - [thelinuxnotes.com: How to deploy Kafka in Kubernetes with Helm chart + kafdrop](https://thelinuxnotes.com/how-to-deploy-kafka-in-kubernetes-with-helm-chart-kafdrop-commander) @@ -471,11 +471,11 @@ comsysto about their usage of Debezium, touching on many details like outbox pat - [dzone: Apache Airflow Architecture on OpenShift](https://dzone.com/articles/apache-airflow-architecture-on-openshift) - [redhat.com: Monitoring Apache Airflow using Prometheus](https://www.redhat.com/en/blog/monitoring-apache-airflow-using-prometheus) -- [towardsdatascience.com: Apache Airflow for containerized data-pipelines](https://towardsdatascience.com/apache-airflow-for-containerized-data-pipelines-4d7a3c385bd) Are you having problems running tasks with a different version of Python on Airflow? In this article, I explain how to solve this issue. +- [towardsdatascience.com: Apache Airflow for containerized data-pipelines](https://towardsdatascience.com/apache-airflow-for-containerized-data-pipelines-4d7a3c385bd) Are you having problems running tasks with a different version of Python on Airflow? I explain how to solve this issue. - [Apache Airflow official helm chart ๐ŸŒŸ](https://airflow.apache.org/docs/helm-chart) - [youtube: Airflow Helm Chart : Quick Start For Beginners in 10mins](https://www.youtube.com/watch?v=GDOw8ByzMyY&ab_channel=MarcLamberti) - [dev.to: Get started with Apache Airflow](https://dev.to/arunkc/get-started-with-apache-airflow-1218) -- [betterprogramming.pub: Running Airflow Using Kubernetes Executor and Kubernetes Pod Operator with Istio](https://betterprogramming.pub/running-airflow-using-kubernetes-executor-and-kubernetes-pod-operator-with-istio-d5aa7af16ef5) There are many obstacles when you deploy Airflow with the Kubernetes executor, Pod Operator and Istio since the Istio proxy sidecar makes the worker pod hang and run forever. In this article, you will learn how to overcome that. +- [betterprogramming.pub: Running Airflow Using Kubernetes Executor and Kubernetes Pod Operator with Istio](https://betterprogramming.pub/running-airflow-using-kubernetes-executor-and-kubernetes-pod-operator-with-istio-d5aa7af16ef5) There are many obstacles when you deploy Airflow with the Kubernetes executor, Pod Operator and Istio since the Istio proxy sidecar makes the worker pod hang and run forever. how to overcome that. - [towardsdatascience.com: Apache Airflow Architecture ๐ŸŒŸ](https://towardsdatascience.com/apache-airflow-architecture-496b9cb28288) A deep dive into Apache Airflow architecture and how it orchestrates workflows - [==airflow.apache.org: KubernetesPodOperator== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://airflow.apache.org/docs/apache-airflow-providers-cncf-kubernetes/stable/operators.html) - The KubernetesPodOperator allows you to create and run Pods on a Kubernetes cluster. diff --git a/docs/mlops.md b/docs/mlops.md index 1852ec23..3e9d496c 100644 --- a/docs/mlops.md +++ b/docs/mlops.md @@ -49,7 +49,7 @@ - [towardsdatascience.com: From Jupyter Notebooks to Real-life: MLOps ๐ŸŒŸ](https://towardsdatascience.com/from-jupyter-notebooks-to-real-life-mlops-9f590a7b5faa) Why is it a must-have? - [datarevenue.com: Airflow vs. Luigi vs. Argo vs. MLFlow vs. KubeFlow](https://www.datarevenue.com/en-blog/airflow-vs-luigi-vs-argo-vs-mlflow-vs-kubeflow) Choosing a task orchestration tool - [infoworld.com: 13 open source projects transforming AI and machine learning](https://www.infoworld.com/article/2336757/16-open-source-projects-transforming-ai-and-machine-learning.html) From deepfakes to natural language processing and more, the open source world is ripe with projects to support software development on the frontiers of artificial intelligence and machine learning. -- [towardsdatascience.com: From Dev to Deployment: An End to End Sentiment Classifier App with MLflow, SageMaker, and Streamlit](https://towardsdatascience.com/from-dev-to-deployment-an-end-to-end-sentiment-classifier-app-with-mlflow-sagemaker-and-119043ea4203) In this tutorial, weโ€™ll build an NLP app starting from DagsHub-MLflow, then diving into deployment in SageMaker and EC2 with the front end in Streamlit. +- [towardsdatascience.com: From Dev to Deployment: An End to End Sentiment Classifier App with MLflow, SageMaker, and Streamlit](https://towardsdatascience.com/from-dev-to-deployment-an-end-to-end-sentiment-classifier-app-with-mlflow-sagemaker-and-119043ea4203) weโ€™ll build an NLP app starting from DagsHub-MLflow, then diving into deployment in SageMaker and EC2 with the front end in Streamlit. - [elconfidencial.com: La batalla entre Google y Meta que nadie esperaba: revolucionar la biologรญa ๐ŸŒŸ](https://www.elconfidencial.com/tecnologia/ciencia/2022-11-18/carrera-google-meta-revolucionar-biologia_3520865) El sistema AlphaFold de Google revela la estructura en 3D de las proteรญnas y ya es utilizado por miles de biรณlogos, pero Meta contraataca con otro algoritmo. ยฟCuรกl es mejor? - [swirlai.substack.com: SAI #08: Request-Response Model Deployment - The MLOps Way, Spark - Executor Memory Structure and more... ๐ŸŒŸ](https://swirlai.substack.com/p/sai-08-request-response-model-deployment) - [about.gitlab.com: How is AI/ML changing DevOps?](https://about.gitlab.com/blog/how-is-ai-ml-changing-devops) @@ -108,9 +108,9 @@ - [kubeflow](https://www.kubeflow.org) The Machine Learning Toolkit for Kubernetes - [infracloud.io: Machine Learning Orchestration on Kubernetes using Kubeflow](https://www.infracloud.io/blogs/machine-learning-orchestration-kubernetes-kubeflow) -- [blog.devgenius.io: Kubeflow Cloud Deployment (AWS)](https://blog.devgenius.io/kubeflow-cloud-deployment-aws-46f739ccbb32) How do you deploy Kubeflow on AWS? Kubeflow is resource-intensive and deploying it locally means that you might not have enough resources to run your end-to-end machine learning pipeline. In this article you will learn how to deploy Kubeflow in AWS. +- [blog.devgenius.io: Kubeflow Cloud Deployment (AWS)](https://blog.devgenius.io/kubeflow-cloud-deployment-aws-46f739ccbb32) How do you deploy Kubeflow on AWS? Kubeflow is resource-intensive and deploying it locally means that you might not have enough resources to run your end-to-end machine learning pipeline.you will learn how to deploy Kubeflow in AWS. - [joseprsm.medium.com: How to build Machine Learning models that train themselves](https://joseprsm.medium.com/how-to-build-machine-learning-models-that-train-themselves-bbc87499ca5) -- [medium.com/dkatalis: Creating a Mutating Webhook for Great Good! Or: how to automatically provision Pods on a specific node pool](https://medium.com/dkatalis/creating-a-mutating-webhook-for-great-good-b21acb941207) In this tutorial, you will learn how to automatically schedule Kubeflow pipeline Pods from any number of namespaces on dedicated GKE node pools +- [medium.com/dkatalis: Creating a Mutating Webhook for Great Good! Or: how to automatically provision Pods on a specific node pool](https://medium.com/dkatalis/creating-a-mutating-webhook-for-great-good-b21acb941207) how to automatically schedule Kubeflow pipeline Pods from any number of namespaces on dedicated GKE node pools ## Flyte @@ -173,7 +173,7 @@ ## Machine Learning workloads in kubernetes using Nix and NVIDIA. Running NVIDIA GPUs on Kubernetes -- [canvatechblog.com: Supporting GPU-accelerated Machine Learning with Kubernetes and Nix](https://www.canva.dev/blog/engineering/supporting-gpu-accelerated-machine-learning-with-kubernetes-and-nix) In this article, you'll learn how to package and run machine learning workloads in Kubernetes using Nix and NVIDIA +- [canvatechblog.com: Supporting GPU-accelerated Machine Learning with Kubernetes and Nix](https://www.canva.dev/blog/engineering/supporting-gpu-accelerated-machine-learning-with-kubernetes-and-nix) you'll learn how to package and run machine learning workloads in Kubernetes using Nix and NVIDIA - [Nix](https://nix.dev/manual/nix/2.28) - [github.com/NVIDIA/nvidia-docker: NVIDIA/nvidia-docker/volumes.go](https://github.com/NVIDIA/nvidia-docker/blob/8c0eeba474cace48fdb8216f518063db2bd2d4d1/tools/src/nvidia/volumes.go#L103) NVIDIAโ€™s documentation is disappointingly evasive on what the โ€œdriverโ€ is, but we find a good answer in their official source code. - [==catalog.ngc.nvidia.com: NVIDIA GPU Operator - Helm chart== ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://catalog.ngc.nvidia.com/orgs/nvidia/helm-charts/gpu-operator) @@ -213,7 +213,7 @@ - [betterprogramming.pub: Attach a Visual Debugger to ML-training Jobs on Kubernetes](https://betterprogramming.pub/attach-a-visual-debugger-to-ml-training-jobs-on-kubernetes-eb9678389f1f) - As machine learning models grow in size and complexity, cloud resources are more and more often required for training. However, debugging training jobs running in the cloud can be time-consuming and challenging. In this blog post, weโ€™ll explore how to attach a visual debugger in VSCode to a remote deep learning training environment, making debugging simpler and more efficient. - - In this tutorial, you'll deploy a local Kubernetes cluster with k3d, install the MLOps workflow orchestration engine Flyte, create a simple training workflow, and finally visually debug it using VSCode and debugpy + - you'll deploy a local Kubernetes cluster with k3d, install the MLOps workflow orchestration engine Flyte, create a simple training workflow, and finally visually debug it using VSCode and debugpy ## Samples diff --git a/docs/monitoring.md b/docs/monitoring.md index c98b91ec..730e1776 100644 --- a/docs/monitoring.md +++ b/docs/monitoring.md @@ -68,7 +68,7 @@ - [bravenewgeek.com: The Observability Pipeline](https://bravenewgeek.com/the-observability-pipeline) - [thenewstack.io: 3 Key Configuration Challenges for Kubernetes Monitoring with Prometheus](https://thenewstack.io/3-key-configuration-challenges-for-kubernetes-monitoring-with-prometheus) - [sysdig.com: Kubernetes Monitoring with Prometheus, the ultimate guide ๐ŸŒŸ](https://www.sysdig.com/blog/kubernetes-monitoring-prometheus) -- [sysdig.com: How to monitor kube-proxy ๐ŸŒŸ](https://www.sysdig.com/blog/monitor-kube-proxy) In this article, you will learn how to monitor kube-proxy to ensure the correct health of your cluster network. +- [sysdig.com: How to monitor kube-proxy ๐ŸŒŸ](https://www.sysdig.com/blog/monitor-kube-proxy) how to monitor kube-proxy to ensure the correct health of your cluster network. - [thenewstack.io: Monitoring vs. Observability: Whatโ€™s the Difference?](https://thenewstack.io/monitoring-vs-observability-whats-the-difference) - [getenroute.io: TSDB, Prometheus, Grafana In Kubernetes: Tracing A Variable Across The OSS Monitoring Stack](https://www.saaras.io/blog/leverage-open-source-oss-derive-insights-grafana-prometheus) - [dashbird.io: Monitoring vs Observability: Can you tell the difference? ๐ŸŒŸ](https://dashbird.io/blog/monitoring-vs-observability) @@ -259,7 +259,7 @@ OpenShift Cluster Monitoring components cannot be extended since they are read o - [blog.bigdataboutique.com: Tuning Elasticsearch: The Ideal Java Heap Size](https://bigdataboutique.com/blog/tuning-elasticsearch-the-ideal-java-heap-size-2toq2j) - [javatechonline.com: How To Monitor Spring Boot Microservices Using ELK Stack?](https://javatechonline.com/how-to-monitor-spring-boot-microservices-using-elk-stack) - [dzone: Running Elasticsearch on Kubernetes](https://dzone.com/articles/running-elasticsearch-on-kubernetes) A bit of a cross-over with the Cloud Zone, we explore the structures of both Elasticsearch and Kubernetes, and how to deploy Elasticsearch on K8s. -- [==medium: Which Elasticsearch Provider is Right For You?== ๐ŸŒŸ](https://medium.com/gigasearch/which-elasticsearch-provider-is-right-for-you-3d596a65e704) In this post, weโ€™ll explain the core differences between Elastic Cloud, AWS ESS, and self-hosted, so that you can make an informed decision. +- [==medium: Which Elasticsearch Provider is Right For You?== ๐ŸŒŸ](https://medium.com/gigasearch/which-elasticsearch-provider-is-right-for-you-3d596a65e704) weโ€™ll explain the core differences between Elastic Cloud, AWS ESS, and self-hosted, so that you can make an informed decision. | | __AWS ESS__ | __Elastic Cloud__ | __Self-hosted__ | | :--- | :--- | :--- | :--- | @@ -271,8 +271,8 @@ OpenShift Cluster Monitoring components cannot be extended since they are read o - [jertel/elastalert2](https://github.com/jertel/elastalert2) ElastAlert 2 is a continuation of the original yelp/elastalert project. ElastAlert 2 is a standalone software tool for alerting on anomalies, spikes, or other patterns of interest from data in Elasticsearch and OpenSearch. ElastAlert 2 is backwards compatible with the original ElastAlert rules - [medium.com/hepsiburadatech: Hepsiburada Search Engine on Kubernetes](https://medium.com/hepsiburadatech/hepsiburada-search-engine-on-kubernetes-1fe03a3e71a3) In this case study, you'll learn how Hepsiburada migrated from an on-premises active-active Elasticsearch cluster (manually scaled) deployed in two data centers to a multi-zone Google Cloud Kubernetes cluster that can scale automatically. -- [dev.to/sagary2j: ELK Stack Deployment using MiniKube single node architecture](https://dev.to/sagary2j/elk-stack-deployment-using-minikube-single-node-architecture-16cl) In this tutorial, you will learn how to deploy and expose Elastic Search, Logstash and Kibana on minikube. -- [search-guard.com/sgctl-elasticsearch: SGCTL - TAKE BACK CONTROL](https://search-guard.com/sgctl-elasticsearch) In this article, we look at the new Search Guard Control command line tool that ships with Search Guard FLX and demonstrate how easy it has become to configure security for Elasticsearch. +- [dev.to/sagary2j: ELK Stack Deployment using MiniKube single node architecture](https://dev.to/sagary2j/elk-stack-deployment-using-minikube-single-node-architecture-16cl) how to deploy and expose Elastic Search, Logstash and Kibana on minikube. +- [search-guard.com/sgctl-elasticsearch: SGCTL - TAKE BACK CONTROL](https://search-guard.com/sgctl-elasticsearch) we look at the new Search Guard Control command line tool that ships with Search Guard FLX and demonstrate how easy it has become to configure security for Elasticsearch. #### Elastic Cloud on Kubernetes (ECK) diff --git a/docs/nosql.md b/docs/nosql.md index a225b50a..631c8889 100644 --- a/docs/nosql.md +++ b/docs/nosql.md @@ -56,7 +56,7 @@ - [MongoDB and Kubernetes ๐ŸŒŸ](https://www.mongodb.com/products/integrations/kubernetes) - [betterprogramming.pub: MongoDB Schema Validation Rules](https://betterprogramming.pub/mongodb-schema-validation-rules-8a1afc6ea67b) How to apply schema validation rules in a collection. - [hashinteractive.com: MONGODUMP AND MONGORESTORE VS MONGOEXPORT AND MONGOIMPORT](https://hashinteractive.com/blog/mongodump-and-mongorestore-vs-mongoexport-and-mongoimport) -- [==adamtheautomator.com: How To Perform a MongoDB Kubernetes Installation== ๐ŸŒŸ](https://adamtheautomator.com/mongodb-kubernetes) In this tutorial, you'll learn how to deploy MongoDB to Kubernetes using the MongoDB Operator. +- [==adamtheautomator.com: How To Perform a MongoDB Kubernetes Installation== ๐ŸŒŸ](https://adamtheautomator.com/mongodb-kubernetes) you'll learn how to deploy MongoDB to Kubernetes using the MongoDB Operator. - [code.likeagirl.io: Docker: Setup Simple Application with MongoDB for Data Storage](https://code.likeagirl.io/docker-setup-simple-application-with-mongodb-for-data-storage-272bdb3036ad) - [thenewstack.io: Deploy MongoDB in a Container, Access It Outside the Cluster](https://thenewstack.io/deploy-mongodb-in-a-container-access-it-outside-the-cluster) How to a deploy a containerized version of MongoDB and connect to it from a machine or service outside of the hosting server. - [==github.com/oslabs-beta: Odin's Eye==](https://github.com/oslabs-beta/OdinsEye) Odin's Eye is a monitoring tool for Kubernetes and containerized MongoDB diff --git a/docs/ocp3.md b/docs/ocp3.md index 722fa36a..8e73dbf7 100644 --- a/docs/ocp3.md +++ b/docs/ocp3.md @@ -18,9 +18,9 @@ - [claydesk.com: Google Cloud App Engine Vs Red Hat OpenShift](https://www.claydesk.com/ecampus/google-cloud-app-engine-vs-red-hat) - [certdepot.net: OpenShift Free available resources ๐ŸŒŸ](https://www.certdepot.net/openshift-free-available-resources) -- [blog.openshift.com: Using OpenShift 3 on your **local environment** ๐ŸŒŸ](https://blog.openshift.com/using-openshift-3-on-your-local-environment) +- [blog.openshift.com/: Using OpenShift 3 on your **local environment** ๐ŸŒŸ](https://blog.openshift.com/using-openshift-3-on-your-local-environment) - [developers.redhat.com: Securing .NET Core on OpenShift using HTTPS](https://developers.redhat.com/blog/2018/10/12/securing-net-core-on-openshift-using-https) -- [blog.openshift.com - Kubernetes: A Podโ€™s Life ๐ŸŒŸ](https://www.redhat.com/en/blog/kubernetes-pods-life) +- [blog.openshift.com/ - Kubernetes: A Podโ€™s Life ๐ŸŒŸ](https://www.redhat.com/en/blog/kubernetes-pods-life) - [Container-native virtualization allows to run and manage virtual machine workloads alongside container workloads](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.2/html/container-native_virtualization/container-native-virtualization-2-1-release-notes) - [developers.redhat.com: Handling Angular environments in continuous delivery with Red Hat OpenShift](https://developers.redhat.com/blog/2019/11/27/handling-angular-environments-in-continuous-delivery-with-red-hat-openshift) - [developers.redhat.com: Customizing OpenShift project creation ๐ŸŒŸ](https://developers.redhat.com/blog/2020/02/05/customizing-openshift-project-creation) @@ -33,15 +33,15 @@ ## Helm Charts and OpenShift 3 -- [blog.openshift.com: From Templates to Openshift Helm Charts](https://www.redhat.com/en/blog/from-templates-to-openshift-helm-charts) +- [blog.openshift.com/: From Templates to Openshift Helm Charts](https://www.redhat.com/en/blog/from-templates-to-openshift-helm-charts) - [Templating on OpenShift: should I use Helm templates or OpenShift templates? ๐ŸŒŸ](https://www.theodo.com/en-fr/blog/openshift-what-templates-should-you-use-helm-or-openshift) ## OpenShift GitOps -- [blog.openshift.com: Introduction to GitOps with OpenShift](https://blog.openshift.comintroduction-to-gitops-with-openshift) +- [blog.openshift.com/: Introduction to GitOps with OpenShift](https://blog.openshift.com/introduction-to-gitops-with-openshift) - [learn.openshift.com: GitOps introduction](https://learn.openshift.com/introduction/gitops-introduction) -- [blog.openshift.com: is it too late to integrate GitOps?](https://blog.openshift.comis-it-too-late-to-integrate-gitops) -- [blog.openshift.com: OpenShift Authentication Integration with ArgoCD](https://blogopenshift.com/openshift-authentication-integration-with-argocd) +- [blog.openshift.com/: is it too late to integrate GitOps?](https://blog.openshift.com/is-it-too-late-to-integrate-gitops) +- [blog.openshift.com/: OpenShift Authentication Integration with ArgoCD](https://blog.openshift.com/openshift-authentication-integration-with-argocd) - [openshift.com: From Code to Production with GitOps, Tekton and ArgoCD ๐ŸŒŸ](https://www.redhat.com/en/blog/from-code-to-production-with-gitops) ## Debugging apps @@ -51,19 +51,19 @@ ## Capacity Management -- [blog.openshift.com/full-cluster-capacity-management-monitoring-openshift](https://blogopenshift.com/full-cluster-capacity-management-monitoring-openshift) -- [blog.openshift.com/full-cluster-part-2-protecting-nodes](https://blog.openshift.comfull-cluster-part-2-protecting-nodes) -- [full-cluster-part-3-capacity-management](https://blog.openshift.comfull-cluster-part-3-capacity-management) -- [blog.openshift.comhow-full-is-my-cluster-part-4-right-sizing-pods-with-vertical-pod-autoscaler](https://blogopenshift.com/how-full-is-my-cluster-part-4-right-sizing-pods-with-vertical-pod-autoscaler) +- [blog.openshift.com/full-cluster-capacity-management-monitoring-openshift](https://blog.openshift.com/full-cluster-capacity-management-monitoring-openshift) +- [blog.openshift.com/full-cluster-part-2-protecting-nodes](https://blog.openshift.com/full-cluster-part-2-protecting-nodes) +- [full-cluster-part-3-capacity-management](https://blog.openshift.com/full-cluster-part-3-capacity-management) +- [blog.openshift.com/how-full-is-my-cluster-part-4-right-sizing-pods-with-vertical-pod-autoscaler](https://blog.openshift.com/how-full-is-my-cluster-part-4-right-sizing-pods-with-vertical-pod-autoscaler) - [blog.openshift.com/how-full-is-my-cluster-part-5-a-capacity-management-dashboard](https:/blog.openshift.com/how-full-is-my-cluster-part-5-a-capacity-management-dashboard) ## OpenShift High Availability - [blog.openshift.com/tag/multi-datacenter](https://www.redhat.com/en/blog?f[0]=taxonomy_blog_post_category_tid:107161&f[1]=taxonomy_topic_tid:75521) -- [blog.openshift.com: How to survive an outage and live to tell about it!](https://www.redhat.com/en/blog/metro-area-openshift-stretch-cluster-how-to-survive-an-outage-and-live-to-tell-about-it) -- [blog.openshift.com: Stateful Workloads and the Two Data Center Conundrum](https://www.redhat.com/en/blog/stateful-workloads-and-the-two-data-center-conundrum) -- [OpenShift 3.11 Multi-cluster Federation](https://blog.openshift.comkubernetes-federation-v2-on-openshift-3-11) -- [Multi-cluster Federation in OpenShift 4 is called **KubeFed**](https://blog.openshift.comfederation-v2-is-now-kubefed) +- [blog.openshift.com/: How to survive an outage and live to tell about it!](https://www.redhat.com/en/blog/metro-area-openshift-stretch-cluster-how-to-survive-an-outage-and-live-to-tell-about-it) +- [blog.openshift.com/: Stateful Workloads and the Two Data Center Conundrum](https://www.redhat.com/en/blog/stateful-workloads-and-the-two-data-center-conundrum) +- [OpenShift 3.11 Multi-cluster Federation](https://blog.openshift.com/kubernetes-federation-v2-on-openshift-3-11) +- [Multi-cluster Federation in OpenShift 4 is called **KubeFed**](https://blog.openshift.com/federation-v2-is-now-kubefed) - [**KubeFed Operator**](https://operatorhub.io/operator/kubefed-operator) ## Troubleshooting Java applications on Openshift diff --git a/docs/ocp4.md b/docs/ocp4.md index 7f361f4e..224fe2b8 100644 --- a/docs/ocp4.md +++ b/docs/ocp4.md @@ -145,7 +145,7 @@ - [redhat.com: Meet single node OpenShift: Our newest small OpenShift footprint for edge architectures](https://www.redhat.com/en/blog/meet-single-node-openshift-our-smallest-openshift-footprint-edge-architectures) - [cloud.redhat.com: How to Build a Disconnected OpenShift Cluster With Mirror Registries on RHEL CoreOS Using Podman and Systemd](https://www.redhat.com/en/blog/how-to-build-a-disconnected-openshift-cluster-with-mirror-registries-on-rhel-coreos-using-podman-and-systemd) - [github.com/openshift/hypershift: HyperShift](https://github.com/openshift/hypershift) Hyperscale OpenShift - clusters with hosted control planes. HyperShift is a middleware for hosting OpenShift control planes at scale that solves for cost and time to provision, as well as portability cross cloud with strong separation of concerns between management and workloads. Clusters are fully compliant OpenShift Container Platform (OCP) clusters and are compatible with standard OCP and Kubernetes toolchains. -- [michaelkotelnikov.medium.com: Managing Network Security Lifecycles in Multi Cluster OpenShift Environments with OpenShift Platform Plus](https://michaelkotelnikov.medium.com/maintaining-network-traffic-compliance-in-multi-cluster-openshift-environments-with-openshift-54fe369aa346) In this article, you will learn how the tools in the OpenShift Platform Plus bundle help an organization maintain and secure network traffic flows in multi cluster OpenShift environments. +- [michaelkotelnikov.medium.com: Managing Network Security Lifecycles in Multi Cluster OpenShift Environments with OpenShift Platform Plus](https://michaelkotelnikov.medium.com/maintaining-network-traffic-compliance-in-multi-cluster-openshift-environments-with-openshift-54fe369aa346) how the tools in the OpenShift Platform Plus bundle help an organization maintain and secure network traffic flows in multi cluster OpenShift environments. - [medium.com/@shrishs: Application Backup and Restore using Openshift API for Data Protection(OADP)](https://medium.com/@shrishs/application-backup-and-restore-using-openshift-api-for-data-protection-oadp-790d39ad96d4) - [==dev.to: Deep Dive into AWS OIDC identity provider when installing OpenShift using manual authentication mode with STS==](https://dev.to/mtulio/deep-dive-into-aws-oidc-identity-provider-when-installing-openshift-with-iam-sts-manual-sts-support-1bo7) - [venturebeat.com: Red Hat gives an ARM up to OpenShift Kubernetes operations](https://venturebeat.com/data-infrastructure/red-hat-gives-an-arm-up-to-openshift-kubernetes-operations) @@ -643,7 +643,7 @@ oc login - [Getting Started with KubeVirt Containers and Virtual Machines Together](https://www.redhat.com/en/blog/getting-started-with-kubevirt) - [containerjournal.com: Red Hat Integrates KubeVirt With Kubernetes Management Platform From SAP](https://cloudnativenow.com/topics/cloudnativeplatforms/red-hat-integrates-kubevirt-with-kubernetes-management-platform-from-sap) - [kubermatic.com: Bringing Your VMs to Kubernetes With KubeVirt](https://www.kubermatic.com/blog/bringing-your-vms-to-kubernetes-with-kubevirt) -- [medium.com/adessoturkey: Create a Windows VM in Kubernetes using KubeVirt](https://medium.com/adessoturkey/create-a-windows-vm-in-kubernetes-using-kubevirt-b5f54fb10ffd) Windows VM in a Kubernetes Cluster. In this tutorial, you will learn how to run a Windows VM inside a KinD Cluster that is running on an Ubuntu machine +- [medium.com/adessoturkey: Create a Windows VM in Kubernetes using KubeVirt](https://medium.com/adessoturkey/create-a-windows-vm-in-kubernetes-using-kubevirt-b5f54fb10ffd) Windows VM in a Kubernetes Cluster. how to run a Windows VM inside a KinD Cluster that is running on an Ubuntu machine ## Networking and Network Policy in OCP4. SDN/CNI plug-ins diff --git a/docs/openshift.md b/docs/openshift.md index c156461d..f47ad0a5 100644 --- a/docs/openshift.md +++ b/docs/openshift.md @@ -81,7 +81,7 @@ - [docs.microsoft.com: JBoss deployment with Red Hat on Azure ๐ŸŒŸ](https://learn.microsoft.com/en-us/azure/developer/java/ee/jboss-eap-on-aro) ## Blogs - - [How Kruize Optimizes OpenShift Workloads](https://developers.redhat.com/articles/2025/06/25/how-kruize-optimizes-openshift-workloads#what_is_kruize_autotune_) ๐ŸŒŸ - This article introduces Kruize, an open-source solution for performance testing and optimization of applications running on OpenShift. It details how Kruize uses Kubernetes operators to collect performance metrics, identify performance bottlenecks, and suggest optimal configurations for workloads, aiming to improve resource utilization and application performance. + - [How Kruize Optimizes OpenShift Workloads](https://developers.redhat.com/articles/2025/06/25/how-kruize-optimizes-openshift-workloads#what_is_kruize_autotune_) ๐ŸŒŸ -Kruize, an open-source solution for performance testing and optimization of applications running on OpenShift. It details how Kruize uses Kubernetes operators to collect performance metrics, identify performance bottlenecks, and suggest optimal configurations for workloads, aiming to improve resource utilization and application performance. - [Rcarrata's blog](https://rcarrata.com) @@ -262,7 +262,7 @@ The other SCCs provide intermediate levels of constraint for various use cases. - [stackoverflow.com: Is that possible to deploy an openshift or kubernetes in DMZ zone? ๐ŸŒŸ](https://stackoverflow.com/questions/59518363/is-that-possible-to-deploy-an-openshift-or-kubernetes-in-dmz-zone) - [OpenShift and Network Security Zones: Coexistence Approaches ๐ŸŒŸ๐ŸŒŸ๐ŸŒŸ](https://www.redhat.com/en/blog/openshift-and-network-security-zones-coexistence-approaches) - - **Introduction:** Kubernetes and consequently OpenShift adopt a [flat Software Defined Network (SDN) model](https://kubernetes.io/docs/concepts/cluster-administration/networking), which means that all pods in the SDN are in the same logical network. Traditional network implementations adopt a zoning model in which different networks or zones are dedicated to specific purposes, with very strict communication rules between each zone. When implementing OpenShift in organizations that are using network security zones, the two models may clash. In this article, we will analyze a few options for coexistence. But first, letโ€™s understand the two network models a bit more in depth. + - **Introduction:** Kubernetes and consequently OpenShift adopt a [flat Software Defined Network (SDN) model](https://kubernetes.io/docs/concepts/cluster-administration/networking), which means that all pods in the SDN are in the same logical network. Traditional network implementations adopt a zoning model in which different networks or zones are dedicated to specific purposes, with very strict communication rules between each zone. When implementing OpenShift in organizations that are using network security zones, the two models may clash. we will analyze a few options for coexistence. But first, letโ€™s understand the two network models a bit more in depth. - Network Zones have been the widely accepted approach for building security into a network architecture. The general idea is to create separate networks, each with a specific purpose. Each network contains devices with similar security profiles. Communications between networks is highly scrutinized and controlled by firewall rules ([perimeter defense](https://en.wikipedia.org/wiki/All_round_defence)). - **Conclusion:** A companyโ€™s security organization must be involved when deciding how to deploy OpenShift with regard to traditional network zones. Depending on their level of comfort with new technologies you may have different options. If physical network separation is the only acceptable choice, you will have to build a cluster per network zone. If logical network type of separations can be considered, then there are ways to stretch a single OpenShift deployment across multiple network zones. This post presented a few technical approaches. diff --git a/docs/performance-testing-with-jenkins-and-jmeter.md b/docs/performance-testing-with-jenkins-and-jmeter.md index 6a428cc6..2b9418c5 100644 --- a/docs/performance-testing-with-jenkins-and-jmeter.md +++ b/docs/performance-testing-with-jenkins-and-jmeter.md @@ -27,7 +27,7 @@ - [The Hidden CPU Throttling Crisis in Kubernetes Clusters](https://www.kubenatives.com/p/the-hidden-cpu-throttling-crisis) - *(Related to kubernetes-troubleshooting topic)* - [How Kruize Optimizes OpenShift Workloads](https://developers.redhat.com/articles/2025/06/25/how-kruize-optimizes-openshift-workloads#what_is_kruize_autotune_) - *(Related to openshift topic)* -- [dev.to: The most elegant way to performance test your microservices running on Kubernetes](https://dev.to/ksingh7/the-most-elegant-way-to-performance-test-your-microservices-running-on-kubernetes-2mo2) In this article, you'll learn how to measure the performance of backend applications running on Kubernetes & how to use Vegeta, a versatile HTTP load testing and benchmarking tool written in Golang +- [dev.to: The most elegant way to performance test your microservices running on Kubernetes](https://dev.to/ksingh7/the-most-elegant-way-to-performance-test-your-microservices-running-on-kubernetes-2mo2) you'll learn how to measure the performance of backend applications running on Kubernetes & how to use Vegeta, a versatile HTTP load testing and benchmarking tool written in Golang - [garden.io: Performance testing on a microservice architecture](https://docs.garden.io) ## JMeter @@ -75,7 +75,7 @@ ### API Load Testing -- [API Load Testing With Gatling](https://dzone.com/articles/api-load-testing-with-gatling) In this article, we'll learn how to perform a load test on a REST API endpoint using Gatling and JMeter. Read on for more information! +- [API Load Testing With Gatling](https://dzone.com/articles/api-load-testing-with-gatling) we'll learn how to perform a load test on a REST API endpoint using Gatling and JMeter. Read on for more information! - [Load Testing Your DataBase-Connected APIs With Gatling](https://dzone.com/articles/load-testing-your-database-connected-apis-with-gat) ### Gatling and Maven diff --git a/docs/prometheus.md b/docs/prometheus.md index e3f00318..234f2c9a 100644 --- a/docs/prometheus.md +++ b/docs/prometheus.md @@ -126,9 +126,9 @@ Thanos Metrics with prometheus in Kubernetes environments. - [==medium.com/gumgum-tech: How to reduce your Prometheus cost | Daniel Fernandez==](https://medium.com/gumgum-tech/how-to-reduce-your-prometheus-cost-6c7cc685e347) Prometheus is an excellent service to monitor your containerized applications. Still, it can get expensive quickly if you ingest all of the Kube-state-metrics metrics, and you are probably not even using them all. This is especially true when using a service like Amazon Managed Service for Prometheus (AMP) because you get billed by metrics ingested and stored. - [medium.com/kubecost: Prometheus Grafana: configuration & query examples ๐ŸŒŸ](https://medium.com/kubecost/prometheus-grafana-configuration-query-examples-885b91b6ca6) - [sysdig.com: Prometheus 2.37 โ€“ The first long-term supported release! ๐ŸŒŸ](https://www.sysdig.com/blog) -- [dev.to: How to monitor nginx in Kubernetes with Prometheus](https://dev.to/eckelon/how-to-monitor-nginx-in-kubernetes-with-prometheus-j5f) In this article, you'll learn how to monitor nginx in Kubernetes with Prometheus and troubleshoot issues related to latency, saturation, etc +- [dev.to: How to monitor nginx in Kubernetes with Prometheus](https://dev.to/eckelon/how-to-monitor-nginx-in-kubernetes-with-prometheus-j5f) you'll learn how to monitor nginx in Kubernetes with Prometheus and troubleshoot issues related to latency, saturation, etc - [promlabs.com: Avoid These 6 Mistakes When Getting Started With Prometheus](https://promlabs.com/blog/2022/12/11/avoid-these-6-mistakes-when-getting-started-with-prometheus) -- [itnext.io: Hardening Monitoring: a step-by-step guide](https://itnext.io/hardening-monitoring-a-step-by-step-guide-7a18007c915) In this article, I walk through how to serve metrics-server, prometheus-server and prometheus-adapter securely. +- [itnext.io: Hardening Monitoring: a step-by-step guide](https://itnext.io/hardening-monitoring-a-step-by-step-guide-7a18007c915) I walk through how to serve metrics-server, prometheus-server and prometheus-adapter securely. - [blog.devops.dev: Deploying Prometheus and Grafana in a Multi-Node Kubernetes Cluster and Auto-Scaling with KEDA](https://blog.devops.dev/deploying-prometheus-and-grafana-in-a-multi-node-kubernetes-cluster-and-auto-scaling-with-keda-eccecfbd8950) - [blog.devops.dev: Observability: Better CI for your prometheus alerts with pint instead of promtool ๐ŸŒŸ](https://blog.devops.dev/observability-better-ci-for-your-prometheus-alerts-32aaea3b3d77) - [blog.zelarsoft.com: Website Monitoring By Using Prometheus Blackbox Exporter with Grafana](https://blog.zelarsoft.com/website-monitoring-by-using-prometheus-blackbox-exporter-with-grafana-c4004bb03131) @@ -137,7 +137,7 @@ Thanos Metrics with prometheus in Kubernetes environments. - [==blog.devops.dev: How to Monitor your Application using Prometheus== ๐ŸŒŸ](https://blog.devops.dev/deploying-and-monitoring-an-application-using-prometheus-on-kubernetes-cluster-483773f789f) In this Blog, we will be able to deploy our application in an EKS cluster and monitor it with Prometheus - [==dzone.com: Deploying Prometheus and Grafana as Applications Using ArgoCDโ€Šโ€”โ€ŠIncluding Dashboards==](https://dzone.com/articles/deploying-prometheus-and-grafana-as-applications-u) Goodbye to the headaches of manual infrastructure management, and hello to a more efficient and scalable approach with ArgoCD. - [medium.com: How to find unused Prometheus metrics using mimirtool ๐ŸŒŸ](https://medium.com/@dotdc/how-to-find-unused-prometheus-metrics-using-mimirtool-a44560173543) -- [rtfm.co.ua: Prometheus: Kubernetes endpoints monitoring with blackbox-exporter](https://rtfm.co.ua/en/prometheus-kubernetes-endpoints-monitoring-with-blackbox-exporter) In this tutorial, you will learn how to deploy the blackbox-exporter and configure monitoring of endpoints with the Kubernetes ServiceMonitors. And finally, you will discuss Blackbox probes which are used to poll endpoints. +- [rtfm.co.ua: Prometheus: Kubernetes endpoints monitoring with blackbox-exporter](https://rtfm.co.ua/en/prometheus-kubernetes-endpoints-monitoring-with-blackbox-exporter) how to deploy the blackbox-exporter and configure monitoring of endpoints with the Kubernetes ServiceMonitors. And finally, you will discuss Blackbox probes which are used to poll endpoints. - [medium.com/criteo-engineering: How we reduced our Prometheus infrastructure footprint by a third](https://medium.com/criteo-engineering/how-we-reduced-our-prometheus-infrastructure-footprint-by-a-third-8bf8171e46b1) - [blog.devops.dev: Observability Concept in Prometheus](https://blog.devops.dev/observability-concept-in-prometheus-9f0093fa7495) In This blog, we will talk more about other components of Prometheus that are useful in understanding and in the field of DevOps and SRE. These terms are common in Prometheus also the topics are discussed in PCA certification - [==horovits.medium.com: Prometheus Now Supports OpenTelemetry Metrics==](https://horovits.medium.com/prometheus-now-supports-opentelemetry-metrics-83f85878e46a) @@ -234,7 +234,7 @@ Thanos Metrics with prometheus in Kubernetes environments. - [goatlas-io/atlas](https://github.com/goatlas-io/atlas) Atlas provides the ability to easily run a secure distributed Thanos deployment. - [==thanos-io/kube-thanos: Kubernetes specific configuration for deploying Thanos==](https://github.com/thanos-io/kube-thanos) - [medium.com/nerd-for-tech: Deep Dive into Thanos-Part I | Pavan Kumar](https://medium.com/nerd-for-tech/deep-dive-into-thanos-part-i-f72ecba39f76) Monitoring Kubernetes Workloads with Thanos and Prometheus Operator. - - [particule.io: Multi-Cluster Monitoring with Thanos ๐ŸŒŸ](https://particule.io/en/blog/thanos-monitoring) In this article, you'll learn the limitations of a Prometheus-only monitoring stack and why moving to a Thanos-based stack can improve metrics retention and reduce overall costs for your clusters + - [particule.io: Multi-Cluster Monitoring with Thanos ๐ŸŒŸ](https://particule.io/en/blog/thanos-monitoring) you'll learn the limitations of a Prometheus-only monitoring stack and why moving to a Thanos-based stack can improve metrics retention and reduce overall costs for your clusters - [**M3**:](https://m3db.io) An open source, large-scale metrics platform developed by Uber. It has its own time series database, M3DB. Like Thanos, M3 also uses a side-car container to push the metrics to the DB. In addition, it supports metric deduplication and merging, and provides distributed query support. Although it's exciting to see attempts to address the challenges of running Prometheus at scale, these are very young projects that are not widely used yet. - [VictoriaMetrics](https://victoriametrics.com) diff --git a/docs/qa.md b/docs/qa.md index 14e0ad13..dc3bf98d 100644 --- a/docs/qa.md +++ b/docs/qa.md @@ -52,7 +52,7 @@ the #1 test automation community. - [adequatica.medium.com: Principles of Writing Automated Tests](https://adequatica.medium.com/principles-of-writing-automated-tests-a2b72218264c) While working on test automation in different projects, Iโ€™ve learned that there are not enough static analyzers and code formatters for writing good tests. The team had to have an agreement on how the tests should be written. - [getxray.app: The top 5 software testing trends of 2022](https://www.getxray.app/blog/the-top-5-software-testing-trends-of-2022) - [linkedin.com: Microservices are testable in isolation ๐ŸŒŸ](https://www.linkedin.com/pulse/microservices-testable-isolation-chris-richardson) -- [dzone: Testing the Untestable and Other Anti-Patterns](https://dzone.com/articles/testing-the-untestable-and-other-anti-patterns) The productive path to establishing and maintaining effective test automation is not easy. In this post, explore well-intentioned yet harmful anti-patterns. +- [dzone: Testing the Untestable and Other Anti-Patterns](https://dzone.com/articles/testing-the-untestable-and-other-anti-patterns) The productive path to establishing and maintaining effective test automation is not easy. explore well-intentioned yet harmful anti-patterns. - [softwaretestingsapiens.com: Roadmap to learn API Testing in Just 30 days](https://www.softwaretestingsapiens.com/roadmap-to-learn-api-testing) ## Blogs @@ -103,10 +103,10 @@ the #1 test automation community. - [thenewstack.io: Google Introduces ClusterFuzzLite Security Tool for CI/CD](https://thenewstack.io/google-introduces-clusterfuzzlite-security-tool-for-ci-cd) - [convert.com: Top 10 A/B Testing Tools That Are Good for the Next 5 Years (Vetted by Features, Privacy, Maturity & Price)](https://www.convert.com/blog/a-b-testing/a-b-testing-tools-2022-beyond) - [grafana.com: How to build performance tests into your CI pipeline with k6, GitHub Actions, and Grafana](https://grafana.com/blog/how-to-build-performance-tests-into-your-ci-pipeline-with-k6-github-actions-and-grafana) - - [itnext.io: How to run distributed performance tests in Kubernetes with K6](https://itnext.io/how-to-run-distributed-performance-tests-in-kubernetes-with-k6-and-elasticsearch-4ff8142bc774) In this article, you'll learn how to perform load testing natively on a Kubernetes cluster using multiple pods simulating real-world traffic to test an ElasticSearch cluster deployed using the ECK Operator + - [itnext.io: How to run distributed performance tests in Kubernetes with K6](https://itnext.io/how-to-run-distributed-performance-tests-in-kubernetes-with-k6-and-elasticsearch-4ff8142bc774) you'll learn how to perform load testing natively on a Kubernetes cluster using multiple pods simulating real-world traffic to test an ElasticSearch cluster deployed using the ECK Operator - [==circleci.com: Unit testing vs integration testing== ๐ŸŒŸ](https://circleci.com/blog/unit-testing-vs-integration-testing) - [==reviewdog - A code review dog who keeps your codebase healthy.==](https://github.com/reviewdog/reviewdog) ๐Ÿถ Automated code review tool integrated with any code analysis tools regardless of programming language -- [==dzone: Component Tests for Spring Cloud Microservices==](https://dzone.com/articles/component-tests-for-spring-cloud-microservices) In this tutorial, we discussed guidelines and considerations for Spring Cloud microservices component tests and provided a recipe for common use cases. +- [==dzone: Component Tests for Spring Cloud Microservices==](https://dzone.com/articles/component-tests-for-spring-cloud-microservices) we discussed guidelines and considerations for Spring Cloud microservices component tests and provided a recipe for common use cases. - [CoolerVoid/codecat: CodeCat - Tool to help in static code analysis](https://github.com/CoolerVoid/codecat) CodeCat is an open-source tool to help you find/track user input sinks and security bugs using static code analysis. These points follow regex rules. - [==beellz.hashnode.dev: Continuous Profiling in Kubernetes Using Pyroscope==](https://beellz.hashnode.dev/continuous-profiling-in-kubernetes-using-pyroscope) In this blog post, you will learn about continuous profiling, and then instrument a few microservices running on Kubernetes using an open-source tool called Pyroscope to find performance issues and bottlenecks in your code. diff --git a/docs/rancher.md b/docs/rancher.md index 8b2908e5..0d5aad67 100644 --- a/docs/rancher.md +++ b/docs/rancher.md @@ -106,19 +106,19 @@ - [rancher.com: Set up Your K3s Cluster for High Availability on DigitalOcean](https://www.rancher.com/blog/2020/k3s-high-availability) - [community.suse.com: Introduction to K3s ๐ŸŒŸ](https://www.rancher.com/community) - [k3s_hetzner](https://gitlab.com/k3s_hetzner/k3s_hetzner) How to build a kubernetes cluster in [Hetzner Cloud](https://www.hetzner.com/cloud) -- [en.sokube.ch: K3S + K3D = K8S : a new perfect match for dev and test](https://en.sokube.ch/post/k3s-k3d-k8s-a-new-perfect-match-for-dev-and-test-1) In this article you'll learn: +- [en.sokube.ch: K3S + K3D = K8S : a new perfect match for dev and test](https://en.sokube.ch/post/k3s-k3d-k8s-a-new-perfect-match-for-dev-and-test-1)you'll learn: - What's new with k3d v3 - Create a multi-server and multi-agent with k3s - How to replace the default CNI plugin of k3s - [edgelab ๐ŸŒŸ (with k3s) [ARCHIVED]]( http://web.archive.org/web/20251027143124/https://github.com/digitalrebar/edgelab) Materials to build and deploy a simple Edge Lab for demonstration, training and development - [github.com/erebe/personal-server: Personal server configuration with k3s ๐ŸŒŸ](https://github.com/erebe/personal-server) This document is going to describe how I manage my personal server in 2020. - [dev.to: All about k3s - Lightweight Kubernetes ๐ŸŒŸ](https://dev.to/abhinavd26/all-about-k3s-lightweight-kubernetes-3ell) -- [gabrieltanner.org: Setting up a HA Kubernetes cluster using K3S](https://gabrieltanner.org/blog/ha-kubernetes-cluster-using-k3s) In this article, you will set up your own high availability K3S cluster and create a basic Kubernetes deployment. The tutorial will show how to set up all the resources manually and you will learn how to automate it with the official Ansible script. +- [gabrieltanner.org: Setting up a HA Kubernetes cluster using K3S](https://gabrieltanner.org/blog/ha-kubernetes-cluster-using-k3s) you will set up your own high availability K3S cluster and create a basic Kubernetes deployment. The tutorial will show how to set up all the resources manually and you will learn how to automate it with the official Ansible script. - [nativecloud.dev: Scale out your Raspberry-Pi Kubernetes cluster to the cloud](https://nativecloud.dev/scale-out-your-raspberry-pi-k3s-cluster-to-the-cloud) Using Gardener Machine-Controller-Manager and Tailscale to extend a local Raspberry-Pi K3s cluster with cloud instances. - [blog.nootch.net: Kubernetes at Home With K3s](https://blog.nootch.net/post/kubernetes-at-home-with-k3s) - Try out the Kubernetes 1.23 with K3s distro: `curl -sfL https://get.k3s.io |INSTALL_K3S_VERSION="v1.23.1-rc1+k3s1" sh -` You can try on ubuntu katakoda playground in your browser :) - [==medium.com/@ostridelabs: k8s vs k3s: The Comprehensive Difference==](https://medium.com/@ostridelabs/k8s-vs-k3s-the-comprehensive-difference-f7667d141c0) -- [justinpolidori.it: LDAP authentication with Dex on Kubernetes with Vcluster (K3S)](https://www.justinpolidori.it/posts/20220611_vcluster_auth) In this article, you'll learn how to grant access to users of a vcluster using DEX as a federated OpenID provider and kubelogin as a plugin for OIDC integration +- [justinpolidori.it: LDAP authentication with Dex on Kubernetes with Vcluster (K3S)](https://www.justinpolidori.it/posts/20220611_vcluster_auth) you'll learn how to grant access to users of a vcluster using DEX as a federated OpenID provider and kubelogin as a plugin for OIDC integration - [itnext.io: Running K3S workload in a restricted environment](https://itnext.io/running-k3s-workload-in-a-restricted-environment-c2f593d19005) - [dev.to/dashaun: K3s on Raspberry Pi and ClusterHat](https://dev.to/dashaun/k3s-on-raspberry-pi-and-clusterhat-m6k) - [blog.getambassador.io: Best Tools for Kubernetes Local Development: A Comprehensive Guide](https://blog.getambassador.io/best-tools-for-kubernetes-local-development-a-comprehensive-guide-3577d351d31e) diff --git a/docs/registries.md b/docs/registries.md index 7ec5fc39..252a2631 100644 --- a/docs/registries.md +++ b/docs/registries.md @@ -139,5 +139,5 @@ ## Other Alternatives - [uber/kraken](https://github.com/uber/kraken) P2P Docker registry capable of distributing TBs of data in seconds -- [medium.com/swlh: Deploy Your Private Docker Registry as a Pod in Kubernetes](https://medium.com/swlh/deploy-your-private-docker-registry-as-a-pod-in-kubernetes-f6a489bf0180) In this tutorial, you'll deploy a TLS-enabled Private Docker Registry as a Pod. This will help you to push your custom-built images to the registry, which later can be pulled by any of the worker nodes. +- [medium.com/swlh: Deploy Your Private Docker Registry as a Pod in Kubernetes](https://medium.com/swlh/deploy-your-private-docker-registry-as-a-pod-in-kubernetes-f6a489bf0180) you'll deploy a TLS-enabled Private Docker Registry as a Pod. This will help you to push your custom-built images to the registry, which later can be pulled by any of the worker nodes. diff --git a/docs/scaffolding.md b/docs/scaffolding.md index 3ae0c294..0afaf26a 100644 --- a/docs/scaffolding.md +++ b/docs/scaffolding.md @@ -35,7 +35,7 @@ - [cloud.google.com: Kubernetes development, simplifiedโ€”Skaffold is now GA](https://cloud.google.com/blog/products/application-development/kubernetes-development-simplified-skaffold-is-now-ga) - [Cloud Code](https://cloud.google.com/code) Skaffold is the underlying engine that drives Cloud Code. - [ashishtechmill.com: CI/CD Workflow for Spring Boot Application on Kubernetes via Skaffold](https://www.ashishtechmill.com/cicd-workflow-for-spring-boot-application-on-kubernetes-via-skaffold) This article will cover how to create CI/CD workflow for a SpringBoot Application deployed to Kubernetes using Skaffold. - - [==piotrminkowski.com: Development on Kubernetes with Telepresence and Skaffold==](https://piotrminkowski.com/2021/12/21/development-on-kubernetes-with-telepresence-and-skaffold) Development on Kubernetes with Telepresence and Skaffold. In this article, you will learn how to use Telepresence, Skaffold and the Jib Maven plugin to improve your Java development workflow on Kubernetes. + - [==piotrminkowski.com: Development on Kubernetes with Telepresence and Skaffold==](https://piotrminkowski.com/2021/12/21/development-on-kubernetes-with-telepresence-and-skaffold) Development on Kubernetes with Telepresence and Skaffold. how to use Telepresence, Skaffold and the Jib Maven plugin to improve your Java development workflow on Kubernetes. - [dev.to: Getting Started With Skaffold](https://dev.to/thenjdevopsguy/getting-started-with-skaffold-5120) - [Draft](https://github.com/Azure/draft) - [Garden](https://docs.garden.io) diff --git a/docs/serverless.md b/docs/serverless.md index 0e248b02..2864d7e8 100644 --- a/docs/serverless.md +++ b/docs/serverless.md @@ -33,7 +33,7 @@ - [theregister.com: Microservices guru says think serverless, not Kubernetes: You don't want to manage 'a towering edifice of stuff'](https://www.theregister.com/software/2020/09/22/microservices-guru-says-think-serverless-not-kubernetes-you-dont-want-to-manage-a-towering-edifice-of-stuff/353334) - [serverless.com: Why we switched from docker to serverless](https://www.serverless.com/blog/why-we-switched-from-docker-to-serverless) - [developers.redhat.com: Orchestrate event-driven, distributed services with Serverless Workflow and Kubernetes](https://developers.redhat.com/blog/2020/11/26/event-driven-distributed-service-orchestration-with-serverless-workflow) -- [dzone: Implementing Serverless Microservices Architecture on AWS](https://dzone.com/articles/implementing-serverless-microservices-architecture) In this article, we will explain how enterprises can implement serverless microservices architectures using AWS Cloud. +- [dzone: Implementing Serverless Microservices Architecture on AWS](https://dzone.com/articles/implementing-serverless-microservices-architecture) we will explain how enterprises can implement serverless microservices architectures using AWS Cloud. - [docs.google.com: Serverless Guide to Success 2021](https://docs.google.com/document/u/0/d/1VEkUvTbqxfC1XyVGb2Z3DtEk9NA1M6PJpeCqEYRATLM/mobilebasic) - [vimal-dwarampudi.medium.com: Serverless Architecture design on major clouds](https://vimal-dwarampudi.medium.com/serverless-architecture-design-on-major-clouds-8c53c2aa62d2) - [dzone: When to Use Serverless, and When to Use Kubernetes ๐ŸŒŸ](https://dzone.com/articles/when-to-use-serverless-when-to-use-kubernetes) If you are stuck at a crossroads and need some help deciding, here are some conditions which might help you make your selection. @@ -42,7 +42,7 @@ - [==jeromevdl.medium.com: When to use a Lambda function, and when not?== ๐ŸŒŸ](https://jeromevdl.medium.com/when-to-use-a-lambda-function-and-when-not-9a225e6dd2dd) - [==c-sharpcorner.com: Why and When to use Azure Functions==](https://www.c-sharpcorner.com/article/why-and-when-to-use-azure-functions) - [dzone: When to Use Logic Apps and Azure Functions](https://dzone.com/articles/when-to-use-logic-apps-and-azure-functions) Here we take a look at two of the programs in Azure's toolbox, Logic Apps and Azure Functions, and compare them with each other. -- [serverlessguru.com: Enterprise Serverless Adoption ๐ŸŒŸ](https://www.sls.guru/blog/enterprise-serverless-adoption) Adopting a new architecture may be intimidating. Having to migrate all of your workloads over to your cloud provider can be time-consuming and stressful. Iโ€™m sure youโ€™re wondering, โ€œHow can I benefit from serverless?โ€ In this article, Iโ€™m going to detail how some of the biggest companies in the world are maximizing efficiencies within their organization using serverless technology! Letโ€™s dive in. +- [serverlessguru.com: Enterprise Serverless Adoption ๐ŸŒŸ](https://www.sls.guru/blog/enterprise-serverless-adoption) Adopting a new architecture may be intimidating. Having to migrate all of your workloads over to your cloud provider can be time-consuming and stressful. Iโ€™m sure youโ€™re wondering, โ€œHow can I benefit from serverless?โ€ Iโ€™m going to detail how some of the biggest companies in the world are maximizing efficiencies within their organization using serverless technology! Letโ€™s dive in. - [aws.amazon.com: Serverless or Kubernetes on AWS ๐ŸŒŸ](https://docs.aws.amazon.com/modern-apps-strategy-on-aws-how-to-choose) - [==serverlessland.com/event-driven-architecture: Introduction to Event Driven Architecture== ๐ŸŒŸ](https://serverlessland.com/event-driven-architecture) What are Event Driven Architectures ? - [medium.com/@marinradjenovic: Why do you still need to think of scalability when architecting Serverless apps?](https://medium.com/@marinradjenovic/why-do-you-still-need-to-think-of-scalability-when-architecting-serverless-apps-a2e1f14e3eca) @@ -85,7 +85,7 @@ - [wikipedia: FaaS Function as a Service](https://en.wikipedia.org/wiki/Function_as_a_service) - [redhat.com: What is Function-as-a-Service (FaaS)?](https://www.redhat.com/en/topics/cloud-native-apps/what-is-faas) - [stackify.com: What Is Function-as-a-Service? Serverless Architectures Are Here!](https://stackify.com/function-as-a-service-serverless-architecture) -- [==dev.to: FaaS on Kubernetes: From AWS Lambda & API Gateway To Knative & Kong API Gateway==](https://dev.to/pmbanugo/faas-on-kubernetes-from-aws-lambda-api-gateway-to-knative-kong-api-gateway-4n84) In this post, you will learn how to build and deploy a REST API powered by serverless functions running on Kubernetes. You will learn how to use Knative, Kong API Gateway, and the kazi CLI - [pmbanugo.me: FaaS on Kubernetes: From AWS Lambda & API Gateway To Knative & Kong API Gateway](https://pmbanugo.me/blog/faas-on-kubernetes-from-aws-lambda-api-gateway-to-knative-kong-api-gateway) +- [==dev.to: FaaS on Kubernetes: From AWS Lambda & API Gateway To Knative & Kong API Gateway==](https://dev.to/pmbanugo/faas-on-kubernetes-from-aws-lambda-api-gateway-to-knative-kong-api-gateway-4n84) how to build and deploy a REST API powered by serverless functions running on Kubernetes. You will learn how to use Knative, Kong API Gateway, and the kazi CLI - [pmbanugo.me: FaaS on Kubernetes: From AWS Lambda & API Gateway To Knative & Kong API Gateway](https://pmbanugo.me/blog/faas-on-kubernetes-from-aws-lambda-api-gateway-to-knative-kong-api-gateway) ### Serverless Ecosystems Comparison diff --git a/docs/servicemesh.md b/docs/servicemesh.md index 5cf21607..91c9b05d 100644 --- a/docs/servicemesh.md +++ b/docs/servicemesh.md @@ -81,7 +81,7 @@ ## Service Mesh Testing -- [itnext.io: Service Mesh Testing โ€” Tools & Frameworks (Open Source)](https://itnext.io/service-mesh-testing-tools-frameworks-open-source-7904ee222298) There are quite a few open-source toolsets to test and measure performance impact of service meshes. In this article you will compare: Fortio, Nighthawk, Wrk2, Httpbin, Meshery, Isotope, Hyperfoil, Service-mesh-benchmark, Locust & more. +- [itnext.io: Service Mesh Testing โ€” Tools & Frameworks (Open Source)](https://itnext.io/service-mesh-testing-tools-frameworks-open-source-7904ee222298) There are quite a few open-source toolsets to test and measure performance impact of service meshes.you will compare: Fortio, Nighthawk, Wrk2, Httpbin, Meshery, Isotope, Hyperfoil, Service-mesh-benchmark, Locust & more. ## Consul Service Mesh @@ -122,7 +122,7 @@ - [thenewstack.io: Is Linkerd Winning the Service Mesh Race?](https://thenewstack.io/is-linkerd-winning-the-service-mesh-race) - [medium.com/attest-product-and-technology: Debugging mislabelled route metrics from Linkerd](https://medium.com/attest-product-and-technology/debugging-mislabelled-route-metrics-from-linkerd-dda47fdff04a) - [buoyant.io: Upgrading to Linkerd 2.12: Zero-trust-ready route-based policy, Gateway API, access logging](https://www.buoyant.io/service-mesh-academy/upgrading-to-linkerd-2-12) In this webinar, you'll hear all about the Linkerd 2.12 release and what you need to know to upgrade. This massive release introduces route-based policy to Linkerd, allowing users to define and enforce authorization policies based on HTTP paths or gRPC methods in a fully zero-trust way. It also introduces support for iptables-nft and Apache-style access logging, authorizes all probes by default (even in default-deny clusters), and includes a host of other improvements and performance enhancements. -- [medium.com/@eshiett314: Mutual TLS with Emissary-Ingress and Linkerd](https://medium.com/@eshiett314/mutual-tls-with-emissary-ingress-and-linkerd-4aa3ffe0413f) In this article, you'll learn the meaning of Mutual TLS, why it is needed in Kubernetes and also implement it with Emissary-ingress +- [medium.com/@eshiett314: Mutual TLS with Emissary-Ingress and Linkerd](https://medium.com/@eshiett314/mutual-tls-with-emissary-ingress-and-linkerd-4aa3ffe0413f) you'll learn the meaning of Mutual TLS, why it is needed in Kubernetes and also implement it with Emissary-ingress - [dev.to: Linkerd and GitOps](https://dev.to/thenjdevopsguy/linkerd-and-gitops-115a) - [buoyant.io: Multi-Cluster, Multi-Region Setup using Linkerd Service Mesh](https://www.buoyant.io/blog/multi-cluster-multi-region-setup-using-linkerd-service-mesh) This article teaches how to enhance Kubernetes with multi-cluster architecture for improved availability, fault tolerance, and performance with a Service Mesh such as Linkerd diff --git a/docs/terraform.md b/docs/terraform.md index 041b443c..88ec2960 100644 --- a/docs/terraform.md +++ b/docs/terraform.md @@ -237,20 +237,20 @@ - [==AdminTurnedDevOps/Terraform-The-Hard-Way==](https://github.com/AdminTurnedDevOps/Terraform-The-Hard-Way) The most efficient way to learn Terraform for beginners and intermediate practitioners - [acloudguru.com: 5 things we love about Terraform](https://www.pluralsight.com/resources/blog/cloud/5-things-we-love-about-terraform) - [==devops.com: How to Migrate Existing Infrastructure to Terraform==](https://devops.com/how-to-migrate-existing-infrastructure-to-terraform) -- [==middlewareinventory.com: Terraform import All AWS Security Groups โ€“ How to==](https://www.middlewareinventory.com/blog/terraform-import-securitygroup-aws) In this post, we are going to see how to manage existing and already created AWS Security groups with Terraform. The new era of Infrastructure revolution has begun already and we already started provisioning, managing, administrating our Infra as a code with help of Configuration management tools like Ansible, Terraform, SaltStack etc. +- [==middlewareinventory.com: Terraform import All AWS Security Groups โ€“ How to==](https://www.middlewareinventory.com/blog/terraform-import-securitygroup-aws) we are going to see how to manage existing and already created AWS Security groups with Terraform. The new era of Infrastructure revolution has begun already and we already started provisioning, managing, administrating our Infra as a code with help of Configuration management tools like Ansible, Terraform, SaltStack etc. - [==middlewareinventory.com: Terraform For Each Examples โ€“ How to use for_each | Devops Junction==](https://www.middlewareinventory.com/blog/terraform-for-each-examples) - [==medium.com/nerd-for-tech: Terraforming the GitOps Way !!!==](https://medium.com/nerd-for-tech/terraforming-the-gitops-way-9417cf4abf58) - [terrateam.io: Terraform Pre-Commit Hooks](https://terrateam.io/blog/terraform-pre-commit-hooks) Terraform Code Improvements. There are many tools that can make sure your Terraform repo remains well-formated and tested. Using Git pre-commit hooks, one can easily incorporate these tools into everyday Terraform workflow. -- [faun.pub: Terraform-Prevent Conditionally Created Resources From Deletion ๐ŸŒŸ](https://faun.pub/terraform-prevent-conditionally-created-resources-from-deletion-dcec1b793565) In this post, weโ€™ll see how we can prevent a resource, conditionally created by Terraform from getting deleted. +- [faun.pub: Terraform-Prevent Conditionally Created Resources From Deletion ๐ŸŒŸ](https://faun.pub/terraform-prevent-conditionally-created-resources-from-deletion-dcec1b793565) weโ€™ll see how we can prevent a resource, conditionally created by Terraform from getting deleted. - [==faun.pub: 5 Best Terraform Tools That You Need in 2022== ๐ŸŒŸ](https://faun.pub/5-best-terraform-tools-that-you-need-in-2022-a3db2334c524) Tools that can simplify your infrastructure code -- [dev.to/kubestack: A Better Way to Provision Kubernetes Resources Using Terraform ๐ŸŒŸ](https://dev.to/kubestack/a-better-way-to-provision-kubernetes-resources-using-terraform-355n) In this tutorial, you will learn how to create Kubernetes resources using Terraform via the Helm and Kustomize providers. The resource will be created/destroyed as part of the usual terraform apply command. +- [dev.to/kubestack: A Better Way to Provision Kubernetes Resources Using Terraform ๐ŸŒŸ](https://dev.to/kubestack/a-better-way-to-provision-kubernetes-resources-using-terraform-355n) how to create Kubernetes resources using Terraform via the Helm and Kustomize providers. The resource will be created/destroyed as part of the usual terraform apply command. - [betterprogramming.pub: Design by Contract in Terraform](https://betterprogramming.pub/design-by-contracts-in-terraform-63467a749c1a) Understanding custom condition checks - [youtube: Terrraform + Ansible: Automating configuration in infrastructure](https://www.youtube.com/watch?v=DeNflzdjxVM) - [medium.com/@oamdev2020: Glue Terraform Ecosystem into Kubernetes World ๐ŸŒŸ](https://medium.com/@oamdev2020/glue-terraform-ecosystem-into-kubernetes-world-3e5d6feb461e) - [==terraform.io: Provisioners==](https://developer.hashicorp.com/terraform/language/provisioners) **Provisioners can be used to model specific actions on the local machine or on a remote machine in order to prepare servers or other infrastructure objects for service.** - [==terraform.io: Creation-Time Provisioners== ๐ŸŒŸ](https://developer.hashicorp.com/terraform/language/provisioners#creation-time-provisioners) - [terraform.io: Destroy-Time Provisioners ๐ŸŒŸ](https://developer.hashicorp.com/terraform/language/provisioners#destroy-time-provisioners) -- [faun.pub: The Lifecycle of a Terraform Resource โ€” Lifecycle Meta-Argument](https://faun.pub/the-lifecycle-of-a-terraform-resource-lifecycle-meta-argument-3cc4555ec976) In this article, we will take a look at the various stages a Terraform resource goes through during its lifetime. We will look at the default resource behavior, before looking at the lifecycle meta-argument which can allow you to customize that behavior. +- [faun.pub: The Lifecycle of a Terraform Resource โ€” Lifecycle Meta-Argument](https://faun.pub/the-lifecycle-of-a-terraform-resource-lifecycle-meta-argument-3cc4555ec976) we will take a look at the various stages a Terraform resource goes through during its lifetime. We will look at the default resource behavior, before looking at the lifecycle meta-argument which can allow you to customize that behavior. - [medium.com/@dugouchet.a: Manage your terraform like a container](https://medium.com/@dugouchet.a/manage-your-terraform-like-a-container-d2acbc46d7d4) - [medium.com/spacelift: Terraform vs. Kubernetes: Key Differences and Comparison](https://medium.com/spacelift/terraform-vs-kubernetes-key-differences-and-comparison-a42847e8be1c) - [infoq.com: Terraform 1.3 Release Introduces Simplified Refactoring Experience ๐ŸŒŸ](https://www.infoq.com/news/2022/09/terraform-simplified-refactoring) This release introduces optional object type attributes with defaults and expands the capabilities of moved blocks. @@ -579,8 +579,8 @@ - [learnk8s.io/kubernetes-terraform: Creating Kubernetes clusters with Terraform](https://learnkube.com/kubernetes-terraform) - [blog.kasten.io: Working with Kubernetes and Terraform Part 1: Concepts Behind Terraform and Kubernetes](https://blog.kasten.io/concepts-behind-terraform-and-kubernetes) - [thenewstack.io: A Better Way to Provision Kubernetes Using Terraform](https://thenewstack.io/a-better-way-to-provision-kubernetes-using-terraform) -- [==learn.hashicorp.com: Deploy Federated Multi-Cloud Kubernetes Clusters==](https://developer.hashicorp.com/terraform/tutorials/networking/multicloud-kubernetes) In this tutorial, you will provision Kubernetes clusters in both Azure and AWS environments using their respective providers, configure Consul federation with mesh gateways across the two clusters using the Helm provider, and deploy microservices across the two clusters to verify federation, all using the same Terraform workflow. -- [architect.io: Get started with the Terraform Kubernetes provider](https://loopholelabs.io) In this tutorial, you'll learn how to define Kubernetes resources using HCL and apply the configuration to the cluster using Terraform +- [==learn.hashicorp.com: Deploy Federated Multi-Cloud Kubernetes Clusters==](https://developer.hashicorp.com/terraform/tutorials/networking/multicloud-kubernetes) you will provision Kubernetes clusters in both Azure and AWS environments using their respective providers, configure Consul federation with mesh gateways across the two clusters using the Helm provider, and deploy microservices across the two clusters to verify federation, all using the same Terraform workflow. +- [architect.io: Get started with the Terraform Kubernetes provider](https://loopholelabs.io) you'll learn how to define Kubernetes resources using HCL and apply the configuration to the cluster using Terraform - [releasehub.com: Terraform Kubernetes Deployment: A Detailed Walkthrough](https://release.com/blog/terraform-kubernetes-deployment-a-detailed-walkthrough) It is possible to combine both. Terraform can be used to deploy Kubernetes clusters. It's quite common, and it lets you deploy K8s just like the rest of your infrastructure. - [medium.com/@vinoji2005: Using Terraform with Kubernetes: A Comprehensive Guide](https://medium.com/@vinoji2005/using-terraform-with-kubernetes-a-comprehensive-guide-237f6bbb0586) This guide explores the fundamentals of using Terraform with Kubernetes - Setting Up a Kubernetes Cluster with Terraform @@ -698,7 +698,7 @@ - [aws.plainenglish.io: Terraform Hands-on Project](https://aws.plainenglish.io/terraform-hands-on-project-d2105bbc0c62) Day-66 Build Your Own AWS Infrastructure - [devopscube.com: AWS Terraform Autoscaling Group With ALB Deployment Tutorial](https://devopscube.com/terraform-autoscaling-group) - [medium.com/cloud-native-daily: How to Securely Manage Terraform State File in AWS Using Terraform](https://medium.com/cloud-native-daily/how-to-securely-manage-terraform-state-file-in-aws-using-terraform-7c20b211c9cb) A step-by-step guide on how to securely manage, as well as share state files in AWS by using Terraform. -- [dev.to/monarene: Dynamic Volume Provisioning in Kubernetes with AWS and Terraform](https://dev.to/monarene/dynamic-volume-provisioning-in-kubernetes-with-aws-and-terraform-3m6h) In this article, you'll learn about Persistent Volumes and how they are provisioned, managed, and configured in AWS. You'll compare Static and Dynamic volume provisioning, how they overlap, and which provisioning mechanism you should employ +- [dev.to/monarene: Dynamic Volume Provisioning in Kubernetes with AWS and Terraform](https://dev.to/monarene/dynamic-volume-provisioning-in-kubernetes-with-aws-and-terraform-3m6h) you'll learn about Persistent Volumes and how they are provisioned, managed, and configured in AWS. You'll compare Static and Dynamic volume provisioning, how they overlap, and which provisioning mechanism you should employ - [blog.awsfundamentals.com: Mastering AWS Lambda with Terraform: A Comprehensive Guide](https://awsfundamentals.com/blog/aws-lambda-with-terraform) - [medium.com/@rizkiprass: Beginner Terraform Tutorial: Launching EC2 in AWS using Terraform](https://medium.com/@rizkiprass/beginner-terraform-tutorial-launching-ec2-in-aws-using-terraform-73f6d99e6233) - [github.com/squareops/terraform-aws-vpc](https://github.com/squareops/terraform-aws-vpc) Terraform Module to create an AWS VPC network with VPN and configure Peering b/w multiple VPCs @@ -755,8 +755,8 @@ - ExternalDNS - AWS Load Balancer controller - [faun.pub: Amazon EKS with Terraform and GitOps in minutes](https://faun.pub/aws-eks-with-terraform-and-gitops-in-minutes-b3ca33171209) -- [awstip.com: Streamlining AWS EKS Cluster Volume Management with Helm and Terraform: EBS CSI Driver + Self-Managed AddOn Option](https://awstip.com/streamlining-aws-eks-cluster-volume-management-with-helm-and-terraform-ebs-csi-driver-78e1d51532ee) In this tutorial, you will learn how to configure OIDC Provider as Identity Provider in AWS IAM Service and install the EKS EBS CSI Driver as a self-managed add-On using Terraform and Helm -- [hewi.blog: Deploying an EKS cluster using Terraform](https://hewi.blog/deploying-an-eks-cluster-using-terraform) In this tutorial, you will learn how to provision an EKS cluster using Terraform and deploy a demo application to test it +- [awstip.com: Streamlining AWS EKS Cluster Volume Management with Helm and Terraform: EBS CSI Driver + Self-Managed AddOn Option](https://awstip.com/streamlining-aws-eks-cluster-volume-management-with-helm-and-terraform-ebs-csi-driver-78e1d51532ee) how to configure OIDC Provider as Identity Provider in AWS IAM Service and install the EKS EBS CSI Driver as a self-managed add-On using Terraform and Helm +- [hewi.blog: Deploying an EKS cluster using Terraform](https://hewi.blog/deploying-an-eks-cluster-using-terraform) how to provision an EKS cluster using Terraform and deploy a demo application to test it - [platformwale.blog: Create Amazon EKS Cluster within its VPC using Terraform](https://platformwale.blog/2023/07/15/create-amazon-eks-cluster-within-its-vpc-using-terraform) - [medium.com/@ernestkwashie3: Provisioning Amazon Elastic Kubernetes Service (EKS) Cluster using Terraform](https://medium.com/@ernestkwashie3/provisioning-amazon-elastic-kubernetes-service-eks-cluster-using-terraform-5e07f1f0dc32) - [dev.to/aws-builders: Navigating AWS EKS with Terraform: Understanding VPC Essentials for EKS Cluster Management](https://dev.to/aws-builders/navigating-aws-eks-with-terraform-understanding-vpc-essentials-for-eks-cluster-management-51e3) diff --git a/docs/test-automation-frameworks.md b/docs/test-automation-frameworks.md index 1e04bf6e..e7b35e70 100644 --- a/docs/test-automation-frameworks.md +++ b/docs/test-automation-frameworks.md @@ -96,7 +96,7 @@ based on your test scripts. - [lambdatest.com: How To Integrate Cucumber With Jenkins?](https://www.testmuai.com/blog/cucumber-with-jenkins-integration) - [tutorials.virtualan.io: Idaithalam - Lowcode Test Automation](https://tutorials.virtualan.io/#/Idaithalam) Low code Test automation framework using cucumber and supports Behavior Driven Development (BDD). Can build test cases using Excel and Postman collection. It allows to build and test api workflow in minutes. - [testinglpoint.com: Cucumber Interview Question](https://www.testinglpoint.com/cucumber-interview-question) -- [dzone: API Testing With Cucumber](https://dzone.com/articles/api-testing-with-cucumber) Testing APIs in a microservices environment can be a challenging task. In this tutorial, we will learn to address it in BDD-style testing using Cucumber. +- [dzone: API Testing With Cucumber](https://dzone.com/articles/api-testing-with-cucumber) Testing APIs in a microservices environment can be a challenging task. we will learn to address it in BDD-style testing using Cucumber. ## Test Automation with Zephyr (Jira Plugin) diff --git a/docs/visual-studio.md b/docs/visual-studio.md index 9496772e..d31b087b 100644 --- a/docs/visual-studio.md +++ b/docs/visual-studio.md @@ -282,7 +282,7 @@ A simple extension to make indentation more readable - [Repl.it](https://replit.com) Reading code is hard! Don't you wish you could just ask the code what it does? To describe its functions, its types. And maybe... how can it be improved? Introducing: Replit code oracle. - [==Gitpod Open Sources a โ€˜Holistic IDEโ€™==](https://thenewstack.io/gitpod-open-sources-a-holistic-ide) - [thenewstack.io: Gitpod Brings Automated Environments to JetBrains IDEs](https://thenewstack.io/gitpod-brings-automated-environments-to-jetbrains-ides) -- [piotrminkowski.com: Development on Kubernetes: IDE & TOOLS](https://piotrminkowski.com/2020/08/03/development-on-kubernetes-ide-tools) In this article, you will learn what tools, frameworks, and platforms could help you to speed up the development of JVM microservices on Kubernetes. +- [piotrminkowski.com: Development on Kubernetes: IDE & TOOLS](https://piotrminkowski.com/2020/08/03/development-on-kubernetes-ide-tools) what tools, frameworks, and platforms could help you to speed up the development of JVM microservices on Kubernetes. - [openshift.com: Visual Web Terminal - A Turbocharged Command Line for Kubernetes and OpenShift](https://www.redhat.com/en/blog/visual-web-terminal-a-turbocharged-command-line-for-kubernetes-and-openshift) - [Linux on Chrome OS, sometimes called Crostini ๐ŸŒŸ](https://chromeos.dev/en/linux), allows you to run Linux apps for development alongside your usual Chrome OS desktop & apps. - [==Fleet==](https://www.jetbrains.com/fleet) Next-generation IDE by JetBrains @@ -291,7 +291,7 @@ A simple extension to make indentation more readable ### Intellij IDEA -- [evaizik.medium.com: Setting up a remote debugging for Java microservices running inside Kubernetes pods](https://evaizik.medium.com/setting-up-a-remote-debugging-for-java-microservices-running-inside-kubernetes-pods-d4aab1ff4efa) In this article, you'll learn in detail how to set up remote debugging between IntelliJ IDE and a Java application running inside a Kubernetes pod โ€” without using any additional third-party software +- [evaizik.medium.com: Setting up a remote debugging for Java microservices running inside Kubernetes pods](https://evaizik.medium.com/setting-up-a-remote-debugging-for-java-microservices-running-inside-kubernetes-pods-d4aab1ff4efa) you'll learn in detail how to set up remote debugging between IntelliJ IDE and a Java application running inside a Kubernetes pod โ€” without using any additional third-party software - [betterprogramming.pub: My Top 7 Most Underrated IntelliJ IDEA Features](https://betterprogramming.pub/my-top-7-most-underrated-intellij-idea-features-572b0b706bd6) ### Online VSCode diff --git a/docs/web-servers.md b/docs/web-servers.md index 555043c7..719c58e0 100644 --- a/docs/web-servers.md +++ b/docs/web-servers.md @@ -30,7 +30,7 @@ ## Nginx - [Nginx](https://www.f5.com/products/nginx) -- [Dzone: Nginx Reverse Proxy Ubuntu 18.04](https://dzone.com/articles/nginx-reverse-proxy-ubuntu-1804) In this post, we will show you how to install Nginx Web Server and configure it as a reverse proxy on Ubuntu Server 18.04. +- [Dzone: Nginx Reverse Proxy Ubuntu 18.04](https://dzone.com/articles/nginx-reverse-proxy-ubuntu-1804) we will show you how to install Nginx Web Server and configure it as a reverse proxy on Ubuntu Server 18.04. - [Dzone: DevOps 101: Set Up Nginx in Front of Your Spring Boot Application [Video]](https://dzone.com/articles/devops-101-setup-nginx-in-front-of-your-spring-boo) - [NGINXConfig ๐ŸŒŸ๐ŸŒŸ](https://www.digitalocean.com/community/tools/nginx) The easiest way to configure a performant, secure, and stable NGINX server. - [How To Use the Official NGINX Docker Image](https://www.docker.com/blog/how-to-use-the-official-nginx-docker-image) diff --git a/docs/yaml.md b/docs/yaml.md index 08005f0a..4c284442 100644 --- a/docs/yaml.md +++ b/docs/yaml.md @@ -37,7 +37,7 @@ - [javascript.plainenglish.io: Everything You Need To Know About YAML Files](https://javascript.plainenglish.io/everything-you-need-to-know-about-yaml-files-5423358cc5c9) Learning about YAML gives you an advantage over your peers since it literally makes programming and configuring cloud computing resources easier. - [w3schools.io: YAML - yaml vs yml file](https://www.w3schools.io/file/yaml-vs-yml) - [==blog.devgenius.io: YAML with Python==](https://blog.devgenius.io/yaml-with-python-d6787a9bd8ab) This article aims to outline the basics of YAML and write a simple python script that reads configuration details from a YAML file. -- [==realpython.com: YAML: The Missing Battery in Python==](https://realpython.com/python-yaml) Python lacks built-in support for the YAML data format, commonly used for configuration and serialization, despite clear similarities between the two languages. In this tutorial, youโ€™ll learn how to work with YAML in Python using the available third-party libraries, with a focus on PyYAML. +- [==realpython.com: YAML: The Missing Battery in Python==](https://realpython.com/python-yaml) Python lacks built-in support for the YAML data format, commonly used for configuration and serialization, despite clear similarities between the two languages. youโ€™ll learn how to work with YAML in Python using the available third-party libraries, with a focus on PyYAML. - [betterprogramming.pub: 10 Things You Might Not Know About YAML](https://betterprogramming.pub/10-things-you-might-not-know-about-yaml-b0589da547c) Harness the true power of YAML - [==spacelift.io/blog/yaml==](https://spacelift.io/blog/yaml) YAML Tutorial : A Complete Language Guide with Examples - [ruudvanasseldonk.com: The yaml document from hell](https://ruuda.nl/2023/the-yaml-document-from-hell) @@ -63,7 +63,7 @@ - ```k get svc a -o yaml | yq r -``` - [dev.to: yq : A command line tool that will help you handle your YAML resources better ๐ŸŒŸ](https://dev.to/vikcodes/yq-a-command-line-tool-that-will-help-you-handle-your-yaml-resources-better-8j9) - [towardsdatascience.com: yq: Mastering YAML Processing in Command Line ๐ŸŒŸ](https://towardsdatascience.com/yq-mastering-yaml-processing-in-command-line-e1ff5ebc0823) Learn to parse and manipulate YAML files more efficiently using yq command-line utility and this simple cheat sheet - - [betterprogramming.pub: My Cheatsheet for the โ€œyqโ€ Tool](https://betterprogramming.pub/my-yq-cheatsheet-34f2b672ee58) Parsing Kubernetes YAML with yq. `yq` is a convenient tool for creating, updating and mangling Kubernetes YAML files. In this tutorial, you will learn how to use it as well as some practical tips and tricks. + - [betterprogramming.pub: My Cheatsheet for the โ€œyqโ€ Tool](https://betterprogramming.pub/my-yq-cheatsheet-34f2b672ee58) Parsing Kubernetes YAML with yq. `yq` is a convenient tool for creating, updating and mangling Kubernetes YAML files. how to use it as well as some practical tips and tricks. - [Kapitan](https://kapitan.dev) Generic templated configuration management for Kubernetes, Terraform and other things. - [azohra/yaml.sh](https://github.com/azohra/yaml.sh) A YAML parser completely in bash. [Yaml.sh โ€” YAML Sans Helm](https://medium.com/@KarlKFI/yaml-sh-yaml-sans-helm-e983a3dfdaec) - [yh - YAML Highlighter](https://github.com/andreazorzetto/yh) is YAML syntax highlighter that works nicely with kubectl output @@ -119,7 +119,7 @@ ### JSONPath query language -- [blog.mariano.cloud: Do you even JSONPath?](https://blog.mariano.cloud/do-you-even-jsonpath) JSONPath as in a JSON query language that enables you to interact with a JSON structured data set. In this article, you will learn how to use JSONPath expressions to parse and format responses from the Kubernetes API. +- [blog.mariano.cloud: Do you even JSONPath?](https://blog.mariano.cloud/do-you-even-jsonpath) JSONPath as in a JSON query language that enables you to interact with a JSON structured data set. how to use JSONPath expressions to parse and format responses from the Kubernetes API. ### JSON in Ansible @@ -150,7 +150,7 @@ - **API validators**: Tools in this category validate a given YAML manifest against the Kubernetes API server. - **Built-in checkers**: Tools in this category bundle opinionated checks for security, best practices, etc. - **Custom validators**: Tools in this category allow writing custom checks in several languages such as Rego and Javascript. -- [Validating Kubernetes YAML for best practice and policies ๐ŸŒŸ](https://learnkube.com/validating-kubernetes-yaml) In this article, you will learn and compare six different tools: +- [Validating Kubernetes YAML for best practice and policies ๐ŸŒŸ](https://learnkube.com/validating-kubernetes-yaml) and compare six different tools: - [Kubeval](https://teresaforcades.com/pensament/medicina.html) - [Kube-score ๐ŸŒŸ](https://github.com/zegl/kube-score) **Kubernetes object analysis with recommendations for improved reliability and security. kube-score is a opensource tool that performs static code analysis of Kubernetes object definitions. The output is a list of recommendations where one can improve to make application more secure and resilient.** - [Config-lint](https://stelligent.github.io/config-lint)