WBStack Infrastructure

April 29, 2021 4 By addshore
This entry is part 7 of 12 in the series WBStack

WBStack is a platform allowing shared scalable hosting of Wikibase and surrounding services.

A year ago I made an initial post covering the state of WBStack infrastructure. Since then some things have changed, and I have also had more time to create a clear diagram. So it is time for the 2021 edition.

WBStack currently runs on a single Google Cloud Kubernetes Engine cluster, now made up of 3 virtual machines, one e2-standard-2 and two e2-medium. This results in roughly 4 vCPUs and 12GB of allocatable memory.

Google services are only used to supplement the core services that are deployed to Kubernetes, such as Storage, DNS, Network, Logging, Monitoring & Error reporting. This is purposefully done to ensure minimal vendor lock-in and thus provide as much flexibility for the future of WBStack.

External services are also used where it makes sense. Such as reCAPTCHA, Let’s Encrypt, mailgun and Github.

Orchestration of the infrastructure is transitioning to terraform. The services deployed to Kubernetes cluster are all controlled through helm and helmfiles.

All infrastructure and kubernetes related code and configuration (except for private things) can be found in the deploy github repository. You can also find more wordy high level technical documentation on the docs site. Details of individual services can be found in other repositories on the GIthub org.

Series Navigation<< Open Sourcing WBStackWBStack setting changes, Federated properties, Wikidata entity mapping & more >>