Exploring the idea of a free cloud hosted testnet using sn_testnet_tool

Creating this thread to explore the idea of an ALWAYS free cloud hosted testnet using sn_testnet_tool

STEPS:

  • identify the best free tier cloud offering
  • is that enough to bootstrap a free test net, or if not, can that be done by 2 or more free accounts
  • can someone in the community adapt sn_tenstnet_tool to work with the chosen provider without distracting the maidsafe team (maybe with @chriso support :slightly_smiling_face:)

Initial convo of people that might be interested
@Josh @tfa @Southside @Vort

10 Likes

STEP 1
identify the best free tier cloud offering

Quick research, I have to admit, but my findings below:

ALWAYS Free Hosting offers:

Gearhost

Up to five free CloudSites
1 vCPU each
100MB of storage space each
1GB of bandwidth
one daily CPU hour - NOT SUITABLE?

AWS

750 computing hours a month - NOT SUITABLE??

Heroku

512 MB of RAM and 2 process types (equal to 1 vCPU)
The free cloud instance is not always on, and you’ll have to turn it back on after 30 minutes of inactivity - NOT SUITABLE

Google cloud

US only - NOT SUITABLE

Azure

Only 12 months free? - NOT SUITABLE

DO

Always free not available? - NOT SUITABLE

Oracle Cloud

2 AMD based Compute VMs with 1/8 OCPU** and 1 GB memory each.
4 Arm-based Ampere A1 cores and 24 GB of memory usable as one VM or up to 4 VMs.
2 Block Volumes Storage, 200 GB total.
10 GB Object Storage.
10 GB Archive Storage.
Resource Manager: managed Terraform.

** 1 OCPU on x86 CPU Architecture (AMD and Intel) = 2 vCPUs; 1 OCPU on Arm CPU Architecture (Ampere) = 1 vCPU

Best, and actually only option from my research, Oracle Cloud, with the added advantage that is manages through Terraform, which from what I can see is the base od sn_testnet_tool

Waiting if any comment before going to step 2…

6 Likes

Oracle requires lots of private data after completed registration.
This is not acceptable for me.

9 Likes

I doubt any paid service would ask for less, but fair enough…

3 Likes

It’s the “after” part that annoys me too.

3 Likes

Oracle is a horrible company - but can you not just give them fake info?

1 Like

In the text below form Oracle tells that not every phone number is fine for them.
They may want to talk with you (!).

I think it means that phone numbers, which are shared on various websites, are blocked.
If someone finds source of non-blocked ones, it may be useful to give them a try.

Is the priority here a free tier testnet or adapting the tool to use a free tier.

1 Like

Not sure, but you’d think being able to launch a community based testnet with no hosting fees would be a good thing. Also, being able to join an existing testnet with a number of nodes for free would surely be good. Either way, adapting the tool would be necessary.

Edit:thinking about this more, launching a few nodes to join an existing testnet doesn’t really require any complicated script…so this is really about bootstrapping a testnet on a free cloud service. Reality is that achieving that would mean having a script that could also easly enable others to join that network with the same free service

2 Likes

I think a fully free testnet is a stretch too far at this time, unless enough of us were ready to let Oracle have some info. A testnet free for most participants may be viable, again at a cost of privacy and some higher-spec instances to get us started - which is after all what we have had before with Maidsafe fronting up.
We pretty soon run into limitations on all the “free” offerings and this is entirely to be expected. Its capitalism, baby, TANSTAAFL.

None of the above should be a stopper for adapting the tool to use the “free” offerings but I doubt a viable bootstrappable network can be done for £0.00 at this time. How many droplets of what spec were used to kick off the previous testnets? How much would a few of us have to chip in to get sufficient resources to bootstrap a network? I dont know but I have a gut feeling that if 5-6 of us committed to £30-50 each for the first month, we might get something worthwhile using AWS.

5 Likes

Good leeway to STEP 2:

  • is the best free tier cloud offering enough to bootstrap a free test net, or if not, can that be done by 2 or more free accounts

Assuming Oracle offer at this stage (no better options have been presented) this is what we are talking about:

4x
Arm Ampere A1 OCPU
6 GB of memory
65 GB max disk space

OR

1x
Arm Ampere 4 OCPUs
24 GB of memory
250GB max disk space

How many nodes can be safely launched on such a infrastructure for the purpose of a testnet?
Is that enough to bootstrap a testnet?
If not, how many combined accounts would be required to achieve that?

Some benchmarks and info:

Looking at performance, all cores are capable of running at 3Ghz consistently. Each core comes with its own 64KB L1 I-cache, 64KB L1 D-cache, and 1MB L2 D-cache.

1 Like

This is where my thoughts are going and why I ask if adapting the tool or starting a network with free resources is the priority.

Starting a network manually without the use of the tool is perfectly doable and relatively easy but it will require some collaboration in getting the first few nodes running.

2 Likes

Exactly. Something that can get explored by say 5-6 or more of us sufficiently committed in a seperate thread perhaps?

2 Likes

A clear set of instructions to bootstrap a testnet would definitely be a much easier path than adapting the testnet tool. It was actually your going through the sn_testnet_tool path @Josh that made me think this might be the way.
Manually launching a bootstrap node plus a few more nodes through a set of commands should definitely be not too hard.
Question about how many nodes could safely run on a free instance is still relevant though.

If network can be started by adding nodes one-by-one, then it is interesting possibility, which should be explored.
We may find more bugs this way. And can hope that developers will find them interesting enough to start the chase.

2 Likes

We’ll just need to suck it and see - once we have standardised centralised ( :laughing:) logging in place.
Disclaimer: I did something daft last night and have broken my barebones ELK stack - actually the underlying k8s and etcd - I’ll report back later.

3 Likes

This is how I did it prior to exploring the tool. Definitely possible, I shared a couple of networks started this way on the forum in the past which others joined so it creates a usable network.

1 Like

I mean that it may be possible for user #1 to add node #1, for user #2 to add node #2 … until network can be considered as “started”.
No specialized hosting will be required in such case.

4 Likes

What Kubernetes are you using @Southside ?

I’m in

3 Likes

Client Version: version.Info{Major:“1”, Minor:“22”, GitVersion:“v1.22.2”

Still not got the server running again after messing up etcd somehow and several re installs
Been even more distracted than usual, Don’t tell @Sascha but I was stuffing a chicken :slight_smile:
Trad skirlie with extra garlic and thyme seeing you asked , thanks