Virtual network for virtual machine communication and migration

    公开(公告)号:US10228959B1

    公开(公告)日:2019-03-12

    申请号:US13186293

    申请日:2011-07-19

    IPC分类号: G06F9/455 G06F9/46 G06F9/50

    摘要: Systems and techniques are described for virtual machine communication and migration. A described technique includes operating server systems that are configured to run virtual machines and providing a virtual network for Internet Protocol (IP) based communications to the virtual machines. The virtual machines can be assigned network addresses, such as IP addresses, on the virtual network. Providing the virtual network can include using separate IP tunnels to effect delivery of IP packets on the virtual network to the virtual machines, respectively. The technique includes migrating a virtual machine running on a first server system to a second server system. The migrated virtual machine can maintain its assigned IP address. The technique includes updating a tunnel endpoint destination associated with the assigned IP address of the migrated virtual machine. The updated tunnel endpoint destination can be based on a network address associated with the second server system.

    Resource management
    2.
    发明授权
    Resource management 有权
    资源管理

    公开(公告)号:US08862743B1

    公开(公告)日:2014-10-14

    申请号:US13349547

    申请日:2012-01-12

    IPC分类号: G06F15/16 G06F15/173

    CPC分类号: G06F9/54 G06F9/5077

    摘要: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for managing resources in a computing system. A plurality of distributed computing system resources are represented as nodes in a graph. Links between the nodes are defined, where each link in the links representing ownership or usage by a parent node of a respective resource represented by a child node. A message is sent from a source node in the graph to a target node in the graph wherein the source node is linked directly or indirectly to the target node. The message is processed by a message handler task associated with the target node, wherein processing includes allocating or deallocating a respective resource represented by the target node.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的用于管理计算系统中的资源的计算机程序。 多个分布式计算系统资源在图中表示为节点。 定义节点之间的链接,其中链路中的每个链路表示由子节点表示的相应资源的父节点的所有权或使用。 消息从图中的源节点发送到图中的目标节点,其中源节点直接或间接地链接到目标节点。 消息由与目标节点相关联的消息处理程序任务处理,其中处理包括分配或取消分配由目标节点表示的相应资源。

    SERVICE BRIDGES
    3.
    发明申请
    SERVICE BRIDGES 有权
    服务桥

    公开(公告)号:US20140282510A1

    公开(公告)日:2014-09-18

    申请号:US13830013

    申请日:2013-03-14

    IPC分类号: G06F9/455

    摘要: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for service bridges. In one aspect, a method includes a host operating system performs operations comprising: receiving, using one or more service bridges that execute in the host operating system, a plurality of requests from the one or more virtual machines, wherein each service bridge is associated with a different virtual machine of the one or more virtual machines, and wherein each request is a request to interface with one or more external services; modifying, using a respective service bridge, each request to be processed by the one or more external services; and providing each modified request from the respective service bridge to the one or more external services, where the respective service bridge communicates with the one or more external services over a network.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的用于服务桥的计算机程序。 一方面,一种方法包括主机操作系统执行操作,包括:使用在所述主机操作系统中执行的一个或多个服务桥接器接收来自所述一个或多个虚拟机的多个请求,其中每个服务桥与 所述一个或多个虚拟机的不同虚拟机,并且其中每个请求是与一个或多个外部服务接口的请求; 使用相应的服务桥修改由所述一个或多个外部服务处理的每个请求; 以及将来自相应服务网桥的每个经修改的请求提供给所述一个或多个外部服务,其中所述相应服务网桥通过网络与所述一个或多个外部服务通信。

    GLOBAL COMPUTING INTERFACE
    4.
    发明申请
    GLOBAL COMPUTING INTERFACE 有权
    全球计算界面

    公开(公告)号:US20130263131A1

    公开(公告)日:2013-10-03

    申请号:US13842456

    申请日:2013-03-15

    IPC分类号: G06F9/455

    摘要: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing a global computing interface. One of the methods includes maintaining a global database of virtual machine configuration information, the database including information on cloud computing resources in each of a plurality of regions, wherein each region of the plurality of regions includes one or more datacenters. A virtual machine image is received in a first region. The global database is updated with configuration information about the received virtual machine image that is stored in the first region. A request is received to start one or more virtual machines from the virtual machine image in a second different region, and the virtual machine image is transmitted from the first region to the second region and one or more virtual machines are started from the virtual machine image in a datacenter of the second different region.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于实现全局计算接口。 所述方法之一包括维护虚拟机配置信息的全局数据库,所述数据库包括关于多个区域中的每个区域中的云计算资源的信息,其中所述多个区域中的每个区域包括一个或多个数据中心。 在第一区域中接收虚拟机图像。 使用存储在第一个区域中的接收的虚拟机映像的配置信息来更新全局数据库。 接收到请求以在第二不同区域中从虚拟机映像启动一个或多个虚拟机,并且将虚拟机映像从第一区域发送到第二区域,并且从虚拟机映像启动一个或多个虚拟机 在第二个不同区域的数据中心。

    Clustering for parallel processing
    5.
    发明授权
    Clustering for parallel processing 有权
    并行处理聚类

    公开(公告)号:US09336024B1

    公开(公告)日:2016-05-10

    申请号:US13727943

    申请日:2012-12-27

    IPC分类号: G06F9/455

    摘要: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for clustering for parallel processing. One of the methods includes providing virtual machines with an interface to a shuffle service, the shuffle service executing external of the virtual machines. The method includes receiving data records through the interface, each data record having a key and a value. The method includes partitioning the data records, using the shuffle service, according to the respective keys. The method includes providing a part of the partitioned data records through the interface to the virtual machines, wherein data records having the same key are provided to the same virtual machine. Each of the virtual machines can execute on a host machine and each of the virtual machine is a hardware virtualization of a machine.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于并行处理的聚类。 其中一种方法包括为虚拟机提供一个随机播放服务的接口,这些随机播放服务在虚拟机的外部执行。 该方法包括通过接口接收数据记录,每个数据记录具有一个键和一个值。 该方法包括根据各个密钥对使用洗牌服务的数据记录进行分区。 该方法包括通过与虚拟机的接口提供一部分分区数据记录,其中具有相同密钥的数据记录被提供给同一个虚拟机。 每个虚拟机都可以在主机上执行,每个虚拟机都是机器的硬件虚拟化。

    Advertising auction system
    6.
    发明授权
    Advertising auction system 有权
    广告拍卖系统

    公开(公告)号:US08983860B1

    公开(公告)日:2015-03-17

    申请号:US13361876

    申请日:2012-01-30

    IPC分类号: G06Q30/00 G06Q30/02 H04L12/14

    摘要: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for an advertisement auction system. In one aspect, a method includes operating bidders on a data processing apparatus, each bidder executing in a distinct virtual machine, wherein a host operating system that executes on the data processing apparatus performs operations including: receiving an advertisement bid request from a requestor using a first communication protocol, the bid request identifying a bidder, the data processing apparatus and the ad exchange being on a same internal network; sending the advertisement bid request to the virtual machine of the identified bidder using a second communication protocol; receiving an advertisement bid response for the bid request from the identified bidder using the second communication protocol; and sending the advertisement bid response to the requestor using the first communication protocol.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的用于广告拍卖系统的计算机程序。 在一个方面,一种方法包括在数据处理装置上操作投标人,每个投标人在不同的虚拟机中执行,其中在所述数据处理装置上执行的主机操作系统执行操作,包括:从请求者接收广告投标请求,使用 第一通信协议,投标请求标识投标人,数据处理装置和广告交换机在同一内部网络上; 使用第二通信协议向所识别的投标人的虚拟机发送广告投标请求; 使用所述第二通信协议从所识别的投标人接收所述投标请求的广告投标响应; 以及使用所述第一通信协议向所述请求者发送所述广告投标响应。

    Distribution of cryptographic host keys in a cloud computing environment
    7.
    发明授权
    Distribution of cryptographic host keys in a cloud computing environment 有权
    在云计算环境中分发密码主机密钥

    公开(公告)号:US08909939B1

    公开(公告)日:2014-12-09

    申请号:US13439256

    申请日:2012-04-04

    IPC分类号: G06F11/30

    CPC分类号: G06F21/53 G06F21/606

    摘要: Methods, systems, and apparatuses, including computer programs encoded on a computer storage medium, for distribution of cryptographic keys. In one aspect, a method includes receiving a plurality of requests, each request being received by a different respective virtual machine of a plurality of virtual machines; generating, by each of the virtual machines, a different host key pair, wherein each of the host key pairs comprises an encryption key and a decryption key that are associated with the virtual machine that generated it; providing, by each of the virtual machines, the encryption key generated by the virtual machine to a distinct metadata server that stores parameters of the virtual machine; and sending, from each of the metadata servers, the encryption key generated by the virtual machine that the metadata server is configured to communicate with to an application programming interface system.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于分配加密密钥。 一方面,一种方法包括接收多个请求,每个请求由多个虚拟机的不同的相应虚拟机接收; 由每个虚拟机生成不同的主机密钥对,其中每个主机密钥对包括与产生它的虚拟机相关联的加密密钥和解密密钥; 由虚拟机提供由虚拟机产生的加密密钥到存储虚拟机参数的不同元数据服务器; 并且从所述元数据服务器发送由所述虚拟机生成的所述元数据服务器被配置为与应用程序编程接口系统进行通信的加密密钥。

    Adjustable virtual network performance
    8.
    发明授权
    Adjustable virtual network performance 有权
    可调整的虚拟网络性能

    公开(公告)号:US08843925B1

    公开(公告)日:2014-09-23

    申请号:US13296643

    申请日:2011-11-15

    IPC分类号: G06F9/455 G06F9/46

    摘要: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, relating to managing resources. In one aspect, a method includes the actions of receiving configuration information, the configuration information specifying a plurality of parameter values including values for a size and input/output performance parameters, where the size and performance parameters are independently specified by a user; determining one or more physical resources that satisfy the received configuration information; and generating one or more virtual disk instances having the specified size and performance parameters.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的与管理资源有关的计算机程序。 一方面,一种方法包括接收配置信息的动作,所述配置信息指定包括尺寸和输入/输出性能参数的值的多个参数值,其中尺寸和性能参数由用户独立指定; 确定满足所接收的配置信息的一个或多个物理资源; 以及生成具有指定大小和性能参数的一个或多个虚拟磁盘实例。

    Virtual machine service access
    9.
    发明授权
    Virtual machine service access 有权
    虚拟机服务访问

    公开(公告)号:US08800009B1

    公开(公告)日:2014-08-05

    申请号:US13402975

    申请日:2012-02-23

    IPC分类号: H04L29/00

    CPC分类号: H04L63/0846

    摘要: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for accessing services from a virtual machine. One of the methods includes receiving requests for long-term security tokens from a host machine, each request comprising authentication information for a respective service account. The method include providing long-term security tokens to the host machine, wherein the long-term security tokens can be used to generate short-term security tokens for a virtual machine executing on the host machine. The method also includes generating by a process executing in a host operating system of the host machines a short-term security token based on a long-term security token of the long-term security tokens for use by a virtual machine executing on the host machine to access one of the respective service accounts, wherein the short-term security token is useable for a pre-determined amount of time.

    摘要翻译: 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于从虚拟机访问服务。 其中一种方法包括从主机接收长期安全令牌的请求,每个请求包括相应服务帐户的认证信息。 该方法包括向主机提供长期安全令牌,其中可以使用长期安全令牌来为在主机上执行的虚拟机生成短期安全令牌。 该方法还包括通过在主机操作系统中执行的进程来生成基于长期安全令牌的长期安全令牌的短期安全令牌,以供在主机上执行的虚拟机使用 以访问相应的服务帐户中的一个,其中短期安全令牌可用于预定的时间量。

    Virtual network pairs
    10.
    发明授权

    公开(公告)号:US09619662B1

    公开(公告)日:2017-04-11

    申请号:US13348548

    申请日:2012-01-11

    IPC分类号: G06F21/60

    摘要: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for implementing virtual network pairs between virtual machines and other devices. In one aspect, a method includes associating each of a plurality of different virtual machine network addresses with a respective host machine network address; receiving, from a sender, a request for a source virtual machine to communicate with a destination virtual machine; determining that the source virtual machine is authorized to communicate with the destination virtual machine; selecting, from the associations, a host machine network address for the destination virtual machine; generating a token based at least partly on the selected host machine network address and on a secret key of the destination virtual machine, wherein the secret key is not known by the source virtual machine; and sending the selected host machine network address and generated token to the sender.