CN105229609B - The placement of the customer impact of virtual machine instance - Google Patents

The placement of the customer impact of virtual machine instance Download PDF

Info

Publication number
CN105229609B
CN105229609B CN201480028885.4A CN201480028885A CN105229609B CN 105229609 B CN105229609 B CN 105229609B CN 201480028885 A CN201480028885 A CN 201480028885A CN 105229609 B CN105229609 B CN 105229609B
Authority
CN
China
Prior art keywords
placement
placement strategy
service provider
virtual machine
provider network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201480028885.4A
Other languages
Chinese (zh)
Other versions
CN105229609A (en
Inventor
E·G·阿道格拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/889,919 external-priority patent/US20140337834A1/en
Priority claimed from US13/889,914 external-priority patent/US20140337833A1/en
Priority claimed from US13/889,907 external-priority patent/US9665387B2/en
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN105229609A publication Critical patent/CN105229609A/en
Application granted granted Critical
Publication of CN105229609B publication Critical patent/CN105229609B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Service provider network includes for allowing client by specifying Placement Strategy to influence the function of the placement of virtual machine instance on a server computer.Placement Strategy can be shared between the client of the service provider network and can be scored the publisher of the Placement Strategy and the Placement Strategy.The Placement Strategy unrelated with supplier can also be utilized to identify the service provider network for executing virtual machine instance.It can also be using the Placement Strategy including dynamic evaluation parameter to modify the virtual machine instance in team of customers on continuing basis.

Description

The placement of the customer impact of virtual machine instance
Background of invention
Some network-based calculating service providers allow client that calculating is bought and utilized on the basis of permanent or on-demand Resource, such as virtual machine instance.Other than virtual machine instance, such calculating service provider allow generally for client purchase and Utilize other types of computing resource.File and block data storage resource, database are provided for example, can permit client's purchase Source, networked resources and other types of computing resource access right and the right to use.Using these computing resources as construction blocks, Such network-based client for calculating service can create customized solution, provide a plurality of types of functions, such as Application program trustship, backup and storage, content delivery, WWW (" network ") trustship, corporate information technology (" IT ") solution party Case, database service etc..
When starting certain form of computing resource (such as virtual machine instance), the client of service provider network is (such as The client of above-described service provider network) typically fail to it is specified about the actual hardware for instantiating computing resource thereon and The details of software platform (it is also referred to as " Infrastructure platform " herein).On the contrary, can only allow client general Ground describes desired computing resource.For example, can permit client in the case where virtual machine instance and only specify desired deposit Reservoir amount, desired processing capacity rank and desired amount of storage.Then network-based calculating services selection is specific hard Part platform (such as particular server computer) come utilize with instantiate by client request computing resource.
Consider that disclosure set forth herein is presented about these and other.
Brief description
Fig. 1 is showing for using Placement Strategy in service provider network according to an embodiment disclosed herein Virtual machine customer impact placement an illustrative mechanism described herein aspect network architecture diagram;
Fig. 2 is showing for sharing Placement Strategy and being used for Placement Strategy and put according to embodiment disclosed herein The system diagram of the aspect of a mechanism disclosed herein for the publisher's grading for setting strategy;
Fig. 3 is showing for sharing Placement Strategy and for Placement Strategy according to an embodiment disclosed herein The flow chart of the illustrative routine program to score with the publisher of Placement Strategy;
Fig. 4 be according to an embodiment disclosed herein show for using the Placement Strategy unrelated with supplier with Select the system diagram for instantiating the aspect of a mechanism disclosed herein for the service provider network of virtual machine instance;
Fig. 5 be according to an embodiment disclosed herein show for using the Placement Strategy unrelated with supplier with Select the flow chart for instantiating an illustrative routine program of the service provider network of virtual machine instance;
Fig. 6 is showing for utilizing the placement plan for including dynamic evaluation parameter according to an embodiment disclosed herein System diagram slightly to modify the aspect of a mechanism disclosed herein for the virtual machine instance in team of customers;
Fig. 7 is showing for utilizing the placement plan for including dynamic evaluation parameter according to an embodiment disclosed herein Flow chart slightly to modify an illustrative routine program of the virtual machine instance in team of customers;
Fig. 8 is showing including being configured to provide for implementing virtual machine reality according to an embodiment disclosed herein One of the embodiment disclosed herein of the service provider network of the function of example and other types of computing resource is illustrative The system and network of operating environment;
Fig. 9 is to implement putting for the customer impact for being used for virtual machine instance according to the diagram of an embodiment disclosed herein The computing system figure of one configuration of the data center of the aspect of the concept and technology disclosed herein set;With
Figure 10 is the calculating shown for implementing to be utilized to implement the aspect of multiple embodiments presented herein The computer rack composition of the illustrative computer hardware framework of device.
Specific embodiment
The technology of placement described in detail below for the customer impact for virtual machine instance.Utilize skill described herein Art can define and influence using Placement Strategy virtual machine instance and other types of computing resource in service provider network In placement.Placement Strategy can be shared between the client of service provider network and can be to Placement Strategy and Placement Strategy Publisher scoring.In other embodiments, it can use the Placement Strategy unrelated with supplier to select for instantiating The service provider network of virtual machine instance.In yet another embodiment, it can use the placement plan including dynamic evaluation parameter Slightly to modify the virtual machine instance in team of customers.
For using the number of mechanisms disclosed herein of the placement of the customer impact of the virtual machine instance of Placement Strategy can be with Computing resource (such as virtual machine instance, data storage resource, number can be bought and utilized on the basis of permanent or on-demand together with client According to base resource, networked resources and other types of computing resource) the network-based distribution of the service provider that is passed through operation Formula calculates environment (it can be referred to as " service provider network " herein) operation.
The service provider for operating service provider network can collect operation calculating to creation and using the client of resource The expense of resource.Service provider can also be provided with determining for the calculating provided by service provider using a variety of purchasing models The use in source collects how many to client.As mentioned, the client of such service provider can use computing resource to make It is structure block to create customized solution, a plurality of types of functions is provided, such as application program trustship, backup and storage, Content delivery, network trustship, enterprise's IT solution, database service etc..
Also as mentioned, the client (client of all service provider networks described above) of service provider network Typically fail to the specified details about the actual hardware platform for instantiating particular computational thereon.On the contrary, can only allow visitor Family generally describes desired computing resource.For example, can permit client in the case where virtual machine instance and only specify institute Desired amount of memory, desired processing capacity rank and desired amount of storage.But client cannot specify and should create thereon Build the specific hardware or Infrastructure platform of virtual machine instance.On the contrary, network-based calculating services selection particular hardware platform (such as particular server computer) come utilize with instantiate by client request computing resource.A variety of embodiment party disclosed herein Case solves these and may other consideration.
In order to solve at least some considerations proposed above, embodiment disclosed herein is provided for using Placement Strategy Virtual machine instance customer impact placement several computer-implemented mechanism.In these embodiments, service provides Quotient's network can provide the function of the placement of the customer impact of virtual machine instance and/or other types of computing resource.For example, can To allow the client of service provider network is specified can be utilized to influence virtual machine instance or other types of computing resource The Placement Strategy of the placement in particular hardware platform in service provider network.Placement Strategy be can use based on valence Lattice, hardware manufacturer, manufacture time, chipset, hardware card or the other types of peripheral equipment of hardware platform, network connection, Other attributes of processor type and/or computing device and influence placement of the virtual machine instance in particular hardware platform.
In a specific embodiment disclosed herein, the client that can permit service provider network shares each other is put Set strategy.It is placed for example, the component in service provider network can be configured to receive from the client of service provider network Strategy.Received Placement Strategy, which can be defined as, to be suitable in certain types of computational workload (such as particular virtual machine Image) under use.Placement Strategy can be stored and is used later Placement Strategy is recommended service provider network Other clients use under same or like computational workload.
It can be provided for allowing client to provide Placement Strategy and/or the machine of the scoring of the client of Placement Strategy being provided System.Placement Strategy can also selected to recommend and utilize these scorings when user to use under specific workloads.These Scoring can also be exposed to the client of service provider network for being used for certain types of computational workload in selection It is used in Placement Strategy.
In another embodiment, a kind of virtual machine instance for using the Placement Strategy unrelated with supplier is provided The placement of customer impact.In this embodiment, it can define and select to use using the Placement Strategy unrelated with supplier In the special services provider for executing virtual machine instance.The Placement Strategy unrelated with supplier is independently of any special services The Placement Strategy that the mode of provider (that is, supplier) and/or service provider network (that is, unrelated with its) defines.
In one embodiment, numerous service provider networks for being operated by different suppliers are extracted in the example service of placing Example usability data and example pricing data.Example usability data describes virtual machine instance type and/or for executing The hardware platform of the virtual machine instance type obtained from each service provider network.The description of example pricing data utilizes a variety of void The price of quasi- machine example types.It can be obtained before the request for receiving starting virtual machine instance or when receiving such request Example usability data and example pricing data.
Example placement service can also receive asking for the virtual machine instance that starting includes the Placement Strategy unrelated with supplier It asks.In response to receiving such request, example place service can use example usability data, example pricing data and with confession The Placement Strategy for answering quotient unrelated is to select the service provider network for starting virtual machine instance.In one embodiment, The service provider network for being selected for starting virtual machine instance is to can satisfy the Placement Strategy unrelated with supplier Parameter and the service provider network that desired virtual machine instance can be executed with least cost.Once selected service provides Quotient's network, example, which places service, can be transmitted to request selected service provider network to instantiate virtual machine instance.
In yet another embodiment, a kind of placement of the customer impact of virtual machine instance for using dynamic parameter is provided Mechanism.In this embodiment, the Placement Strategy including dynamic evaluation parameter can be defined.The parameter of dynamic evaluation be The parameter of dynamic definition when assessing Placement Strategy.For example, can be when assessing Placement Strategy inside service provider network Data source extracts the value of one or more dynamic evaluation parameters.It can also be when assessing Placement Strategy outside service provider network The data source in portion extracts the value of one or more dynamic evaluation parameters.
Once having received the value of the dynamic evaluation parameter for Placement Strategy, it can be estimated that Placement Strategy.Depending on assessment As a result, can virtual machine instance group team to the guest operation by service provider network carry out a variety of modifications.For example, executing It can migrate in the virtual machine instance in particular hardware platform to different hardware platforms.In another example, new virtual machine instance The group team that can be added on the hardware platform for being implemented in and being specified by the Placement Strategy comprising dynamic evaluation parameter.
In some embodiments, can be updated periodically and using dynamic evaluation parameter value to assess Placement Strategy. Then the result for the assessment that Placement Strategy can be depended on updates accordingly the virtual machine instance in team of customers.By this method, The modification to team of customers can be carried out according to the parameter proposed in Placement Strategy on continuing basis.It hereafter will be about Fig. 1 extremely The multiple assembly that describes briefly above and process of the placement about the customer impact for virtual machine instance is presented in Figure 10 Additional detail.
It will be appreciated that purport presented herein may be embodied as computer procedures, computer control equipment, computing system or One manufacture, such as computer readable storage medium.Although in the program module being implemented on one or more computing devices General context in be presented purport described herein, but one of ordinary skill in the art are it will be recognized that other implementations can be with Other types of program module is combined to execute.In general, program module includes executing particular task or implementation specific abstract number According to the routine program of type, program, component, data structure and other types of structure.
Skilled artisan will also appreciate that the aspect of purport described herein can be in other meters described herein It is practiced in other computer system configurations except calculation machine system configuration or together with other computer system configurations described herein Except the practice of other computer system configurations, the computer system configurations include multicomputer system, based on microprocessor Or programmable consumer electronics device, minicomputer, mainframe computer, handheld computer, personal digital assistant, electronics Book reader, honeycomb telephone device, tablet computing device, specific use hardware device, network equipment etc..As was explained briefly above It refers to, can practice the embodiments described herein in a distributed computing environment, wherein task can be by passing through communication network The remote computing device of connection executes.In a distributed computing environment, program module can be located locally and deposit with remote memory In storage device the two.
In the following detailed description, with reference to forming its part and show the attached of specific embodiment or example by explanation Figure.The figure of this paper is not necessarily to scale drafting.In all several figures, (it herein referred to as " schemes " (" FIG ") or " several figures " (" FIGS ")) in, like numeral indicates similar components.
Fig. 1 is the side for showing an illustrative mechanism described herein for placement for the customer impact for virtual machine instance The network architecture diagram in face.It describes as was explained briefly above, number of mechanisms disclosed herein can be grasped together with service provider network 102 Make, wherein client can buy on the basis of permanent or on-demand and be mentioned using the service from operation service provider network 102 For the computing resource (it is also referred to as " resource " herein) of quotient, (it is herein by such as virtual machine instance 104A to 104B In be also referred to as " virtual machine " or " example " 104), networked resources, storage resource or other types of computing resource.Although this Description is mainly in the described in the text up and down of virtual machine instance 104 as described in being presented Fig. 1 for text, it is to be appreciated that can be in other classes Embodiment disclosed herein is utilized under the computing resource of type.
The each type of computing resource or configuration can be in the service of different size of service provider network 102 from operation Provider obtains.For example, service provider can provide can be used for buying and using have processor ability, main memory, The many different configuration of examples 104 or other types of data processing resources of magnetic disk storage and operating system.Service provides Quotient can be provided for the other types of resource bought and used by client.For example, service provider can permanent or Database resource, file or block data storage resource, networked resources and/or other types of resource are provided on the basis of on demand.
The service provider for operating service provider network 102 can also collect operation to creation and using the client of resource The expense of resource.It can be with resource-based type and/or configuration to specific resources fee charged.The expense that specific resources are collected With the time quantum being also based on using resource.For example, it is similar to virtual machine instance 104 in the case where data processing resources, Configuration based on virtual machine instance 104 and the expense that resource uses can be collected using the time quantum of virtual machine instance 104.In number It, can data volume based on storage and/or the data that are sent in resource or are spread out of from resource in the case where according to storage resource Measure calculating expense.The expense of other types of resource is also based on other considerations.Service provider can also utilize a variety of purchases Model is bought to determine the amount of money for being directed to the use of the resource provided from service provider and collecting to user.
In one or more data that above-described resource can be operated in a particular implementation by service provider The heart provides.As known to one of ordinary skill in the art, data center be utilized to accommodate and operate computer system (such as service The facility of device computer 106A to 106N and associated component).Data center also generally includes redundancy and backup power source, communication, cold But and security system.Data center can be located in geographically different position and to may also connect to a variety of other facilities (all Such as Co-location facility) and a variety of wide area networks (" WAN ") (such as internet).In environment shown in Fig. 1, service provider One or more data centers can be operated, are configured to provide the virtual machine instance 104 in service provider network 102 To its client.It will hereafter provide about Fig. 8 and Fig. 9 about being used to provide the service provider network 102 of function disclosed herein Implementation details.
It can also supply and release in an automated manner on demand the above-described multiple resources of supply.For example, client can be with Virtual machine instance starting request 108 (" starting request 108 " or " request 108 ") is committed to service provider network 102 with reality The new example 104A of exampleization virtual machine.In response to receiving such request 108, component 110 or service provider network 102 are disposed Interior one or more of the other component can such as be requested the new example 104A of creation virtual machine by client.Then it can permit client The new example 104A of virtual machine is utilized according to expectation.Other types of computing resource can instantiate in a similar manner.
When client has used computing resource (such as virtual machine instance 104A) to complete, client can request to release supply money Source.In response to this, another component disposed in component 110 or service provider network 102 can to release supply calculating money Source.For example, deployment component 110 can release supply virtual machine instance 104A.Other types of computing resource can also similar side Formula supply and releasing supply.Service provider network 102 can also provide based on the demand to computing resource or other factors and Auto zoom and/or the function of releasing scaling resource.
As mentioned, service provider network 102 can also provide virtual machine instance 104 in some embodiments The function of the placement of customer impact.For example, the client that can permit service provider network 102 is specified can to influence virtual machine reality One or more of the placement of example 104 or other types of computing resource in the particular hardware platform for meeting the criterion that client specifies A additional parameter (herein referred to as " Placement Strategy 112 ").For example, can permit client is based on price, hardware manufacturer, system Make time, chipset, hardware card or the other types of peripheral equipment of hardware platform, network connection, processor type and/or hard Other attributes of part or Infrastructure platform and influence virtual machine instance 104 on certain types of server computer 106 It places.Using such mechanism, network-based service provider can collect higher price for the use of newer hardware platform Lattice.Alternatively, the client of such network-based service provider can be by more out-of-date or less desirable hardware Computing resource is instantiated on platform and cuts down cost.
In one embodiment, it may specify that the Placement Strategy 112 for defining desired hardware platform leads to by using client The attendant application programming interface (" API ") crossed is called and implements the function for influencing the placement of virtual machine instance 104.Example Such as, the client that example API Calls can permit service provider network 102 is provided about virtual machine instance 104 with certain The hardware of type or the guidance for meeting the placement on the server computer 106 of other criterion.For example, request is with a certain amount of The API Calls of some virtual machine instance type of memory may include the specified hardware that will execute virtual machine instance 104 thereon Desired manufacturer or time or manufacture Placement Strategy 112.For example, can use Placement Strategy has with specified utilize The service of the server computer 106 of processor from ADVANCED MICRO DEVICES (" AMD ") or manufacture in 2012 Device computer 106.The mechanism other than API can also be utilized so that Placement Strategy 112 is provided to service provider network 102 In appropriate component.In some implementations, Placement Strategy 112, which can also be designated identification, should not be performed simultaneously in desired base Certain hardware resources of other component softwares and/or specified certain percentage (for example, 100%) on Infrastructure platform are exclusively used in Example.
In some implementations, it can permit user's registration default Placement Strategy 112 or specify in starting virtual machine instance 104 The Placement Strategy 112 of Shi Liyong.Deployment component 110 can be attempted to fulfil the Placement Strategy 112 or if cannot expire that user specifies Toe determines Placement Strategy 112, may fail the virtual machine instance 104 of starting request.For example, if associated Placement Strategy 112 It is specified to utilize some processor type, and without clothes in the provider server network 102 with desired processor type Business device computer 106 can be used, then being rejected by starting request 108.
In other embodiments, it can also be utilized under the automatic zoom function provided by service provider network 102 Placement Strategy 112.For example, Placement Strategy 112 can specify using the hardware of manufacture in 2011 and if hardware be unavailable, Using the hardware of manufacture in 2010 and output is increased by 10% with the known problem of compensation hardware in 2010.This function may be used also It is matched with executing the part vertically scale of workload point for example size with being combined with predefined benchmark test.For example, putting It sets strategy 112 and can specify and start virtual machine instance 104 on the hardware of manufacture in 2010, but if that is impossible, then making The hardware manufactured with 2011, but the increased workload of each server computer 106 of manufacture in 2011 will be sent to 10% to compensate the cost using newer hardware.
In the example depicted in fig. 1, starting request 108 is committed to deployment component by the client of service provider network 110.108 request deployment component 110 of starting request instantiates the new example 104 of virtual machine in service provider network 102.It opens Dynamic request 108 may include the example types identifier 111 of the type of the virtual machine instance 104 of general specified request.For example, real Example type identifier 111 may generally refer to surely for the desired amount of memory of new virtual machine instance 104, desired processing energy Power rank and desired amount of storage.But example types identifier 111 is not specified about should create new example 104 thereon Actual hardware platform specific detail.
As mentioned above, starting request 108 can also include user-defined Placement Strategy 112.Placement Strategy 112 exists It may include that in starting request 108 or can be provided separately in other embodiments in some embodiments.For example, some In implementation, the client of service provider network 102 can be maintained and the associated Placement Strategy 112 of user account, user's account Family can be received as accessing and utilizing when client instantiates the request 108 of new virtual machine instance 104 in deployment component 110.
It will be appreciated that Placement Strategy 112 can define can be evaluated it is specific until identifying available infrastructure platform The substitution preference of Infrastructure platform.For example, in a particular implementation, the of the hardware including manufacture in 2013 can be defined The Placement Strategy 112 of one preference.If Placement Strategy 112 can also specify the hardware and unavailable of manufacture in 2013, answer Utilize the hardware of manufacture in 2012.Placement Strategy 112 can further specify that the hardware and unavailable if manufacture in 2012, that Utilize any server computer 106 for including the chipset from INTEL CORPORATION (" INTEL ").If tool There is the server computer of the chipset from INTEL unavailable, then Placement Strategy 112, which can further specify that, to be started Example 104.By this method, the client of service provider network 102 can specify numerous Infrastructure platform candidates, so as to shadow Ring the placement of virtual machine instance 104 or other types of computing resource in service provider network 102.
It will be appreciated that Placement Strategy 112 even more more complicated than above-described Placement Strategy can be defined and be utilized.But It is, in general, it should be understood that Placement Strategy 112 can be defined as the ordered list of desired infrastructure attribute.It can be by Manner described above is with priority assessment list until identifying server computer 106 or with the other of desired attribute Hardware platform.Different-format can be presented in desired infrastructure attribute in various embodiments, such as that will be recognized One group of key-value pair must can all to meet by the server computer 106 that its preference selects constrains, and is related to boolean operator Free form thestatement or with predetermined and publication property particular virtual machine example types 104.It can also utilize other Format.
It refers to as was explained briefly above, deployment component 110 receives starting request 108 in one embodiment.Then component is disposed The virtual machine instance 104 of 110 identification requests will start on which server computer 106A to 106N.It will be appreciated that server Computer 106A to 106N can use various different Infrastructure platforms, may include hardware platform, software platform and/or Its each self-configuring.For example, a server computer 106A can use par-ticular processor and chipset, and another server meter Calculation machine 106B can use different processor and chipset.It can also manufacturing service device computer 106A be extremely during different year 106N.Server computer 106A to 106N can also have the different operating system being mounted thereon or other component softwares. On this point, it should be understood that the server computer 106A to 106N with many different hardwares and software configuration can be made to take It can be used in business device provider network 102 for being used by manner described herein.
When disposing reception starting request 108 of component 110, deployment component 110 can use Placement Strategy 112 and server The content of configuration data memory block 114 (" data storage area 114 ") with determine server computer 106A to 106N which The upper new virtual machine instance of instantiation.Data storage area 114 includes identification available server meter in service provider network 102 The server of the details of the Infrastructure platform of the data and each server computer of description of calculation machine 106A to 106N calculates The data of machine 106A to each of 106N.For example, data storage area 114 can store identification server computer 106 in it is hard The type and manufacturer of part and component software, the time of the manufacture of hardware component, the version of component software, particular server calculate The price of machine 106 used and other types of hardware and/or the server computer 106A's to 106N of software attributes is every A data.It will be appreciated that these examples only have it is illustrative and describe server computer 106A to 106N other hardware and/ Or the data of software attributes can be maintained in data storage area 114.
Deployment component 110 meets user using Placement Strategy 112 and the data being stored in data storage area 114 to identify One or more server computers 106 of specified Placement Strategy 112.Once having identified one for meeting Placement Strategy 112 Or multiple server computers 106, then disposing component 110 can be in matched server computer or server computer Start the virtual machine instance 104 or other types of computing resource of request on 106.
In another implementation, deployment component 110 can request 108 in response to the starting with a plurality of types of information.Example Such as, if it find that server 106A is the matcher of Placement Strategy 112, then can return and retouch in response to starting request 108 State the data of the price using server computer 106A.Then client can use pricing information to decide whether in server Start virtual machine instance 104A on computer 106A.It may also respond to starting request 108 and return to other information.
By providing Placement Strategy 112 (all Placement Strategies described above), the client of service provider network 102 can To influence to instantiate particular virtual machine where among many server computers 106 with different hardware and software configuration Example 104 or other types of computing resource.Placement about the customer impact for virtual machine instance 104 it is above-described The additional detail of mechanism can at entitled " USER-INFLUENCED PLACEMENT OF VIRTUAL MACHINES ", On November 16th, 2012 application and entire contents be expressly incorporated herein by reference in U.S. Patent Application No. 13/ It is found in No. 679,451.
Fig. 2 and Fig. 3 illustrates the aspect of an embodiment disclosed herein, wherein allowing service provider network 102 Client shares Placement Strategy 112 each other.For example, being born for selection for executing certain types of calculating work when client has determined that The hardware platform of lotus, when specific Placement Strategy 112 is gone on well, this is desirable.
Computational workload (it can be referred to as " workload " herein) is the application journey that can be implemented on virtual machine Sequence, virtual machine images, virtual unit or another type of program.It is directed to if Placement Strategy 112 is placed in workload On the server computer 106 that workload optimizes, born then Placement Strategy 112 may be considered that with certain types of work Lotus goes on well.Regardless of whether being potentially based on for workload optimised service device computer 106 by service provider network One or more factors of 102 client definition comprising (but being not limited to) cost, handling capacity, uses application program capacity The quantity and/or other factors or factor of virtual machine instance 104 combine.
If it is good that the client of service provider network 102 determines that specific Placement Strategy 112 operates for specific workloads It is good, then client, which may like, shares Placement Strategy 112 with other clients, so that other clients need not engage in for specific work The sometimes difficult task of best Placement Strategy 112 is created as load.In some embodiments, it is shared when other clients use Placement Strategy 112 when, can compensate shared Placement Strategy 112 client (such client herein can be referred to as " publication Person ").It will hereafter provide about Fig. 2 and Fig. 3 about the multiple embodiments disclosed herein for being used to share Placement Strategy 112 Additional detail.
As shown in Figure 2, service provider network 102 includes that Placement Strategy submits interface interface in one embodiment 204 (" interfaces 204 ").The client 202 that interface 204 can be service provider network 102 can submit will be with other clients 202 User interface (" UI "), API or the another type of interface that shared Placement Strategy 112 is passed through.When client is by Placement Strategy 112 when being committed to interface 204, and client can also provide workload descriptor 206.The definition of workload descriptor 206 is submitted Placement Strategy 112 be configured to use the type of locating workload.As mentioned, workload is can be implemented in Application program, virtual machine images, virtual unit or another type of program on virtual machine.Submit the client of Placement Strategy 112 202 can also provide publisher's identifier (" ID ") 208.Publisher ID 208 identifies the client 202 of shared Placement Strategy 112.
In example shown in Fig. 2, for example, client 202A describes Placement Strategy 112A, corresponding workload The publisher ID 208A of symbol 206A and identification client 202A are committed to interface 204.Similarly, client 202B is by Placement Strategy The publisher ID 208B of 112B, corresponding workload descriptor 206B and identification client 202B are committed to interface 204.Interface 204 It is received from client 202A and 202B and submits and data will be submitted to be stored in 210 (" data storage area of Placement Strategy data storage area 210 ") in.
Data storage area 210 is database or other types of storage system, is configured to store by service provider The Placement Strategy 112 that the client 202 of network 102 submits.It such as will be described in greater detail below, data storage area 210 can be with Store the Placement Strategy 112 identified in other ways.In one particular embodiment, data storage area 210 includes having word The record of section 212A to 212E.Using field 212E to store Placement Strategy 112 or identify the data of Placement Strategy 112.It utilizes Field 212D corresponds to the workload descriptor 206A of the Placement Strategy 112 identified in field 212E to store.Utilize field 212A is to store the data that the client 202 of the Placement Strategy 112 identified in field 212E is submitted in identification.
It such as will be described in greater detail below, the client 202 of service provider network 102 can also allow for provide to placement The scoring of strategy 112 and the publisher to Placement Strategy 112.For example, it can permit the client of service provider network 102 202 with the scale of 1-5,1-10,1-100 or the publication to Placement Strategy 112 and/or specific Placement Strategy 112 in another way Person's scoring.In these embodiments, data storage area 210 can also be configured to store definition to specific Placement Strategy 112 And/or the data of the scoring of publisher.For example, can use field 212C to store the placement defined to identifying in field 212E The data of the scoring of strategy 112.Field 212B be can use to store definition to the Placement Strategy 112 identified in field 212E The data of the scoring of publisher.It will be appreciated that data structure shown in Fig. 2 only has illustrative and can use other types of Data structure, storage system and technology are to store above-described data and/or other related datas.
Service provider network 102 can also be configured with Placement Strategy recognizer component 214 in one embodiment (" recognizer component 214 ").The client that recognizer component 214 provides service provider network 102, which can obtain, to be suitable in certain kinds UI, API or another mechanism that the Placement Strategy 112 used under the workload of type is passed through.For example, in reality shown in Fig. 2 In example, client 202C has utilized suitable computing device to request 216 (" requests 216 ") to be transmitted to recognizer component Placement Strategy 214.Request 216 includes the workload that identification client 202C is just finding the targeted workload of suitable Placement Strategy 112 Descriptor 206C.
In response to receiving request 216, the search of recognizer component 214 is for being suitable for by workload descriptor 206B identification The content of the data storage area 210 of the identity of the Placement Strategy 112 of workload.For example, recognizer component 214 may search for matching The field 212 of the workload descriptor of the workload descriptor 202C submitted in request 216.In some embodiments, Recognizer component 214 may also respond to request 216 and be selected using some other data being stored in data storage area 210 Placement Strategy 112.For example, if finding multiple matchers for workload descriptor 206C, recognizer component 214 can be with Select the matching Placement Strategy 112 with the highest scoring being stored in field 212C.For lifting another example, recognizer component 214 can choose the Placement Strategy 112 with the highest publisher scoring as reflected in field 212B.Other machines can also be utilized System is returned with selecting Placement Strategy 112 in response to request 216.
In example shown in Fig. 2, recognizer component 214 is selected to be such as suitable for being identified by workload descriptor 206B Workload Placement Strategy 112B.Correspondingly, recognizer component 214 returns to Placement Strategy 112B in response to request 216 Or the reference of Placement Strategy 112B.Then client 202C is using the Placement Strategy 112B of return to be discussed by above for Fig. 1 Mode influence for handle by workload descriptor 206B description workload virtual machine placement.Also as mentioned above And the publisher of the Placement Strategy 112B returned can be compensated (in this feelings to the supply of Placement Strategy 112B to client 202C Under condition, client 202B).Placement Strategy 112 is used by other clients 202, Placement Strategy 112 can be compensated with other way Publisher.
As mentioned, the client 202 of service provider network 102 can submit to Placement Strategy in some implementations 112 and/or the publisher to Placement Strategy scoring.In these implementations, recognizer component 214 or service provider network 102 In or external another component client 202 or other users can be provided and can be submitted to Placement Strategy 112 and/or Placement Strategy Suitable UI, API or other types of interface that the scoring of 112 publisher is passed through.In example shown in Fig. 2, example Such as, the client 202D of service provider network 102 has been filed on the scoring 218 to Placement Strategy 112 and the hair to Placement Strategy 112 The scoring 220 of cloth person.Also as mentioned, the scoring 218 and 220 provided can store in data storage area 210 or another In position.The scoring 218 and 220 of supply can also be averaged, weighted and/or be modified in other ways to provide to Placement Strategy 112 and/or Placement Strategy 112 publisher appropriate scoring measurement.
It will be appreciated that the data being stored in data storage area 210 can be utilized and/or be appeared with other way.For example, can To appear the Placement Strategy scoring 218 to a variety of Placement Strategies 112 by website or other types of user interface.Similarly, Publisher's scoring 220 of the publisher of Placement Strategy 112 can be appeared with similar fashion.This information is used for certain kinds in selection It can be with the client 202 of auxiliary service provider network 102 when the Placement Strategy 112 of the workload of type.It can be with other way Utilize this information.
It refers to as was explained briefly above, Placement Strategy 112 can be added in addition to by the mode other than client 202 manually submission To data storage area 210.In one particular embodiment, for example, the component in service provider network 102 (is such as disposed Component 110) historical data about the specific Placement Strategy 112 used under certain form of workload can be maintained.? The Placement Strategy 112 used under the certain types of workload of larger amt or percentage can be added to data storage area 210.For example, deployment component 110 can determine under the certain types of workload 65% specific Placement Strategy of time utilization 112.In response to such determination, disposing component 110 can make Placement Strategy 112 be added to data in the manner described above Memory block 210 is supplied to client.Multiple technologies (such as machine learning) be can use to determine client's benefit as time goes by With certain Infrastructure platforms for certain form of workload.Then it can use this information to determine for specific The best Placement Strategy 112 of workload.
The frequency that can be utilized under the workload of some type with other way using specific Placement Strategy 112 is defined Information.For example, this information can be utilized by the operator of service provider network 102 to encourage or prevent customer network The use of certain virtual machine instance types in 102.In particular, if service provider network 102 determines that client 202 has requested that It is rarely employed or the Placement Strategy 112 of unsuitable type of hardware starting virtual machine instance using specified, then service provider Historical data can be presented to client and client is encouraged to start void using different Placement Strategies 112 by the component in network 102 Quasi- machine example.
In some embodiments, the Placement Strategy 112 identified in data storage area 210 can be by " benchmark test " to select Select the best Placement Strategy 112 for specific workloads.For example, workload can be instantiated in the different Placement Strategies of utilization On 112 different types of infrastructures.Then the performance of the workload on different types of infrastructures can be measured, and is work The Placement Strategy 112 for making the specified types of infrastructures with peak performance of load can be selected as best Placement Strategy 112. Performance can be measured as absolute calculated performance, be measured as cost performance, be based only on cost measuring or measure in another way.It can be with Mode as described above, in response to the request 216 to the Placement Strategy 112 for specific workloads, selection is for described The best Placement Strategy 112 of workload.
Fig. 3 is showing for sharing Placement Strategy 112 and for placement according to an embodiment disclosed herein The flow chart of one illustrative routine program 300 of the publisher of strategy 112 and Placement Strategy 112 scoring.It will be appreciated that closing herein It may be embodied as what the series of computation machine that (1) is run in computing system was implemented in the logical operation that Fig. 3 and other figures describe Movement or program module and/or the machine logic circuits or circuit module of the interconnection being embodied as in (2) computing system.It is described herein Multiple assembly implementation be one depend on computing system performance and other requirements select permeability.Correspondingly, it retouches herein The logical operation stated is variously referred to operation, constructional device, movement or module.These operations, constructional device, actions and modules can Implemented with software with firmware with specific use Digital Logic and any combination thereof.It should also be clear that can execute than as shown in the figure With the more or fewer operations of operation described herein.These operations can also be parallel or in addition to described herein suitable Different order except sequence executes.
Routine program 300 starts from operation 302, and wherein service provider network 102 is provided for allowing client 202 shared The submission interface 204 as described above of Placement Strategy 112.As mentioned above, submit interface 204 can be client 202 or Placement Strategy 112 can be committed to UI (such as website), the API that service provider network 102 is passed through or another by other users The interface of one type.
Routine program 300 continues to operation 304 from operation 302, wherein interface 204 is submitted to receive Placement Strategy 112. As mentioned, workload descriptor 206 can also provide together with the Placement Strategy 112 of each submission, and definition is submitted Placement Strategy 112 be adapted for use with locating one or more workloads.Submitting can also include that placement plan is submitted in identification The publisher ID 208 of slightly 112 user.Other information can also be provided.Routine program 300 continues to behaviour from operation 304 Make 306, wherein submitting interface 204 by the Placement Strategy 112 of submission and other associated datas (such as workload descriptor 206) It is stored in data storage area 210.
Routine program 300 continues to operation 308 from operation 306, wherein the identification group in service provider network 102 Part 214 or another component receive the scoring 218 of Placement Strategy 112.Then 218 modes described above of scoring are stored in number According in memory block 210.As also mentioned above, scoring 218 can be put down before or after being stored in data storage area 210 , it weights or is otherwise dealt with.The similar fashion at 310 can be operated to the scoring 220 of the publisher of Placement Strategy 112 It receives and stores.
Routine program 300 continues to operation 312 from operation 310, and wherein recognizer component 214 is received to for specific work Make the request 216 of the Placement Strategy 112 of load.As mentioned, workload can be described by the workload in request 216 206 identification of symbol.In response to receiving request 216, routine program 300 continues to operation 314 from operation 312, wherein identification group Part 214 is using the workload descriptor 206 of supply and the content of data storage area 210 to select to be suitable for know in request 216 The Placement Strategy 112 of other workload.If suitable Placement Strategy 112 can be identified, recognizer component 214 is being operated Selected Placement Strategy 112 is returned in response to request 216 at 316.It may also respond to request 216 and return and utilize institute The Placement Strategy 112 of selection executes virtual machine instance or the associated cost of another type of workload.Then routine program 300 Operation 318 is continued to from operation 316, is terminated herein.
Fig. 4 is showing for utilizing the Placement Strategy unrelated with supplier according to an embodiment disclosed herein 408 to select the aspect for instantiating a mechanism disclosed herein for the service provider network 102 of virtual machine instance 104 System diagram.In the embodiment shown in Fig. 4, different suppliers operate different service provider network 102A to 102N. Each of service provider network 102A to 102N can be provided to be made on demand for computing resource (such as virtual machine instance 104) Above-described some or all of functions.But service provider network 102A to 102N can be provided and be matched with difference The different types of computing resource set and implemented using different hardware platforms.Operate the confession of service provider network 102A to 102N Answer quotient that can also collect different prices for the use of computing resource.
In the embodiment shown in Fig. 4, it can use example and place service 402 to assist user's selection for executing The service provider network 102A to 102N of virtual machine instance 104 or other types of computing resource.In order to provide this function, Each example usability data 404 and example that example places 402 extraction service provider network 102A to 102N of service is fixed Valence mumber is according to 406.Example usability data 404 describes 104 type of virtual machine instance and/or for executing from each service provider The hardware platform for the virtual machine instance type that network 102A to 102N is obtained.Example usability data 404 can also be described from each The other types of available computational resources that a service provider network 102 obtains.
The description of example pricing data 406 utilizes a variety of virtual machine instance classes obtained from each service provider network 102 The price of type.Example placement service 402 can extract example before the request 108 for receiving starting virtual machine instance 104 and can be used Property data 404 and example pricing data 406 and storing data 404 and 406 is for future use.Alternatively, example places service 402 Example usability data 404 and example ratemaking power can be just obtained after the request 108 for receiving starting virtual machine instance 104 According to 406.
In another embodiment, example placement service 402 can be upper quick in one in service provider network 102 Ground starts virtual machine instance 104.After start-up, then example places service 402 and can obtain 404 He of example usability data Example pricing data 406.Then example usability data 404,406 and of example pricing data can be utilized in a manner of described below The Placement Strategy 408 unrelated with supplier is to select the service provider network 102 for being used for virtual machine instance 104.If selected The not identical service provider network 102 for starting virtual machine instance 104 thereon of service provider network 102, then virtually Machine example 104 can be migrated to selected service provider network 102.Number of mechanisms be can use to migrate virtual machine instance 104, Its including but not limited to wherein save, migrate and restarting execute virtual machine instance 104 state it is " real-time " migration with " restarting " migration for executing virtual machine instance 104 is wherein closed before migration.Other migrating technologies can also be utilized.
As shown in Figure 4, example, which places service 402, can also receive starting request 108.In this embodiment, it opens Dynamic request 108 includes the Placement Strategy 408 unrelated with supplier.It discusses as was explained briefly above, the placement plan unrelated with supplier Slightly 408 be independently of any special services provider (that is, supplier) and/or service provider network 102 (unrelated with its) The Placement Strategy 112 that defines of mode.It can use extensible markup language appropriate (" XML ") scheme or to use other skills The another way of art defines the Placement Strategy 408 unrelated with supplier.
In some implementations, starting request 108 further includes one or more placement preferences 410.Placing preference 410 can refer to The preferred service provider network 102 of the fixed virtual machine instance 104 for being used to start request.Certain can also be specified by placing preference 410 A service provider network 102 or network 102 are not utilized to the virtual machine instance 104 of starting request.It is other types of to put Setting preference 410 can also specify in starting request 108.
In response to receiving starting request 108, it is fixed that example placement service 402 can use example usability data 404, example Valence mumber is according to 406 and the Placement Strategy 408 unrelated with supplier to select the service of the virtual machine instance 104 for starting request to mention For quotient's network 102A to 102N.In one embodiment, it is selected for the service provider of starting virtual machine instance 104 Network 102 be can satisfy the Placement Strategy 408 unrelated with supplier parameter and can be to execute virtual machine under least cost The service provider network 102 of example 104.In other embodiments example usability data can be used with other way 404, the virtual machine of example pricing data 406 and/or the Placement Strategy 408 unrelated with supplier selection for instantiating request is real The service provider network 102 of example 104.On this point, it should be understood that when selection is for instantiating the virtual machine instance of request When 104 service provider network 102, other factors, such as (but not limited to) geographical location, network bandwidth can also be utilized And/or delay, service history, client supply scoring and/or each service provider network 102 history serviceable time.
In order to select service provider network 102, example placement service 402 is possible must be by the placement unrelated with supplier Strategy 408 is converted into the specific Placement Strategy of supplier.On this point, starting request 108 can be specified optionally and supply The specific equivalent of supplier of the unrelated Placement Strategy 408 of quotient is to assist this conversion.In a similar manner, example places service 402 each of may have to carry out various procedures to identify from service provider network 102A to 102N obtained general equivalent reality Example type.Example, which places service 402, can also be performed other types of process to identify and can satisfy unrelated with supplier put Set the service provider network 102 of many kinds of parameters proposed in strategy 408.
Once selected service provider network 102, example, which places service 402, can be transmitted to institute for starting request 412 Service provider network 102 is selected to instantiate the virtual machine instance 104 of request.In the example shown in Fig. 4, for example, having selected Service provider network 102A and correspondingly is selected, example places service 402 and starting request 412 is transmitted to service provider's net Appropriate component (such as deployment component 110) in network 102A.Starting request 412 can be transmitted to by selected service provider network The appropriate API or other types of interface that 102A appears.
Then selected service provider network 102A can use the Placement Strategy 408 unrelated with supplier of supply With the virtual machine instance 104 of the request in instantiating services provider network 102A.In some embodiments, example places clothes Business 402 can also request to transmit starting confirmation 414 after the starting of example in selected service provider network 102A To the sender of starting request 108.Example is placed service 402 and can also will be used in selected service provider network 102 The middle estimated cost 416 for executing request example 104 is transmitted to the sender of starting request 108.In other embodiments, other The information of type can also be back to the sender of starting request 108.
In one embodiment, the Placement Strategy 408 unrelated with supplier can directly be committed to each service provider's net Network 102A to 102N.In this implementation, component of each service provider network 102A into 102N can receive and supply The unrelated Placement Strategy 408 of quotient and in response to this, return about service provider network 102 whether have appropriate hardware platform with Meet the instruction of the Placement Strategy 408 unrelated with supplier.If service provider network 102 has appropriate hardware flat really Platform, then example pricing data 406 can also be returned, instruction instantiated using service provider network 102 by with supply The estimated cost for the resource that the unrelated Placement Strategy 408 of quotient defines.Then the visitor of the Placement Strategy 408 unrelated with supplier is submitted Family can use this data to decide whether to utilize special services provider network 102.
It will be appreciated that example placement service 402 can be by also operating service provider network 102A one into 102N Physical operation.In this scene, example, which places service 402, can operate in one of service provider network 102A into 102N In the computing resource of interior operation.In other embodiments, example place service 402 by not with service provider network 102A extremely The relevant third party's operation of the operator of 102N.Example is placed service 402 and be may also operate on by one or more service offer In the network that the client of quotient's network 102A to 102N possesses.In other embodiments, example placement service 402 can also be by it Other physical operations in its network.
Fig. 5 is showing for utilizing the Placement Strategy unrelated with supplier according to an embodiment disclosed herein 408 to select the process for instantiating an illustrative routine program 500 of the service provider network 102 of virtual machine instance Figure.Routine program 500 starts from operation 502, and it includes the Placement Strategy unrelated with supplier that wherein example, which is placed service 402 and received, 408 starting request 108.Then routine program 500 continues to operation 504 from operation 502, and wherein example places service 402 extract example usability data 404 from service provider network 102A to 102N.As mentioned, example places service 402 Can receive starting request 108 when (as shown in Figure 5) or receive starting request 108 when before extraction example availability number According to 404.If extracting example usability data 404, example usability data 404 before when receiving starting request 108 It can be cached in proper data memory block for the use when receiving starting request 108.
Routine program 500 continues to operation 506 from operation 504, and wherein example places service 402 from service provider Network 102A to 102N extracts example pricing data 406.As mentioned, example is placed service 402 and can be asked receiving starting (as shown in Figure 5) or the extraction example pricing data 406 before when receiving starting request 108 when asking 108.If opened in reception Example pricing data 406 is extracted before when dynamic request 108, then example pricing data 406 can be cached in proper data storage For being used when receiving starting request 108 in area.
Routine program 500 continues to operation 508 from operation 506, and wherein it is available using example to place service 402 for example Property data 404, example pricing data 406 and the Placement Strategy 408 unrelated with supplier to be to select to request for starting in starting The service provider network 102A to 102N for the virtual machine instance 104 specified in 108.As mentioned, it can choose for opening The service provider network 102 of dynamic virtual machine instance 104 had both met and had proposed in the Placement Strategy 408 unrelated with supplier Parameter, but also virtual machine instance 104 can be executed with least cost (compared to other service provider networks 102).Other In embodiment can with other way using example usability data 404, example pricing data 406 and/or with supplier without The selection of Placement Strategy 408 of pass is for instantiating the service provider network for the virtual machine instance 104 requested in starting request 108 102。
Routine program 500 continues to operation 510 from operation 508, and wherein example places service 402 and requests starting 412 are transmitted to the service provider network 102 for being selected to the virtual machine instance 104 of instantiation request.In response to this, selected clothes Business provider network 102 is using the Placement Strategy 408 unrelated with supplier to instantiate new virtual machine instance 104.It is operating 512, example places the hair that starting confirmation 414 and/or estimated cost 416 can also be provided to starting request 108 by service 402 The person of sending.Routine program 500 continues to operation 514 from operation 512, terminates herein.
Fig. 6 is showing for utilizing putting including dynamic evaluation parameter 604 according to an embodiment disclosed herein Set system of the strategy 112 to modify the aspect of a mechanism disclosed herein for the virtual machine instance 104 in team of customers 602 Figure.In the embodiment shown in Fig. 6, the Placement Strategy 112 including dynamic evaluation parameter 604 can be defined.Such as letter above Strategic point discusses that dynamic evaluation parameter 604 is the parameter of the dynamic definition when assessing Placement Strategy 112.For example, can be put in assessment One or more dynamic evaluation parameters 604 are extracted from the data source 606 inside service provider network 102 when setting strategy 112 Value.The value extracted from the data source 606 inside service provider network 102 may include (for example) about service provider network The value of available virtual machine instance 104 currently fixed a price in 102.Deployment component 110 can use API Calls or other appropriate machines System extracts data from internal data source 606 and/or external data source 608.
It in some implementations, can also be when assessing Placement Strategy 112 from the data source outside service provider network 102 608 extract the value of one or more dynamic evaluation parameters 604.In some embodiments, external data source 608 can be by servicing Value of the guest operation and offer of provider network 102 about the client of service provider network 102.For example, data source 608 can To appear the data of the operation about the local network carried out by client.In this way, it is possible to define including the sheet about client The Placement Strategy 112 of the dynamic evaluation parameter 604 of the state of ground network.Specifically, if the utilization of the local network of client Rate is more than some threshold value, then the Placement Strategy for instantiating virtual machine instance 104 in service provider network 102 can be defined on 112.Similarly, it is mentioned if the utilization rate of the local network of client drops to some threshold value hereinafter, can so be defined on service For releasing the Placement Strategy 112 of scaling virtual machine instance 104 in quotient's network 102.It can also define including from external data source 608 The other types of Placement Strategy 112 of obtained other types of data.
Once having received the value of the dynamic evaluation parameter 604 for Placement Strategy 112, it can be estimated that Placement Strategy 112.It takes Certainly in assessment result, can the group team 602 of virtual machine instance 104 to the guest operation by service provider network 102 carry out A variety of modifications.For example, as shown in Figure 6, the virtual machine instance 104A being implemented on particular hardware platform 610A can migrate to Different hardware platforms 610B.As discussed above, multiple technologies be can use to execute such migration comprising (but it is unlimited In) migrated in real time with restarting.In another example, new virtual machine instance 104, which can be added to, is implemented in by comprising dynamic Group team 602 on the specified hardware platform of the Placement Strategy 112 of assessment parameter 604.It is also based on dynamic evaluation parameter 604 It assesses and carries out the other types of modification to group team 602.
In some embodiments, it is updated periodically and reappraises using the value of dynamic evaluation parameter 604 placement plan Slightly 112.It is then dependent on the assessment result of Placement Strategy 112 and correspondingly modifies the virtual machine instance in team of customers 602 104.In this way, it is possible to be carried out on continuing basis in team of customers 602 according to the parameter proposed in Placement Strategy 112 The modification of example.For example, the virtual machine instance 104 in team of customers 602 can depend on the number extracted from internal data source 606 According to (for example, cost) and/or from external data source 608 extract data (for example, state of native client network) and continuously It migrates to different hardware platforms.On this point, above-described a variety of migrating technologies be can use.Certain embodiments may be used also To provide by dynamically causing Real-Time Pricing using the known history with cycle performance variation and/or real-time constraint parameter The Placement Strategy 112 of trend.
Fig. 7 is showing for utilizing putting including dynamic evaluation parameter 604 according to an embodiment disclosed herein Strategy 112 is set to modify the flow chart of an illustrative routine program 700 of the virtual machine instance 104 in team of customers 602.Example Line program 700 starts from operation 702, wherein deployment component 110 receives the Placement Strategy 112 with dynamic evaluation parameter 604.Example Line program 700 continues to operation 704 from operation 702, wherein disposing component 110 from any 608 extraction of values of external data source (if specified).Then routine program 700 continues to operation 706 from operation 704, wherein deployment component 101 from appoint What 606 extraction of values of internal data source (if specified).
Routine program 700 continues to operation 708 from operation 706, wherein deployment component 110 is using respectively from internal number The value for the dynamic evaluation parameter 604 extracted according to source 606 and external data source 608 assesses Placement Strategy 112.If based on extraction Value, deployment component 110 determines the criterion not met in Placement Strategy 112, then routine program 700 continues from operation 710 To operation 712.In operation 712, some periods in the past are allowed before routine program 700 continues to return operation 704, Wherein after some periods, the value of dynamic evaluation parameter 604 can be extracted and assessed in the manner described above again.
If in operation 710, the deployment determination of component 110 has met the criterion proposed in Placement Strategy 112, then customary journey Sequence 700 continues to operation 714 from operation 710.In operation 714, deployment component 110 makes that one can be carried out to group team 602 Or multiple modifications.For example, as described above, deployment component 110 can be in the manner described above by virtual machine instance 104 from one A hardware platform is migrated to different hardware platforms.Alternatively, the hardware specified in Placement Strategy 112 can be used in deployment component 110 New virtual machine instance 104 or other types of computing resource in examples of platforms group team 602.Routine program 700 from operation 714 Operation 712 is continued to, wherein above-described extraction, assessment and modification can be repeatedly carried out.
It will be appreciated that although polling mechanism is illustrated and describes above about Fig. 7, it is also possible to utilize other types of machine System is to determine whether change value can be used for dynamic evaluation parameter 604.For example, deployment component 110 can be registered in other implementations To receive event notice when dynamic evaluation parameter 604 changes.In this way, it is possible to avoid above for the poll of Fig. 7 description. Other mechanism can also be utilized.
Fig. 8 is the above-described function for showing the placement including that can be configured to provide the customer impact for virtual machine The system and network of one illustrative operating environment of the embodiment disclosed herein of the service provider network 102 of energy. It discusses as was explained briefly above, service provider network 102 can provide computing resource on the basis of permanent or on-demand.It is mentioned by service The computing resource provided for quotient's network 102 may include a plurality of types of computing resources, and such as data processing resources, data store Resource, networked resources, data resource communication etc..
The computing resource of each type can be general or can use in many specific configurations.For example, as above It is briefly described, data processing resources can be used as virtual machine instance 104 in many different configurations.Virtual machine instance 104 can be with It is configured to carry out including network server, apps server, media server, database server and other types of The application program of application program.Data storage resource may include file storage device, block storage device etc..
It also refers to as was explained briefly above, the computing resource provided by service provider network 102 is in one embodiment by one (it can oddly be known as " data center 802 " or plurally herein by a or multiple data center 802A to 802N Referred to as " several data centers 802 ") it enables.Data center 802 is to be utilized to accommodate and operate computer system and associated group The facility of part.Data center 802 generally includes redundancy and backup power source, communication, cooling and security system.Data center 802 is also It can be located in geographically different positions.Hereafter by the placement for implementing to be used for the customer impact of virtual machine about Fig. 9 description One illustrative configuration of the data center 802 of the aspect of function disclosed herein.
The embodiment that can describe present disclosure in view of following regulations:
1. a kind of computer readable storage medium with the computer executable instructions being stored thereon, the computer Executable instruction makes computer when being executed by computer:
Multiple Placement Strategies are stored, the Placement Strategy includes being configured for mentioning in influence virtual machine instance in service For data used in the placement in the particular hardware platform in quotient's network;
Receive the request to the Placement Strategy for being suitable for using under the virtual machine images of identification;
Service provider's net of the virtual machine images for executing identification thereon in identification is selected using the data of storage Placement Strategy used in hardware platform in network;And
Selected Placement Strategy is returned in response to request.
2. the computer readable storage medium according to the 1st article, wherein the data stored further comprise putting to multiple The scoring that the user for setting strategy provides, and wherein utilize the scoring to the users of multiple Placement Strategies offer to select for knowing The Placement Strategy used under other virtual machine images.
3. the computer readable storage medium according to the 1st article, wherein storing data further comprises to multiple placements The scoring that the user of the publisher of strategy provides, and the scoring of user's offer to the publisher of multiple Placement Strategies is wherein provided To select the Placement Strategy for being suitable for using under the virtual machine images of identification.
4. the computer readable storage medium according to the 1st article, wherein one or more of the multiple Placement Strategies stored A client by service provider network provides.
5. the computer readable storage medium according to the 1st article, wherein by defining putting in service provider network Set the one or more of multiple Placement Strategies of the analysis identification storage for the data that tactful history uses.
6. the computer readable storage medium according to the 1st article, further has the computer being stored thereon can Execute instruction, the computer executable instructions make when being executed by computer computer using selected Placement Strategy with Influence placement of the virtual machine images of identification in the particular hardware platform in service provider network.
7. a kind of influence in placement of the virtual machine instance on the hardware platform in service provider network for being shared in The method implemented by computer of the Placement Strategy used, the method includes executing following computer-implemented operation:
Store the Placement Strategy that multiple clients provide;
Receive the request to the Placement Strategy for using under specified computational workload;And
Using the Placement Strategy of the storage to select for executing the specified computational workload thereon in identification Placement Strategy used in hardware platform in the service provider network.
8. the method implemented by computer according to the 7th article, wherein computational workload includes virtual machine images.
9. the method implemented by computer according to the 7th article further comprises storing to put multiple client's offers The scoring that the one or more clients for setting strategy provide.
10. the method implemented by computer according to the 9th article, wherein also utilizing the Placement Strategy provided multiple clients The scoring that provides of client to select in the service provider network that identification executes specified computational workload thereon Placement Strategy used in hardware platform.
11. the method implemented by computer according to the 7th article further comprises the placement for storing multiple clients and providing The scoring that one or more clients of the publisher of strategy provide.
12. the method implemented by computer according to Sub_clause 11, wherein the Placement Strategy also provided using multiple clients Publisher scoring to select for hard in the service provider network that identification executes specified computational workload thereon Placement Strategy used in part platform.
13. the method implemented by computer according to the 7th article further comprises storage by defining service provider One or more Placement Strategies of the analysis identification for the data that the history of Placement Strategy in network uses.
14. the method implemented by computer according to the 7th article, further comprise using selected Placement Strategy with Influence placement of the workload in the particular hardware platform in service provider network.
15. a kind of calculating system for Placement Strategy of the selection for computational workload in service provider network System, the system comprises:
One or more computers, are configured to
The request to the Placement Strategy for being suitable for using under the computational workload is received, and
The multiple Placement Strategies shared from the client by the service provider network are selected in the workload The lower Placement Strategy used.
16. the system according to the 15th article, wherein one or more computers are configured to utilize selected placement Strategy is to influence placement of the workload in the particular hardware platform in service provider network.
17. the system according to the 16th article, wherein workload includes virtual machine images.
18. the system according to the 15th article, wherein selected Placement Strategy can be serviced further from by definition One or more Placement Strategies selection of the analysis identification for the data that the history of Placement Strategy in provider network uses.
19. the system according to the 15th article, wherein being based further on the scoring identification of the publisher of multiple Placement Strategies Selected Placement Strategy.
20. the system according to the 15th article, wherein the scoring identification for being based further on multiple Placement Strategies is selected Placement Strategy.
21. a kind of computer readable storage medium with the computer executable instructions being stored thereon, the calculating Machine executable instruction makes computer when being executed by computer:
The request of instantiation virtual machine instance is received, the request includes the Placement Strategy unrelated with supplier;
The example usability data of multiple service provider networks is extracted, example usability data describes virtual machine instance class Type and for executing the hardware platform from each obtained virtual machine instance type of service provider network;
The example pricing data of multiple service provider networks is extracted, example pricing data is described in service provider The price of virtual machine instance type is executed in network;And
Using the Placement Strategy unrelated with supplier, example usability data and example pricing data to select for example Change one in the service provider network of virtual machine instance.
22. the computer readable storage medium according to the 21st article, wherein in selected service provider network One includes supplying the lowest price for being applied to operation virtual machine instance and also meeting in the Placement Strategy unrelated with supplier to propose One or more parameters service provider network.
23. the computer readable storage medium according to the 21st article, wherein receiving asking for instantiation virtual machine instance The example usability data of multiple service provider networks is extracted before asking.
24. the computer readable storage medium according to the 21st article, wherein instantiating virtual machine instance in response to receiving Request and extract the example usability datas of multiple service provider networks.
25. the computer readable storage medium according to the 21st article, wherein in service provider network one The example usability data of multiple service provider networks is extracted after a upper starting virtual machine instance.
26. the computer readable storage medium according to the 21st article, wherein receiving asking for instantiation virtual machine instance Example pricing data is extracted before asking.
27. the computer readable storage medium according to the 21st article, wherein instantiating virtual machine instance in response to receiving Request and extract example pricing data.
28. the computer readable storage medium according to the 21st article, wherein in service provider network one Example pricing data is extracted after a upper starting virtual machine instance.
29. the computer readable storage medium according to the 21st article, further has the computer being stored thereon Executable instruction, it is selected that the computer executable instructions are transmitted to computer by request One in service provider network instantiates virtual machine instance.
30. the computer readable storage medium according to the 21st article, further has the computer being stored thereon Executable instruction, the computer executable instructions return to computer in response to instantiation The request of virtual machine instance and one in the selected service provider network upper estimated cost for executing virtual machine instance.
31. a kind of one computer for selecting in multiple service provider networks for executing virtual machine instance The method of implementation, the method includes executing following computer-implemented operation:
The example usability data of multiple service provider networks is obtained, the description of example usability data is one or more empty Quasi- machine example types and the hardware platform for executing virtual machine instance type;
The example pricing data of multiple service provider networks is obtained, the description of example pricing data utilizes virtual machine instance class The price of type;And
Using example usability data, example pricing data and the Placement Strategy unrelated with supplier to select for executing One in multiple service provider networks of virtual machine instance.
32. the method implemented by computer according to the 31st article, wherein the Placement Strategy unrelated with supplier includes quilt Configuration come for influence used in placement of the virtual machine instance in particular hardware platform in service provider network with The unrelated data of supplier.
33. the method implemented by computer according to the 31st article, wherein one in selected service provider network It is a to include the lowest price for being applied to execute virtual machine instance and also proposed in the satisfaction Placement Strategy unrelated with supplier The service provider network of one or more parameters.
34. the method implemented by computer according to the 32nd article, wherein further considering to specify for executing virtual machine The one or more of the preferred service provider network of example place preference and the service for executing virtual machine instance are selected to mention For quotient's network.
35. the method implemented by computer according to the 32nd article, wherein further considering to specify not being utilized to hold The one or more of the service provider network of row virtual machine instance place preference and select the clothes for executing virtual machine instance Business provider network.
36. the method implemented by computer according to the 32nd article, wherein receive execute virtual machine instance request it Preceding acquisition example usability data and example pricing data.
37. the method implemented by computer according to the 31st article, wherein executing asking for virtual machine instance in response to receiving It asks and obtains example usability data and example pricing data.
38. the method implemented by computer according to the 32nd article, further comprises so that virtual machine instance is implemented in On one in selected service provider network.
39. a kind of for selecting the computing system of the service provider network for executing virtual machine instance, the system Include:
One or more computers, are configured to: receiving the request for executing virtual machine instance, the request includes and confession Answer the Placement Strategy that quotient is unrelated;And the Placement Strategy unrelated with supplier is utilized to select for executing the multiple of virtual machine instance One in service provider network.
40. the system according to the 39th article, wherein one in selected multiple service provider networks include can To meet the one or more parameters specified in the Placement Strategy unrelated with supplier and also with the minimum of multiple service providers The service provider network of cost execution virtual machine instance.
41. the system according to the 40th article, wherein one or more computers are configured to based upon from service provider The example usability data that network obtains determines whether service provider network can satisfy the Placement Strategy unrelated with supplier In specify one or more parameters.
42. the system according to the 40th article, wherein one or more computers, which are configured to identify, can be based on from clothes The example pricing data that business provider network obtains executes the service provider network of virtual machine instance with lowest price.
43. a kind of computer readable storage medium with the computer executable instructions being stored thereon, the calculating Machine executable instruction makes computer when being executed by computer:
Receive the Placement Strategy including one or more dynamic evaluation parameters;
One or more values of dynamic evaluation parameter are extracted from one or more sources outside service provider network;
At least with the value assessment for the dynamic evaluation parameter extracted from one or more sources outside service provider network Placement Strategy;And
The one or more in team of customers operated in assessment modification service provider network based on Placement Strategy is empty Quasi- machine example.
44. the computer readable storage medium according to the 43rd article, wherein one or more of modification team of customers Virtual machine instance includes migrating the virtual machine instance in team of customers into service provider network from the first hardware platform Second hardware platform.
45. the computer readable storage medium according to the 43rd article, wherein one or more of modification team of customers Virtual machine instance includes the virtual machine instance started in service provider network on the hardware platform specified by Placement Strategy.
46. the computer readable storage medium according to the 43rd article, further has the computer being stored thereon Executable instruction, the computer executable instructions make computer regularly repeat to extract, assess when being executed by computer It is operated with modification.
47. the computer readable storage medium according to the 43rd article, further has the computer being stored thereon Executable instruction, the computer executable instructions make computer inside service provider network when being executed by computer One or more data sources extract one or more values of dynamic evaluation parameter.
48. the computer readable storage medium according to the 35th article, wherein being based further on from service provider network The value for the dynamic evaluation parameter that internal one or more data sources are extracted assesses Placement Strategy.
49. the computer readable storage medium according to the 35th article, wherein one or more dynamic in response to receiving instruction State assesses the notice for the event that parameter has changed and assesses Placement Strategy.
50. a kind of for using the Placement Strategy of specified one or more dynamic evaluation parameters to modify virtual machine instance group team In one or more virtual machine instances the method implemented by computer, the method includes executing following computer-implemented behaviour Make:
Extract the value for the one or more dynamic evaluation parameters specified by Placement Strategy;
It is at least partially based on the extraction of values assessment Placement Strategy of dynamic evaluation parameter;And
One or more virtual machine instances in assessment modification group team based on Placement Strategy.
51. the method implemented by computer according to the 50th article, the value of wherein one or more dynamic evaluation parameters At least one is extracted from the data source outside the service provider network for providing virtual machine instance.
52. the method implemented by computer according to the 51st article, wherein the data source outside service provider network by It is provided with the client of the associated service provider network of one or more virtual machine instances.
53. the method implemented by computer according to the 50th article, the value of wherein one or more dynamic evaluation parameters At least one is extracted from the data source inside the service provider network for providing virtual machine instance.
54. the method implemented by computer according to the 50th article, wherein one or more virtual machines in modification group team Example includes in the group team being implemented on the first hardware platform with the second virtual machine replacement being implemented on the second hardware platform First virtual machine instance.
55. the method implemented by computer according to the 50th article, wherein one or more virtual machines in modification group team Example includes the new virtual machine instance in the group team that creation is implemented on the hardware platform specified by Placement Strategy.
56. the method implemented by computer according to the 50th article, further comprise regularly repeat to extract, assessment and Modification operation.
57. a kind of Placement Strategy for client's supply using specified one or more dynamic evaluation parameters is modified virtual The computing system of machine example group team, the system comprises:
One or more computers, are configured to
Value by extracting dynamic evaluation parameter assesses the Placement Strategy of client's supply, and
Based on client supply Placement Strategy assessment and modify one or more virtual machine instances in group team.
58. the system according to the 57th article, wherein at least one of the value of dynamic evaluation parameter is real from virtual machine is implemented Data source outside the service provider network of example is extracted.
59. the system according to the 58th article, wherein the data source outside service provider network is by service provider's net The client of network provides.
60. the system according to the 57th article, wherein at least one of the value of dynamic evaluation parameter is real from virtual machine is provided Data source inside the service provider network of example is extracted.
61. the system according to the 57th article, wherein one or more virtual machine instances in modification group team include with holding First virtual machine of the row in the group team that the second virtual machine replacement on the second hardware platform is implemented on the first hardware platform is real Example.
62. the system according to the 57th article, wherein one or more virtual machine instances in modification group team include creation The new virtual machine instance being implemented in the group team on the hardware platform specified by Placement Strategy.
63. the system according to the 57th article, wherein one or more computers are further configured to regularly repeat Assessment and modification operation.
Suitable client computing system 801 can be used via WAN in the client of service provider network 102 and other users The computing resource that 804 access are provided by service provider network 102.Although WAN 804 is illustrated in fig. 8, it is to be appreciated that can It is connected in the technology of remote client and other users with utilization local area network (" LAN "), internet or by data center 802 known Any other networking topographies.It should also be clear that the combination of such network can also be utilized.
Fig. 9 is the placement for implementing the customer impact for virtual machine according to the diagram of an embodiment disclosed herein The computing system of one configuration of the data center 802 of the aspect of concept and technology disclosed herein.Instance number shown in Fig. 9 It include for providing several server computer 902A of computing resource (all computing resources described above) extremely according to center 802 (it can oddly be referred to as " server computer 902 " herein or repeat ground is referred to as " several servers calculating to 902F Machine 902 ").
Server computer 902, which can be, to be suitably configured come for providing the standard tower of computing resource described herein Formula or rack installing type server computer.For example, in an implementation, server computer 902 is configured to provide computing resource 908A to 908N.As mentioned, computing resource 908 can be data processing resources, and such as virtual machine instance 104, data are deposited Store up resource, database resource, networked resources etc..Some servers 902 can also be configured to carry out can instantiate and/or Manage the resource manager 904 of computing resource.In the case where virtual machine instance 104, for example, resource manager 904 can be Be configured to realize on (for example) individual server computer 902 management program of the execution of multiple virtual machine instances 104 or Another type of program.
Data center 902 shown in Fig. 9 further includes that can be preserved for executing for managing data center 802, clothes The server computer 902F of the various software component of the operation for device computer 902 and the computing resource of being engaged in.Implement (such as some Above-described implementation) in, server computer 902F can also be configured to carry out Placement Strategy recognizer component 214, example Place service 402, deployment component 110 and/or other component softwares described herein.It can also be using in data center 802 Other computing systems are to execute these and other component.Other configurations can also be utilized.
In the instance data center 802 shown in Fig. 9, using appropriate LAN 906 with interlink server computer 902A To 902F.LAN 906 is additionally coupled to WAN 804 shown in fig. 8.It will be appreciated that greatly simplification figure 1 is to shown in Fig. 9 Configuration and network topology and it can use more multi-computing system, network and interconnection device to interconnect a variety of calculating disclosed herein and be System and offer function described above.Appropriate load balance device or software module can also be utilized to make data center 802A Between to each of 802N, between each of server computer 902A to 902F in each data center 802 and possibly, The load balance between computing resource in each of data center 802.It will be appreciated that the data center 802 about Fig. 9 description is only Only have illustrative and can use other implementations.
Figure 10 shows the procedure described above component for the placement for being able to carry out the customer impact for virtual machine instance 104 Computer 1000 Example Computer framework.Computer architecture shown in Figure 10 illustrates conventional server computer, work It stands, desktop computer, laptop computer, tablet computer, the network equipment, personal digital assistant (" PDA "), electronic reading It device, digital cellular telephone or other computing devices and can be utilized to execute any aspect of component software presented herein. For example, computer architecture shown in Figure 10 can be utilized to the multiple assembly for implementing to describe above for Fig. 1 to Fig. 6.
Computer 1000 includes substrate 1002 or " motherboard ", is printed circuit board, numerous components or device can pass through System bus or other electrical communication paths are connected to the printed circuit board.In one illustrative embodiment, one or more A central processing unit (" CPU ") 1004 operates together with chipset 1006.CPU 1004 can be the behaviour for executing computer 1000 The standard programmable processor to be counted necessary to work with logical operation.
CPU 1004 is by distinguishing these states via manipulation and changing the switching elements of these states from a discrete, object Reason state, which is converted to, next executes operation.Switching element generally may include one electricity maintained in two binary conditions The logical combination of sub-circuit (such as trigger) and the based on one or more state of other switching elements provides output state Electronic circuit (such as logic gate).These basic switching elements can be combined to produce more complicated logic circuit comprising post Storage, adder-subtractor, arithmetic logic unit, floating point unit etc..
Chipset 1006 provides the interface between CPU 1004 and the residue of component and device on substrate 1002.Chip Collection 1006 can be provided to the interface of the random access storage device (" RAM ") 1008 as the main memory in computer 1000. Chipset 1006 can further provide for that (such as read-only memory (" ROM ") 1010 or non-is easy to computer readable storage medium Lose property RAM (" NVRAM ")) interface, the computer readable storage medium for store help start computer 1000 and The basic routine program of information is transmitted between multiple assembly and device.ROM 1010 or NVRAM can also be stored as according to herein Other component softwares necessary to the embodiment operation computer 1000 of description.
Computer 1000 can be used through network (such as local area network 1020) to remote computing device and computer system Logical connection operated in networked environment.Chipset 1006 may include for by NIC 1012 (such as gigabit with Too net adapter) function of network connectivity is provided.Computer 1000 can be connected to it via network 1020 by NIC 1012 Its computing device.It will be appreciated that multiple NIC 1012 can reside in computer 1000 and computer be connected to other types Network and remote computer system.
Computer 1000 can connect most computer and provide the mass storage device 1018 of non-volatile memories.Great Rong Amount storage device 1018 can store the system program being more fully described herein, application program, other program modules And data.Mass storage device 1018 can be connected to calculating and being connected to storage control 1014 of chipset 1006 Machine 1000.Mass storage device 1018 can be made of one or more physical memory cells.Storage control 1014 can be with By serial attached SCSI (" SAS ") interface, Serial Advanced Technology Attachment (" SATA ") interface, fiber channel (" FC ") interface or For physically connecting and transmitting the other types of interface and physical store of data between computer and physical memory cell Unit interfaces with.
Computer 1000 can be by converting the physical state of physical memory cell to reflect that the information just stored will count According to being stored on mass storage device 1018.In the different implementations of this description, the particular conversion of physical state can depend on In many factors.The example of such factor may include (but being not limited to) for implementing physical memory cell regardless of large capacity Storage device 1018 is characterized as the technology of main memory or second-level storage etc..
For example, computer 1000 can be by issuing instruction via storage control 1014 to change in disc drive unit Specific position magnetic characteristic, the reflection of the specific position in optical storage unit or the spy in refracting characteristic or solid state storage elements The electrical characteristics for determining capacitor, transistor or other discrete components store information to mass storage device 1018.Physics is situated between Other conversions of matter be in the case where not departing from the scope and spirit in this description it is feasible, wherein previous examples are only provided to be conducive to This description.Computer 1000 can further pass through the physics of one or more specific positions in detection physical memory cell State or characteristic and from mass storage device 1018 read information.
Other than above-described mass storage device 1018, computer 1000 is accessible other computer-readable Storage medium is to store and extract information, such as program module, data structure or other data.One of ordinary skill in the art answer Solution, computer readable storage medium can be the storage for non-transitory data and provide preparation and can be accessed by computer 1000 Any usable medium.
For example, computer readable storage medium may include the volatibility being implemented in any method or technique and non- Volatibility, can removal formula and can not removal formula medium.Computer readable storage medium includes RAM, ROM, erasable programmable ROM (" EPROM "), electrically erasable ROM (" EEPROM "), flash memory or other solid-state memory technologies, CD ROM (" CD- ROM "), Digital Versatile Disc (" DVD "), high definition DVD (" HD-DVD "), BLU-RAY, or other optical memories, cassette, Tape, disk storage or other magnetic memory apparatus can be used for storing appointing for desired information in a manner of any non-transitory What other media.
Mass storage device 1018 can store the operating system 1030 for being utilized to the operation of control computer 1000. According to an embodiment, operating system includes LINUX operating system.According to another embodiment, operating system includes coming from MicrosoftSERVER operating system.According to further embodiment, operating system may include UNIX or solaris operating system.It will be appreciated that other operating systems can also be utilized.Mass storage device 1018 can be deposited The other systems or application program and data, such as Placement Strategy recognizer component 214, example that storage is utilized by computer 1000 are placed Any one of service 402, deployment component 110 and/or above-described other component softwares and data.Mass storage device 1018 can also store the other programs and data clearly identified not herein.
In one embodiment, mass storage device 1018 or other computer readable storage mediums coding have calculating Machine executable instruction, when being loaded into computer 1000, computer is converted to from general-purpose computing system can implement this The special purpose computer of the embodiment of text description.These computer executable instructions are as described above by specifying CPU How 1004 change and coordinate conversion computer 1000 between states.According to an embodiment, computer 1000 may have access to storage The computer readable storage medium of computer executable instructions, the computer executable instructions by computer 1000 when being executed Execute above-described a variety of processing routine programs.Computer 1000 can also include described herein any other for executing The computer readable storage medium of computer-implemented operation.
Computer 1000 can also include one or more i/o controllers 1016, be used to fill from many inputs It sets (such as keyboard, mouse, touch tablet, touch screen, electronic pen or other types of input unit) reception input and processing comes from The input of the input unit.Similarly, output can be provided to display by i/o controller 1016, such as be calculated Machine monitor, flat-panel monitor, digital projector, printer, plotter or other types of output device.It will be appreciated that, calculating Machine 1000 can not include all components shown in Figure 10, may include the other components not being explicitly illustrated in Figure 10 or can To utilize the framework for being totally different from framework shown in Figure 10.
Based on above, it should be understood that the user for virtual machine instance 104 and other types of computing resource has been presented The multiple technologies of the placement of influence.Although moreover, with to computer structural features, methodology movement and computer-readable medium For specific language description purport presented herein, it is to be appreciated that the present invention defined in appended claim and different Fixed limit is in special characteristic described herein, movement or medium.It is wanted on the contrary, special characteristic, movement and medium are disclosed as implementation right Seek the example forms of book.
Above-described purport, which only passes through, to be illustrated to provide and is not construed as limiting.In addition, required purport is not limited to Solve the implementation for any or all disadvantage pointed out in any part of present disclosure.Illustrated and description can not followed Example implementation and application it is lower and do not departing from the true spirit and model of the invention proposed in following claims It encloses lower to purport described herein progress various modifications and changes.

Claims (13)

1. a kind of influence to use in placement of the virtual machine instance on the hardware platform in service provider network for being shared in Placement Strategy the method implemented by computer, the method includes executing following computer-implemented operation:
The Placement Strategy that multiple clients provide is stored at one or more servers of the service provider network;
At least one client in the Placement Strategy provided with the multiple client is provided at one or more of servers The associated data of the Placement Strategy of offer;
One or more of the publisher for the Placement Strategy that the multiple client provides is stored at one or more of servers The scoring that a client provides;
It receives at one or more of servers from computing device and is put to for what is used under specified computational workload Set the request of strategy;And
Using the Placement Strategy of the storage to select for being executed described in the specified computational workload thereon in identification Placement Strategy used in hardware platform in service provider network.
2. the method implemented by computer according to claim 1, wherein the computational workload includes virtual machine images.
3. the method implemented by computer according to claim 1 further comprises that storage provides the multiple client Placement Strategy one or more clients provide scoring.
4. the method implemented by computer according to claim 3, wherein also utilizing the placement provided the multiple client The scoring that the client of strategy provides is to select the clothes for executing the specified computational workload thereon in identification The Placement Strategy used in the hardware platform being engaged in provider network.
5. the method implemented by computer according to claim 1, wherein the placement plan also provided using the multiple client The scoring of publisher slightly is mentioned with selecting the service for executing the specified computational workload thereon in identification For the Placement Strategy used in the hardware platform in quotient's network.
6. the method implemented by computer according to claim 1 further comprises that storage is mentioned by defining the service One or more Placement Strategies that analysis for the data that the history of the Placement Strategy in quotient's network uses identifies.
7. the method implemented by computer according to claim 1 further comprises utilizing the selected placement plan Slightly to influence the placement of the workload in the particular hardware platform in the service provider network.
8. a kind of computing system for Placement Strategy of the selection for computational workload in service provider network, described System includes:
One or more computers, are configured to
The request to the Placement Strategy for being suitable for using under the computational workload is received,
In response to receiving the request, search for associated with multiple Placement Strategies that the client of the service provider network shares Data,
The Placement Strategy for using under the workload is selected from multiple Placement Strategies,
It is wherein at least based in part on the Placement Strategy of the further identification selection of scoring of the publisher of the multiple Placement Strategy, And
Using the selected Placement Strategy to influence specific hardware of the workload in the service provider network Placement on platform.
9. system according to claim 8, wherein the workload includes virtual machine images.
10. system according to claim 8, wherein the selected Placement Strategy can be further from by defining institute State one or more Placement Strategies choosing of the analysis identification for the data that the history of the Placement Strategy in service provider network uses It selects.
11. system according to claim 8, wherein the scoring for being based further on the publisher of the multiple Placement Strategy is known The not described selected Placement Strategy.
12. system according to claim 8, wherein the scoring for being based further on the multiple Placement Strategy identifies the institute The Placement Strategy of selection.
13. system according to claim 8, wherein one or more of computers are further configured to:
The Placement Strategy for being used to use under the workload is recommended and the associated client of request.
CN201480028885.4A 2013-05-08 2014-05-08 The placement of the customer impact of virtual machine instance Expired - Fee Related CN105229609B (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US13/889,919 2013-05-08
US13/889,919 US20140337834A1 (en) 2013-05-08 2013-05-08 User-Influenced Placement of Virtual Machine Instances
US13/889,914 US20140337833A1 (en) 2013-05-08 2013-05-08 User-Influenced Placement of Virtual Machine Instances
US13/889,907 US9665387B2 (en) 2013-05-08 2013-05-08 User-influenced placement of virtual machine instances
US13/889,914 2013-05-08
US13/889,907 2013-05-08
PCT/US2014/037291 WO2014182894A2 (en) 2013-05-08 2014-05-08 User-influenced placement of virtual machine instances

Publications (2)

Publication Number Publication Date
CN105229609A CN105229609A (en) 2016-01-06
CN105229609B true CN105229609B (en) 2019-01-15

Family

ID=51867866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480028885.4A Expired - Fee Related CN105229609B (en) 2013-05-08 2014-05-08 The placement of the customer impact of virtual machine instance

Country Status (7)

Country Link
EP (1) EP2994832A4 (en)
JP (1) JP6291034B2 (en)
CN (1) CN105229609B (en)
AU (1) AU2014262679B2 (en)
CA (1) CA2911614C (en)
SG (1) SG11201508971UA (en)
WO (1) WO2014182894A2 (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11068312B2 (en) 2019-03-28 2021-07-20 Amazon Technologies, Inc. Optimizing hardware platform utilization for heterogeneous workloads in a distributed computing environment
US11372663B2 (en) 2019-03-28 2022-06-28 Amazon Technologies, Inc. Compute platform recommendations for new workloads in a distributed computing environment
US11128696B2 (en) 2019-03-28 2021-09-21 Amazon Technologies, Inc. Compute platform optimization across heterogeneous hardware in a distributed computing environment
US11360795B2 (en) 2019-03-28 2022-06-14 Amazon Technologies, Inc. Determining configuration parameters to provide recommendations for optimizing workloads
US11385920B2 (en) 2019-03-28 2022-07-12 Amazon Technologies, Inc. Compute platform optimization over the life of a workload in a distributed computing environment
WO2020198600A1 (en) * 2019-03-28 2020-10-01 Amazon Technologies, Inc. Compute platform optimization over the life of a workload in a distributed computing environment
US11397622B2 (en) 2019-06-03 2022-07-26 Amazon Technologies, Inc. Managed computing resource placement as a service for dedicated hosts
US11314819B2 (en) 2019-11-27 2022-04-26 Amazon Technologies, Inc. Systems, apparatuses, and method for document ingestion
US11366855B2 (en) 2019-11-27 2022-06-21 Amazon Technologies, Inc. Systems, apparatuses, and methods for document querying
US11475067B2 (en) 2019-11-27 2022-10-18 Amazon Technologies, Inc. Systems, apparatuses, and methods to generate synthetic queries from customer data for training of document querying machine learning models
US11526557B2 (en) 2019-11-27 2022-12-13 Amazon Technologies, Inc. Systems, apparatuses, and methods for providing emphasis in query results
US10979534B1 (en) * 2019-11-29 2021-04-13 Amazon Technologies, Inc. Latency-based placement of cloud compute instances within communications service provider networks
US11418995B2 (en) 2019-11-29 2022-08-16 Amazon Technologies, Inc. Mobility of cloud compute instances hosted within communications service provider networks
US11561815B1 (en) 2020-02-24 2023-01-24 Amazon Technologies, Inc. Power aware load placement
US11704145B1 (en) 2020-06-12 2023-07-18 Amazon Technologies, Inc. Infrastructure-based risk diverse placement of virtualized computing resources
KR102569877B1 (en) * 2022-12-27 2023-08-23 오케스트로 주식회사 A virtual machine optimal arrangement recommendation device and a sever operating system using the same
KR102607458B1 (en) * 2023-03-31 2023-11-29 오케스트로 주식회사 A cloud resource recommendation device based on usage pattern and a sever operating system using the same

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913525A (en) * 2005-01-12 2007-02-14 国际商业机器公司 Method and system for automatic responses to job requests from client
JP2011523472A (en) * 2008-03-18 2011-08-11 ライトスケール, インコーポレイテッド Method and system for efficiently managing and configuring virtual servers
US8185894B1 (en) * 2008-01-10 2012-05-22 Hewlett-Packard Development Company, L.P. Training a virtual machine placement controller
US8261295B1 (en) * 2011-03-16 2012-09-04 Google Inc. High-level language for specifying configurations of cloud-based deployments
US8370312B1 (en) * 2009-09-15 2013-02-05 Symantec Corporation Systems and methods for using cloud-based storage to optimize data-storage operations
JP2013045264A (en) * 2011-08-24 2013-03-04 Hitachi Systems Ltd Cloud marketplace system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577722B1 (en) * 2002-04-05 2009-08-18 Vmware, Inc. Provisioning of computer systems using virtual machines
US8307086B2 (en) * 2008-08-19 2012-11-06 Facebook, Inc. Resource management of social network applications
US8291416B2 (en) * 2009-04-17 2012-10-16 Citrix Systems, Inc. Methods and systems for using a plurality of historical metrics to select a physical host for virtual machine execution
US20110307291A1 (en) * 2010-06-14 2011-12-15 Jerome Rolia Creating a capacity planning scenario
US9250944B2 (en) * 2011-08-30 2016-02-02 International Business Machines Corporation Selection of virtual machines from pools of pre-provisioned virtual machines in a networked computing environment
US8825863B2 (en) * 2011-09-20 2014-09-02 International Business Machines Corporation Virtual machine placement within a server farm
US9442769B2 (en) * 2011-09-30 2016-09-13 Red Hat, Inc. Generating cloud deployment targets based on predictive workload estimation
DE102012217202B4 (en) * 2011-10-12 2020-06-18 International Business Machines Corporation Method and system for optimizing the placement of virtual machines in cloud computing environments
US8850442B2 (en) * 2011-10-27 2014-09-30 Verizon Patent And Licensing Inc. Virtual machine allocation in a computing on-demand system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913525A (en) * 2005-01-12 2007-02-14 国际商业机器公司 Method and system for automatic responses to job requests from client
US8185894B1 (en) * 2008-01-10 2012-05-22 Hewlett-Packard Development Company, L.P. Training a virtual machine placement controller
JP2011523472A (en) * 2008-03-18 2011-08-11 ライトスケール, インコーポレイテッド Method and system for efficiently managing and configuring virtual servers
US8370312B1 (en) * 2009-09-15 2013-02-05 Symantec Corporation Systems and methods for using cloud-based storage to optimize data-storage operations
US8261295B1 (en) * 2011-03-16 2012-09-04 Google Inc. High-level language for specifying configurations of cloud-based deployments
JP2013045264A (en) * 2011-08-24 2013-03-04 Hitachi Systems Ltd Cloud marketplace system

Also Published As

Publication number Publication date
AU2014262679A1 (en) 2015-11-19
SG11201508971UA (en) 2015-11-27
JP6291034B2 (en) 2018-03-14
AU2014262679B2 (en) 2017-06-01
WO2014182894A3 (en) 2015-06-11
JP2016524218A (en) 2016-08-12
EP2994832A2 (en) 2016-03-16
CA2911614A1 (en) 2014-11-13
CA2911614C (en) 2019-10-29
WO2014182894A2 (en) 2014-11-13
EP2994832A4 (en) 2016-12-14
CN105229609A (en) 2016-01-06

Similar Documents

Publication Publication Date Title
CN105229609B (en) The placement of the customer impact of virtual machine instance
US10979318B2 (en) Enhancing resource allocation for application deployment
US9985905B2 (en) System and method for cloud enterprise services
CN104854563B (en) What resource used automatically analyzes
Klems et al. Do clouds compute? a framework for estimating the value of cloud computing
US8793378B2 (en) Identifying services and associated capabilities in a networked computing environment
CN104679591B (en) For carrying out the method and apparatus of resource allocation in cloud environment
US9665387B2 (en) User-influenced placement of virtual machine instances
WO2019056710A1 (en) Supplier recommendation method and apparatus, and computer readable storage medium
US10158725B2 (en) Differentiated service identification in a networked computing environment
KR102037829B1 (en) Method, apparatus and computer-readable recording medium for providing interior construciton inmformation based on scenario
US9747574B2 (en) Project assessment tool
US10243819B1 (en) Template generation based on analysis
US9225662B2 (en) Command management in a networked computing environment
US9736031B2 (en) Information system construction assistance device, information system construction assistance method, and information system construction assistance program
JP6094593B2 (en) Information system construction device, information system construction method, and information system construction program
US9787549B2 (en) Server virtualization
US20140337833A1 (en) User-Influenced Placement of Virtual Machine Instances
US10394701B2 (en) Using run time and historical customer profiling and analytics to iteratively design, develop, test, tune, and maintain a customer-like test workload
US20090271439A1 (en) Systems to implement business processes in computing environment
US20240086203A1 (en) Sizing service for cloud migration to physical machine
Boonprasop Automating inventory composition management for bulk purchasing cloud brokerage strategy
US9691039B2 (en) Smart ordering system for proactive mitigation of system scarcity in a cloud or data center environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190115

Termination date: 20210508