Our VM (`wikiwho-api.wikiwho.eqiad1.wikimedia.cloud`) uses server-local storage instead of ceph. This means whenever Cloud Services needs to upgrade the hypervisor that hosts WikiWho, the VM needs to be shut down entirely. We have been informed this needs to be done again, so we might as well go ahead and rebuild a new VM to avoid such downtime moving forward.
On that note, we are noticing that our instance flavor (`g3.cores24.ram122.disk20`) is much more than what is truly needed. As such, perhaps we could build the new VM usig much less resources.
This task is to track rebuilding the VM and ensuring it performs just as well with limited resources. We will need to request additional quota for the `wikiwho` project so we can keep the old VM running while the new one is built.
Additionally, we now have been granted the volume storage to add more languages (T332630). The initial import scripts //do// need additional resources, so we'll use the older VM to create the pickle files (which are stored on the cinder volume, not on the VM directly), then the new VM only needs to process new revisions as they are saved, which can be done with a lot less resources than the old VM.
**Roadmap**
[ ] Use the old VM to import the new languages //(checkmark = WikiWho API support complete, closed status = clients have been updated)//:
[x] {T243711}
[x] {T270490}
[x] {T296590}
[x] {T335599}
[x] {T298007}
[ ] {T335600}
[ ] {T335831}
[ ] {T335786}
[ ] {T335789}
[ ] Update clients for any above tasks that are checked but haven't been closed yet
[ ] Request additional quota so we can create a new VM, exact instance flavor TBD [task needed]
[ ] Build new VM, change the web proxy to point to it, and ensure it operates smoothly enough with the all the newly added languages.
[ ] {T318746}
[ ] Delete the old VM and notify Cloud Services that the additional quota granted to `wikiwho` can be rescinded.