Page MenuHomePhabricator

Assess opportunity to migrate from WMFR-OVH server to WMF Toolforge or WMF Cloud VPS
Closed, ResolvedPublic

Assigned To
Authored By
Yug
Jan 29 2025, 4:41 PM
Referenced Files
Restricted File
Jan 31 2025, 8:00 PM
F58324226: image.png
Jan 31 2025, 3:37 PM

Description

Consider Wikimedia Toolforge.org as Lingua Libre hosting services :

  • Write down custom tutorial for toolforge.org server connexion and install @Yug
  • Assess technical quality of each service @mickeybarber:
  • Install .org and app onto chosen server (see, then git clone & install)
IMPORTANT:

@ knowledgeable Toolforge and CloudVPS users, given our stack cited below, could you assess where our project should go ?

IMPORTANT:

Requirements

Also:

# Install git
# Install Python 3.10.x
# Install Node 18+
# Install MariaDB
# Additional tools:
apt install build-essential default-libmysqlclient-dev pkg-config

Helpers

:mw:Help:Toolforge/My_first_Django_OAuth_tool#Scale_up_your_database

Scale up your database
So far the tutorial only used sqlite as a database. This is fine for demo applications, but will quickly result in performance or scaling issues with any operations that require reads or writes to the database. It will also strain the Toolforge servers, which is something we also want to avoid. You can use user databases on the tools.db.svc or create your own database server on Cloud VPS.

:mw:Help:Cloud_VPS_Instances#Why_create_a_Cloud_VPS_instance?

See Help:Cloud Services Introduction to help decide which service is right for you.

this comparative table.

{F58325553}

Event Timeline

Yug edited subscribers, added: mickeybarber; removed: Michael.
Yug updated the task description. (Show Details)
Yug added a subscriber: Michael.
Yug removed a subscriber: Michael.

Hello @mickeybarber , could you make a brief bentchmark of:

  • WMFR server
  • WMF server (see login procedure above)

I guess there would be some steps to plan on your side (server and domain configuration ?) but I think we can host Lingua Libre on WM Clouds (Toolforge). Let see what is your your feedback.

Yug triaged this task as Medium priority.Jan 29 2025, 9:49 PM
Yug updated the task description. (Show Details)
Yug changed the task status from Open to In Progress.Jan 29 2025, 9:52 PM
Yug updated the task description. (Show Details)

Could you compare Wikimedia Toolforge vs Wikimedia Cloud VPS for hosting Django and Mariadb website ?

Comparison: Wikimedia Toolforge vs. Wikimedia Cloud VPS for Hosting a Django + MariaDB Website

Wikimedia offers two major hosting environments: Toolforge and Cloud VPS. Each is suitable for different needs. Below is a detailed comparison for running a Django website with a MariaDB database.

1๏ธโƒฃ Overview of Both Platforms

FeatureWikimedia Toolforge ๐Ÿš€Wikimedia Cloud VPS ๐ŸŒ
Type of ServiceManaged hosting for bots, tools, and web servicesFull virtual machine hosting for complex projects
AccessShared environment, pre-configuredFull server access (root)
Tech Stack SupportLimited (Django, PHP, Python, Node.js, etc.)Any technology, full flexibility
MaintenanceHandled by Wikimedia (auto updates, backups)Fully managed by you
ScalabilityLimited, suitable for small projectsHigh, allows load balancing
PerformanceShared resources, may be throttledDedicated resources, faster performance
Security & IsolationSandboxed (isolated per tool)Full control over security settings

2๏ธโƒฃ Comparison Based on Key Factors

โœ… 1. Ease of Setup
  • Toolforge: Easier to set up with predefined environments, auto-configured MariaDB, and Django support.
  • Cloud VPS: Requires manual setup (installing MariaDB, configuring Django, setting up Apache/Nginx, etc.).

๐Ÿ”น Winner: Toolforge (Beginner-Friendly)

โœ… 2. Database Support (MariaDB)
  • Toolforge: Provides a shared MariaDB replica, optimized for queries but not for writing data frequently.
  • Cloud VPS: You install and manage your own MariaDB instance, full read/write control.

๐Ÿ”น Winner: Cloud VPS (Full Database Control)

โœ… 3. Performance & Scalability
  • Toolforge: Uses shared resources. Performance may be throttled if many requests come in.
  • Cloud VPS: You get dedicated virtual machines, so you can scale up as needed.

