This section describes how to create a Vagrant Box, using the base virtual machine configured in [Oracle Virtual Box](#112-oracle-virtual-box).
<h3><u>Virtual Machine specifications</h3></u>
Most of the specifications can be as specified in the [Oracle Virtual Box](#112-oracle-virtual-box) page, however, there are a few particularities to Vagrant that must be accommodated, such as:
- Virtual Hard Disk
@@ -517,6 +519,7 @@ vagrant ssh
```
<h3><u>Pre-configured boxes</h3></u>
If you do not wish to create your own Vagrant Box, you can use one of the existing ones created by TFS contributors.
**Important**: Some TeraFlowSDN dependencies need to be executed on top of MicroK8s/Kubernetes v1.24. It is not guaranteed (by now) to run on newer versions.
**Important**: By default, Kubernetes uses CIDR 10.1.0.0/16 for pods and CIDR 10.152.183.0/24 for services. If they conflict with your internal network CIDR, you might need to change Kubernetes CIDRs at deployment time. To do so, check links below and ask for support if needed.
-[MicroK8s - How to configure network Dual-stack](https://microk8s.io/docs/how-to-dual-stack)
<h3><u>Add user to the docker and microk8s groups</h3></u>
@@ -898,6 +905,7 @@ EOF
```
The settings are organized in 4 sections:
- Section `TeraFlowSDN`:
-`TFS_REGISTRY_IMAGE` enables to specify the private Docker registry to be used, by default, we assume to use the Docker respository enabled in MicroK8s.
-`TFS_COMPONENTS` specifies the components their Docker image will be rebuilt, uploaded to the private Docker registry, and deployed in Kubernetes.
@@ -906,13 +914,10 @@ The settings are organized in 4 sections:
-`TFS_EXTRA_MANIFESTS` enables to provide additional manifests to be applied into the Kubernetes environment during the deployment. Typical use case is to deploy ingress controllers, service monitors for Prometheus, etc.
-`TFS_GRAFANA_PASSWORD` lets you specify the password you want to use for the `admin` user of the Grafana instance being deployed and linked to the Monitoring component.
-`TFS_SKIP_BUILD`, if set to `YES`, prevents rebuilding the Docker images. That means, the deploy script will redeploy existing Docker images without rebuilding/updating them.
- Section `CockroachDB`: enables to configure the deployment of the backend [CockroachDB](https://www.cockroachlabs.com/) database.
- Check example script [`my_deploy.sh`](https://labs.etsi.org/rep/tfs/controller/-/blob/master/my_deploy.sh) for further details.
- Section `NATS`: enables to configure the deployment of the backend [NATS](https://nats.io/) message broker.
- Check example script [`my_deploy.sh`](https://labs.etsi.org/rep/tfs/controller/-/blob/master/my_deploy.sh) for further details.
- Section `QuestDB`: enables to configure the deployment of the backend [QuestDB](https://questdb.io/) timeseries database.
- Check example script [`my_deploy.sh`](https://labs.etsi.org/rep/tfs/controller/-/blob/master/my_deploy.sh) for further details.