hierarchical-namespaces VS aws-imds-packet-analyzer

Compare hierarchical-namespaces vs aws-imds-packet-analyzer and see what are their differences.

hierarchical-namespaces

Home of the Hierarchical Namespace Controller (HNC). Adds hierarchical policies and delegated creation to Kubernetes namespaces for improved in-cluster multitenancy. (by kubernetes-sigs)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
hierarchical-namespaces aws-imds-packet-analyzer
8 2
581 95
7.4% -
6.6 5.0
9 days ago 11 days ago
Go Python
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

hierarchical-namespaces

Posts with mentions or reviews of hierarchical-namespaces. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-27.
  • Efficient Cluster Management with Kubernetes’ Hierarchical Namespaces
    1 project | dev.to | 23 Mar 2024
    HNC_VERSION=v1.1.0 HNC_VARIANT=default kubectl apply -f https://github.com/kubernetes-sigs/hierarchical-namespaces/releases/latest/download/hnc-manager.yaml
  • Amazon EC2 Enhances Defense in Depth with Default IMDSv2
    6 projects | news.ycombinator.com | 27 Nov 2023
    Kubernetes has a lot of limitations from a multi tenancy perspective.

    It's functional, but I think it's not as polished as the rest of Kubernetes which is why Kubernetes has a multi tenancy SIG that spawned the hierarchical namespace controller (https://github.com/kubernetes-sigs/hierarchical-namespaces) and virtual clusters (https://github.com/kubernetes-sigs/cluster-api-provider-nest...)

  • Automatically deploy objects after namespace creation
    1 project | /r/kubernetes | 31 May 2023
    Kyverno's a great option. Depending on the usecase you might want to consider https://github.com/kubernetes-sigs/hierarchical-namespaces as well (disclaimer: I'm the original author) - it's good if groups of related namespaces need related objects.
  • Multitenancy with Hierarchical namespaces
    1 project | dev.to | 18 Jun 2022
    ❯ HNC_VERSION=v1.0.0 ❯ kubectl apply -f https://github.com/kubernetes-sigs/hierarchical-namespaces/releases/download/${HNC_VERSION}/default.yaml namespace/hnc-system created customresourcedefinition.apiextensions.k8s.io/hierarchyconfigurations.hnc.x-k8s.io created customresourcedefinition.apiextensions.k8s.io/hncconfigurations.hnc.x-k8s.io created customresourcedefinition.apiextensions.k8s.io/subnamespaceanchors.hnc.x-k8s.io created role.rbac.authorization.k8s.io/hnc-leader-election-role created clusterrole.rbac.authorization.k8s.io/hnc-admin-role created clusterrole.rbac.authorization.k8s.io/hnc-manager-role created clusterrole.rbac.authorization.k8s.io/hnc-proxy-role created rolebinding.rbac.authorization.k8s.io/hnc-leader-election-rolebinding created clusterrolebinding.rbac.authorization.k8s.io/hnc-manager-rolebinding created clusterrolebinding.rbac.authorization.k8s.io/hnc-proxy-rolebinding created secret/hnc-webhook-server-cert created service/hnc-controller-manager-metrics-service created service/hnc-webhook-service created deployment.apps/hnc-controller-manager created mutatingwebhookconfiguration.admissionregistration.k8s.io/hnc-mutating-webhook-configuration created validatingwebhookconfiguration.admissionregistration.k8s.io/hnc-validating-webhook-configuration created # Install helper plugin ❯ kubectl krew install hns
  • Is it anti-pattern to have multiple environments under a single namespace?
    3 projects | /r/kubernetes | 13 Apr 2022
    I would say it’s an anti-pattern since using a namespace for multiple environments will be a pain. Not sure what you mean by CRDs though. There is an addon that gives you namespace hierarchies. I.e. each team gets a namespace and they can have sub-namespaces for environments. Check it out: https://github.com/kubernetes-sigs/hierarchical-namespaces
  • Ask r/kubernetes: What are you working on this week?
    1 project | /r/kubernetes | 2 Feb 2022
    Looking into the Hierarchical Namespace Controller to see if it can simplify our heavily multi-tenanted clusters. So far so good!
  • RBAC and limited namespace access
    2 projects | /r/kubernetes | 19 Dec 2021
    HNC is designed for these kinds of scenarios: https://github.com/kubernetes-sigs/hierarchical-namespaces
  • Introduction to Multi-Tenancy in Kubernetes
    3 projects | dev.to | 9 Dec 2021
    Project HNC

aws-imds-packet-analyzer

Posts with mentions or reviews of aws-imds-packet-analyzer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-27.
  • Amazon EC2 Enhances Defense in Depth with Default IMDSv2
    6 projects | news.ycombinator.com | 27 Nov 2023
    I'm the technical lead for IMDS. Without an IMDS, the alternative is usually hard-coding long-lived credentials, which is much worse.

    We've looked a few times at different ways that IMDS could vend different credentials to different user-ids. We documented how to use local firewall rules, which you've linked to. This gives single uid restrictions, similar to filterd. We also have a BPF based tracer tool, https://github.com/aws/aws-imds-packet-analyzer which can monitor which user ids and processes are calling IMDS (and which version they are using).

    Our next thought was to expose IMDS as a filesystem. That way ordinary POSIX filesystem permissions could be used to control which user ids could read which credentials, and it would even work on Windows. But our research found that security issues (in applications and libraries that customers run) that grant local file reading privileges are even more common than SSRF issues (in part this because many SSRF issues allow "file://" urls, so they become a subset).

    We've looked at interfacing with the kernel keyring and the TPM 2.0 interface (and we now have Nitro TPM) ... but both are difficult to call to user space. The latter doesn't get user ID granularity, and the former is hard to coordinate with from the outside for revoking and rotating credentials.

  • GitHub - aws/aws-imds-packet-analyzer: traces TCP interactions with the EC2 Instance Metadata Service (IMDS)
    1 project | /r/blueteamsec | 8 Jun 2023

What are some alternatives?

When comparing hierarchical-namespaces and aws-imds-packet-analyzer you can also consider the following projects:

vcluster - vCluster - 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.

cluster-api-provider-nested - Cluster API Provider for Nested Clusters

capsule - Multi-tenancy and policy-based framework for Kubernetes.

rbac-manager - A Kubernetes operator that simplifies the management of Role Bindings and Service Accounts.

namespace-configuration-operator - The namespace-configuration-operator helps keeping configurations related to Users, Groups and Namespaces aligned with one of more policies specified as a CRs

multi-tenancy - A working place for multi-tenancy related proposals and prototypes.

secrets-store-csi-driver - Secrets Store CSI driver for Kubernetes secrets - Integrates secrets stores with Kubernetes via a CSI volume.