HNC v0.7.0 introduces Exceptions, which gives you fine-grained control of where objects are propagated, instead of always copying objects to all descendant namespaces.
Installing
WARNING: you cannot upgrade from HNC v0.5.x directly to HNC v0.7.x, since the use different APIs (
v1alpha1
vsv1alpha2
). Instead, upgrade to HNC v0.6.0 first, and then from v0.6.x to v0.7.x. Be sure to carefully follow the upgrading instructions from v0.5 to v0.6 to avoid losing data.
You can install or upgrade HNC on your cluster using the following commands (admin privileges required):
HNC_VERSION=v0.7.0-rc1
kubectl apply -f https://github.com/kubernetes-sigs/multi-tenancy/releases/download/hnc-${HNC_VERSION}/hnc-manager.yaml
# Wait 30s if HNC has never been installed before for it to generate certs and reboot itself.
To install the kubectl plugin on your workstation, either use Krew or install manually:
-
Via Krew: Krew will be supported when HNC v0.7.0 is released, but is not available for v0.7.0 RC1 Install Krew if you don't have it already, then run the commandkubectl krew install hns
. -
Manually: Switch to any directory in your
PATH
(e.g.~/bin
) and run the following commands:HNC_VERSION=v0.7.0-rc1 HNC_PLATFORM=linux_amd64 # also supported: darwin_amd64 curl -L https://github.com/kubernetes-sigs/multi-tenancy/releases/download/hnc-${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
No critical issues known at this time.
Changelog
Since HNC v0.6
- Introduced Exceptions
- When uninstalling HNC CRDs, subnamespaces could sometimes be erased by mistake; this is now fixed (#1285)
- Default RAM requests/limits are raised from 50MB/100MB to 150MB/300MB as a result of scalability tests (#1306)
- You can no longer create subnamespaces in
kube-node-lease
, similar to other system namespaces such askube-system
(#1229)
Testing signoff
Target | Tests | By | When | Result |
---|---|---|---|---|
KIND 1.19 | make test-e2e
| @adrianludwin | dec 13 | passed |
GKE 1.18 (rapid channel) | " | @adrianludwin | dec 13 | passed |
GKE 1.17 (regular channel) | " | @adrianludwin | dec 13 | passed |
GKE 1.16 (stable channel) | " | @adrianludwin | dec 13 | passed |