WBStack Infrastructure (2020)
UPDATE: You can find an up to date 2021 version of this post here.
WBStack currently runs on a Google Cloud Kubernetes cluster made up of 2 virtual machines, one e2-medium and one e2-standard-2. This adds up to a current total of 4 vCPUs and 12GB of memory. No Google specific services make up any part of the core platform at this stage meaning WBStack can run wherever there is a Kubernetes cluster with little to no modification.
A simplified overview of the internals can be seen in the diagram below where blue represents the Google provided services, with green representing everything running within the kubernetes cluster.
Other utility services exist around the core platform both running on kubernetes and as Google services. These includes:
- Snapshots, Backups and storage
- cert-manager for certificates
- Docker image build system
- Log and metric system
And some of the platform services are made up of multiple parts, such as:
- Different MediaWiki services for UI, API and job / backend requests
- Different Platform APIs for user or services sourced requests
- Other Platform elements such as a job queue and scheduler.
- Replication of the storage layer (redis, mysql, blazegraph)
Right now many of the Google priced variables are still within, or mostly provided by the free tier meaning the cost per month is essentially the cost of the CPU, RAM and Load Balancer.
Moving forward it would be nice to move this to a location more supportive of the WBStack project to enable continued cost effective growth and development at this early stage.