Azure / Azure/AKSFlexNode

Support package AKS Flex (Unbounded CNI) deployment using Helm

Open
#241 1 comment 0 reactions 0 assignees View on GitHub
documentation upstream/unbounded
Dominant language
Go
Stars
14
Forks
28
Avg merge
4d 13h
Merged PRs (30d)
12

Description

Currently, the installation of the Unbounded CNI stack for AKS Flex relies on running a sequence of imperative `kubectl apply` commands on pre-rendered YAML manifests, alongside manual shell script steps (e.g., handling `$SPLIT_DIR`).
To align with cloud-native best practices, improve maintainability, and allow seamless integration with our GitOps/CD pipelines, we should package these components into a single, configurable **Helm Chart**.

We need to create a local Helm chart (e.g., `unbounded-net`) that encapsulates all the resources currently applied manually.

The chart should be structured as follows:
* **`templates/crds/`**: To host the Custom Resource Definitions (CRDs) so they can be managed and upgraded by Helm.
* **`templates/`**: For standard resources (`Namespace`, `ConfigMap`, `ServiceAccount`, `RBAC`, `Controller` Deployment, and the site-specific `DaemonSet`).
* **`values.yaml`**: To parameterize dynamic values like image tags, repository paths, and site-specific configurations.

The possibile issues/notes:
* **Server-Side Apply:** The installation documentation must specify the use of the `--enable-server-side-apply` flag during `helm upgrade --install` to mimic the original `--server-side --force-conflicts` behavior. Support directly only Helm 4?
* **DaemonSet Templating:** Replace the dynamic `$SPLIT_DIR/daemonset-aks-site.yaml` approach by templating the DaemonSet and injecting site-specific parameters via `values.yaml`.
* **CRDs** : verify the CRDs upgrade via helm because it's problematic with helm 3.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by inventorying the pre-rendered YAML manifests and imperative kubectl steps currently used for installation, including the $SPLIT_DIR/daemonset-aks-site.yaml flow. Build the chart around templates/crds/, templates/, and values.yaml, covering the listed resources and site-specific DaemonSet parameters. Done means the chart supports helm upgrade --install with --enable-server-side-apply, documents that flag, and verifies the CRD upgrade behavior, especially with Helm 3.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
devops, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.