This tool provisions Nephio components on target clusters
go install github.com/electrocucaracha/nephioadm/cmd/nephioadm@latest
For management components (system, webui and configsync packages):
nephioadm init \
--base-path "/opt/nephio/mgmt" \
--git-service "http:/gitea-server:3000/nephio-playground" \
--backend-base-url "http://localhost:7007" \
--webui-cluster-type NodePort
For workload components (configsync package):
nephioadm join \
--base-path "/opt/nephio/mgmt" \
--git-service "http:/gitea-server:3000/nephio-playground"
This process uses two main components:
- Nephio packages (official repository by default). The
--nephio-repo
argument allows the consumption of other sources. This can be useful during the Nephio development and testing processes. - Target clusters. Currently, this tool installs Nephio components on the current pointing Kubernetes cluster. This cluster must be reachable from the tool and requires the installation of kpt CLI.
+-------------------------------------------------------+
| https://github.com/nephio-project/nephio-packages |
| +----------+ +--------------+ +---------+ |
| | system | | configsync | | webui | |
| +----------+ +--------------+ +---------+ |
+-------------------------------------------------------+
+-----------+
| nephioadm |
+-----------+
+---------------------------------+ +---------------------------------+
| mgmt (k8s) | | workload (k8s) |
| +-----------------------------+ | | +-----------------------------+ |
| | mgmt-control-plane | | | | workload-control-plane | |
| | podSubnet: 10.196.0.0/16 | | | | podSubnet: 10.197.0.0/16 | |
| | serviceSubnet: 10.96.0.0/16 | | | | serviceSubnet: 10.97.0.0/16 | |
| +-----------------------------+ | | +-----------------------------+ |
+---------------------------------+ +---------------------------------+
The --git-service
argument specifies the URL of the repository used by
ConfigSync and Porch components.