github kubernetes-sigs/hierarchical-namespaces v1.0.0
HNC v1.0.0

latest releases: v1.1.0, v1.1.0-rc3, v1.1.0-rc2...
2 years ago

HNC v1.0.0 is our first production release. It is based on the highly stable HNC v0.9, and introduces several new features including managed labels and annotations (beta) and HA support (experimental).

New: please sign up for low-volume announcements of new versions, proposed changes, and critical issues at kubernetes-hnc-announce.

Installing

You can install or upgrade HNC on your cluster using the following commands (admin privileges required):

# Select the latest version of HNC
HNC_VERSION=v1.0.0

# Install HNC. Afterwards, wait up to 30s for HNC to refresh the certificates on its webhooks.
kubectl apply -f https://github.com/kubernetes-sigs/hierarchical-namespaces/releases/download/${HNC_VERSION}/default.yaml 

WARNING: if your cluster already has HNC installed, please ensure you are using HNC v0.9.0 or later before trying to upgrade to v1.0.0.

To install the kubectl plugin on your workstation, either use Krew or install manually:

  • Via Krew: Install Krew if you don't have it already, then run the command kubectl krew update && kubectl krew install hns.

  • Manually: Switch to any directory in your PATH (e.g. ~/bin) and run the following commands:

    HNC_VERSION=v1.0.0
    HNC_PLATFORM=linux_amd64 # also supported: darwin_amd64, darwin_arm64, windows_amd64
    curl -L https://github.com/kubernetes-sigs/hierarchical-namespaces/releases/download/${HNC_VERSION}/kubectl-hns_${HNC_PLATFORM} -o ./kubectl-hns
    chmod +x ./kubectl-hns
    
    # Ensure the plugin is working
    kubectl hns
    # The help text should be displayed
    

For more instructions, see the user guide.

Known issues

  • Managed label conflicts are silently ignored (#143, #144)
  • SubnamespaceAnchor status should indicate errors reconciling labels/annotations (#175)

What's changed since HNC v0.9

  • Beta: Addition of managed labels and annotations on namespaces (#47 and many others)
  • Support for Rancher (#125), OpenShift (#141), Apple M1 (#111), and K8s 1.22 (#133)
  • Startup and liveness probes (#139, #160)
  • Experiment HA support (#163, #167)

Full Changelog

Testing signoff

Target Manifest Tests By When Result
GKE 1.22 (rapid channel) default make test-e2e @adrianludwin mar 31 passed
GKE 1.22 (rapid channel) ha make test-e2e @adrianludwin mar 29 passed (as RC2)
KIND 1.23 default make test-smoke @adrianludwin mar 29 passed (as RC2)
GKE 1.20 (stable channel) default make test-e2e @adrianludwin mar 29 passed (as RC2)

Thanks to all our contributors!

It's been a long road to get to HNC! Thanks to our key long-term developers, @rjbez17 and @yiqigao217. For special contributions in v1.0, thanks to @erikgb. And for the entire history of HNC, thanks to (in no particular order): @akazs, @RealHarshThakur, @gkarthiks, @florath, @nobbs, @rahulii, @simonoff, @onesail, @arturobrzut, @mishamo, @GinnyJI, @vishh, @xinydev, @squat, @just1900, @Abirdcfly, @seankhliao, @olljanat, @mikedanese, @joe2far, @minchao, @santinoncs, @shivi28, @danielSbastos, @vjdhama, @Fei-Guo, @lafh, @entro-pi, @srampal, @sophieliu15, @adrianchung, @jiachengxu, and anyone else I may have missed (please drop me a line if your name should be here)!

Don't miss a new hierarchical-namespaces release

NewReleases is sending notifications on new releases.