Home › Forums › FABRIC General Questions and Discussion › Replication of customized configurations
- This topic has 5 replies, 2 voices, and was last updated 3 years ago by Paul Ruth.
-
AuthorPosts
-
November 5, 2021 at 5:52 pm #943
Hey, I am pretty new to Fabric (and GENI). After a little bit of exploration of Fabric, here I have a couple of questions (with us cases):
We would love to setup a LoRa server on Fabric to connect with some of our devices. What we have done now is requesting resources, and then installing necessary software on nodes. We would have to renew it after a while if we need to continue using it. Is there a way that we can “save” the customization/configuration or have a replication of the customized/configured nodes? (In other words, do we have to go through the codes to request resources and install tools everytime we need it?)
Besides, I would also like to ask if there is any use cases / experiments such that ppl running database and/or Redis on Fabric?
November 6, 2021 at 4:47 pm #944Fu Shen,
There isn’t really a way to save the state of a slice. We recommend scripting the configuration of your experiments so that you can easily bring the experiment up/down. Some configuration can take a long to to build. In these cases, you might want to create containers to package your software so that the can easily be deployed on the VMs.
I am working on some examples using DockerHub to deploy software. One example that is not quite done yet but could be useful is a slice that deploys a P4 software switch using DockerHub.
An initial version of the notebook can be found here: https://github.com/fabric-testbed/jupyter-examples/blob/pruth-utils/fabric_examples/beta_functionality/fabric_p4_bmv2/fabric_p4_simple_router.ipynb
Note that this example uses some utility functions to copy scripts into the VMs then runs them. The scripts run “docker run …” and other configuration. Building the software in this docker container takes a couple of hours but installing the pre-built container take about a minute. This streamlines the creation of the experiment and makes it very easy to share the experiment with other users.
Paul
November 6, 2021 at 4:47 pm #945Fu Shen,
There isn’t really a way to save the state of a slice. We recommend scripting the configuration of your experiments so that you can easily bring the experiment up/down. Some configuration can take a long to to build. In these cases, you might want to create containers to package your software so that the can easily be deployed on the VMs.
I am working on some examples using DockerHub to deploy software. One example that is not quite done yet but could be useful is a slice that deploys a P4 software switch using DockerHub.
An initial version of the notebook can be found here: https://github.com/fabric-testbed/jupyter-examples/blob/pruth-utils/fabric_examples/beta_functionality/fabric_p4_bmv2/fabric_p4_simple_router.ipynb
Note that this example uses some utility functions to copy scripts into the VMs then runs them. The scripts run “docker run …” and other configuration. Building the software in this docker container takes a couple of hours but installing the pre-built container take about a minute. This streamlines the creation of the experiment and makes it very easy to share the experiment with other users.
Paul
November 9, 2021 at 3:20 pm #950Many thanks for your reply, Paul. The script and docker is the approach we ended up going with.
Another follow question come up with is that the server has a GUI console, is it in general approach to have it running and accessible from public? (for now I am tunneling to verify the server installation)
November 9, 2021 at 4:04 pm #951I think you are asking about your experiment running a service that is accessible over the Internet.
This will be possible. Longer term we will enable L3 services on your experiment’s dataplane that can be connected to the Internet. This service is not ready now. For now, you can expose a service on the Internet using the management plane. We are working on a way for you to tunnel that service through our bastion host. We have the tunnel working but need to create some documentation that shows you how to use it.
Paul
November 9, 2021 at 4:04 pm #952I think you are asking about your experiment running a service that is accessible over the Internet.
This will be possible. Longer term we will enable L3 services on your experiment’s dataplane that can be connected to the Internet. This service is not ready now. For now, you can expose a service on the Internet using the management plane. We are working on a way for you to tunnel that service through our bastion host. We have the tunnel working but need to create some documentation that shows you how to use it.
Paul
-
AuthorPosts
- You must be logged in to reply to this topic.