mediawiki scalable #10

  • By charmers
  • Latest version (#10)
  • Stable, Edge
  • 5 machines, 5 units

A scalable MediaWiki Bundle

This bundle deploys Mediawiki, memcached, MySQL, and an haproxy. It requires a
minimum of 5 units. The mediawiki charm is placed behind the proxy so that you
can point DNS at the proxy and then scale the mediawiki unit up and down.

Usage

All you should do after deployment is expose haproxy, you can do this via the
GUI or via the CLI:

juju expose haproxy

To scale out mediawiki itself:

juju add-unit mediawiki

There's no need to configure memcached, it is included in this bundle to use
mediawiki already. The MySQL database is set up in a master->slave
configuration so you can scale the database as well with:

juju add-unit mysql-slave

Bundle configuration

  • haproxy haproxy Show configuration
    sysctl
    default_retries
    3
    global_group
    haproxy
    monitoring_stats_refresh
    3
    default_options
    httplog, dontlognull
    global_user
    haproxy
    monitoring_password
    changeme
    default_mode
    http
    default_timeouts
    queue 20000, client 50000, connect 5000, server 50000
    global_log
    127.0.0.1 local0, 127.0.0.1 local1 notice
    global_spread_checks
    0
    monitoring_allowed_cidr
    127.0.0.1/32
    monitoring_username
    haproxy
    default_log
    global
    package_status
    install
    services
    - service_name: haproxy_service service_host: "0.0.0.0" service_port: 80 service_options: [balance leastconn] server_options: maxconn 100
    global_maxconn
    4096
    monitoring_port
    10000
    global_debug
    False
    nagios_context
    juju
    global_quiet
    False
    enable_monitoring
    False
  • mediawiki mediawiki Show configuration
    debug
    False
    name
    Please set name of wiki
    skin
    vector
  • mysql-slave mysql slave Show configuration
    vip_cidr
    24
    vip_iface
    eth0
    block-size
    5
    tuning-level
    safest
    rbd-name
    mysql1
    query-cache-size
    -1
    query-cache-type
    OFF
    binlog-format
    MIXED
    ha-mcastport
    5411
    max-connections
    -1
    flavor
    distro
    preferred-storage-engine
    InnoDB
    dataset-size
    80%
    ha-bindiface
    eth0
  • memcached memcached Show configuration
    request-limit
    -1
    slab-page-size
    -1
    allow-ufw-ip6-softfail
    True
    nagios_context
    juju
    disable-large-pages
    False
    disable-cas
    False
    connection-limit
    1024
    udp-port
    0
    min-item-size
    -1
    threads
    -1
    disable-auto-cleanup
    False
    factor
    1.25
    tcp-port
    11211
    extra-options
    size
    768
  • mysql mysql Show configuration
    vip_cidr
    24
    vip_iface
    eth0
    block-size
    5
    tuning-level
    safest
    rbd-name
    mysql1
    query-cache-size
    -1
    query-cache-type
    OFF
    binlog-format
    MIXED
    ha-mcastport
    5411
    max-connections
    -1
    flavor
    distro
    preferred-storage-engine
    InnoDB
    dataset-size
    80%
    ha-bindiface
    eth0