Skip to content
Snippets Groups Projects
Commit 89ba0d7f authored by Vojdan Kjorveziroski's avatar Vojdan Kjorveziroski
Browse files

Changes

parent 6853a504
No related branches found
No related tags found
No related merge requests found
# All-in-one nmaas VM Image # All-in-one nmaas VM Image
An all-in-one VirtualBox VM image with an installed single node K3s Kubernetes cluster and a deployment of nmaas is available for download. The goal of this image is to be able to get a local nmaas environment suitable for basic experiments as fast as possible. The installed software includes: An all-in-one VirtualBox VM image with an installed single node K3s Kubernetes cluster and a deployment of nmaas is available for [download](https://box.psnc.pl/f/45ab1871b2/?raw=1). The goal of this image is to be able to get a local nmaas environment suitable for basic experiments as fast as possible. The installed software includes:
- Single node K3s cluster - Single node K3s cluster
- GitLab - GitLab
...@@ -11,14 +11,15 @@ An all-in-one VirtualBox VM image with an installed single node K3s Kubernetes c ...@@ -11,14 +11,15 @@ An all-in-one VirtualBox VM image with an installed single node K3s Kubernetes c
Most notably, the all-in-one VM image does not include a LoadBalancer implementation and it is up to the user to install and configure one. As a result, the deployment of some applications in the catalog that rely on `LoadBalancer` type Services will not work (e.g., PostgreSQL). Users are advised to install [MetalLB manually](https://metallb.universe.tf/installation/) and [configure](https://metallb.universe.tf/configuration/) it depending on their local environment and network setup. Most notably, the all-in-one VM image does not include a LoadBalancer implementation and it is up to the user to install and configure one. As a result, the deployment of some applications in the catalog that rely on `LoadBalancer` type Services will not work (e.g., PostgreSQL). Users are advised to install [MetalLB manually](https://metallb.universe.tf/installation/) and [configure](https://metallb.universe.tf/configuration/) it depending on their local environment and network setup.
The access details for the nmaas VM are: The access details for the nmaas VM are:
- OS Login:
- Username: `nmaas` - OS Login:
- Password: `password` - Username: `nmaas`
- GitLab - Password: `password`
- Username: `root` - GitLab
- Password: `nmaasPassword123` - Username: `root`
- nmaas - Password: `nmaasPassword123`
- Username: `admin` - nmaas
- Password: `saamn` - Username: `admin`
- Password: `saamn`
The VM image is based on the lightweight Ubuntu distribution Lubuntu and has a full user interface. By default it uses a NAT type VirtualBox adapter, so it can be deployed even in restrictive networks. Access to the GitLab instance, nmaas itself, and any applications deployed from nmaas is possible via the built-in Mozilla Firefox web browser. Upon first launching the browser, the user will see that quick access links are already available for these locations in the bookmark toolbar. The VM image is based on the lightweight Ubuntu distribution Lubuntu and has a full user interface. By default it uses a NAT type VirtualBox adapter, so it can be deployed even in restrictive networks. Access to the GitLab instance, nmaas itself, and any applications deployed from nmaas is possible via the built-in Mozilla Firefox web browser. Upon first launching the browser, the user will see that quick access links are already available for these locations in the bookmark toolbar.
...@@ -15,6 +15,7 @@ To follow the tutorial access to an nmaas instance is required. This can be acco ...@@ -15,6 +15,7 @@ To follow the tutorial access to an nmaas instance is required. This can be acco
- By [deploying a local Kubernetes cluster](../deploying-local-kubernetes-cluster.md) and then [deploying an nmaas test instance](../deploying-nmaas-test-instance.md) in it. - By [deploying a local Kubernetes cluster](../deploying-local-kubernetes-cluster.md) and then [deploying an nmaas test instance](../deploying-nmaas-test-instance.md) in it.
- By requesting access to the [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) managed instance via the [contact form](https://vlab.dev.nmaas.eu/about?type=VLAB_REQUEST). - By requesting access to the [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) managed instance via the [contact form](https://vlab.dev.nmaas.eu/about?type=VLAB_REQUEST).
- By deploying nmaas on existing infrastructure, spanning multiple nodes (production grade setup). - By deploying nmaas on existing infrastructure, spanning multiple nodes (production grade setup).
- By downloading the ready-made all-in-one nmaas test VM image. Please note that this VM image does not have a `LoadBalancer` implementation installed and it is up to the user to install and configure one. More details about the all-in-one nmaas image are available on the [corresponding docs page](./all-in-one-vm-image.md).
!!! note !!! note
All JRES 2024 participants attending the tutorial live during the conference will get access to the [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) instance. More information and instructions will be provided on-site. All JRES 2024 participants attending the tutorial live during the conference will get access to the [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) instance. More information and instructions will be provided on-site.
...@@ -32,6 +32,8 @@ As Adminer is a web based application, it does expose a web interface that can b ...@@ -32,6 +32,8 @@ As Adminer is a web based application, it does expose a web interface that can b
![Adminer Deployment - Accessing the Application](img/10-adminer-deployment-app-access.png) ![Adminer Deployment - Accessing the Application](img/10-adminer-deployment-app-access.png)
## Connecting to eduVPN
In the managed nmaas instances, to remotely access the deployed applications the users need a client-access VPN connection. If you are using a self-hosted nmaas instance deployed on premise or in a commercial cloud, the access strategy might differ. In the text that follows we will focus on the required steps to access the deployed instances when using the managed nmaas service. In the managed nmaas instances, to remotely access the deployed applications the users need a client-access VPN connection. If you are using a self-hosted nmaas instance deployed on premise or in a commercial cloud, the access strategy might differ. In the text that follows we will focus on the required steps to access the deployed instances when using the managed nmaas service.
The [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) instance requires the use of [eduVPN](https://www.eduvpn.org/) to access the applications remotely. eduVPN is an open-source VPN server and client developed within the GÉANT project. It uses the well-known and robust OpenVPN and Wireguard protocols behind the scenes. The major advantage that eduVPN provides is that users can login using SSO and generate new VPN profiles for all their devices, without a need for administrator intervention. The [vlab.dev.nmaas.eu](https://vlab.dev.nmaas.eu) instance requires the use of [eduVPN](https://www.eduvpn.org/) to access the applications remotely. eduVPN is an open-source VPN server and client developed within the GÉANT project. It uses the well-known and robust OpenVPN and Wireguard protocols behind the scenes. The major advantage that eduVPN provides is that users can login using SSO and generate new VPN profiles for all their devices, without a need for administrator intervention.
...@@ -50,6 +52,8 @@ Once connected to the VPN, all deployed resources on nmaas should be remotely ac ...@@ -50,6 +52,8 @@ Once connected to the VPN, all deployed resources on nmaas should be remotely ac
Using the access details for the previously deployed PostgreSQL instance, we can connect to it using Adminer, so that we can test out if it works as expected. Using the access details for the previously deployed PostgreSQL instance, we can connect to it using Adminer, so that we can test out if it works as expected.
## Testing the PostgreSQL Instance
The demo application that we will be building in this tutorial is a random quotes application. The end goal is to expose an API which will provide one random quote per day. This random quote will be retrieved from the database when the first user visits the application in the day and it will then be cached in the Valkey server that is yet to be deployed. All subsequent API calls made within the same day will retrieve the same quote, cached in Valkey. The demo application that we will be building in this tutorial is a random quotes application. The end goal is to expose an API which will provide one random quote per day. This random quote will be retrieved from the database when the first user visits the application in the day and it will then be cached in the Valkey server that is yet to be deployed. All subsequent API calls made within the same day will retrieve the same quote, cached in Valkey.
The model for this application is very simple, so we will use a single table. We can create this table immediately from the Adminer web interface by choosing the `SQL command` button and providing the corresponding definition: The model for this application is very simple, so we will use a single table. We can create this table immediately from the Adminer web interface by choosing the `SQL command` button and providing the corresponding definition:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
The last vLAB feature to be showcased using this tutorial is the bulk application deployment feature. This allows a virtual lab manager to deploy all required application instances in advance, on the behalf of the virtual lab participants. Utilizing this approach, the use of nmaas as the underlying platform for organizing and hosting the virtual lab exercises can be completely transparent to the virtual lab participants. The last vLAB feature to be showcased using this tutorial is the bulk application deployment feature. This allows a virtual lab manager to deploy all required application instances in advance, on the behalf of the virtual lab participants. Utilizing this approach, the use of nmaas as the underlying platform for organizing and hosting the virtual lab exercises can be completely transparent to the virtual lab participants.
To perform a new bulk application deployment, the virtual lab manager needs to choose the option `Advanced -> Bulk Application Deployments` from the right part of the top navigation menu. To perform a new bulk application deployment, the virtual lab manager needs to choose the option `Advanced -> Bulk application deployments` from the right part of the top navigation menu.
The new bulk application deployment wizard starts off with a dropdown selector for the application to be deployed - in this case MailDev. The new bulk application deployment wizard starts off with a dropdown selector for the application to be deployed - in this case MailDev.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment