Vous êtes sur la page 1sur 10

An overview of Drupal

infrastructure
and plans for future growth
prepared by Kieran Lal and Gerhard Killesreiter for the Drupal Association
Drupal.org Old Infrastructure

Problems:
Web servers not efficiently used
Firewall uses round robin
RAM upgrades needed division of load. Does not
Database Bottleneck check if web server died.
Will not scale 250% /year Not efficient use of web
Performance, failures cause downtime, serving capacity.
availability problems

Load is not evenly


Drupal 1 -web Drupal 2 -web Drupal 3 - CVS/Mail distributed across
servers. Not using
maximum RAM
capacity of servers.

Database is bottleneck in
architecture. Need more
RAM for MySQL. Could
use second db slave for
Drupal DB - database back-ups, high
availability failover.
Drupal.org old infrastructure services

Problems:
Web servers not efficiently used
Database Bottleneck Firewall Firewall uses round robin
division of load. Does not
Performance, failures cause downtime, Round Robin DNS
check if web server died.
availability problems alternates queries between D1 & D2 Not efficient use of web
serving capacity.

Drupal 1 Drupal 2 Drupal 3


Apache Web Server Apache Web Server CVS Load is not evenly
PHP 4.4 PHP 4.4 Mail distributed across
APC PHP Cache APC PHP Cache FTP servers. Not using
maximum RAM
NFS client files dir NFS client files dir PHP 5.2.2 capacity of servers.
Rsync php drupal.org,.be Rsync php drupal.org,.be
groups.d.o, scratch.d.o

Drupal DB Database is bottleneck in


architecture. Need more
MySQL 4.0.x RAM for MySQL. Could
NFS server use second db slave for
back-ups, high
availability failover.
Drupal.org Old Infrastructure Hardware

Drupal 1 Drupal 1 Drupal 1


Dell Poweredge 1850 Dell Poweredge 1850 Dell Poweredge 1850
RAM: 2 x 1 GB DDR-2 400 (6 slots total) RAM: 2 x 1 GB DDR-2 400 (6 slots total) RAM: 2 x 1 GB DDR-2 400 (6 slots total)
Storage: 2 x 73 GB U230 SCSI drives Storage: 2 x 73 GB U230 SCSI drives Storage: 2 x 73 GB U230 SCSI drives
(RAID1) (RAID1) (RAID1)
Processor: 2 x Intel Xeon Processor: 2 x Intel Xeon Processor: 2 x Intel Xeon
Motherboard: Motherboard: Motherboard:
Dual power supplies Dual power supplies Dual power supplies

http://www.dell.com/content/products/productdetails.aspx/pedge_1850

Dell's purchased in fundraising drive


http://drupal.org/node/26707

Drupal Database
SUN FIRE V20Z
RAM: 2GB Donated by Sun
Microsystems
Storage: 2 x 73 GB U230 SCSI drives (RAID1)
Processor: 2 x AMD Opteron
Motherboard:

http://www.sun.com/servers/entry/v20z/specs.jsp
Drupal.org Infrastructure

Improvements:
Load Balancers
Web server caches Load Balancer2
RAM for Web & DB Load Balancer1 Load balancers
Database Slave provide higher availability
Managed Mail server and more efficient use of
hardware, hardware
growth.

Three web nodes


Web1 Web 2 Web 3 allow for more web page
serving capacity, more
memory sharing, re-use of
old DB server

RAM Upgrades More powerful DB server


Web Server allows for more data growth,
Drupal DB faster searching. Master-slave
DrupalDB2 allows for higher availability if
Drupal DB we have a hardware failure.
MySQL Slave
MySQL Master Read only database could
help scale.

Using professional
managed mail server
reduces volunteer admin
overhead, frees up server
OSUOSL Mail Server resources
Drupal.org new infrastructure services

Firewall
Improvements: MySQL 4.0.x
Load balancers more efficient, HA
Drupal DBs HA, data integrity
Load balancers evenly
Load Balancer 1 Load Balancer 2 distribute work load and
Linux Virtual Server Linux Virtual Server can survive a hardware
High Availability High Availabiity failure.

Drupal 1 Drupal 2 Drupal 3


Apache Web Server Apache Web Server Apache Web Server Load is distributed
PHP 4.4 PHP 4.4 PHP 4.4 evenly. More Drupal
web properties can be
APC PHP Cache APC PHP Cache APC PHP Cache
supported.
Squid Cache Squid Cache Squid Cache
NFS client files dir NFS client files dir NFS client files dir
Rsync PHP *.drupal.* Rsync PHP *.drupal.* Rsync PHP *.drupal.*
CVS
FTP

Database replication
Drupal DB1 Drupal DB2 allows for High
MySQL 4.0.x MySQL 4.0.x Availability, hardware
MySQL master MySQL slave failure, backups, less
downtime for
NFS server MySQL backups maintenance.

OSUOSL Mail Professionally managed


Mail mail reduces service
needed to be run. Free's
hardware for web
serving.
Drupal.org new infrastructure hardware

Load Balancer 1 Load Balancer 2 Load balancers


Unknown server Unknown server donated by
RAM: RAM: OSUOSL
Storage: Storage:
Processor: Processor:
Motherboard: Motherboard:

Drupal 1 Drupal 2 Drupal 3


Dell Poweredge 1850 Dell Poweredge 1850 Dell Poweredge 1850
RAM: 2 x 1 GB DDR-2 400 (6 slots total) RAM: 2 x 1 GB DDR-2 400 (6 slots total) RAM: 2 x 1 GB DDR-2 400 (6 slots total)
Storage: 2 x 73 GB U230 SCSI drives Storage: 2 x 73 GB U230 SCSI drives Storage: 2 x 73 GB U230 SCSI drives
(RAID1) (RAID1) (RAID1)
Processor: 2 x Intel Xeon Processor: 2 x Intel Xeon Processor: 2 x Intel Xeon
Motherboard: Motherboard: Motherboard:
Dual power supplies Dual power supplies Dual power supplies

Dell's purchased in fundraising drive


http://drupal.org/node/26707

http://www.dell.com/content/products/productdetails.aspx/pedge_1850

Drupal Database Master Donated by Sun Drupal Database Slave Loaned by


SUN FIRE V20Z Microsystems HP unknown OSUOSL
RAM: 2GB RAM:
Storage: 2 x 73 GB U230 SCSI drives (RAID1) Storage:
Processor: 2 x AMD Opteron Processor:
Motherboard: Motherboard:

http://www.sun.com/servers/entry/v20z/specs.jsp

Mail services to be
donated by OSUOSL
Drupal.org future infrastructure

Improvements:
Memory Cache
Read Only DBs
CVS Server High Availability and
Load Balancer1 Load Balancer2
Development Server efficient web serving

Load balancers allow


Load to Web
horizontal web server scaling
Network to alive web servers. Cache
may reduced load on web
Web1 Web 2 Web 3 Web N servers serving pages from
Web N +1 memory. Memcache allows
memory pooling so more
content can be served from
memory.

Web to DB
Network
Most web requests just want
information and don't need to
update* or delete information.
By directing read only
Drupal DB DrupalDB2 DrupalDB N DrupalDB N+1 requests to read only
SunFire VZ40 MySQL Slave MySQL Slave MySQL Slave databases we can scale
databases horizontally.
MySQL Master

CVS & Tools Server Development Server OSUOSL Mail Server

* Authenticated users require a session update which could be moved to memory with memcache
Drupal.org new infrastructure services

Firewall
Improvements: MySQL 4.0.x
Load balancers more efficient, HA
Drupal DBs HA, data integrity
Load balancers evenly
Load Balancer 1 Load Balancer 2 distribute work load and
Linux Virtual Server Linux Virtual Server can survive a hardware
High Availability High Availabiity failure.

Drupal 1 Drupal 2 Drupal 3 Drupal N


Apache Web Server Apache Web Server Apache Web Server Apache Web Server Load is distributed
PHP 4.4 PHP 4.4 PHP 4.4 PHP 4.4 evenly. More Drupal
APC PHP Cache APC PHP Cache APC PHP Cache APC PHP Cache web properties can be
supported.
Squid Cache Squid Cache Squid Cache Squid Cache
NFS client files dir NFS client files dir NFS client files dir NFS client files dir
Rsync PHP *.drupal.* Rsync PHP *.drupal.* Rsync PHP *.drupal.* Rsync PHP *.drupal.*
MemCache Pool* MemCache Pool* MemCache Pool* MemCache Pool*

Database replication
Drupal DB1 Drupal DB2 Drupal DB3 Drupal DBN allows for High
MySQL 4.0.x MySQL 4.0.x MySQL 4.0.x MySQL 4.0.x Availability, hardware
MySQL master MySQL slave MySQL slave MySQL slave failure, backups, less
downtime for
NFS server MySQL backups MySQL read only* MySQL read only* maintenance.

Drupal Development Drupal CVS OSUOSL Mail Dedicated hardware for


Virtual DLAMP instances NFS client files dir Mail unit, developer, security,
Unit Testing Rsync PHP *.drupal.* performance testing.
CVS server free's D3 for
Performance Testing Drupal Distributions web serving.
Security devel services Drupal Tools
Logging/Analytics

*In order to scale databases horizontally with read only nodes, authenticated sessions must be moved to MemCache
Drupal infrastructure future hardware

Drupal Association
fundraising is necessary
and coordination with
OSUOSL

Additional Web Servers


more servers can pool more RAM for Software development,
software solutions, and
Memcache pool virtualization services
may make future
hardware growth
unnecessary

Additional Databases slaves Remote MySQL database slave

Dedicated CVS Server Dedicated Development Server

Vous aimerez peut-être aussi