Instagram currently has 200 million users, while the Instagram retains 20 billion photos shared by users. From 2010 until the spring of this year, the pictures had been stored on Amazon's EC2 (Elastic Computing cloud), but now these photos have been moved by a small group of Instagram to the data center that acquired their Facebook, But 200 million of users didn't know anything about it, as if nothing had happened to them. So how did they do it?
As a buy-out company, Facebook decided to make a move in April 2013 after a year of buying Instagram in 1 billion dollars. The entire migration process approximately spents 1 year. Although the migration effort is huge, the migration is a very small team, at the beginning of the migration, the Instagram maintenance team only 8 people, then gradually expanded to 20 people. The actual data migration work took only 1 months, and the rest of the time was all about preparing for the migration.
The first step in the relocation process is to build a software that looks exactly like the original software in Facebook's data center. And then migrate the old data. Of course, this process is certainly more difficult than you think. Before Facebook opens Instagram's photo-sharing service, it needs to move Instagram to another part of the Amazon cloud. In other words, you have to move two times.
The first move was to move the service from Amazon EC2 to Amazon's virtual private cloud VPC. Through VPC, the migration team can build a logical network that can be extended beyond Amazon (i.e., the Facebook data center). This step is important because Facebook has full control over the IP address of the machine running Instagram. Only in this way, there will not be countless address conflict issues in the software migration.
But in order to move Instagram from EC2 to VPC, a common network must be built between the two. Amazon itself does not provide such a tool, so in order to solve this problem temporarily, Facebook has developed a set of network tool Neti. This illustrates the complexity of cloud computing and is one of the biggest lessons for anyone who wants to build their apps across the cloud.
Part of the migration team members, left in turn are Pedro Canahuati, Patrick Bozeman, Rick Branson, Nick Shortway, Chris Bray and Michael Gorven, photos: Ariel Zambelich /wired
Instagram did not use VPC at first because the VPC had not yet come out in 2010 years. As a result, today's startups should be able to consider doing their own applications on VPC, so that they can save the migration. And for people who just want to relocate some of their facilities to private data centers, using VPC is also a wise choice.
And then the software migration work, they have to rely on a more and more fire configuration management software-chef. Chef can write automated "recipes (recipes or cookbooks)" for software/applications loaded and configured on a large scale machine. For example, this recipe can automatically load the appropriate software onto a machine running on Amazon VPC. The team can then use similar recipes to load the same software on a machine inside the Facebook data center. To this end, the migration team wrote recipes specifically for installing software on a variety of Instragram database servers, and then made a recipe for configuring caching servers (caching servers are used to speed up the availability of hot photos).
Thus, by the year 2014 of April, the last part of the software and data was migrated to Facebook's data center. The Instagram efficiency of the migration was 3 times times, and the data extraction time was reduced by 80%.
The significance of the relocation, for Instagram, the use of Facebook's computing tools, for operations in the data center engineers, the move is a template, but also for the vast number of cloud services in the technology community to build the app for a transfer from the public cloud to the private cloud paradigm.
Of course, Facebook's migration is in the final analysis a relatively small number. Because, for most small and medium-sized enterprises, to the public cloud migration is the trend. The only people with deep pockets like Facebook that move services from the public cloud to their private cloud will do so. We also believe that the application migration will become as easy as Plug and Play as Docker, mesosphere and other resources are integrated and deployment management tools mature.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.