From One to Many: Moving Away From a Multisite
While Harvard Medical School is a leader in medical education and basic science research, it is a vast decentralized organization, with dozens of departments and offices. There are thousands of staff, faculty, and students that require our web services to be user-friendly, accessible, with a uniform design.
The Web team at HMS manages about forty sites, most of which were developed a few years ago as a Drupal multisite. Although that was in theory a reasonable idea, particularly for sites that are supposed to function, look, and feel largely identical to each other, the team started feeling the weight of a machine that was becoming increasingly hard to maintain. Among the chief complaints were the inherent difficulty of running and developing on the multisite locally, the risk of having a single point of failure, and the increasing potential downtime for all sites during deployments to production.
We split up these sites in early 2023 as part of our migration to a new hosting provider, which solved some of our main concerns, but raised a few more questions, among which:
- How do we maintain the internal consistency between the different codebases?
- How do we develop without keeping forty sites installed locally at all times?
- How do we avoid having to manually deploy changes to each site individually?
- How do we prevent deployments from becoming all-day affairs?
Some of the answers were right in front of our eyes the whole time, and some others we found along the way, with huge help from the Drupal community.
- Audience level: Advanced
- Topic: DevOps
- Room: Gaige Hall 201