Hubs-Foundation / hubs-cloud

Resources for self hosted Hubs Cloud instances
Mozilla Public License 2.0
149 stars 88 forks source link

Support a cloud provider agnostic way to deploy Hubs Cloud #135

Open Utopiah opened 3 years ago

Utopiah commented 3 years ago

AWS and DO are fine cloud providers and have data centers in Europe. That being said with GDPR, but even before that the Patriot Act, some specific legislation and their impact on privacy make some people interested by on-premise worried about cloud reliance. Have cloud providers that do not just have data centers in Europe, are GDPR compliant but are even Europe based would make everybody interested on insuring sovereignty of their data feel much more secured.

Practically speaking one of the largest cloud provider in Europe is OVH. It also provides OpenStack API which might be an interesting solution to provide cloud provider independence or easier migration, even though, sadly, some of the bigger providers including AWS are not supporting it.

┆Issue is synchronized with this Jira Task

gfodor commented 3 years ago

OVH UK also supports managed postgresql afaict - it was important to me for whatever it's worth that a managed database be part of the initial targets to hubs cloud. Without that, it would not be possible to expect non-technical users to be able to operate it without risk of data loss.

smakhtin commented 3 years ago

I think if we move to k8s as our orchestration tooling we will solve it automagically.

vvdt commented 3 years ago

I think OpenStack could be a good way to open it up for a lot of providers. Their orchestration tool 'Heat' seems to be interesting: it claims to support the AWS Cloudformation template 'so that many existing CloudFormation templates can be launched on OpenStack.' .

Not so much into the subject myself yet, but will add an update when I had time to look into it. https://wiki.openstack.org/wiki/Heat

StudioDeussen commented 3 years ago

It woud be really great if you open up Hubs cloud for other providers in europe. We used HUBS in a couple of educational projects for shools. Its such a great tool for education and givin different shools across europe the chance to do cross cultural classes. But the many of the shools are sceptical of large platforms like amazon, so it would be great if alternatives could be offered to them, or if it would even be possible to host an educational hubs server in a european based cloud infrastructure. F.e. there is the EU initiative called: Gaia-X https://www.bmwi.de/Redaktion/EN/Dossier/gaia-x.html It would be super cool if hubs could be part of such an intiative.

misslivirose commented 3 years ago

See also some of the conversation in https://github.com/mozilla/hubs/2423. Closing that one to consolidate where this issue is tracked.

reganMoz commented 3 years ago

DPX would like to help design the user flow for this based on the technical abilities/limitations you discover. let us know when we can jump in on this.

misslivirose commented 3 years ago

This will be considered for possible inclusion in H2 work but is not something we will be doing in H1.

Utopiah commented 3 years ago

To help consider DO as a provider and hopefully port to others in the future here is 1h video on how to get a server running https://video.benetou.fr/videos/watch/37679db0-750d-40c1-b76c-67bad6c0207b

Utopiah commented 3 years ago

OVH UK also supports managed postgresql afaict

Indeed and in fact it's OVH worldwide, not just the UK. Price is comparable to DO at 10eur for 1 month of Postgreql12 with 1GB or RAM.

Utopiah commented 3 years ago

Following some promising testing on skipping the managed database on Digital Ocean I believe more cloud providers could be considered.

It is not as nice as what @gfodor had in mind as it is not "cloud native" in the sense of being relying on the cloud provider tooling to scale, but it is also more accessible in terms of both pricing and technical competencies. On data loss specifically I believe most cloud providers provide periodic snapshot options that are relatively cheap and IMHO easier to start from than reconnecting a managed DB but that is arguable.

Following this adapting arbortect for Digital Ocean seems like the most reliable path. I briefly considered bringing a DO snapshot to an OVH or Hetzner VPS but even if it works, it wouldn't be maintainable. Skimming through this setup file I believe a first equivalent could skip few steps to be done manually (e.g. assume the DB and storage are local, assume the user will setup the DNS records).

Ideally those manual steps would be replaced by a cross cloud provider solution (e.g OpenStack) which auto-detects the infrastructure on which it runs but I believe this is secondary compared to the need of being able to deploy on more providers.

dillfrescott commented 3 years ago

Any more progress made on this? I'd love to see hubs being available on more than just two providers. <3

META-DREAMER commented 2 years ago

+1, creating a kubernetes setup for Hubs would be a great way to let anyone host it on any cloud or even on-prem

Dayton2028 commented 2 years ago

+1 Any update with the issue? Since so many guys are looking for this, is it possible to deploy hubs on our own server, not AWS or DO? Thank you very much

markusTraber commented 2 years ago

+1 also would be very interested in this :)

Utopiah commented 2 years ago

I personally haven't tried https://github.com/albirrkarim/mozilla-hubs-installation-detailed and it doesn't rely on Docker but this could benefit from a bit more visibility and testing by the community.

dillfrescott commented 1 year ago

This is being considered correct? @Utopiah I tried your method you linked and its extremely advanced (at least for me). I couldn't get it working and would probably need to hire somebody to set it up for me.

Utopiah commented 1 year ago

I suggest joining #dev-self-hosting on Discord as the discussion is on-going.

dillfrescott commented 1 year ago

@Utopiah I can't find that discord channel sadly

Utopiah commented 1 year ago

I believe it's a private/secret channel so you must be invited. Share what your objective and what tried so far in a public channel, including a link to this issue, and hopefully someone will promptly invite you in.

dillfrescott commented 1 year ago

Found it. You just have to enable dev channels by clicking on the duck lol

Utopiah commented 4 months ago

Hopefully my notes, text and videos (including one in French) https://fabien.benetou.fr/Tools/HubsSelfHosting could help, using OVH as an example.