๐Ÿ”น Winner: Cloud VPS (More Power & Control)

โœ… 4. Security & Maintenance
  • Toolforge: Automatically managed security, patches, and backups by Wikimedia.
  • Cloud VPS: You are responsible for security updates, firewalls, and backups.

๐Ÿ”น Winner: Toolforge (Less Maintenance Work)

โœ… 5. Customization & Flexibility
  • Toolforge: Limited to pre-installed software and configurations.
  • Cloud VPS: Full control over server configurations, can install any package.

๐Ÿ”น Winner: Cloud VPS (Total Flexibility)

โœ… 6. Use Cases
Use CaseToolforgeCloud VPS
Small Django web app (low traffic)โœ… Best choice๐Ÿšซ Overkill
Django app needing custom libraries๐Ÿšซ Not possibleโœ… Best choice
Large, high-traffic Django website๐Ÿšซ Not supportedโœ… Best choice
Bot, API, automation scriptsโœ… Recommended๐Ÿšซ Unnecessary

3๏ธโƒฃ Conclusion: Which One Should You Choose?

Use CaseBest Choice
Simple, small Django website with a databaseโœ… Toolforge
Django app needing full database controlโœ… Cloud VPS
High-traffic website with custom setupsโœ… Cloud VPS
Small API, bot, or toolโœ… Toolforge
  • If you want an easy setup with minimal maintenance โ†’ Use Toolforge
  • If you need full control over the server and database โ†’ Use Cloud VPS

Would you like help setting up Django on either platform? ๐Ÿš€

Is docker available on toolforge ?

No, Docker is not available on Wikimedia Toolforge. ๐Ÿšซ

Why?
  • Toolforge is a shared environment designed for hosting tools and bots in a controlled way.
  • It uses Kubernetes to manage web services, but you cannot run custom Docker containers.
  • You are limited to pre-approved runtime environments (Python, PHP, Node.js, etc.).
  • Custom system-level installations are not allowed.

Alternative?

If you need Docker, use Wikimedia Cloud VPS, where you have full control and can run containers. โœ…

Would you like help setting up your project on Cloud VPS? ๐Ÿš€

Yug updated the task description. (Show Details)
Yug renamed this task from Migrate from WMFR to WMF servers ? to Migrate from WMFR-OVH server to WMF Toolforge or WMF Cloud VPS ?.Jan 29 2025, 11:59 PM
Yug added a project: Cloud-Services.
Yug updated the task description. (Show Details)
Restricted Application added a comment. ยท View Herald TranscriptJan 29 2025, 11:59 PM

The Cloud-Services project tag is not intended to have any tasks. Please check the list on https://phabricator.wikimedia.org/project/profile/832/ and replace it with a more specific project tag to this task. Thanks!

Hello @Herald . I look for guidance for now, Toolforge or CloudVPS, those both teams can help. Thank for the tags help.

bd808 subscribed.

This isn't a Cloud-VPS (Project-requests) formatted ticket, so I'm removing that tag.

Is docker available on toolforge ?

No, Docker is not available on Wikimedia Toolforge. ๐Ÿšซ

Toolforge is a Kubernetes cluster, so yes it uses containers for everything. The current service offering does not support "bring your own container" hosting. Instead it offers a buildpack based custom image building service.

Yug renamed this task from Migrate from WMFR-OVH server to WMF Toolforge or WMF Cloud VPS ? to Assess opportunity to migrate from WMFR-OVH server to WMF Toolforge or WMF Cloud VPS.Jan 31 2025, 11:06 AM
Yug claimed this task.
Yug updated the task description. (Show Details)
โœ… 6. Use Cases
Use CaseToolforgeCloud VPS
Small Django web app (low traffic)โœ… Best choice๐Ÿšซ Overkill
Django app needing custom libraries๐Ÿšซ Not possibleโœ… Best choice
Large, high-traffic Django website๐Ÿšซ Not supportedโœ… Best choice
Bot, API, automation scriptsโœ… Recommended๐Ÿšซ Unnecessary

This AI generated slop is incorrect. It is completely possible to deploy a Django app using arbitrary Python libraries to Toolforge.

@bd808 , thank a lot. I'm reading as much as I can but I'm mostly a courageous product owner diving in to guide the volunteer devs or paid freelancers. Your corrections and precisions are much appreciated. I'm finding this comparative table.
{F58325553}

โœ… Decided for us by Wikimedia Toolforge no-iframe policies. Closed.