CN105190568A - User-defined pools - Google Patents

User-defined pools Download PDF

Info

Publication number
CN105190568A
CN105190568A CN201480025509.XA CN201480025509A CN105190568A CN 105190568 A CN105190568 A CN 105190568A CN 201480025509 A CN201480025509 A CN 201480025509A CN 105190568 A CN105190568 A CN 105190568A
Authority
CN
China
Prior art keywords
user
resource
client
computer
pricing policy
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.)
Granted
Application number
CN201480025509.XA
Other languages
Chinese (zh)
Other versions
CN105190568B (en
Inventor
拉希德·恩纳济
金仁涉
布赖恩·黑尔弗里希
大卫·约翰·沃德
斯蒂芬·奥尔登·艾略特
翟鹏
丹维·哈沙·卡皮拉
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/855,498 external-priority patent/US20140297867A1/en
Priority claimed from US13/855,449 external-priority patent/US9645840B2/en
Priority claimed from US13/855,518 external-priority patent/US9634958B2/en
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN105190568A publication Critical patent/CN105190568A/en
Application granted granted Critical
Publication of CN105190568B publication Critical patent/CN105190568B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Abstract

One or more resource slots, are allocated to a customer according to a first set of pricing policies. The customer is allowed to identify at least one of the resource slots and identify other users allowed to access the identified resource slots according to a second pricing policy, the second pricing policy being designated by the customer.

Description

User-defined pond
The cross reference of related application
This application claims the U.S. Patent Application No. 13/855 submitted on April 2nd, 2013,449, the U.S. Patent Application No. 13/855 submitted on April 2nd, 2013, the U.S. Patent Application No. 13/855 that on April 2nd, 498 and 2013 submits to, the rights and interests of 518, the disclosure of described application by reference entirety is incorporated to herein.
Background technology
Data center holds department of computer science to unify the facility of various networking components, memory module and other associated components.Data center such as can provide calculation services as remote computing services to businessman and individual or provide " namely software serve " (such as, cloud computing).In order to promote the utilization of data center resource, Intel Virtualization Technology can allow one or more examples of single physical computing machine hosts virtual machine, and described virtual machine to represent to connected computer user as stand-alone computer machine and operates.Utilize virtual, single physical calculation element can create according to dynamical fashion, safeguard or delete virtual machine.
Some Intel Virtualization Technologies can provide the virtual resource crossing over two or more physical resources, as having the single virtual machine of the multiple virtual processors crossing over multiple different physical computing systems.As another example, Intel Virtualization Technology can allow data storage hardware to share between a plurality of users by providing the virtualized data that can distribute across multiple data storage device to store for each user, wherein each virtualized data storage is like this served as different logical data and is stored, and described logical data is stored as user, and to provide them be the sole operators of data storage resource and the illusion of keeper.
In many circumstances, the operator realizing the data center of dissimilar virtual computational resource, storage resources and/or other network-accessible resource can allow client's reserved or purchase access to resource under various resource acquisition pattern.Computational resource supplier can be client provide facility to select and start required computational resource, application component is deployed to computational resource and maintain perform application in the environment.In addition, owing to changing the demand of application or the capacity requirement of application, computational resource supplier also can be client provides facility to come manually or by automatic expansion fast and easily zoom in or out quantity and the type of the resource being assigned to application.Unit form that can be discrete obtains the computational resource provided by computational resource supplier, and described unit can be described as example.Can directly on physical server hardware platform, in virtual machine or in certain combination of physical server hardware platform and virtual machine running example.The example of all kinds and configuration can be obtained, comprise and perform different operating system (OS) and/or supervisory routine and there is the resource of the different sizes of the software application, working time etc. of various installation.
Accompanying drawing explanation
In all of the figs, reference number can be reused to indicate the corresponding relation between referenced element.There is provided accompanying drawing to illustrate example embodiment as herein described, but be not intended to limit the scope of the present disclosure:
Fig. 1 illustrates the figure according to the mechanism for pond example of the present disclosure;
Fig. 2 is the figure that the exemplary computing system that can use in some embodiments is shown;
Fig. 3 is the figure that the exemplary computing system that can use in some embodiments is shown;
Fig. 4 illustrates the figure according to the system for pond example of the present disclosure;
Fig. 5 illustrates the figure according to the mechanism for pond example of the present disclosure;
Fig. 6 illustrates the figure according to the system for pond example of the present disclosure;
Fig. 7 illustrates the figure according to the system for pond example of the present disclosure;
Fig. 8 illustrates according to of the present disclosure for making the figure of the system of capacity bursts;
Fig. 9 illustrates the figure according to the system for pond example of the present disclosure;
Figure 10 illustrates the figure according to example user interface of the present disclosure;
Figure 11 illustrates the figure according to example user interface of the present disclosure;
Figure 12 illustrates the figure according to sample data record of the present disclosure;
Figure 13 describes the process flow diagram according to the example procedure for pond example of the present disclosure;
Figure 14 describes the process flow diagram according to the example procedure for pond example of the present disclosure; And
Figure 15 describes the process flow diagram according to the example procedure for pond example of the present disclosure.
Embodiment
Supplier's network (network as realized across one or more data center) can provide computational resource, as reserved example and stock example (spotinstance).Reserved example can be client and provides reserved for the example of many particular types and the configuration ability reaching fixed term (as 1 year or 3 years).Stock example can refer to the example allocation using spot price policy, and in described spot price policy, client can specify it to be ready to pay with the ceiling price of the time per unit making described example run.If the ceiling price of client exceedes the dynamic spot price determined by Supply and Demand at least in part, so just can be client and run described example.Supplier's network can provide the example of other types.
In the various embodiments that the disclosure describes in addition, can be client and provide the ability creating privately owned trade market, the operation of described privately owned trade market comes according to the bid policy similar with stock example policy or pricing policy providing the example of the client of one group of client definition to selected a group user in some cases.Such as, organizational structure (as university) can have via allowing user to reserve example to a group that the privately owned trade market that reserved example is bidded provides.In this illustration, university can provide the example of described one group of client definition to each department in university.Individual in each department or computing machine can be bidded to reserved example in inside.In one example, each department can bid or use one group of " currency " or integration of bidding defined.Except currency or integration of bidding, university also can customize following aspect: as floor and ceiling prices ,/pricing algorithm, the interrupt cycle of bidding and be applicable to other parameters of resource type (as stock example).The example of the other types for privately owned trade market also can be selected by university, as stock example and the example as required of (hereafter in addition describe) distribution.By providing the ability creating privately owned trade market, its calculated capacity can be distributed to the internal user of described privately owned trade market by client more effectively.This can reduce the cost that may need the client of less reserved capacity when volume of distribution by this way, and supplier's network can increase the utilization factor of its idle capacity.Hereafter describe the extra embodiment of privately owned trade market in addition.In various embodiment described herein, privately owned trade market can be described as privately owned trade market, limited trade market, user-defined pond, user-defined market, privately owned spot market or user-defined spot market.
Fig. 1 illustrates the figure according to system 100 of the present disclosure, and described system 100 comprises the mechanism for providing user-defined pond.In FIG, system 100 can comprise reserved virtual machine instance 110, the as required virtual machine instance 115 and stock virtual machine instance 120 that can perform on such as one or more server computer 130,135 and 140 respectively.Should be understood that some embodiments can comprise the various types of extra virtual machine instance that can be exemplified on extra server computer.
Fig. 1 also illustrates the public network 150 that can comprise one or more computing machine (as computing machine 160 and 170).According to an embodiment, example 110,115 and 120 can be configured to provide calculation services via gateway 190 and computing machine 160 and 170 to computer user's (not shown) of public network 150.Such as, reserved virtual machine instance 110 can provide one group of remote access enterprise application to a group user, and described user can be such as the employee of university or other educational institutions.
User at computing machine 160 or 170 place can generate service 180 and send request for creating user-defined pond or privately owned trade market to user-defined pond.In some embodiments, server 130 or 140 can representative of consumer, representative server itself or represent other servers and send request.In response to the request for example, user-defined pond generates service 180 and can record described request and periodically provide the renewal of the state about described request.User-defined pond generates service 180 can with other communication for services to promote to create the privately owned trade market of asking.User-defined pond generate service 180 such as can determine which example be associated with user and be provided for promoting the selection of the example of user, who can ask selected example or the interface of the selection of the selection of bidding to selected example and pricing policy or policy of bidding.User-defined pond generates service 180 also can provide notice when reaching the standard grade in privately owned trade market to user.
About some example and embodiment, each side of the present disclosure is described now, described example and the embodiment meant for illustration disclosure instead of the restriction disclosure.Should be understood that the theme presented can be implemented as computer processes, computer-controlled equipment or computing system or the goods as computer-readable recording medium herein.Although theme as herein described presents in the general context of the program module performed on one or more calculation element, person of skill in the art will appreciate that, other implementations can be performed in conjunction with the program module of other types.Usually, program module comprises the structure of routine, program, assembly, data structure and the other types performing particular task or realize particular abstract data type.
Those skilled in the art will also be understood that, theme as herein described can be put into practice in other computer system configurations outside those described herein or with its combination, and other computer system configurations described comprise multicomputer system, based on the consumption electronic products of microprocessor or programmable-consumer electronic product, small-size computer, mainframe computer, handheld computer, personal digital assistant, electronic reader, honeycomb telephone device, dedicated hardware device, the network equipment etc.Embodiment as herein described can also be put into practice in a distributed computing environment, is executed the task in described environment by the remote processing device by communication network links.In a distributed computing environment, program module can be positioned in local and remote both memory storages.
In the following detailed description, to forming a part herein and carrying out reference by the accompanying drawing shown in explanation, specific embodiment or example.Accompanying drawing not drawn on scale.All these graphic in, the element that identical numeral is identical.
Served for one or more can access via internet and/or other networks the network that (as various types of calculating based on cloud or storage) be supplied to a distribution type client be can be described as supplier's network by what set up as company or institutional entity or the described entity of representative.This supplier's network can comprise trustship and to can be used to realize and distribute one or more data centers of various resource pools of the infrastructure that provided by supplier's network and service, and described resource pool is as the set of physics and/or Virtualization Computer server, memory storage, networked devices etc.In some embodiments, can by resource with so-called " example " (as virtual or physics calculated examples or store example) be supplied to client for unit.Virtual computing example such as can comprise and has the calculated capacity (described calculated capacity is specified by indicating the type of CPU and quantity, main memory size etc.) of specifying and the software stack of specifying (such as, the operating system of particular version, itself so that can run on supervisory routine top) one or more servers.
In different embodiments, many dissimilar calculation elements can be used alone or in combination the resource realizing supplier's network, and described dissimilar calculation element comprises general or special computer server, memory storage, network equipment etc.In some embodiments, such as, by giving customer administrator's login name and password provides the direct access to resource instances to client or user.In other embodiments, supplier's network operator can allow client specify for given client end application execution requirements and represent client be arranged in be suitable for apply execution platform (as application server instance, Java tMvirtual machine (JVM), universal or special operating system, support various explanation or the platform of programming language (as Ruby, Perl, Python, C, C++ etc.) of compiling or high-performance calculation platform) on perform application.This can such as when do not need client directly access instances or perform platform complete.Given execution platform can use one or more resource instances in some implementations; In other implementations, multiple execution platform can be mapped to single resource example.
Fig. 2 illustrates the example computing device that can realize embodiment as herein described.Fig. 2 is the figure of the example schematically showing data center 210, and described data center 210 can provide computational resource by subscriber computer 202a and 202b (it can be described as in this article in the singular " computing machine 202 " or can be called as " computing machine 202 " with plural form) to user 200a and 200b (it can be called as in this article in the singular " user 200 " or can be called as " user 200 " with plural form) via communication network 230.Data center 210 can be configured to the computational resource being provided for performing application permanently or as required.The computational resource provided by data center 210 can comprise various types of resource, as data processing resources, data storage resource, data resource communication etc.The computational resource of every type can be general, or can be used in many customized configurations.Such as, data processing resources can be used as virtual machine instance.Described example can be configured to perform application, comprises Web server, application server, media server, database server etc.Data storage resource can comprise file storage device, block memory storage etc.
The computational resource of every type or often kind of configuration can have different size, as large-scale resource, it is made up of many processors, a large amount of storer and/or large storage capacity, and make full use of limited resources, and it is made up of the storer of less processor, less amount and/or less memory capacity.Such as, client can select to distribute many small-sized process resources as Web server and/or a large-scale process resource as database server.
Data center 210 can comprise server 216a and 216b (it can be called as in this article in the singular " server 216 " or can be called as " server 216 " with plural form), and described server provides the computational resource that can be used as virtual machine instance 218a and 218b (it can be called as in this article in the singular " virtual machine instance 218 " or can be called as " virtual machine instance 218 " with plural form) and obtain.Virtual machine instance 218 can be configured to perform application, comprises Web server, application server, media server, database server etc.Other resources that can provide comprise data storage resource (not shown), and can comprise file storage device, block memory storage etc.
Intel Virtualization Technology for the availability of computing hardware for providing large-scale computational resource for client and allowing between multiple client effectively and safely shared computation resource to provide benefit.Such as, Intel Virtualization Technology (those Intel Virtualization Technologies as provided by VMware or other virtualization systems) can allow to share physical compute devices by providing to each user between a plurality of users by one or more virtual machine instance of physical compute devices trustship.Virtual machine instance can be the software emulation of the specific physical computing systems serving as unique logic computing system.This virtual machine instance provides isolation between the multiple operating systems sharing given physical computing resources.In addition, some Intel Virtualization Technologies can provide the virtual resource crossing over one or more physical resource, as having the single virtual machine example of the multiple virtual processors crossing over multiple different physical computing systems.
With reference to figure 2, communication network 230 can be such as public addressable network in linked network and may by each not Tongfang operate, as internet.In other embodiments, communication network 230 can be dedicated network, such as, as the company that completely or partially can not be accessed by unauthorized user or university network.In other other embodiment, communication network 230 can comprise and having the access of internet and/or one or more dedicated networks of access of carrying out from internet.
Communication network 230 can provide the access to computing machine 202.Computing machine 202 can be the computing machine used by other clients of client 200 or data center 210.Such as, subscriber computer 202a or 202b can be server, desk-top or laptop PC, flat computer, wireless telephone, personal digital assistant (PDA), E-book reader, game console, Set Top Box or can any other calculation element at visit data center 210.Subscriber computer 202a or 202b (such as, via cable modem or digital subscriber line (DSL)) can be connected directly to internet.Although only describe two subscriber computer 202a and 202b, it should be understood that there is multiple subscriber computer.
Computing machine 202 also can be used to each side configuring the computational resource provided by data center 210.In this regard, data center 210 can provide web interface, by described web interface, carrys out each side of the operation at configuration data center by being used in the web browser application that subscriber computer 202 performs.As an alternative, on subscriber computer 202 perform stand-alone utility may have access to disclosed in data center 210 application programming interface (API) for performing configuration operation.Also other mechanism of the operation (comprising the renewal disposed application) for configuration data center 210 can be used.
Server 216a and 216b shown in Fig. 2 can be the standard server being suitably configured for providing computational resource mentioned above, and can be provided for the computational resource performing one or more application.In one embodiment, computational resource can be virtual machine instance 218.In the example of virtual machine instance, each the be configured to execution in server 216 can perform instance management device 220a or 220b (it can be called as in this article in the singular " instance management device 220 " or can be called as " instance management device 220 " with plural form) of virtual machine instance.Such as, instance management device 220 can be virtual machine monitor (VMM) or be configured to the program that permission performs the another type of virtual machine instance 218 on server 216.As described above, in virtual machine instance 218 each be configured to execution application all or part of.
Although should be understood that embodiment disclosed above discusses the situation of virtual machine instance, the implementation of other types can use together with technology with concept disclosed herein.Such as, embodiment disclosed herein also can use together with not using the computing system of virtual machine instance.
In the example data center 210 shown in Fig. 2, router two 14 can be used to interlink server 216a and 216b.Router two 14 also can be connected to gateway 240, and described gateway 240 is connected to communication network 230.Router two 14 can in the data in the heart 210 such as by the characteristic based on this kind of communication (such as, comprise the header information of source address and/or destination-address, protocol identifier etc.) and/or the characteristic (such as, the route of topology Network Based etc.) of dedicated network suitably forwarding data bag or other data communication carry out the communication in supervising the network.Should be understood that for simplicity, show each side of computing system and other devices in this illustration, and and the details of some routine not shown.Extra computing system and other devices can be interconnected in other embodiments and can be interconnected in a different manner.
Should be understood that network topology simplifies greatly shown in figure 2, and more network and interconnection device can be used to the various computing system disclosed herein that interconnects.These network topologies and device should be obvious for a person skilled in the art.
Should be understood that data center 210 described is in fig. 2 only illustrative, and also can use other implementations.In addition, it should be understood that function disclosed herein can realize in the combination of software, hardware or software restraint.Other implementations should be obvious for a person skilled in the art.Should understand, server, gateway or other calculation elements can comprise can alternately and perform the hardware of the function of described type or any combination of software, its include but not limited to desk-top computer or other computing machines, database server, network storage device and other network equipments, PDA, flat computer, mobile phone, wireless telephone, pager, communicator, Internet appliances, (such as, use Set Top Box and/or individual/digital video recorder) based on TV system and comprise other consumer goods various of suitable communication capacity.In addition, the function provided by shown module can combine or be distributed in less module in extra module in some embodiments.Similarly, in some embodiments, the function of some in shown module can not be provided and/or other extra functions can be used.
By data center 210 provide buy computational resource capacity can expand in response to demand.In this regard, expansion refers to that the example making computational resource in response to demand illustrates (it also can be described as in this article " startup " or " establishment ") or stops the process of (it also can be described as in this article " stopping expansion ").By this way, the capacity of resource that the client of data center 210 buys can be expanded as required.
Automatic expansion be a kind of in response to the demand to these resources increase or weaken the mechanism that computational resource is expanded.The condition that automatic expansion allows the client configuration data center 210 of data center 210 to define according to client is expanded the computational resource that client buys.Such as, definable rule amplifies capacity in a specific way for the generation in response to the condition of specifying (as demand peak).Similarly, also definable rule reduces capacity in a specific way in response to the generation of other conditions (as demand weakens).When manually to be started by client when example or started by the automatic expansion assembly in the heart 210 in the data when example, the mechanism for starting virtual machine instance disclosed herein can be used.
Data center 210 also can be configured with deployment assembly and carry out the new example that auxiliary client disposes computational resource.Dispose assembly to configure from client reception, described configuration comprises the data describing new example and how to be configured.Such as, described configuration can: specify the one or more application that should install in new example or component software, there is provided will in new example the code of execution script and/or other types, the logic of preparation high-speed cache and the information of other types of specifying and how to prepare to apply high-speed cache are provided.Dispose the logic that assembly uses the configuration that provides of client and prepare high-speed cache to start, configure and prepare the new example of computational resource in advance.
In at least some embodiment, one or more the server of part or all realized in technology described herein (comprising the technology generating the function of service 180 for realizing pond) can comprise general-purpose computing system, and described general-purpose computing system comprises one or more computer accessible or is configured to access one or more computer accessible.Fig. 3 shows this general-purpose calculating appts 300.In the shown embodiment, calculation element 300 comprises one or more processor 310a, 310b and/or 310n (it can be called as in this article in the singular " processor 310 " or can be called as " processor 310 " with plural form) of being coupled to system storage 320 via I/O (I/O) interface 330.Calculation element 300 also comprises the network interface 340 being coupled to I/O interface 330.
In various embodiments, calculation element 300 can be the single-processor system comprising a processor 310, or comprises the multicomputer system of some processors 310 (such as two, four, eight or another suitable quantity).Processor 310 can be any suitable processor that can perform instruction.Such as, in various embodiments, processor 310 can be the general or flush bonding processor realizing any one framework in various instruction set architecture (ISA), and described framework is as x86, PowerPC, SPARC or MIPSISA or any other suitable ISA.In a multi-processor system, each in processor 310 can realize identical ISA usually but not necessarily.
System storage 320 can be configured to store the instruction and data can accessed by processor 310.In various embodiments, system storage 320 can use any suitable memory technology to realize, and described memory technology is as static RAM (SRAM), synchronous dynamic ram (SDRAM), non-volatile/Flash tMthe storer of type storer or other type any.In the shown embodiment, realize the programmed instruction of one or more required function and data (as those methods above-mentioned, technology and data) to be illustrated and to be stored in system storage 320 as code 325 and data 326.
In one embodiment, I/O interface 330 can be configured to the I/O flow between any peripheral unit in coprocessor 310, system memory 320 and device, and described peripheral unit comprises network interface 340 or other peripheral interface.In some embodiments, I/O interface 330 can perform any required agreement, sequential or other data conversion with will from an assembly (such as, system storage 320) data-signal convert the form being suitable for being used by another assembly (such as, processor 310) to.In some embodiments, I/O interface 330 can comprise the support for the device be attached by various types of peripheral bus, and described peripheral bus is such as the variant of periphery component interconnection (PCI) bus standard or USB (universal serial bus) (USB) standard.In some embodiments, the function of I/O interface 330 can be divided into two or more independent assemblies, such as, as north bridge and south bridge.In addition, in some embodiments, some or all of in the function of I/O interface 330 (such as to the interface of system memory 320), can be directly incorporated in processor 310.
Network interface 340 can be configured to allow data to exchange between calculation element 300 and other the one or more devices 360 (other computer systems such as shown in Fig. 1 to Fig. 3 or device) being attached to one or more network 350.In various embodiments, network interface 340 can be supported to communicate via any suitable wired or wireless general data network (such as ethernet network type).In addition, network interface 340 can be supported via telecommunication/telephone network (as analog voice network or digital fiber communication network), communicate via storage area network (as fiber channel SAN) or via the network of any other suitable type and/or agreement.
In some embodiments, system storage 320 can be an embodiment of computer accessible, and described computer accessible is configured to store as programmed instruction and the data above for the embodiment for realizing corresponding method and equipment as described in Fig. 1 and Fig. 2.But, in other embodiments, can receive in dissimilar computer accessible, send or stored program instruction and/or data.In general, computer accessible can comprise non-transitory storage medium or storage medium, as magnetic medium or optical medium, such as, is coupled to disk or the DVD/CD of calculation element 300 via I/O interface 330.Non-transitory computing machine accessible storage medium can also comprise the storer that can be used as system storage 320 or another type and be included in any volatibility in some embodiments of calculation element 300 or non-volatile media, as RAM (such as, SDRAM, DDRSDRAM, RDRAM, SRAM etc.), ROM etc.In addition, computer accessible can comprise transmission medium or signal, as the electric signal, electromagnetic signal or the digital signal that transmit via communication media (as network and/or wireless link), as realized via network interface 340.The described function that partly or entirely can be used to realize in various embodiment in multiple calculation element (as shown in Figure 3 those devices); The component software such as run on various different device and server can cooperate and provide described function.In some embodiments, except or replace use general-purpose computing system realize, the part of described function can use memory storage, network equipment or dedicated computer system to realize.As used herein, term " calculation element " at least refers to the device of all these types and is not limited to the device of these types.
Supplier's network is can be described as by the network that such as one or more services (as various types of calculating based on cloud or storage) for accessing via internet and/or other networks of setting up of the institutional entity of company or public sector are provided to a distribution type client.This supplier's network can comprise trustship and realize and many data centers of the distribute infrastructure that provided by supplier's network and the various resource pools needed for service, as the set of physics and/or Virtualization Computer server, memory storage, networked devices etc.In some embodiments, can by resource with so-called " example " (as virtual or physics calculated examples or store example) be supplied to client for unit.Virtual computing example such as can comprise and has the calculated capacity (described calculated capacity is specified by indicating the type of CPU and quantity, main memory size etc.) of specifying and the software stack of specifying (such as, the operating system of particular version, itself so that can run on supervisory routine top) one or more servers.
In different embodiments, many dissimilar calculation elements can be used alone or in combination the resource realizing supplier's network, and described dissimilar calculation element comprises general or special computer server, memory storage, network equipment etc.In some embodiments, such as the direct access to resource instances is provided by giving customer administrator's login name and password for client or user.In other embodiments, supplier's network operator can allow client specify for the client application of specifying execution requirements and represent client be arranged in be suitable for apply execution platform (as application server instance, Java tMvirtual machine (JVM), universal or special operating system, support various explanation or the platform of programming language (as Ruby, Perl, Python, C, C++ etc.) of compiling or high-performance calculation platform) on perform application, and such as do not need the direct access instances of client or perform platform.Given execution platform can utilize one or more resource instances in some implementations; In other implementations, multiple execution platform can be mapped to single resource example.
In many circumstances, realize dissimilar virtual calculating, the operator of supplier's network of storage and/or other network-accessible functions can allow client's reserved or access of buying resource under various resource acquisition pattern.Computational resource supplier can be client and provides facility to select and start required computational resource, application component is deployed to computational resource and maintains to perform application in the environment.In addition, owing to changing the demand of application or the capacity requirement of application, computational resource supplier also can be client provides facility to come manually or by automatic expansion fast and easily zoom in or out quantity and the type of the resource being assigned to application.Unit form that can be discrete utilizes the computational resource provided by computational resource supplier, and described unit can be described as example.Example can represent physical server hardware platform, the virtual machine instance performed on the server or certain combination of both.The example of all kinds and configuration can be utilized, comprise and perform different operating system (OS) and/or supervisory routine and there is the resource of the different sizes of the software application, working time etc. of various installation.Such as, example also can be used in specific availability district, and described availability district represents other geographic position of such as data center or basic calculation hardware.
In some embodiments, supplier's network can be organized into multiple geographic area, and each region can comprise one or more availability district.Availability district (it also can be described as availability container) and then can comprise one or more different position or data center, is configured by this way and makes: the resource in given availability district can with the fault isolation in other availability districts or insulation.That is, the fault in an expection availability district may can not cause the fault in other availability districts.Therefore, it is intended that the availability configuration file of a resource instances is independent of the availability configuration file of the resource instances in different availability district.Client can protect its application in order to avoid break down in single position by starting multiple application example in corresponding availability district.Meanwhile, in some implementations, the cheapness between the resource instances resided in same geographic area can be provided and the network connectivty of low delay (and the Internet Transmission between the resource in same availability district can be faster).
Supplier's network can make example " as required " available, thus allows many examples of customer selecting particular type and configuration (such as, size, platform, rental period, availability district etc.), and starts described example fast for deployment.Because demand or capacity requirement are passed in time and changed, also can as required manually or automatically added by automatic expansion or remove example as required.Such as, based on the hourage operated and/or the real resource used, client can bear and its ever-increasing use cost that example is relevant as required.
Computational resource supplier also can make reserved example can use client.Reserved example can be client to be provided reserved for the example of many particular types and the configuration ability reaching fixed term (as 1 year or 3 years), the cost per hour that reduces or other use costs (such as, if start example and when startup example) is exchanged for becoming original with low prepayment.This can allow client guaranteeing that resource correct is when needed by the while of being available, postpones the cost relevant to amplifying disposed application in response to increase in demand.Provide reliable margin capacity for expanding its application although reserved example is client, buying reserved example also can by period that client lock is longer than required period in the computational resource of specific number, type and/or configuration in specific availability district.If the needs of technical architecture or application change, so client may can not realize the return of its investment in reserved example.
Under some truth conditions, the operator of this kind of supplier's network can realize for one group of its client resource reservation, control and access interface flexibly.Such as, the programming resource spare interface (such as, via website or a web pages) that the explorer of supplier's network can realize allowing client education resource example, select resource instances, buy access to resource instances and/or reserved resource instances.Be described as realizing in some embodiments of one or more routine interface (as webpage or API) by entity (as explorer or price optimizer) what hereafter discuss, the interface manager sub-component of that entity can be responsible for interface related function.In many embodiments, equivalence interface related function can by the independent of explorer and price optimizer outside or independently interface manager realize.This interface can comprise the ability allowing to browse Resource TOC, provides the ability of the details of the resource of supported dissimilar or size and specification, the different reservation types supported or pattern, pricing model etc.
Supplier's network can be supported to correspond to the some different purchasing model (it also can be called as reserved pattern in this article) of some in example types mentioned above.Such as, supplier's network can support long-term reserved, On-demand resource allocation or the Resourse Distribute based on spot price.Use long-term reserved pattern, client can carry out low disposable prepayment to resource instances, resource instances is reserved the duration (as 1 year or triennial limit) reaching and specify, and pays lower rate per hour to described example; Client by be sure of to have to the described reserved time limit can reserved example.Use pattern as required, when without any long-term agreement or prepayment, client (or certain reasonable time unit) can pay capacity by the hour.In spot price pattern, ceiling price/unit interval that client can specify the resource being willing to mean particular type to pay, and if the ceiling price of client exceedes the dynamic spot price determined by Supply and Demand at least partly, the resource of so that type will be provided to client.In some embodiments, the resource instances pond dynamically adjusting size can be placed for different reservation types or pattern, such as, can distribute long-term reserved example from a pond, from the example as required etc. in another pond.Exceed the time durations of demand in the supply of requested resource type, spot price can become significantly lower than the price of pattern as required.In some implementations, if spot price increases above the highest bid of being specified by client, so interruptible price Resourse Distribute, namely, the resource instances previously having distributed to client can be reclaimed by explorer, and can distribute to certain other client being ready to pay more high price.In some embodiments, the combination of other purchasing models or pattern can by Implementation of resource manager.
Use the techniques described herein, supplier's network also can realize the service allowing to create privately owned trade market.Described service can be the client wanting the example of its reserved example and other types to be supplied to the user being associated with client or otherwise being specified by client and provides mechanism.Such as, the internal user in its organizational structure of client may go for the reserved example than usual those reserved examples provided by computational resource supplier more short-term limit, or only needs access instances to reach the limited duration.Client can select the remainder in the time limit of its reserved example, the stock example of many untapped reserved examples and distribution or its part, and selected example is supplied to the internal user of client in privately owned trade market, thus allows internal user via privately owned trade market " purchase " example, example carried out to " bidding " or otherwise ask the access to example.Therefore, can provide a kind of to client uses it to obtain the method for example by realizing this limited privately owned trade market more effectively, for meaning those internal users that described example pays maximum " currency " provide described example to needing most example or hope, thus the partition capacity of distribution client more effectively.
Fig. 4 shows the example system environment for providing example according at least some embodiment.System 400 can comprise supplier's network 410, described supplier's network 410 comprises multiple resource instances 430 (it can be called as in this article in the singular " resource instances 430 " or can be called as " resource instances 430 " with plural form), as example 430A, 430B, 430D, 430E, 430G and the 430H in an availability district 420A and example 430J, 430K, 430M, 430N, 430P, 430Q in different availability district 420B.Various resource instances 430 in availability district 420A and 420B (it can be called as in this article in the singular " availability district 420 " or can be called as in " availability district 420 " with plural form) can be reserved and/or distribute for client (or potential client) as client 448A and 448B (it can be called as in this article in the singular " client 448 " or can be called as " client 448 " with plural form) uses.In the shown embodiment, system 400 comprises explorer 480 and interface manager 482.As discussed previously, in some embodiments, the function of interface manager 482 can be realized by the sub-component of explorer 480.
In some embodiments, interface manager 482 can realize one or more routine interface, thus example 430 is searched for, browses, reserves and obtained to permission client 448 to obtain various types of service, such as, run and/or access various application.In the shown embodiment, at given time point place, some or all the be assigned to Instances Pool in example 430, if reserved Instances Pool 421A or 421B, as required Instances Pool 423A or 423B, available Instances Pool 425 or other ponds are as other ponds 427.
In some embodiments, such as, based on the pattern that supported example is reserved and distributed, given pond (as available Instances Pool 425) self can comprise its oneself subpool.Each pond (or subpool) can have the pricing policy that is associated for the example, and is assigned to other characteristics (as interruptibility is arranged) of described pond or subpool by chance.Pond can presentation logic set or polymerization, and therefore in such as same pond or subpool, the existence of two examples may might not mean about anything of the physical location of the hardware for described two examples.Although the example shown in Fig. 4 430 is illustrated as belonging to availability district 420, in other embodiments, can differently organize supplier's network 410, such as, may not realize availability district 420 in some embodiments.In some embodiments, availability district 420 can be grouped into geographic area (not shown in Fig. 4).In some implementations, Instances Pool (such as, each availability district can have its oneself reserved Instances Pool) can be realized in availability district; And in other implementations, Instances Pool or subpool can cross over multiple availability district.
In some embodiments, as in Figure 5, data center 500 can be regarded as the set of shared computation resource and/or shared infrastructure.Such as, as shown in Figure 5, data center 500 can comprise virtual trough 504, physical host 502, power supply 506, router five 08, isolated area 510 and geographic position 512.Virtual trough 504 can be called as groove or resource slot.Physical host 502 can be shared by multiple virtual trough 504, and each groove 504 can hosts virtual machine, as passenger plane territory.Multiple physical host 502 can share power supply 506, as being arranged on the power supply 506 on server rack.Multiple physical hosts 502 that router five 08 can be across several power supplys 506 provide service, with routing network traffic.Isolated area 510 can be many router fives 08 and provides service; Isolated area 510 is one group of computational resource that can be provided service by redundant resource (as emergency generator).Multiple isolated area 510 can reside in (as data center 500) place, geographic position 512.Provisioning server 514 can comprise storer and processor, and described storer and processor are configured to have instruction to use determined task and shared resource/infrastructure to analyze user data and to sort to available implementation resource in the calculation.Provisioning server 514 goes back ALARA Principle workflow, for supply and the health status and/or the fault state that stop provision computational resources and detection computations resource.
Provisioning server 514 can the resource in determining data center be arranged.In some embodiments, this layout can at least in part based on the relation between available computational resource and/or computational resource.In one embodiment, the distance between resource can be measured by the degree of shared resource.This distance can be used for sorting to resource according to task.Such as, on main frame 502 may than only sharing the 3rd system of isolated area 510 closer to second system with the first system of second system share Router 508.According to application, may need to keep low distance to increase handling capacity or to keep high distance to increase persistence.In another embodiment, described distance can be limited according to the resource do not shared.Such as, two grooves 504 of share Router 508 can have the distance of physical host 502 and power supply 506.Each difference of resource can obtain differently weighting in distance calculates.
When selecting ready resource to be transferred to client account, also can use and arranging calculating.In one embodiment, client-requested has the virtual machine of operating system.Provisioning server 514 can determine that the stagewise in groove 504 can be utilized to roll up meets described request.Layout decision-making can be made, described layout decision-making determine which infrastructure may be share required and which infrastructure be not share required.Use described layout decision-making, the stagewise volume of at least some met described layout decision-making characteristic can be selected from available resources pond.Such as, the pond that can stagewise be used in PC cluster is arranged to roll up.When asking newly to roll up, provisioning server 514 can determine that the layout near other existing volumes is required for delay issue.Therefore, described decision-making can find that share Router 508 is required, but shared power supply 506 and physical host 502 are not required.Subsequently, the volume that mates in the pond of these attributes can be selected and preferably described volume is placed on to roll up on identical router five 08 with other, instead of on identical physical host 502 or power supply 506.In other examples (as those relevant to the database shared arrange decision-making) of arranging decision-making, sharing of infrastructure may not too need, and can select the volume the same volume with less infrastructure relevant with other.
In some embodiments, the operator of those supplier's network provides user-defined pond as depicted in Figure 1 to generate the infrastructure of service 180 as described above, and described infrastructure provides request for client and creates the ability of user-defined privately owned trade market.In one embodiment, client can be the entity that have purchased many resources (as reserved example and example as required), as educational institution.Client can select the reserved example of client and the subset of example as required, and creates insider transaction market, the department in described insider transaction market in educational institution and/or user can to described reserved example and as required example carry out inside and bid.Described bid process can be similar with the process for bidding to the stock example in spot market as described above.In some embodiments, client can select other bid process or allow to use the other forms of modes of payments (as use the integration that distributes) bid.In various embodiments, aspect can be customizable, as currency, minimum/ceiling price or price level ,/pricing algorithm of bidding, interrupt cycle and other parameters.
With reference to figure 6, show the example of the user being used in the resource of privately owned trade market according to of the present disclosure point.User A can have reserved example 600, the as required example 605 and stock example 610 that are associated.User A can be example A, example B, the example C and example D of the reserved example 600 of user-defined pond 620 distributing user A.User A also can be example 1 and the example 2 that stock example 600 is distributed in user-defined pond 620.Example A, the example B of the reserved example 600 of user A, example C and example D can be called as the subset of reserved example 600, and the example 1 of stock example 600 and example 2 can be called as the subset of stock example 600.User B can have the reserved example 630 and stock example 640 that are associated.User B can be example K and the example L of the reserved example 630 of user-defined pond 650 distributing user B.User B also can be example 8 and the example 9 of the stock example 640 of user-defined pond 650 distributing user B.The example K of the reserved example 630 of user B and example L can be called as the subset of reserved example 630, and the example 8 of the stock example 640 of user B and example 9 can be called as the subset of stock example 640.In some embodiments, the example being assigned to user-defined pond can remove by user A or user B.
As described above, example can be called as resource slot, virtual trough or groove.User-defined pond or privately owned trade market can be provided as the extra service on the resource slot top of client, and the user-defined pond as Fig. 1 generates service 180.In one embodiment, user-defined pond generates service 180 and may be embodied in the software that can be arranged on as on computer network in the heart in exclusive data.
User can select user to obtain and by many examples of often kind of example types of supplier's network allocation.In one embodiment, user also may can provide or select pricing algorithm.Such as, user may can use standardized format (as XML) to upload one or more algorithm or formula.In one embodiment, pond generates service and can be algorithm or formula provides one or more template.Pond generates service also can provide extra template or the predetermined selection to parameter (quantity and type as example), thus example selected by configuration, carries out the fairness etc. selecting to strengthen between bidders.
Can use for allowing user in privately owned trade market to many methods that example is bidded.In one embodiment, can provide to user the option selecting English auction method, in described English auction method, show the price of rising progressively, and winner is the example price provided is the highest bidder of highest bid.In another embodiment, can provide to user the option selecting Dutch Auction method, in described Dutch Auction method, the price of example starts with higher level and reduces until user accepts present price.As described above, the ceiling price that user can select user to be ready to pay, and if the ceiling price of user exceedes the dynamic price determined by Supply and Demand at least in part, so just can be supplied to user by described example.
In one embodiment, can provide to user the option selected for the currency of bid process.Described currency can be included in the unit of value by client definition or selection when creating privately owned trade market.Although client can select traditional monetary unit for example or value (as dollar/chronomere), client also can select the other unit (as cpu cycle or the network bandwidth) that can be worth based on the reflection of different sets of values.In some embodiments, currency can be used the calculated capacity (as resource slot) of multiple unit or the calculated capacity of other unit that can be defined by the user is bidded.Such as, to bid the amount (amount as computation period) that can comprise currency bid amount and required calculated capacity.
In one embodiment, user-defined pond generates service 180 can provide API, for the selection promoted the parameter of privately owned trade market.API can determine which client and pond generate communication for service and generate the request creating privately owned trade market.During processes said request, user-defined pond generates service 180 can be assigned to described request by ID and the ID following the trail of the privately owned trade market of asking.
In one embodiment, the client's (such as, having the university client that supplier's network can be utilized the licensee that university's account makes a change) only identified by single authorized user can allow single authorized user can set up privately owned trade market.If there is multiple licensee, so generation service in pond can require single specified account to be identified as can set up privately owned trade market.User-defined pond generates service 180 can license to user based on the voucher such as presented by user by specified account.User-defined pond generates the traceable privately owned trade market generation activity of service 180 to reach billing purpose.User-defined pond generates which user of service 180 also in the traceable user bidded to example in privately owned trade market has been bidded to example and has been assigned with example, to make client's this activity traceable.User-defined pond generate service 180 can based on each user, to use at every turn, to bid or other metered scheme follow the trail of service condition at every turn, and provide information for charging to client and follow the trail of object.
In one embodiment, in process with when meeting bid request, in response to bid request, user-defined pond generates service 180 can embed the ID of bidding user as the metadata that can be used to identify bidding user.Described metadata can comprise the field with user ID, and described user ID can be included in the station message recording.Therefore, user-defined pond generates the client of the privately owned trade market of the traceable request of service 180, and identify in privately owned trade market to the user that example is bidded.
In some embodiments, key assignments can be used to match follow the trail of and the request to privately owned trade market or the data or attribute that are associated of bidding to the resource slot in privately owned trade market.User-defined pond generates the data record of the traceable link of service 180, and the data record of described link comprises the pointer of the unique identifier of data and the position of data itself or data.Such as, open type data structure can be used to collect user data, pond ID as user-defined in <, user ID, request ID>.
In some cases, client can have the more than one account of supplier's network, and therefore has multiple Resources allocation pond.Such as, client can have for Section 1 object first account, and has the resource slot be associated distributing to the first account.Client also can have for Section 2 object second account, and has the resource slot be associated distributing to the second account.In one embodiment, can to client provide select the resource slot that is associated with the first account or the second account and for single privately owned trade market distribute selected by the ability of resource slot.Therefore, the resource from multiple resource pool can be mixed in a user-defined pond and to mate with described user-defined pond by client.
In some cases, two or more clients can select to make resource joint and ask the single privately owned trade market that can be accessed by the user be associated with two or more clients.Therefore, organizational structure and enterprise aggregated resources can create privately owned trade market between entities.In one embodiment, user-defined pond generates service 180 and the account of two or more clients can be linked together, to create the pond of unique user definition.User-defined pond generates service 180 also can resource-based actual service condition by following the trail of the user and these users that bid to resource and contacting of client follows the trail of service condition.The pond of unique user definition can by being authorized to upgrade with the single client that the pond defined unique user makes a change.As an alternative, extra client can be authorized to make a change the pond of unique user definition.Similarly, the policy that single client can be authorized to being associated with the pond that unique user defines makes a change.As an alternative, the policy that extra client can be authorized to being associated with the pond that unique user defines makes a change.
In one embodiment, user-defined pond generate the function of service 180 can via can to install on the computational resource of client and the software performed provides.Such as, client can have and/or operate themselves computing basic facility, and its computational resource is configured to multiple resource slot, and described multiple resource slot is configured to trustship calculated examples.Pond generates the bound of parameter face that service software can be provided for selecting the resource slot of client, select the pond of user's selection as described above, and creates the pond of described user selection.Pond generates the request/bid and follow the trail of use information for tracking/billing purpose that service software also can promote for described resource slot.
With reference to figure 7, show, according to of the present disclosure, point example being used in the resource of privately owned trade market and the entity of user is shown.The entity A that may correspond to the entity A in Fig. 6 can have internal user A, B, C, D, E and F of being associated.Reserved example A, B, C and D of the reserved example of entity A also may be distributed in user-defined pond 620 by entity A.Entity A also can be example 1 and the example 2 of the stock example of user-defined pond 620 allocation entity A.Entity B can have internal user N, P, R, S, T and U of being associated.Entity B also can be example K and the example L of the reserved example of user-defined pond 650 allocation entity B.User B also can be example 8 and the example 9 of the stock example of user-defined pond 650 distributing user B.Entity A also can authorize its internal user A, B, C and D (subset 710) to access its user-defined pond 620.Entity B also can authorize its internal user R, S and T (subset 720) to access its user-defined pond 650.The internal user authorized now can be bidded to the example in its respective user-defined pond of access.In addition, entity A and entity B can be selected to make resource joint and ask user-defined pond 620 and user-defined pond 650 to be unified into the pond of unique user definition.In one embodiment, user A, B, C and D of entity A and user R, S and T of entity B can bid to the pond that the unique user combined defines.
In some cases, the request to resource slot produced by user can exceed the capacity of the resource slot being assigned to user-defined pond by client.Such as, client may underestimate the demand of resource slot and select to be not enough to many resource slots in the user-defined pond of practical requirement.In one embodiment, supplier's network can provide to client and allow to use untapped capacity to meet the option of this excess capacity demand.Such as, option can be provided to use untapped capacity to meet exceeded capacity, described untapped capacity has distributed to client but unallocated to user-defined pond.As another example, the option using the untapped capacity provided by supplier's network to meet exceeded capacity can be provided.Supplier's network can be collected the charges to described service.By providing this ability, instead of refuse user's request due to off-capacity, client can be entered by access or " burst " as required and be continued to provide the access to user-defined pond by ISP or the extra capacity that provided by client's untapped capacity of client (use).This ability only can be useful when there is peak demand once in a while, when peak demand, may be that cost is more effective concerning buying burst capacity client instead of making extra resource slot be exclusively used in user-defined pond.In some embodiments, about by from supplier's network or can based on the policy by customer selecting from the decision-making of the non-partition capacity burst excess capacity of client.Such as, client given client can be willing to the ceiling price meaning excess capacity payment.Client also can specify maximum budget, can meet burst request until reach maximum budget in described maximum budget.
Turn to Fig. 8, show the example in the user-defined pond being configured to access bursts capacity.User-defined pond 800 can comprise reserved example 801,802,803,804 and 805 and stock example 806,807 and 808.At spike activity time durations, the request that user-defined pond 800 can receive than the resource being assigned to user-defined pond can be used to provide more is asked.In one embodiment, the policy of reserved Instances Pool 810 for burst capacity may be accessed in the user-defined pond 800 of built vertical permission.Such as, as shown in the figure, reserved example groove 811,812 and 813 can be assigned to user-defined pond 800 for burst capacity.Similarly, described policy can allow user-defined pond 800 access as required Instances Pool 820 (comprising example 821,822 and 823 as required) and stock Instances Pool 830 (comprising stock example 831,832 and 833) for burst capacity.
Fig. 9 is the system diagram that illustrative operatinr environment 900 is shown, described illustrative operatinr environment 900 comprises the some assemblies for realizing privately owned trade market.Environment 900 can comprise computing platform 902.Computing platform 902 can be realized by computational resource supplier, can utilize computational resource to dispose and perform Distributed Application to make client 920.
The computational resource provided by computing platform 902 can comprise the resource of various kind, as data processing resources, data storage resource, data resource communication etc.The computational resource of often kind of kind can be general, or may be used in many customized configurations.Such as, the unit that the data processing resources provided by computational resource supplier can be discrete or the form of example 904 become available.Each example 904 can represent the data processing resources (being called as special lease example in this article) of private host computing machine 906, or each example 904 can represent the virtual machine instance performed on host computer 906, described virtual machine instance also can be called as shares lease example.
Host computer 906 can represent general multiprocessor servers device, special hardware unit etc.As discussed above, the example 904 of all kinds and configuration can become available.Such as, the each available example 904 of data processing resources can be specific size (as small-sized, medium and large-scale), thus represent and form example or distribute to the physics of example and/or the various combination of virtual resource, as the quantity etc. of the quantity of processor and type, the amount of storer, the size of local storage and speed, networking address or communication port.Example 904 also can be configured to have particular platform, as being arranged on specific OS on example and/or supervisory routine.Example 904 also can utilize installed application specific software assembly (as web server software, database management language, portal software, specific runtime environment or platform etc.) to become available.
As described above, example also can be available in specific availability district 908A and 908B.As discussed above, availability district 908 can represent concrete physical location, as data center or underlying host computing machine 906 and other physics of calculation element and/or the logic groups of supporting the example 904 provided by computing platform 902.To there is provided in different size and example 904 in different availability district 908 being applied in of can allowing to dispose is geographically dispersion, thus improve terminal user's performance and make whole application and the faulty insulator in a concrete position or district.Such as, client 920 can select to dispose many small-sized examples 904 some functions (as Web server) for application across multiple availability district 908, disposes single large-scale example 904 for other function (such as database server) simultaneously.In addition, for geopolitics reason, client 920 also may require to carry out trustship example 904 by the host computer 906 in specific geographic position.
Terminal user 950 can use end-user computer system 952 to be visited the function of the application performed on the example 904 distributed by one or more network 944.Network 944 can represent the combination of LAN (Local Area Network) (LAN), wide area network (WAN), internet and/or any other networking infrastructures as known in the art, host computer 906 in computing platform 902 is connected to end-user computer system 952 by described networking infrastructures, is connected to each other by described host computer 906 and is connected to other computational resources.End-user computer system 952 can represent that personal computer (PC), desktop workstations, laptop computer, notebook computer, personal digital assistant (PDA), E-book reader, game console, Set Top Box, consumer electronic device, server computer maybe can be connected to network 944 and any other calculation element communicated with the host computer 906 in computing platform 902.
Wish that the client 920 of the resource on access computation platform 902 can use subscriber's computer system 922 to connect computing platform by network 944 similarly and configures and manage the computational resource provided by computing platform.In this regard, computing platform 902 can comprise many application servers 924, and described application server 924 provides various management service for the execution etc. bought and the example 904 of service data process resource and/or other computational resources, assembly across bought example 904 application deployment, supervision and management are applied to client 920.As when end-user computer system 952, subscriber's computer system 922 can represent that PC, desktop workstations, laptop computer, notebook computer, PDA, E-book reader, game console, Set Top Box, consumer electronic device, server computer maybe can be connected to network 944 and any other calculation element communicated with the application server 924 in computing platform 902.
Application server 924 can represent the server computer of standard, database server, Web server, the network equipment, desk-top computer, other calculation elements and its any combination.Application server 924 can perform number of modules to provide management service.Described module can perform or perform across the multiple application servers in computing platform 902 in a parallel fashion on single application server 924.In addition, each module can be made up of many sub-components that other calculation elements on different application servers 924 or in computing platform 902 perform.Described module can be embodied as software, hardware or both any combinations.
Application server 924 can perform instance management module 926.Instance management module 926 can allow the example 904 of client 920 purchase and configuration data process resource or other computational resources, administers and maintains bought example 904 etc.Example 904 can comprise the example obtained by various pattern, such as reserved example as described above, stock example and example as required.Can by for each client 920 buy the configuration of example 904 and correspondence and status information is stored in client/instance management data 928.Client/instance management data 928 can be stored in database 930 or concerning in available other data-storage systems of the application server 924 in computing platform 902.
The example of many particular types and configuration is reserved the ability reaching time limit (as 1 year or 3 years) for client provides by reserved example.Reserved example can represent be configured to specify and be placed on the practical examples of data processing resources that stand-by state starts for client 920 at future time and dispose, or reserved example 904 can represent and reserves total volume for carrying out rapid configuration and startup when needed by computational resource supplier.Such as, when application deployment, client 920 can buy and startup has particular type and configuration (such as, size, platform, rental period, availability district etc.) many examples as required 904 to support the instant availability applied, and can buy and start and there is identical or similar type and configuration many reserved example amplify described application for future in response to the application demand such as increased or capacity requirement.
Client 920 can be used in the Web browser application that subscriber's computer system 922 performs and visit the user interface (UI) presented by Web service by instance management module 926, to perform the configure and maintenance of the example 904 that client 920 buys.Client 920 can be used in the Web browser application that subscriber's computer system 922 performs and visit the UI presented by Web service by pond generation module 946, described Web service lead to as user-defined pond as discussed above client 920 to buy in example 904 one or more.In addition or as an alternative, instance management module 926 or pond generation module 946 can be exposed application programming interface (API) 932, described API932 and can be visited by network 944 by the stand-alone utility performed on subscriber's computer system 922.Also it is contemplated that other mechanism of the configure and maintenance service for access instances administration module 926 or pond generation module 946, comprise remote procedure call, Web service, remote document access, proprietary client-server architecture structure etc. based on SOAP.
In some embodiments, instance management module 926 can allow client 920 to buy example and reserved example as required.Can buy immediately and start example as required, thus allowing the assembly of rapid deployment application.Owing to passing in time for the demand of application or the capacity requirement of application and changing, also can as required manually or automatically added by automatic expansion or remove example as required.Such as, Case-based Reasoning 904 and/or the hourage of the operation of real resource used, client 920 can bear and its ever-increasing use cost that example is relevant as required.
If be use special purchase/bid process to be supplied to its internal user via privately owned trade market as described above at the example 904 of the client 920 of the deployment place purchase of application, so client 920 can determine that its calculated capacity can more effectively be used.Such as, the calculating of the user of client 920 needs to pass in time and to change, thus needs the data processing example 904 of different size or platform at different time.Similarly, can change to the aggregate demand of resource, thus needs are than the example in the more example 904 of expecting at first or needs and initial different availability district 908 of expecting.Client 920 may wish by the example 904 " sale " to its internal user, more effectively to use the calculated capacity that provided by the example 904 and to provide larger return to the original capital of bought example.In this regard, pond generation module 946 also can allow client 920 to select many examples 904 to distribute to privately owned trade market.Instance management module 926 can store the information about example 904, selects described example 904 for the privately owned trade market in database 930 or the reserved example list 934 that can be used in other data-storage systems of the application server 924 in computing platform 902 and stock example list 940.
In one embodiment, many examples 904 can be delegated to the addressable user-defined pond of one group of internal user or privately owned trade market of being specified by client 920 by client 920.In one embodiment, privately owned trade market can realize privately owned spot market, and some being configured to be used in the feature used in spot market as described above of described privately owned spot market provide the access to example.But privately owned trade market can be limited to designated user or the internal user of client 920.In addition, privately owned trade market can use one group of specific parameter being selected by client 920 and feature to operate.
In one embodiment, pond generation module 946 can allow client 920 to buy user-defined pond or privately owned trade market.Can buy and start user-defined pond to bid to the example being assigned to user-defined pond to allow the user specified by client 920.Client 920 also can as required manually or automatically added by Distursement or remove user-defined pond.Such as based on the quantity in user-defined pond and user-defined pond and/or the hourage of the operation of real resource that uses, client 920 can bear the relevant nonrecurring charge in pond user-defined to it and/or ever-increasing use cost.
Application server 924 also can perform example list module 936.Example list module 936 can allow the user identified by client 920 to browse to distribute to the example 904 of privately owned trade market and bid to it.The user of client 920 can be used in the Web browser application that subscriber's computer system 922 performs and visit the user interface (UI) presented by Web service by example list module 936, to browse and to select the example 904 of confession " purchase " or " the bidding " of listing in privately owned trade market.In addition or as an alternative, example list module 936 can expose API932, described API932 can be visited by network 944 by the stand-alone utility performed on subscriber's computer system 922.
Reserved example list 934 in example list module 936 accessible database 930 and stock example list 940 determine availability and the price of the example of satisfied specific type and configuration requirement (such as, size, platform, rental period, availability district etc.).Example list module 936 also can affect the example allocation in privately owned trade market.The data of each " sale " about example to be also stored in by privately owned trade market in the privately owned trade market historical data 938 in database 930 or other data-storage systems by reserved example list module 936.Client 920 or computational resource supplier can use privately owned trade market historical data 938 to analyze metering data about the example allocation by privately owned trade market.
In some embodiments, because example becomes available, client 920 can use one or more example increasing additional type in above-mentioned module.At least some in above-mentioned functions can perform on the example of one or more client, or can perform on the example of supplier's network or other resources.
In one embodiment, can be provided for user the user interface selecting the parameter be associated for the one or more and selection in the user resources groove of privately owned trade market.Such as, user can calling party interface, user interface as shown in Figure 10.In one embodiment, client can use the UI presented by the instance management module 9926 of Fig. 9 to select the example will listed in privately owned trade market.Such as, as shown in Figure 10, UI100 can be presented to client 920 by instance management module 926 or another module in cloud computing platform 902 in the window 102 of Web browser or other client application performed on subscriber's computer system 922.UI100 can comprise the reserved example list 104 of the reserved example of the example 904 listing current Fig. 8 had by client 920, described reserved example list 104 comprises type and the configuration parameter of each reserved example, as availability district, platform, size, rental period etc.Reserved example list 104 also can comprise original maturity and until the reserved example overdue residue time limit of each reserved example of example 904.Reserved example list 104 also can comprise the current state of the reserved example of example 904, if as reserved example whether enliven, the title etc. in the user-defined pond that whether expires, whether has been listed in user-defined pond.
UI100 also can comprise selection UI control (check box UI control 106 as shown in Figure 9), described selection UI control allows client 920 to select reserved one or more reserved example shown in example list 104 to be used for listing in privately owned trade market, after described selection, client 920 can select command UI control, as shown in Figure 9 establishment list UI control 108.Also can realize the additive method being selected the reserved example for the example 904 listed in reserved example trade market by UI100, described method comprises such as with the row in mouse or the reserved example list 104 of other input controls selection with from the context menu select command UI control presented for selected row by instance management module 926.
After selecting the option for creating privately owned trade market, instance management module 926 can receive the information of the parameter for privately owned trade market.Such as, as shown in figure 11, when selecting the user-defined pond UI control 118 of the establishment in the UI110 shown in Fig. 9, UI1100 can be presented to client 820 by another module in instance management module 926 or cloud computing platform 902.Such as, UI1100 can be presented in the window 1102 of Web browser or other client application performed on subscriber's computer system 822.UI1100 can comprise the summary of privately owned trade market, and described summary comprises privately owned trade market (user-defined pond) character and parameter (such as, request type, price competing method, currency etc.) of bidding.UI1100 also can comprise user and select UI control 1102, thus allows client 820 to select the maximum of the user that can join in privately owned trade market.
UI1100 also can comprise many registration UI control 1104A-1104N, thus allows client 920 to specify the user that can join in privately owned trade market.According to an embodiment, client 920 can list the unique identifier of the user for addressable trade market, name and organizational structure.These users may be previously registered and be stored as the user be associated with client 920.User profile can be used to determine the authorized user that bids to the resource in privately owned trade market and can be used to follow the trail of service condition for billing purpose.One or more user also removes by using UI control 1104A-1104N to delete user by client 920.
In some embodiments, establishment and the management of API for promoting user-defined pond can be provided.API can be configured to receive electronic information, described electronic information by pointer to distributes calculation resources in supplier's network and the identifier code of request in user-defined pond creating computational resource.In response to one that receives in electronic information, API can send the second electronic information of indication information, and described information indicates one group of resource slot being associated with client and pricing policy and one or more users of specifying for user-defined pond to be associated.
Figure 12 is the data structure diagram that the many data elements about user-defined pond be stored in user-defined pond record 1200 are shown.It will be understood by those skilled in the art that the data structure shown in figure can represent data file, database table, the object be stored in computer memory, program structure or any other data capsule of being usually known in the art.The each data element be included in data structure can represent the data of any other unit in row in one or more fields in data file, database table or multiple row, one or more attributes of object, one or more member variable of program structure or the data structure that is usually known in the art.Described implementation is the problem selected and can be depending on the technology of the computing system realizing data structure institute foundation, performance and other requirements.
Each user-defined pond record 1200 can comprise Customer ID 1202, and described Customer ID 1202 identifies the client 820 of the cloud computing platform 802 creating privately owned trade market.According to an embodiment, each user-defined pond record 1200 also can comprise example ID 1204, and described example ID 1204 identifies the particular instance 804 that can be associated with bid request.Example ID 1204 may correspond in such as about the information of the example 104 be stored in client/instance management data 828.In this embodiment, each example 104 that will be included in privately owned trade market can have the user-defined pond record 1200 be associated in database 830.
In some embodiments, in addition or as an alternative, user-defined pond record 1200 can comprise the type and configuration parameter that describe the example 1204 be associated, comprises size 1206, platform 1208, rental period 1210, availability district 1212, example types 1214 etc.User-defined pond record 1200 also can comprise the user ID 1216 of the identity indicating the specific user be associated with described record.As above about as described in Figure 10, when creating user-defined pond, user ID 1216 may correspond to the identifier information in being provided by client 820.
User-defined pond record 1200 also can comprise the information about request ID1218, thus corresponds to the asking price 1219 of the specific request for example and the amount bid corresponding to described request.User-defined pond record 1200 also can comprise about one or more information using record 1220A-1220N (usual also referred to as " service condition 1220 ") and station message recording 1222A-1222N (usual also referred to as " charging 1222 ") herein herein.As above also about Figure 10 discuss, user after successfully the example in privately owned trade market being bidded may have access to example.Can for the station message recording 1222A-1222N of user tracking service condition 1220A-1202N for billing purpose.Should understand, except shown in Figure 12 and described above except those, user-defined pond record 1200 can comprise and realizes by other modules of instance management module 926, example list module 936 and/or cloud computing platform 902 the extra data element that privately owned trade market uses.
In extra embodiment, UI or API932 can be supplied to client 920 and/or subscriber's computer system 9922 by other modules in instance management module 9926 or cloud computing platform 0902, if described UI or API932 can allow client to revise its user-defined pond, check the state in user-defined pond and/or no longer need to use user-defined pond delivery mechanism to provide example, deletes user-defined pond.
Figure 13 illustrates the exemplary operations program for distributes calculation resources in supplier's network.In embodiments, the mechanism for creating user-defined pond can be provided by service (as the user-defined pond in Fig. 1 generates service 180).Described running program can be realized in the system comprising one or more calculation element.One or more calculation element can comprise multiple resource slot, and each resource slot is configured to trustship calculated examples.With reference to Figure 13, operation 1300 starts to carry out running program.Can be operation 1302 after operation 1300.Operation 1302 illustrates distributes to multiple entity according to the first pricing policy by multiple resource slot.Described entity may correspond to client in supplier's network or user, as university or other mechanisms.First pricing policy can be by the pricing policy of supplier's Web vector graphic, to sell and Resources allocation groove and other resources in supplier's network.
Can be operation 1304 after operation 1302.Operation 1304 illustrates and receives following instruction: at least one in the resource slot be associated with the first instance in multiple entity is associated with the second pricing policy.Indicated resource slot can by other entities access.In one embodiment, the second pricing policy and other entities can be specified by first instance.Subset may correspond in being specified one group of resource slot for distributing to privately owned trade market by client.Second pricing policy may correspond to the policy selected in the user for resource slot being supplied to other entities.Other entities may correspond to the user of the resource slot in the addressable privately owned trade market of being specified by client.
Can be operation 1306 after operation 1304.Operation 1306 illustrates determines that first instance has indicated indicated resource slot to reach the standard grade.
If indicated resource slot should be reached the standard grade, so operating after 1306 can be operation 1308, and described operation 1308 illustrates distributes to other entities according to the second pricing policy by indicated resource slot.
Figure 14 illustrates the exemplary operations program for distributes calculation resources in supplier's network.In embodiments, the mechanism for distributes calculation resources can be provided by service (as the user-defined pond in Fig. 1 generates service 180).Described running program can be realized in the system comprising one or more calculation element.One or more calculation element can comprise multiple resource slot, and each resource slot is configured to trustship calculated examples.With reference to Figure 14, operation 1400 starts to carry out running program.Can be operation 1402 after operation 1400.Operation 1402 illustrates the multiple resource slots distributing to multiple entity according to the first pricing policy maintenance.
Can be operation 1404 after operation 1402.Operation 1404 illustrates and receives following first instruction: one or more and the second pricing policy in the resource slot be associated with the first instance in multiple entity is associated and can by point group access of other entities.
Can be operation 1406 after operation 1404.Operation 1406 illustrates and receives following second instruction: one or more and the second pricing policy in the resource slot be associated with the second instance in multiple entity is associated and can by point group access of other entities.
Can be operation 1408 after operation 1406.Operation 1408 illustrates to be determined one or more the carrying out in the resource slots that are one or more and that be associated with second instance in the resource slot be associated with first instance to be combined and reach the standard grade.If resource slot should be reached the standard grade, so operating after 1408 can be operation 1410, and described operation 1410 illustrates is undertaken combining by one or more in the resource slots that are one or more and that be associated with second instance in the resource slot be associated with first instance and allow the grouping of other entities to bid to combined resource slot according to the second pricing policy.
Figure 15 illustrates the exemplary operations program for distributes calculation resources in supplier's network.In embodiments, the mechanism for creating user-defined pond can be provided by service (as the user-defined pond in Fig. 1 generates service 180).Described running program can be realized in the system comprising one or more calculation element.One or more calculation element can comprise multiple resource slot, and each resource slot is configured to trustship calculated examples.With reference to Figure 15, operation 1500 starts to carry out running program.Can be operation 1502 after operation 1500.Operation 1502 illustrates and one or more resource slot is associated with the groups of users of specifying, and described groups of users of specifying carrys out the one or more resource slot of request access through allowing the pricing policy selected according to user.In one embodiment, the pricing policy selected according to supplier can select one or more resource slot from the resource slot be associated with entity.
Can be operation 1504 after operation 1502.Operation 1504 illustrates and receives following instruction: the request for the one or more resource slot of access received exceedes the calculated capacity of one or more resource slot.
Can be operation 1506 after operation 1504.Operation 1506 illustrates to be determined to store for the policy of dispense needles to the excess calculation requests for capacity of one or more resource slot.
If store for the policy of dispense needles to the excess calculation requests for capacity of one or more resource slot, can be operation 1508 after so operating 1506, described operation 1508 illustrates that the calculated capacity outside allocation allows to meet the request for access.
Embodiment of the present disclosure can describe in view of following clause:
1., for a system for distributes calculation resources in supplier's network, described system comprises:
One or more calculation element, described one or more calculation element comprises one or more resource slot, and each resource slot is configured to trustship calculated examples;
At least one storer, stores the computer instruction at least impelling below described system execution operation when the one or more processors by described system perform at least one storer described:
According to the first pricing policy, multiple resource slot is distributed to multiple entity;
Receive being associated with the second pricing policy at least partially and the instruction can accessed by one or more users of described first instance identification of the described resource slot be associated with the first instance in described multiple entity, described second pricing policy is specified by described first instance; And
According to described second pricing policy, the resource slot of instruction is distributed to described one or more user.
2. the system according to clause 1, it also comprises computer-readable instruction, and described computer-readable instruction impels described system at least to allow to be bidded according to the resource slot of described second pricing policy to described instruction by described one or more user of described first instance identification when the described one or more processors by described system perform.
3. the system according to clause 2, it also comprises computer-readable instruction, and described computer-readable instruction impels described system to be at least provided for the user interface allowing to be bidded by the resource slot of described one or more user to described instruction of described first instance identification when the described one or more processors by described system perform.
4. the system according to clause 1, it also comprises computer-readable instruction, and described computer-readable instruction impels described system to be at least provided for promoting the user interface of selection of the resource slot to described instruction, the described one or more user by described first instance identification and described second pricing policy when the described one or more processors by described system perform.
5., for a method for distributes calculation resources in supplier's network, described method comprises:
Comprising multiple calculation element and the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, according to first group of pricing policy, multiple resource slot is being associated with first user; And
Allow one or more in described user associated resources groove according to second group of pricing policy identification and identify other the described one or more users allowed in the described associated resources groove of access, described second group of pricing policy is specified by described user.
6. the method according to clause 5, it also comprises impelling distributes to other users described according to described second pricing policy by described one or more in described associated resources groove.
7. the method according to clause 5, it also comprises and allows other users described to bid to described one or more in described associated resources groove according to described second pricing policy.
8. the method according to clause 5, it also comprises described one or more, the user interface that is allowed to access the instruction of described one or more other users described in described associated resources groove and described second pricing policy that provide and can operate to receive in described associated resources groove.
9. the method according to clause 5, wherein said second pricing policy instruction is used for the currency of Gains resources groove, minimum/the highest currency level or bidding algorithm.
10. the method according to clause 9, wherein said currency is relevant to monetary unit.
11. methods according to clause 9, wherein said currency relates to cpu cycle, memory storage, storer or the network bandwidth.
12. methods according to clause 7, wherein said bid to comprise cpu cycle or the network bandwidth are bidded.
13. methods according to clause 5, it is described one or more that it also comprises that some that allow described user to forbid in other users described access in described associated resources groove.
14. methods according to clause 5, what wherein saidly allow to comprise the described one or more request distributed in described associated resources groove that receives, described request is associated with request identifier and makes in described associated resources groove described is one or morely associated with pond identifier.
15. methods according to clause 5, it also comprises the described one or more charge information determined in the described associated resources groove of access.
16. methods according to clause 7, according to described second pricing policy, it also comprises determines which user in other users described has carried out bidding and determining to carry out collecting charging information based on described at least one in described one or more in described associated resources groove.
17. methods according to clause 16, it also comprises makes described other users determined be associated with user identifier, and comprises the described user identifier with the record be associated with described other users determined.
18. methods according to clause 17, wherein said record is formed as key-value pair.
19. methods according to clause 7, the wherein said ceiling price comprised for the one or more payments in described associated resources groove of bidding.
20. methods according to clause 19, wherein when described ceiling price exceedes set price, by of distributing in other users described in described one or more in described associated resources groove.
21. methods according to clause 20, wherein said set price is based on the described one or more Supply and Demand in described associated resources groove.
22. methods according to clause 21, wherein said set price can be selected by described user.
23. 1 kinds of non-transitory computer-readable storage media, described non-transitory computer-readable storage media stores computer-readable instruction thereon, and described computer-readable instruction is included in the instruction at least impelling following operation when one or more calculation element is performed:
Comprising multiple calculation element and the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, generate and allow user identify according to pricing policy one or more resource slot of being associated with described user and identify the user interface being allowed to other users accessing the described one or more resource slot be associated with described user, described pricing policy is specified by described user; And
Described computing environment is impelled at least to allow other users described to bid to the described one or more resource slot be associated with described user according to described pricing policy.
24. non-transitory computer-readable storage media according to clause 23, wherein said pricing policy comprises for the currency of Gains resources groove, price level or bidding algorithm.
25. non-transitory computer-readable storage media according to clause 24, wherein said bidding algorithm comprises rise progressively auction and price of price and to successively decrease the one in auctioning.
26. non-transitory computer-readable storage media according to clause 23, it is included in the instruction at least impelling when one or more calculation element is performed and determine for allowing described other users pair charge information that the described one or more resource slot be associated with described user is bidded.
27. non-transitory computer-readable storage media according to clause 26, its be included at least to impel when one or more calculation element is performed according to described pricing policy determine in other users described which one or more in the described one or more resource slot be associated with described user to have been bidded and based on the described instruction determining charge information.
28. 1 kinds of systems for distributes calculation resources in supplier's network, described system comprises:
One or more calculation element, described one or more calculation element comprises one or more resource slot, and each resource slot is configured to trustship calculated examples;
At least one storer, stores the computer instruction at least impelling below described system execution operation when the one or more processors by described system perform at least one storer described:
The multiple resource slots distributing to multiple entity are safeguarded according to the first pricing policy;
Receive one or more resource slot of being associated with the first instance in described multiple entity to be associated with the second pricing policy and first indicating of can being accessed by one or more user,
Receive one or more resource slot of being associated with the second instance in described multiple entity to be associated with described second pricing policy and second indicating of can being accessed by described one or more user; And
According to described second pricing policy, the described one or more resource slot be associated with described first instance and one or more resource slots of being associated with described second instance are distributed to described one or more user.
29. systems according to clause 28, it also comprises computer-readable instruction, and described computer-readable instruction impels described system at least to allow described one or more user to bid to the described one or more resource slot be associated with described first instance and one or more resource slots of being associated with described second instance according to described second pricing policy when the described one or more processors by described system perform.
30. systems according to clause 28, it also comprises computer-readable instruction, described computer-readable instruction impels described system to be at least provided for allowing described one or more user pair described one or more resource slot be associated with described first instance and one or more resource slots of being associated with described second instance to bid user interface when the described one or more processors by described system perform.
31. systems according to clause 28, it also comprises computer-readable instruction, and described computer-readable instruction impels described system to be at least provided for promoting the user interface of the selection to the described one or more resource slot be associated with described first instance and the one or more resource slots be associated with described second instance, described one or more user and described second pricing policy when the described one or more processors by described system perform.
32. 1 kinds of methods for distributes calculation resources in supplier's network, described method comprises:
Comprising multiple calculation element and the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, according to first group of pricing policy, one or more resource slot is associated with first user, and according to described first group of pricing policy, one or more resource slot is associated with the second user;
Allow at least one resource slot that other users that described first user is associated with described first user according to the second pricing policy identification, that can specify by a group access; And
Allow at least one resource slot that other users that described second user is associated with described second user according to described second pricing policy identification, that can specify by described a group access.
33. methods according to clause 32, wherein said second pricing policy is selected by described first user or described second user.
34. methods according to clause 32, it also comprises and allows described second user to identify the extra user that may have access at least one resource slot described be associated with described first user or at least one resource slot be associated with described second user in other users described.
35. methods according to clause 32, it also comprises at least one that allow described first user or described second user to forbid in described one group of other user specified and accesses at least one resource slot described be associated with described first user or at least one resource slot be associated with described second user.
36. methods according to clause 32, it also comprises and allows described first user or described second user to upgrade described second pricing policy.
37. methods according to clause 32, it also comprises and at least one resource slot described in being associated with described first user and at least one resource slot described in being associated with described second user is combined and allow described one group of other user specified to carry out at least one in combined resource groove described in request access according to described second pricing policy.
38. methods according to clause 32, it also comprises the user interface of instruction providing and can operate to receive at least one resource slot described be associated with described first user, at least one resource slot described be associated with described second user, described one group of other user specified and described second pricing policy.
39. methods according to clause 37, wherein said request comprises bids to the resource slot in described combined resource groove.
40. methods according to clause 32, wherein said second pricing policy comprises for the currency of Gains resources groove, price limit or bidding algorithm.
41. methods according to clause 32, the described first user of wherein said permission and described second user of described permission comprise: receive at least one resource slot described of distributing and being associated with described first user or the request of at least one resource slot described in being associated with described second user, described request is associated with request identifier and at least one resource slot described in making to be associated with described first user or at least one resource slot described in being associated with described second user are associated with pond identifier.
42. methods according to clause 32, its also comprise determine to be associated with described first user for access described in the charge information of at least one resource slot or at least one resource slot described in being associated with described second user.
43. methods according to clause 39, according to described second pricing policy, it also comprises determines which user in described one group of other user specified has carried out bidding and determining to carry out collecting charging information based on described at least one in the resource slot be associated with described first user or at least one resource slot of being associated with described second user.
44. methods according to clause 43, it also comprises makes described other users determined be associated with user identifier, and comprises the described user identifier with the record be associated with described other users determined.
45. methods according to clause 42, wherein collect described charge information according to charging policy, combine for by least one resource slot described in being associated with described first user and at least one resource slot described in being associated with described second user.
46. 1 kinds of non-transitory computer-readable storage media, described non-transitory computer-readable storage media stores computer-readable instruction thereon, and described computer-readable instruction is included in the instruction at least impelling following operation when one or more calculation element is performed:
Comprise multiple calculation element and the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, generate the user interface allowing following operation:
One or more resource slots that first user is associated with described first user according to pricing policy identification, the described one or more resource slot be associated with described first user can by point group access of other users;
One or more resource slots that second user is associated with described second user according to described pricing policy identification, the described one or more resource slot be associated with described second user can by point group access of other users;
The grouping of other users wherein said and pricing policy are selected by described first user or described second user; And
Described computing environment is impelled at least to allow the grouping of other users described to bid according to the described pricing policy pair described one or more resource slot be associated with described first user and one or more resource slots of being associated with described second user.
47. non-transitory computer-readable storage media according to clause 46, wherein said pricing policy comprises for one or more currency of Gains resources groove, minimum/the highest pricing levels or/pricing algorithm of bidding.
48. non-transitory computer-readable storage media according to clause 47, wherein saidly to bid/pricing algorithm comprises rise progressively auction and price of price and to successively decrease the one in auctioning.
49. non-transitory computer-readable storage media according to clause 46, it is also included in the instruction at least impelling when one or more calculation element is performed and determine for allowing the grouping of other users described to the charge information that the described one or more resource slot be associated with described first user and one or more resource slots of being associated with described second user are bidded.
50. non-transitory computer-readable storage media according to clause 49, according to described pricing policy, it is included at least to impel when one or more calculation element is performed determines which user in the grouping of other users described has carried out bidding to the described one or more resource slot be associated with described first user or described one or more resource slot of being associated with described second user and based on the described instruction determining to come collecting charging information.
51. 1 kinds of systems for distributes calculation resources in supplier's network, described system comprises:
One or more calculation element, described one or more calculation element comprises one or more resource slot, and each resource slot is configured to trustship calculated examples;
At least one storer, stores the computer instruction at least impelling below described system execution operation when the one or more processors by described system perform at least one storer described:
Make being associated with one or more user at least partially of multiple resource slot, described one or more user is allowed to the described part carrying out multiple resource slot described in request access according to the pricing policy of entity selection, and the pricing policy wherein selected according to supplier to select the described part of described multiple resource slot from the resource slot be associated with entity;
The request receiving the described part for the described multiple resource slot of access be received exceedes the instruction of the calculated capacity of the described part of described multiple resource slot;
In response to described instruction, determine to store for the policy of dispense needles to the excess calculation requests for capacity of the described part of described multiple resource slot; And
Calculated capacity outside allocation allows to meet the described request for access.
52. systems according to clause 51, the pricing policy of the described part of wherein said multiple resource slot, described one or more user and described entity selection is by described entity selection.
53. systems according to clause 51, it is also included in when being performed by described one or more processors of described system and impels described system to be at least provided for the computer-readable instruction of the user interface allowing the grouping of described one or more user to described multiple resource slot to bid.
54. systems according to clause 51, wherein provide described extra calculated capacity from described multiple resource slot.
55. 1 kinds of methods for distributes calculation resources in supplier's network, described method comprises:
Comprising multiple calculation element and the capacity of each calculation element is become one or more resource slot by logic section and in the computing environment be associated with user by one or more resource slot according to first group of pricing policy, allow described user according to second group of pricing policy identify in described one or more associated resources groove at least one and identify other users being allowed to access at least one associated resources groove described;
Receive the instruction that the request for access at least one associated resources groove described received exceedes the calculated capacity of at least one associated resources groove described; And
In response to described instruction, the calculated capacity outside allocation allows to meet the described request for access.
56. methods according to clause 55, it also comprises impelling distributes to other users described according to described second pricing policy by least one associated resources groove described.
57. methods according to clause 55, wherein said second group of pricing policy is selected by described user.
58. methods according to clause 55, it also comprises the policy determining to store for distributing described extra calculated capacity at least one associated resources groove described, wherein according to the described extra calculated capacity of described policy distribution.
59. methods according to clause 55, it also comprises the user interface being provided for allowing other users described to bid at least one associated resources groove described.
60. methods according to clause 55, it also comprises the user interface being provided for promoting surely organizing at least one associated resources groove described, other users and described second of being allowed to access at least one associated resources groove described the selection of valency policy.
61. methods according to clause 55, it also comprises and allows other users described to bid at least one associated resources groove described according to described second pricing policy.
62. methods according to clause 55, wherein said second pricing policy comprises currency, minimum/ceiling price for Gains resources groove or/pricing algorithm of bidding.
63. methods according to clause 61, wherein said allow to comprise receive distribute at least one associated resources groove described request, described request is associated and at least one associated resources groove is associated with pond identifier described in making with request identifier.
64. methods according to clause 55, it also comprises determines for the charge information distributing at least one associated resources groove described and distribute described extra calculated capacity.
65. methods according to clause 61, according to described second pricing policy, it also comprises determines which user in other users described bids to one or more having carried out at least one associated resources groove described and determines to carry out collecting charging information based on described.
66. methods according to clause 65, it also comprises makes other users described be associated with user identifier, and comprises the described user identifier with the record be associated with other users described.
67. 1 kinds of non-transitory computer-readable storage media, described non-transitory computer-readable storage media stores computer-readable instruction thereon, and described computer-readable instruction is included in the instruction at least impelling following operation when one or more calculation element is performed:
Comprising multiple calculation element and the capacity of each calculation element is become one or more resource slot by logic section and in the computing environment be associated with user by one or more resource slot according to first group of pricing policy, generate allow in described user associated resources groove according to second group of pricing policy identification at least one and identify the user interface being allowed to other users accessing at least one associated resources groove described;
Generate the user interface allowing at least one associated resources groove described in other user's request access described; And
In response to receiving the instruction exceeding the calculated capacity of at least one associated resources groove described for the request of accessing at least one associated resources groove described received, the calculated capacity outside described computing environment allocation is impelled to allow to meet the described request for accessing.
68. non-transitory computer-readable storage media according to clause 66, wherein said second group of pricing policy comprises currency, minimum/ceiling price for Gains resources groove or/pricing algorithm of bidding.
69. non-transitory computer-readable storage media according to clause 68, wherein saidly to bid/pricing algorithm comprises rise progressively auction and price of price and to successively decrease the one in auctioning.
70. non-transitory computer-readable storage media according to clause 67, it is included in when one or more calculation element is performed and at least impels described computing environment to determine for permission other users described the instruction of the charge information that at least one associated resources groove described is bidded.
71. non-transitory computer-readable storage media according to clause 67, it is included in when one or more calculation element is performed and at least impels described computing environment to determine the instruction of the policy stored for distributing described extra calculated capacity at least one associated resources groove described, wherein distributes described extra calculated capacity according to described policy.
72. non-transitory computer-readable storage media according to clause 67, wherein distribute described extra calculated capacity from the described one or more resource slot be associated with described user.
Each in the process described in preceding sections, method and algorithm may be embodied in the code module performed by one or more computing machine or computer processor, and is completely or partially automatically carried out by described code module.On the non-transitory computer-readable medium that described code module can be stored in any type or Computer Memory Unit (as hard disk, solid-state memory, CD etc.).Described process and algorithm can partly or wholly realize in special circuit.Disclosed process and the result for the treatment of step can for good and all or otherwise be stored in the non-transitory Computer Memory Unit (such as volatibility or Nonvolatile memory devices) of any type.
Various characteristic sum processes mentioned above can use independently of one another or can combine in every way.All possible combination and sub-portfolio intention fall in the scope of the present disclosure.In addition, some method or procedure block can dispense in some implementations.Method and Process as herein described is also not limited to any specific order, and associated block or state can perform by other suitable orders.Such as, described block or state can perform by the order being different from disclosed especially order, or multiple pieces or state can be combined in single piece or state.Sample block or state serially, concurrently or otherwise perform.Block or state can be added into disclosed example embodiment or can remove from these embodiments.The mode that example system as herein described and assembly can be different from described mode is configured.Such as, compared with disclosed example embodiment, element element can be added, removes or rearrange.
Although should also be clear that various project is shown as store in use in memory or on memory storage, in order to memory management and data integrity, these projects or their part can be transmitted between storer and other memory storages.As an alternative, in other embodiments, some or all in software module and/or system can perform in storer on another device, and communicate with shown computer system via the communication of intercomputer.In addition, in some embodiments, otherwise can realize or some or all in described system and/or module are provided, as realized with the form of firmware and/or hardware or provide at least in part, described firmware and/or hardware include but not limited to integrated circuit, controller (such as, by performing suitable instruction and comprising microcontroller and/or embedded controller), field programmable gate array (FPGA), the complicated programmable logic device (CPLD) etc. of one or more special IC (ASIC), standard.Some or all in described module, system and data structure also can store (such as, as software instruction or structural data) at computer-readable medium as hard disk, storer, network or by suitable driver or the portable media goods that read via suitable connection.Described system, module and data structure also can be used as generated data-signal (such as, a part as carrier wave or other analog or digital transmitting signals) in the upper transmission of various computer-readable transmission medium (comprising based on wireless medium and the medium based on wired/cable), and various ways can be taked (such as, as a part for single simulating signal or multiplexed simulating signal, or as multiple discrete digital data packet or frame).In other embodiments, this kind of computer program also can take other forms.Therefore, the present invention can put into practice by other computer system configurations.
Unless stated otherwise, or understood in addition in context used, otherwise as " can ", "available", " possibility ", " can ", " such as " etc. conditional statement used herein is intended to expression usually: some embodiment comprises some feature, element and/or step, but other embodiments do not comprise these features, element and/or step.Therefore, in any case this conditional statement is not intended to imply that described feature, element and/or step are all that one or more embodiment is necessary usually, or not imply one or more embodiment must comprise for by with not make decision the logic whether comprising these features, element and/or step or whether implement these features, element and/or step in any particular by the situation of author's input or prompting.Term " comprises ", " comprising ", " having " etc. are synonyms, and inclusive ground uses in an open-ended fashion, and does not get rid of extra element, feature, behavior, operation etc.In addition, term " or " use with its inclusive meaning (and not with its removing property meaning), thus make when (such as) is used for connection one list element, term " or " mean in described list element in one, some or all.
Although described some example embodiment, these embodiments have presented only by the mode of example, and are not intended to limit scope of the present invention disclosed herein.Therefore, content is not had to be intended to imply that any special characteristic, characteristic, step, module or square frame are necessary or indispensable in describing above.In fact, novel method as herein described and system can other forms multiple embody; In addition, when not departing from spirit of the present invention disclosed herein, can method and system as herein described be made various omission, be substituted and variation.Appended claims and its equivalent intention contain will drop on this kind of form in scope and spirit of the present invention disclosed herein or amendment.

Claims (15)

1., for a system for distributes calculation resources in supplier's network, described system comprises:
One or more calculation element, described one or more calculation element comprises one or more resource slot, and each resource slot is configured to trustship calculated examples;
At least one storer, at least one storer described has computer instruction stored therein, and described computer instruction at least impels below described system execution operation when the one or more processors by described system perform:
According to the first pricing policy, multiple resource slot is distributed to multiple entity;
Receive being associated and the instruction can accessed by one or more users of described first instance identification with the second pricing policy at least partly of the described resource slot be associated with the first instance in described multiple entity, described second pricing policy is specified by described first instance; And
According to described second pricing policy, the resource slot of instruction is distributed to described one or more user.
2. system according to claim 1, it also comprises computer-readable instruction, and described computer-readable instruction impels described system at least to allow to be bidded according to the resource slot of described second pricing policy to described instruction by described one or more user of described first instance identification when the described one or more processors by described system perform.
3. system according to claim 2, it also comprises computer-readable instruction, and described computer-readable instruction impels described system to be at least provided for the user interface allowing to be bidded by the resource slot of described one or more user to described instruction of described first instance identification when the described one or more processors by described system perform.
4. system according to claim 1, it also comprises computer-readable instruction, and described computer-readable instruction impels described system to be at least provided for promoting the user interface of selection of the resource slot to described instruction, the described one or more user by described first instance identification and described second pricing policy when the described one or more processors by described system perform.
5., for a method for distributes calculation resources in supplier's network, described method comprises:
Comprising many calculation elements and wherein the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, according to first group of pricing policy, multiple resource slot is being associated with first user; And
Allow one or more in described user associated resources groove according to second group of pricing policy identification and identify other the described one or more users being allowed to access in described associated resources groove, described second group of pricing policy is specified by described user.
6. method according to claim 5, it also comprises impelling distributes to other users described according to described second pricing policy by described one or more in described associated resources groove.
7. method according to claim 5, it also comprises and allows other users described to bid to described one or more in described associated resources groove according to described second pricing policy.
8. method according to claim 5, it also comprises provides user interface, and described user interface can operate to receive described one or more, the instruction that is allowed to access described one or more other users described in described associated resources groove and described second pricing policy in described associated resources groove.
9. method according to claim 5, wherein said second pricing policy instruction is used for the currency of Gains resources groove, minimum/the highest currency level or bidding algorithm.
10. method according to claim 9, wherein said currency is relevant to monetary unit, cpu cycle, memory storage, storer or the network bandwidth.
11. methods according to claim 7, wherein said bid to comprise cpu cycle or the network bandwidth are bidded.
12. methods according to claim 5, it is described one or more that it also comprises that some that allow described user to forbid in other users described access in described associated resources groove.
13. methods according to claim 5, what wherein saidly allow to comprise the described one or more request distributed in described associated resources groove that receives, described request is associated with request identifier and makes in described associated resources groove described is one or morely associated with pond identifier.
14. methods according to claim 5, it also comprises the described one or more charge information determined in the described associated resources groove of access.
15. 1 kinds of non-transitory computer-readable storage media, described non-transitory computer-readable storage media has computer-readable instruction stored thereon, and described computer-readable instruction is included in the instruction at least carrying out following operation when one or more calculation element is performed:
Comprising multiple calculation element and wherein the capacity of each calculation element is become in the computing environment of one or more resource slot by logic section, generate one or more resource slot of allowing user to be associated with described user according to pricing policy identification and identify the user interface being allowed to other users accessing the described one or more resource slot be associated with described user, described pricing policy is specified by described user; And
Described computing environment is impelled at least to allow other users described to bid according to the described pricing policy pair described one or more resource slot be associated with described user.
CN201480025509.XA 2013-04-02 2014-04-01 User-defined pond Expired - Fee Related CN105190568B (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US13/855,498 US20140297867A1 (en) 2013-04-02 2013-04-02 Capacity merging for user-defined pools
US13/855,449 2013-04-02
US13/855,449 US9645840B2 (en) 2013-04-02 2013-04-02 User-defined pools
US13/855,498 2013-04-02
US13/855,518 2013-04-02
US13/855,518 US9634958B2 (en) 2013-04-02 2013-04-02 Burst capacity for user-defined pools
PCT/US2014/032514 WO2014165507A1 (en) 2013-04-02 2014-04-01 User-defined pools

Publications (2)

Publication Number Publication Date
CN105190568A true CN105190568A (en) 2015-12-23
CN105190568B CN105190568B (en) 2019-09-13

Family

ID=51659172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480025509.XA Expired - Fee Related CN105190568B (en) 2013-04-02 2014-04-01 User-defined pond

Country Status (5)

Country Link
EP (1) EP2981896A4 (en)
JP (1) JP6494595B2 (en)
CN (1) CN105190568B (en)
SG (1) SG11201508211TA (en)
WO (1) WO2014165507A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10291548B2 (en) 2014-08-08 2019-05-14 Oracle International Corporation Contribution policy-based resource management and allocation system
US9912609B2 (en) 2014-08-08 2018-03-06 Oracle International Corporation Placement policy-based allocation of computing resources

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173637A1 (en) * 2010-01-12 2011-07-14 Eric Jason Brandwine Managing private use of program execution capacity
US20120239739A1 (en) * 2011-02-09 2012-09-20 Gaurav Manglik Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080148342A1 (en) * 2006-12-13 2008-06-19 Cisco Technology, Inc. Management of application specific data traffic
US20120215598A1 (en) * 2011-02-18 2012-08-23 Sony Corporation Marketing and selling contributed resources in distributed computing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173637A1 (en) * 2010-01-12 2011-07-14 Eric Jason Brandwine Managing private use of program execution capacity
CN102934083A (en) * 2010-01-12 2013-02-13 亚马逊科技公司 Managing private use of program execution capacity
US20120239739A1 (en) * 2011-02-09 2012-09-20 Gaurav Manglik Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures

Also Published As

Publication number Publication date
JP6494595B2 (en) 2019-04-03
JP2016519368A (en) 2016-06-30
WO2014165507A1 (en) 2014-10-09
EP2981896A1 (en) 2016-02-10
EP2981896A4 (en) 2016-11-02
CN105190568B (en) 2019-09-13
SG11201508211TA (en) 2015-11-27

Similar Documents

Publication Publication Date Title
US11625738B2 (en) Methods and systems that generated resource-provision bids in an automated resource-exchange system
US11604665B2 (en) Multi-tiered-application distribution to resource-provider hosts by an automated resource-exchange system
US9645840B2 (en) User-defined pools
US11089089B2 (en) Methods and systems for automated resource exchange among computing facilities
US9634958B2 (en) Burst capacity for user-defined pools
US20180063235A1 (en) Automated resource-price calibration and recalibration by an automated resource-exchange system
RU2646323C2 (en) Technologies for selecting configurable computing resources
Li et al. Pricing and repurchasing for big data processing in multi-clouds
US10908938B2 (en) Methods and systems to determine application license costs in a virtualized data center for use in virtual machine consolidation
CN103930863A (en) Discovery-based indentification and migration of easily cloudifiable applications
CN103649941A (en) Application resource manager over a cloud
US11502972B2 (en) Capacity optimization in an automated resource-exchange system
Yeh et al. Economic-based resource allocation for reliable Grid-computing service based on Grid Bank
CN107077301A (en) For the dynamic scaling for the storage volume for storing client file systems
CN105074664A (en) Cost-minimizing task scheduler
WO2016148963A1 (en) Intelligent placement within a data center
CN101911047A (en) Distribute according to service level agreement prediction and management resource
US20170372384A1 (en) Methods and systems to dynamically price information technology services
JP6959512B2 (en) Information processing system, cost calculation device, and cost calculation program
US20210125128A1 (en) Quantifying usage of disparate computing resources as a single unit of measure
US9699114B1 (en) Providing use of local or private cloud infrastructure resources to public cloud providers
US10282223B2 (en) Methods and systems to assess efficient usage of data-center resources by virtual machines
US20140297867A1 (en) Capacity merging for user-defined pools
CN105190568A (en) User-defined pools
US20080301025A1 (en) Application of brokering methods to availability characteristics

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: 20190913

Termination date: 20210401