Peripheral device enabling virtualized computing service extensions
A peripheral device includes one or more processors and a memory storing program instructions that when executed implement an extension manager of a virtualized computing service. The extension manager establishes a secure network channel for communications between the peripheral device, which is located at a premise external to a provider network, and a data center of the provider network. The extension manager assigns a network address of the substrate network of the service to a hardware server at the external premise. The substrate address is also assigned to an extension traffic intermediary at the data center. In response to a command directed to the virtualized computing service, one or more compute instance configuration operations are performed at the hardware server.
1 . A method of managing virtual machines on remote computing devices, comprising:
causing a virtualization management component to be implemented on at least one of one or more computing devices located at a premises external to a cloud service provider substrate network;
receiving a request, from a customer, at a customer interface of a virtualized computing service of the cloud service provider substrate network;
performing, at the virtualization management component in response to receiving the request at the customer interface of the virtualized computing service, one or more configuration operations to instantiate a virtual machine on at least one of the one or more computing devices located at the premises external to the cloud service provider substrate network; and
performing one or more operations to manage the virtual machine instantiated on the computing device located at the premises external to the cloud service provider substrate network.
2 . The method of managing virtual machines on remote computing devices of claim 1 , further comprising:
establishing a virtual private network (VPN) connection between an endpoint of the cloud service provider network and an endpoint associated with the virtualization management component; and
sending one or more management tasks from a control plane of the virtualized computing service to the virtualization management component via the VPN connection, wherein the one or more management tasks cause, at least in part, the performance of the one or more configuration operations or the performance of the one or more operations to manage the virtual machine.
3 . The method of managing virtual machines on remote computing devices of claim 1 , further comprising:
sending one or more management tasks from a control plane of the virtualized computing service to the virtualization management component via a direct physical connection between the cloud service provider substrate network and a network associated with the virtualization management component, wherein the one or more management tasks cause, at least in part, the performance of the one or more configuration operations or the performance of the one or more operations to manage the virtual machine.
4 . The method of managing virtual machines on remote computing devices of claim 1 ,
wherein said causing the virtualization management component to be implemented on the at least one of one or more computing devices located at a premises external to the cloud service provider substrate network comprises:
providing the at least one computing device to a customer of the cloud service provider, wherein the at least one computing device stores program instructions for implementing the virtualization management component.
5 . The method of managing virtual machines on remote computing devices of claim 1 , further comprising:
providing access to a block storage service to the virtual machine.
6 . The method of managing virtual machines on remote computing devices of claim 1 , further comprising:
assigning an IP address to the virtual machine that is within a range of IP addresses of a virtual network within the cloud service provider substrate network.
7 . The method of managing virtual machines on remote computing devices of claim 6 , wherein the virtual network comprises:
the virtual machine implemented on the one or more computing devices located at the premises external to the cloud service provider substrate network; and
one or more a second virtual machine implemented on one or more computing resources within the cloud service provider substrate network.
8 . The method of managing virtual machines on remote computing devices of claim 1 , wherein the virtualization management component implemented on the at least one of the one or more computing devices located at the premises external to the cloud service provider substrate network implements a bridge between the virtualized computing service of the cloud service provider substrate network and a network associated with the virtualization management component implemented at the premises external to the cloud service provider substrate network.
9 . The method of managing virtual machines on remote computing devices of claim 1 , wherein the customer interface comprises one or more of:
a web-based console;
a command-line tool;
a graphical user interface; or
an application programming interface (API).
10 . The method of managing virtual machines on remote computing devices of claim 1 , wherein the one or more computing devices located at the premises external to the cloud service provider substrate network operate in a multitenant mode.
11 . A system, comprising:
one or more computing devices of a cloud service provider network configured to implement virtual machines for a virtualized computing service of the cloud service provider network; and
one or more computing devices configured to implement a management component of the virtualized computing service, the management component configured to:
receive, from a customer via a customer interface of the virtualized computing service, at the management component of the virtualized computing service, a request to implement a virtual machine on one or more additional computing devices located at a premises external to the cloud service provider network; and
cause one or more configuration operations to be performed to instantiate the virtual machine on the one or more additional computing devices located at the premises external to the cloud service provider network.
12 . The system of claim 11 , wherein the management component is further configured to:
perform one or more operations to manage the virtual machine instantiated on the one or more additional computing devices located at the premises external to the cloud service provider network.
13 . The system of claim 12 , wherein the cloud service provider network comprises one or more computing devices configured to:
establish a virtual private network (VPN) connection between an endpoint of the cloud service provider network and an endpoint associated with a virtualization management component implemented at the premises external to the cloud service provider network; and
send management traffic from a control plane of the virtualized computing service to the virtualization management component via the VPN connection, wherein the management traffic causes, at least in part, the performance of the one or more configuration operations or the performance of the one or more operations to manage the virtual machine.
14 . The system of claim 12 , wherein the cloud service provider network comprises:
a router configured to establish a direct physical connection between the cloud service provider network and a network that includes a virtualization management component implemented at the premises external to the cloud service provider network; and
one or more computing devices configured to:
send management traffic from a control plane of the virtualized computing service to the virtualization management component via the direct physical connection, wherein the management traffic causes, at least in part, the performance of the one or more configuration operations or the performance of the one or more operations to manage the virtual machine.
15 . The system of claim 11 , wherein the management component of the virtualized computing service is further configured to:
cause a virtual machine of the virtualized computing service to be connected to a given one of the one or more additional computing devices located at the premises external to the cloud service provider network,
wherein the virtual machine connected to the given additional computing device implements a bridge between the management component of the virtualized computing service and the virtual machine instantiated on the one or more additional computing devices located at the premise external to the cloud service provider network.
16 . One or more non-transitory, computer-readable, storage media storing program instructions that, when executed on or across one or more processors, cause the one or more processors to:
receive, from a customer, at a customer interface of a virtualized computing service of a cloud service provider network, a request to implement a virtual machine on a computing device located at a premises external to the cloud service provider network; and
cause one or more configuration operations to be performed to instantiate the virtual machine on the computing device located at the premises external to the cloud service provider network.
17 . The one or more non-transitory, computer-readable storage media of claim 16 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to:
present a list of virtualization hosts that are available to be used to instantiate virtual machines, wherein the computing device located at the premises external to the cloud service provider network is included in the list.
18 . The one or more non-transitory, computer-readable storage media of claim 16 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to:
perform one or more operations to provide the virtual machine, instantiated on the computing device located at the premises external to the service provider network, access to contents of a volume stored in a storage service of the cloud service provider network;
wherein the contents of the volume are used to boot an operating system of the virtual machine.
19 . The one or more non-transitory, computer-readable storage media of claim 16 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to:
cause a virtual machine of the virtualized computing service to be connected to the computing device located at the premises external to the cloud service provider network,
wherein the virtual machine of the virtualized computing service connected to the computing device external to the cloud service provider network implements a bridge between a management component of the virtualized computing service and the virtual machine instantiated on the computing device located at the premises external to the cloud service provider network.
20 . The one or more non-transitory, computer-readable storage media of claim 16 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to:
assign one or more IP addresses to the virtual machine such that the virtual machine, instantiated on the computing device located at the premises external to the cloud service provider network, is included in a virtual network of a customer of the cloud service provider network.