Bumps the k8s group with 2 updates in the / directory: [k8s.io/api](https://github.com/kubernetes/api) and [k8s.io/client-go](https://github.com/kubernetes/client-go). Updates `k8s.io/api` from 0.32.0 to 0.35.2 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/kubernetes/api/commit/8a137cde6e07bb0d73e40cb0bf8d7d550507989f"><code>8a137cd</code></a> Update dependencies to v0.35.2 tag</li> <li><a href="https://github.com/kubernetes/api/commit/bbcbaa8f86658a1eee90e6844f7de6ed1cd90a71"><code>bbcbaa8</code></a> Merge remote-tracking branch 'origin/master' into release-1.35</li> <li><a href="https://github.com/kubernetes/api/commit/5bced611d53f8403fba7dba4665af3c8efeef2df"><code>5bced61</code></a> Bump golang.org/x/crypto to v0.45.0</li> <li><a href="https://github.com/kubernetes/api/commit/39e2e26f9bf7798ac89794b9e8d635920f0b0f94"><code>39e2e26</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/api/issues/135131">#135131</a> from Dev1622/sig-storage/mock-expand-flake-fix</li> <li><a href="https://github.com/kubernetes/api/commit/c22b4a13de033ea7608b21b9ba169ef53b4eabbd"><code>c22b4a1</code></a> vendor: update vendor and license metadata after replacing BeTrue usage in cs...</li> <li><a href="https://github.com/kubernetes/api/commit/e3b1f3dcd880c03e17f16f2ea0fe44ad8f06d94a"><code>e3b1f3d</code></a> Resolve lint restriction on BeTrue by introducing Succeed() with contextual e...</li> <li><a href="https://github.com/kubernetes/api/commit/3da327cf32bb6abb65297ba4ed78408a6c2ba6af"><code>3da327c</code></a> Update vendored dependencies</li> <li><a href="https://github.com/kubernetes/api/commit/c764b4447eb3f83128ceda98fc196cc4f2b8582d"><code>c764b44</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/api/issues/132919">#132919</a> from ndixita/pod-level-in-place-pod-resize</li> <li><a href="https://github.com/kubernetes/api/commit/aced136bc07bebcc902b4122103c791a074b29ee"><code>aced136</code></a> Generated files from API changes</li> <li><a href="https://github.com/kubernetes/api/commit/02d790d8aae61644814b7333d5c4edf229367e99"><code>02d790d</code></a> Adding Resources and AllocatedResoures fields to the list of expected fields ...</li> <li>Additional commits viewable in <a href="https://github.com/kubernetes/api/compare/v0.32.0...v0.35.2">compare view</a></li> </ul> </details> <br /> Updates `k8s.io/apimachinery` from 0.32.0 to 0.35.2 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/kubernetes/apimachinery/commit/72d71eac265e06713c6d83d7034aac609450243f"><code>72d71ea</code></a> Merge remote-tracking branch 'origin/master' into release-1.35</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/e2a2dbc80c5a11d135ad77ef2e27e6e7e248a94b"><code>e2a2dbc</code></a> Bump golang.org/x/crypto to v0.45.0</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/2e9c2280ae353a81c2f50c98c75cbb69658d58f0"><code>2e9c228</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/apimachinery/issues/135131">#135131</a> from Dev1622/sig-storage/mock-expand-flake-fix</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/f274aac1acf7d443b8f5fd1a13196383d9aa7bb6"><code>f274aac</code></a> vendor: update vendor and license metadata after replacing BeTrue usage in cs...</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/94454433eee330652ed66f69efd230784a1e3648"><code>9445443</code></a> Resolve lint restriction on BeTrue by introducing Succeed() with contextual e...</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/52154f7cf1a6d9a8759c5f2e85e65cd3cd9bbd7e"><code>52154f7</code></a> Update vendored dependencies</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/5a348c53eef0072c40ddf00a45ace423c2790f2a"><code>5a348c5</code></a> KEP-5471: Extend tolerations operators (<a href="https://redirect.github.com/kubernetes/apimachinery/issues/134665">#134665</a>)</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/6f8949260573947b3239a9752d3361b23b4ec6a6"><code>6f89492</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/apimachinery/issues/133648">#133648</a> from richabanker/merged-discovery</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/c77dde2b5d65e58856286a199efe4e8e1114d276"><code>c77dde2</code></a> util/sort: Add MergePreservingRelativeOrder for topological sorting</li> <li><a href="https://github.com/kubernetes/apimachinery/commit/729c13d7df38af243f1043cc9671a90decd67ab0"><code>729c13d</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/apimachinery/issues/134624">#134624</a> from yt2985/podcertificates-beta</li> <li>Additional commits viewable in <a href="https://github.com/kubernetes/apimachinery/compare/v0.32.0...v0.35.2">compare view</a></li> </ul> </details> <br /> Updates `k8s.io/client-go` from 0.32.0 to 0.35.2 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/kubernetes/client-go/commit/a21b32978c420e4af7da3796bca3f37e2245856e"><code>a21b329</code></a> Update dependencies to v0.35.2 tag</li> <li><a href="https://github.com/kubernetes/client-go/commit/2d83546256059105914d2e135f43a42aa13067ee"><code>2d83546</code></a> Merge remote-tracking branch 'origin/master' into release-1.35</li> <li><a href="https://github.com/kubernetes/client-go/commit/56b4af2aeba845840cb3e2544d8ec16f3005aaf2"><code>56b4af2</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/client-go/issues/135591">#135591</a> from p0lyn0mial/upstream-watchlist-reflector-log-f...</li> <li><a href="https://github.com/kubernetes/client-go/commit/891f94c690cb0101a8f4872f966b2783a24ec5e6"><code>891f94c</code></a> Merge remote-tracking branch 'origin/master' into release-1.35</li> <li><a href="https://github.com/kubernetes/client-go/commit/65ffe044e56e8caf2db09c6bce6257ffefbe3f2c"><code>65ffe04</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/client-go/issues/135580">#135580</a> from serathius/client-go-transformer</li> <li><a href="https://github.com/kubernetes/client-go/commit/2fe4ac239ceb8b03e1e9e48b9ffb76ca1357f42d"><code>2fe4ac2</code></a> downgrade reflector watchlist fallback log to V(4)</li> <li><a href="https://github.com/kubernetes/client-go/commit/97256a64959de9fca5f9962b7239340f04c9221f"><code>97256a6</code></a> Bump golang.org/x/crypto to v0.45.0</li> <li><a href="https://github.com/kubernetes/client-go/commit/46360b527ebcd4cb7e99ae1770ad9a613bb0f128"><code>46360b5</code></a> Merge pull request <a href="https://redirect.github.com/kubernetes/client-go/issues/135131">#135131</a> from Dev1622/sig-storage/mock-expand-flake-fix</li> <li><a href="https://github.com/kubernetes/client-go/commit/171ef8cd00a575ad4ef083a9c4748463056de9bd"><code>171ef8c</code></a> Use transformer in consistency checker</li> <li><a href="https://github.com/kubernetes/client-go/commit/3878a6464bbe3febe6a3da39f380d0e1e6ccdd06"><code>3878a64</code></a> vendor: update vendor and license metadata after replacing BeTrue usage in cs...</li> <li>Additional commits viewable in <a href="https://github.com/kubernetes/client-go/compare/v0.32.0...v0.35.2">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
NetBird Kubernetes Operator
For easily provisioning access to Kubernetes resources using NetBird.
https://github.com/user-attachments/assets/5472a499-e63d-4301-a513-ad84cfe5ca7b
Description
This operator easily provides NetBird access on Kubernetes clusters, allowing users to access internal resources directly.
Getting Started
Prerequisites
- (Recommended) helm version 3+
- kubectl version v1.11.3+.
- Access to a Kubernetes v1.11.3+ cluster.
- (Recommended) Cert Manager.
Deployment
- Add helm repository.
helm repo add netbirdio https://netbirdio.github.io/kubernetes-operator
- (Recommended) Install cert-manager for k8s API to communicate with the NetBird operator.
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.17.0/cert-manager.yaml
- Add NetBird API token
kubectl create namespace netbird
kubectl -n netbird create secret generic netbird-mgmt-api-key --from-literal=NB_API_KEY=$(cat ~/nb-pat.secret)
- (Recommended) Create a
values.yamlfile, checkhelm show values netbirdio/kubernetes-operatorfor more info. - Install using
helm install --create-namespace -f values.yaml -n netbird netbird-operator netbirdio/kubernetes-operator. - (Recommended) Check pod status using
kubectl get pods -n netbird. - (Optional) Create an
exposed-nginx.yamlfile to create a Nginx service for testing. - (Optional) Apply the Nginx service:
kubectl apply -f exposed-nginx.yaml
Learn more about the values.yaml options here and Granting controller access to NetBird Management.
Uninstallation
Important
Most operator resources are annotated with finalizers, attempting to delete the namespace will result in hanged deletion.
- (If ingress mode is enabled) Remove all instances of
netbird.io/exposeannotation on Services. - Run
helm uninstall -n netbird netbird-operator. - Wait for all deletion jobs to finish.
Version
We have developed and executed tests against Kubernetes v1.31, but it should work with most recent Kubernetes version.
Latest operator version: v0.1.1.
Tested against:
| Distribution | Test status | Kubernetes Version |
|---|---|---|
| Google GKE | Pass | 1.31.5 |
| AWS EKS | Pass | 1.31 |
| Azure AKS | Not tested | N/A |
| OpenShift | Not tested | N/A |
We would love community feedback to improve the test matrix. Please submit a PR with your test results.
Usage
Check the usage of usage.md and examples.
Contributing
Prerequisites
To be able to develop this project, you need to have the following tools installed:
- Git.
- Make.
- Go programming language.
- Docker CE.
- Kubernetes cluster (v1.16+). KIND is recommended.
- Kubebuilder.
Running tests
Running unit tests
make test
Running E2E tests
kind create cluster # If not already created, you can check with `kind get clusters`
make test-e2e