I see containers as one ingredient in a more automated and tested pipeline from development through CI to production. mediawiki-containers could expand to cover the development use case, but I think we can and should move from there into CI, and finally production.
Right now, Yuvi is evaluating the Kubernetes cluster manager in labs. Its features include scheduling of "pods" (groups of containers) to hardware nodes, networking, rolling deploys and more. While all these features provide a very high degree of automation, they also mean that failures in Kubernetes can have grave consequences. I think operations are wise to wait for Kubernetes to mature a bit further before considering it for critical production use cases.
Rather than waiting until one-stop cluster managers are mature, we could also start with a more traditional config / deploy system. I have played with this approach using Ansible [1] a while ago, and the ergonomics are pretty much the same as git-based deploys. There is also some support to run docker images in systemd, which could be an alternative if we want to avoid the dependency on the docker runtime in production. This older task lists some options: https://phabricator.wikimedia.org/T93439
Lets get together and figure out a plan.
Gabriel
[1]: http://docs.ansible.com/ansible/docker_module.html
On Fri, Jan 29, 2016 at 8:23 PM, James Forrester jforrester@wikimedia.org wrote:
On 27 December 2015 at 11:52, Ori Livneh ori@wikimedia.org wrote:
On Thu, Dec 24, 2015 at 3:57 PM, Gabriel Wicke gwicke@wikimedia.org wrote:
I am writing to announce mediawiki-containers [1], a simple installer for MediaWiki with VisualEditor, Parsoid, RESTBase and other services, using Linux containers.
This is very nice work -- kudos. Is it too soon to envision running this (or rather, some future iteration) in production at Wikimedia? What would need to happen?
Ping on this. I for one would be interested too. :-)
J.
James D. Forrester Lead Product Manager, Editing Wikimedia Foundation, Inc.
jforrester@wikimedia.org | @jdforrester