Migrating new clients from shared cloud platforms and scaling up for high traffic delivery
Here at Lightcrest, we migrate many of our new clients from shared public cloud providers or application-specific IaaS platforms. These services, while convenient and affordable in the beginning, often end up being inflexible, cost-prohibitive or prohibitively challenging to manage in-house when visitor traffic and resource requirements increase dramatically.
In this blog post, we will provide a synopsis and brief overview of a recently-migrated Lightcrest client (“Client A”) that was facing a multitude of scalability challenges at their previous hosting provider. Many of the specific details of this migration are typical of clients that come to us looking for practical, proven enterprise site management solutions to deal with growth and performance problems experienced at other providers.
We hope that this posting provides some insight into the type of work we do with our clients – going far beyond a typical “managed” hosting vendor, we actively engage with client engineers as well as with other engineers in our partner ecosystem, and attempt to deliver solutions that are technically sound and that also make sense from a business perspective.
Introduction to the Client
Before we dive into the technical details, a brief introduction: Client A is a global online magazine experiencing sustained organic growth along with its sister print publication. At 15 million page views per month and growing, the ability to reliably deliver content to their growing readership base was beginning to falter. In addition, their shared hosting platform was unable to provide the configuration flexibility and agile deployments needed to develop new site features and respond to sites issues in a timely manner.
Client A approached Lightcrest with a simple request: provide a turn-key solution to host, scale and manage their infrastructure, while their in-house staff takes care of feature development and content publication. The provided managed infrastructure solution and engineering team (YPE) would be required to work hand-in-hand with the client’s technical and editorial staff to deliver a seamless migration as well as provide ongoing round-the-clock support.
Deficiencies of the previous host’s shared platform
The drawbacks to Client A’s previous hosting setup were numerous and ultimately represented a threat to the ability of upper management and editorial staff to deliver on their publishing initiatives in a cost-effective manner.
- Inability to scale up smoothly using client’s preferred tools and platforms
- Impending vendor lock-in and opaque product roadmap
- Outsourced physical hosting of machines (no recourse for server / network downtime)
- Poor track record of stability without massive upgrade to server footprint
- Poor database performance and data consistency
- Non-existent database replication / disaster recovery
- Rapidly increasing and unpredictable costs for servers and bandwidth
- Inability to view or customize web server, database, cache, and NoSQL configurations
- Content delivery / cache invalidation issues
- Poor engineering support and customer service from previous vendor
- Lack of forward-looking architecture best practices recommendations for software or physical infrastructure
Lightcrest was able to address all of the above frustrations by working closely with Client A during the technical sales process and attacking each specific need with an appropriate proposed solution.
Challenges and Considerations for Lightcrest
In addition to addressing Client A’s pain points with their previous provider, we were faced with additional challenges relating to migration, scalability, and ongoing management of their site. Including, but not limited to:
- Seamless (no downtime or data loss) migration of a revenue-generating live site serving readers worldwide
- Budget constraints while continuing to deliver content to millions of viewers
- Full management of the system and application stack
- Re-architect and prepare for rapid worldwide viewership growth in the future
- Provide cloud flexibility with performance of dedicated resources
- Work closely with in-house technical staff to deliver solutions in a timely manner
- Provide ongoing application/database performance optimization, data consistency, and source control /deployment
The Lightcrest Solution
One of the most immediate concerns we identified was the lack of visibility into the actual server footprint required by the application. In order to accurately forecast operational costs, management needed better insight into what their future traffic requirements would demand in terms of server footprint. This information was unavailable and subject to change with the previous shared hosting platform. Oversubscription, fluctuating pricing models, and inability to optimize existing deployments led to poor data for decision making.
The next concern was the lack of transparency in server configurations and deployment management. Although several caching technologies were in place (Opcode accelerators, HTTP caches, and database query caches), the details of the implementations and configurations were unavailable for review or modification. The previous vendor was highly reluctant to divulge any specifics of their configuration or software stack, which they considered to be proprietary.
The following architectural changes (standard for all Lightcrest clients) were recommended to mitigate the effects of virtual cloud instance failure, hardware failure, and network outages:
- Redundant private cloud application tier with overflow onto Lightcrest public cloud (OpenStack powering Xen)
- MySQL replication for high availability and disaster recovery in their private cloud (PCI compliant)
- Multiple Tier 1 IP transit providers supplying network connectivity
Furthermore, Lightcrest proposed that 3 layers of caching be implemented, integrated with the private cloud platform:
- Varnish HTTP cache in front of Apache (with open configuration shared with the client)
- Akamai CDN cache in front of Varnish (Integration fully managed by Lightcrest engineers)
- Memcache in front of MySQL, with possible future upgrade to Couchbase or other NoSQL solution)
And of course, 24/7/365 engineering and architectural support from Lightcrest YPEs, as well as full application and database optimization, troubleshooting, and deployment management. A turn-key solution with a predictable monthly recurring cost and flexible server deployment and provisioning.
By partnering with Akamai and other CDN providers, we are able to provide our clients with accelerated global content delivery abilities on a (comparatively) small server footprint. Combined with Varnish and Memcache, this allows for a relatively small private cloud footprint to serve considerable amounts of traffic, especially in the case of a sudden or unexpected increase in viewership.
By working with Lightcrest to seamlessly migrate and re-architect their cloud hosting environment, Client A enjoyed a considerable cost savings (over 25% annually),full application and database support, as well as an extensible hosting platform designed from the ground up to serve accelerated content to an international viewership without sacrificing development time or flexibility.