Skip to content

Setup an enterprise MediaWiki server with simple commands

License

Notifications You must be signed in to change notification settings

anderson13g/meza

 
 

Repository files navigation

meza

Build Status Code Climate

Setup an enterprise MediaWiki server with simple commands. Put all components on a single monolithic server or split them out over many. Run a solitary master database or have replicas. Deploy to multiple environments. Run backups. Do it all using the meza command. Run meza --help for more info.

Table of contents

Why meza?

Standard MediaWiki is easy to install, but increasingly its newer and better features are contained within extensions that are more complicated. Additionally, they may be particularly difficult to install on Enterprise Linux derivatives. This project aims to make these features (VisualEditor, CirrusSearch, etc) easy to install, backup, reconfigure, and maintain in a robust and well-tested way.

Requirements

  1. CentOS 7 or RHEL 7 (for now)
  2. Minimal install: Attempting to install it on a server with many other things already installed may not work properly due to conflicts.

Install

Typical install

Login to your server and run the following (should take 15-30 minutes depending on your connection):

sudo yum install -y git
sudo git clone https://github.com/enterprisemediawiki/meza /opt/meza
sudo bash /opt/meza/src/scripts/getmeza.sh
sudo meza deploy monolith

This will setup a demo wiki with the user Admin with password adminpass. Update this password or remove this user for production environments. To add wikis see these docs.

Running VirtualBox and need to get your virtual machine configured? See our setting up VirtualBox guide.

Want to install on multiple servers. See setting up a multi-server environment.

Install with vagrant

To get a basic meza setup running on your personal computer, install Git, VirtualBox, and Vagrant, then do:

git clone https://github.com/enterprisemediawiki/meza.git
cd meza
vagrant up
vagrant ssh
sudo meza deploy vagrant

For a more detailed explanation of the commands above, or to do more complex things, see the meza Vagrant docs

What is installed?

Everything can be installed on a single server (a monolith, meza deploy monolith) or can be configured to install different components on different servers. For example, you may have the following setup:

  • 2 load balancers (multiple meza-installed load balancers still in development. multiple external load-balancers possible)
  • 3 app servers
  • 3 memcached servers
  • 1 database master
  • 3 database replicas
  • 2 Parsoid servers
  • 3 elasticsearch nodes
  • 2 backup servers

Software and versions

  • MediaWiki 1.27
  • PHP 5.6
  • Apache 2.4
  • MariaDB 5.5, configurable optionally with multiple replica servers
  • Load Balancer: HAProxy 1.5
  • Memcached 1.4
  • Elasticsearch 1.6
  • Node.JS 6.9

MediaWiki extensions

This is not necessarily an exhaustive list

See also

Contributing

If you'd like to contribute to this project, please see this guide on how to help.

About

Setup an enterprise MediaWiki server with simple commands

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 79.1%
  • Shell 9.4%
  • PHP 7.2%
  • Python 2.5%
  • CSS 1.8%