US2013124481A1PendingUtilityA1

Upgrade of highly available farm server groups

Assignee: MICROSOFT CORPPriority: Oct 20, 2010Filed: Oct 22, 2012Published: May 16, 2013
Est. expiryOct 20, 2030(~4.2 yrs left)· nominal 20-yr term from priority
G06F 16/2329G06F 16/958G06F 11/1446
49
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A machine manager controls the deployment and management of machines (physical and virtual) for an online service. Multi-tier server groups are arranged in farms that each may include different configurations. For example, their may be content farms, federated services farms and SQL farms that are arranged to perform operations for the online service. When the multiple farms are upgraded, new farms are deployed and the associated content databases from the old farms are moved to the newly deployed farms. During the upgrade of the farms, requests may continue to be processed by the farms. The farms may be automatically load balanced during an upgrade. As content becomes available on the new farm, requests for the content may be automatically redirected to the new farm.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for upgrading farms in an online service, comprising:
 determining when to deploy a new farm in a network to replace an old farm;   deploying the new farm comprising provisioning different machines in the new farm to perform different roles for the online service;   creating a backup for each database in the old farm while continuing to allow reads and writes to the database while the database is being backed up;   automatically routing requests from the old farm to the new farm; and   unprovisioning the old farm.   
     
     
         2 . The method of  claim 1 , further comprising: copying each database in the old farm to the new farm; while continuing to allow reads and writes to the databases previously backed up in the old farm; wherein the old farm continues to process requests for the roles provided by the old farm; 
     
     
         3 . The method of  claim 1 , further comprising: performing any upgrades to the databases in the new farm; 
     
     
         4 . The method of  claim 1 , wherein provisioning the machines in the new farm comprises automatically starting a process to deploy the new farm within the network; wherein deploying the farm comprises provisioning software on the machines within the farm using virtual hard disk (VHD) images, and starting the machines. 
     
     
         5 . The method of  claim 1 , further comprising marking each database in the old farm as read only during a time period that each database is being copied to the new farm. 
     
     
         6 . The method of  claim 1 , further comprising updating the databases copied to the new farm with any data that changed on the old farm since a time the data was backed up on the old farm. 
     
     
         7 . The method of  claim 1 , further comprising automatically adjusting a configuration of the new farm during deployment to load balance the new farm. 
     
     
         8 . The method of  claim 1 , wherein determining when to deploy the new farm to replace the old farm comprises determining when the old farm has at least a potential security breach. 
     
     
         9 . The method of  claim 1 , wherein deploying the new farm comprises automatically deploying: a content farm; a federated services farm; and a SQL farm. 
     
     
         10 . A computer-readable storage medium having computer-executable instructions for deploying farms for an online service, comprising:
 machines are arranged within farms within each of the networks, wherein the role is used to determine one or more virtual machines to install the machines, wherein the configuration stores a goal for each of the farms and a role for each of the farms;   determining when to deploy a new farm in a network to replace an old farm;   deploying the new farm; wherein deploying the new farm comprises provisioning physical machines within the network with virtual machines;   creating a backup for each database in the old farm while continuing to allow reads and writes to the database while the database is being backed up;   marking each database in the old farm as read only during a time period that each database is being copied to the new farm;   automatically routing requests from the old farm to the new farm; and   unprovisioning the old farm   
     
     
         11 . The computer-readable storage medium of  claim 10 , further comprising copying each database in the old farm to the new farm; while continuing to allow reads and writes to the databases previously backed up in the old farm; wherein the old farm continues to process requests for the roles provided by the old farm. 
     
     
         12 . The computer-readable storage medium of  claim 10 , further comprising performing any upgrades to the databases in the new farm. 
     
     
         13 . The computer-readable storage medium of  claim 11 , wherein deploying the new farm comprises automatically deploying the content farm first followed by deploying the federated services farm followed by deploying the database farm. 
     
     
         14 . The computer-readable storage medium of  claim 11 , wherein provisioning the machines in the new farm comprises automatically starting a process to deploy the new farm within the network; wherein deploying the farm comprises provisioning the machines within the farm using virtual hard disk (VHD) images, and starting the machines. 
     
     
         15 . The computer-readable storage medium of  claim 11 , further comprising updating the databases copied to the new farm with any data that changed on the old farm since a time the data was backed up on the old farm. 
     
     
         16 . The computer-readable storage medium of  claim 11 , wherein determining when to deploy the new farm to replace the old farm comprises determining when the old farm has at least a potential security breach. 
     
     
         17 . A system for deploying farms for an online service, comprising:
 a network comprising physical machines, virtual machines and databases;   wherein the virtual machines are arranged in farms that each perform a role; wherein the farms comprise content farms, federated services farms and SQL farms that are arranged together in groups;   a processor and a computer-readable storage medium;   an operating environment stored on the computer-readable medium and executing on the processor; and   software that is operative to:
 store a configuration of machines in farms of different networks for the online service, 
 determine when to deploy a new farm in a network to replace an old farm; 
 deploy the new farm; wherein deploying the new farm comprises provisioning the physical machines within the network with virtual machines; 
 creating a backup for each database in the old farm while continuing to allow reads and writes to the database while the database is being backed up; 
 copying each database in the old farm to the new farm; while continuing to allow reads and writes to the databases previously backed up in the old farm; wherein the old farm continues to process requests for the roles provided by the old farm; 
 marking each database in the old farm as read only during a time period that each database is being copied to the new farm; 
 automatically routing requests from the old farm to the new farm; and 
 unprovisioning the old farm 
   
     
     
         18 . The system of  claim 17 , wherein deploying the new farm comprises automatically deploying a content farm first followed by deploying a federated services farm followed by deploying a database farm. 
     
     
         19 . The system of  claim 17 , wherein provisioning the machines in the new farm comprises automatically starting a process to deploy the new farm within the network; wherein deploying the farm comprises provisioning the machines within the farm using virtual hard disk (VHD) images, and starting the machines. 
     
     
         20 . The system of  claim 17 , further comprising determining when the upgrade is unsuccessful for a farm and when unsuccessful using routing requests to the databases in the old farm.

Join the waitlist — get patent alerts

Track US2013124481A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.