• Kubernetes: Managing tenants with Capsule

    7 min read

    Kubernetes Capsule multi-tenant

    Once we have Capsule setup we'll need to start managing the tenants and their permissions. In this post, we'll see how to assign permissions to a user, cordoning a tenant, and enforcing resource quotas at the tenant level.

    27/02/2025

    Read more...
  • Installing Argo Rollouts

    2 min read

    Kubernetes Argo Rollouts

    Installing Argo Rollouts is very simple, as it is a lightweight controller that can be installed using kustomize. We can also install the CLI to interact with it and start a dashboard to visualize the status of our rollouts.

    This controller provides missing deployment strategies like Blue/Green and Canary in a Kubernetes native and GitOps friendly manner.

    26/02/2025

    Read more...
  • Kubernetes multi-tenant with Capsule

    6 min read

    Kubernetes Capsule multi-tenant

    Capsule implements a multi-tenant and policy-based environment in your Kubernetes cluster, leveraging only on upstream Kubernetes. It allows you to create tenants, namespaces, and users, and define policies to control the resources and access within the cluster.

    25/02/2025

    Read more...
  • Kubernetes: Creating a Static Pod

    3 min read

    kind static pod Kubernetes Pod

    Static pods are managed directly by the kubelet without relying on the Kubernetes API server. Unlike regular pods, static pods are defined as manifest files placed in a specific directory on the node.

    Since static pods are bound to a specific node, they are suffixed with the node hostname in the pod name. In this post, we will create a static pod in a kind cluster by mounting a directory from the host to the kubelet's static pod directory.

    24/02/2025

    Read more...
  • Kubernetes: Using Mutating Admission Policy in Kubernetes v1.32

    3 min read

    Kubernetes MutatingAdmissionPolicy MutatingAdmissionPolicyBinding

    Starting with Kubernetes v1.32, we now have MutatingAdmissionPolicy object, a built-in alternative to mutating admission webhooks. This alpha feature allows for inline resource mutation using Common Expression Language (CEL), making it easier to modify Kubernetes objects at admission time.

    21/02/2025

    Read more...
  • Fixing "externally-managed-environment" when Installing AWS CLI with pip

    2 min read

    awscli pip error externally-managed-environment

    If you're trying to install the AWS CLI using pip on a modern system, you might run into the following error:

    $ pip install --no-cache-dir awscli
    error: externally-managed-environment
    
    × This environment is externally managed
    (...)
    

    17/02/2025

    Read more...
  • Enabling Feature Gates and APIs in a kind cluster

    3 min read

    kind Kubernetes kind feature gate

    Feature gates are a set of settings that can be used to enable or disable experimental features in Kubernetes. We can enable or disable features that are in alpha or beta stages of development. We need to keep in mind that these features are not yet stable and are not ready for production use.

    10/02/2025

    Read more...

From pet to cattle
Treat your kubernetes clusters like cattle, not pets