Abstract:
An example method is provided to deploy an application in multiple cloud computing environments. The method may comprise a computing system generating a first request to deploy an application in a first cloud computing environment according to a first deployment plan and a second request to deploy the application in a second cloud computing environment according to a second deployment plan. The method may comprise selecting, from multiple communication components configured on the computing system, a first communication component to communicate with a first orchestration node in the first cloud computing environment and a second communication component to communicate with a second orchestration node in the second cloud computing environment. The method may further comprise sending the first request to the first orchestration node via the first communication component, and the second request to the second orchestration node via the second communication component.
Abstract:
An example method is provided for a computing system in a private cloud computing environment to deploy an application in a hybrid cloud computing environment. The method may comprise generating a request to deploy an application in a public cloud environment, the request including a deployment plan that specifies one or more tasks to be executed by a virtual computing resource from a cloud provider to deploy the application. The method may comprise sending, to an orchestration node in the public cloud computing environment, the request to instruct the orchestration node to provision the virtual computing resource from the cloud provider and to cause the virtual computing resource to execute the one or more tasks. The method may further comprise receiving, from the orchestration node in the public cloud environment, status data and determining whether the application is successfully deployed in the public cloud computing environment.
Abstract:
An example method for allocating resources in a multi-cloud environment may include receiving, by an allocation broker executing in the multi-cloud environment, a client request to create an allocation of cloud resource in a plurality of clouds. The method may include receiving, by the allocation broker from a reservation broker, a reservation candidate based on a reservation type. The reservation candidate is associated with a cloud, and the cloud corresponds to a cloud broker. The method may further include invoking, by the allocation broker, a location handler corresponding to the reservation type to identify a reservation in the cloud having sufficient resource quota to support the allocation of cloud resource, and invoking, by the allocation broker, an allocation handler corresponding to the reservation type to create the allocation of cloud resource in the reservation.
Abstract:
Techniques for dynamically managing the placement of blocks of a logical file between a flash storage tier and an HDD storage tier are provided. In one embodiment, a computer system can collect I/O statistics pertaining to the logical file, where a first subset of blocks of the logical file are stored on the flash storage tier and where a second subset of blocks of the logical file are stored on the HDD storage tier. The computer system can further generate a heat map for the logical file based on the I/O statistics, where the heat map indicates, for each block of the logical file, the number of times the block has been accessed. The computer system can then identify, using the heat map, one or more blocks of the logical file as being performance-critical blocks, and can move data between the flash and HDD storage tiers such that the performance-critical blocks are placed on the flash storage tier.
Abstract:
Embodiments perform end-to-end virtual network flow monitoring in a virtual datacenter and provide differentiated views to users based on user role. A target flow pattern describing data packets of interest is distributed to a plurality of applications managing VMs in the virtual datacenter, such as hosts, virtual gateways, and other virtual network applications. Each of the applications monitors data packets routed by the application by comparing the data packets to the flow pattern and selectively collecting context data describing the data packets. The context data collected by the applications is aggregated at a remote server for analysis and reporting.
Abstract:
A method to deploy a multitier application in a virtualized computing environment includes receiving an open virtualization format (OVF) package. The OVF package includes an OVF descriptor, one or more virtual disk image files of virtual machines, and a multitier application blueprint specifying software components on the virtual machines and dependencies of the software components. The method further includes deploying the virtual machines based on the OVF package and executing the multitier application blueprint by deploying the software components on the virtual machines pursuant to the dependencies of the software components.
Abstract:
An example method is provided to deploy an application in multiple cloud computing environments. The method may comprise a computing system generating a first request to deploy an application in a first cloud computing environment according to a first deployment plan and a second request to deploy the application in a second cloud computing environment according to a second deployment plan. The method may comprise selecting, from multiple communication components configured on the computing system, a first communication component to communicate with a first orchestration node in the first cloud computing environment and a second communication component to communicate with a second orchestration node in the second cloud computing environment. The method may further comprise sending the first request to the first orchestration node via the first communication component, and the second request to the second orchestration node via the second communication component.
Abstract:
Techniques for dynamically managing the placement of blocks of a logical file between a flash storage tier and an HDD storage tier are provided. In one embodiment, a computer system can collect I/O statistics pertaining to the logical file, where a first subset of blocks of the logical file are stored on the flash storage tier and where a second subset of blocks of the logical file are stored on the HDD storage tier. The computer system can further generate a heat map for the logical file based on the I/O statistics, where the heat map indicates, for each block of the logical file, the number of times the block has been accessed. The computer system can then identify, using the heat map, one or more blocks of the logical file as being performance-critical blocks, and can move data between the flash and HDD storage tiers such that the performance-critical blocks are placed on the flash storage tier.
Abstract:
An example method is provided for a computing system in a private cloud computing environment to deploy an application in a hybrid cloud computing environment. The method may comprise generating a request to deploy an application in a public cloud environment, the request including a deployment plan that specifies one or more tasks to be executed by a virtual computing resource from a cloud provider to deploy the application. The method may comprise sending, to an orchestration node in the public cloud computing environment, the request to instruct the orchestration node to provision the virtual computing resource from the cloud provider and to cause the virtual computing resource to execute the one or more tasks. The method may further comprise receiving, from the orchestration node in the public cloud environment, status data and determining whether the application is successfully deployed in the public cloud computing environment.
Abstract:
Techniques for achieving crash consistency when performing write-behind caching using a flash storage-based cache are provided. In one embodiment, a computer system receives from a virtual machine a write request that includes data to be written to a virtual disk and caches the data in a flash storage-based cache. The computer system further logs a transaction entry for the write request in the flash storage-based cache, where the transaction entry includes information usable for flushing the data from the flash storage-based cache to a storage device storing the virtual disk. The computer system then communicates an acknowledgment to the VM indicating that the write request has been successfully processed.