Ephemeral storage management for container-based virtual machines

    公开(公告)号:US11579916B2

    公开(公告)日:2023-02-14

    申请号:US16838542

    申请日:2020-04-02

    Applicant: VMware, Inc.

    Abstract: A virtualized computing system includes: a host cluster including hosts executing a virtualization layer on hardware platforms thereof, the virtualization layer configured to support execution of virtual machines (VMs), the VMs including a pod VM, the pod VM including a container engine configured to support execution of containers in the pod VM, the pod VM including a first virtual disk attached thereto; and an orchestration control plane integrated with the virtualization layer, the orchestration control plane including a master server in communication with a pod VM controller, the pod VM controller configured to execute in the virtualization layer external to the VMs and cooperate with a pod VM agent in the pod VM, the pod VM agent generating root directories for the containers in the pod VM, each of the root directories comprising a union a read/write ephemeral layer stored on the first virtual disk and a read-only layer.

    Cooperative memory resource management via application-level balloon
    2.
    发明授权
    Cooperative memory resource management via application-level balloon 有权
    通过应用级气球协同内存资源管理

    公开(公告)号:US09529611B2

    公开(公告)日:2016-12-27

    申请号:US14581840

    申请日:2014-12-23

    Applicant: VMware, Inc.

    Abstract: Methods, systems, and computer programs for managing memory in a host where virtual machines (VMs) execute are presented. In one example, a method includes an operation for determining which amount of heap memory has been reserved in a Java virtual machine (JVM) that is in excess of the heap memory needed by the JVM. If there is excess heap memory, a Java balloon agent reserves a Java object in the heap memory. Typically, the Java object will be the size of one or more memory pages in the host. Further, the Java balloon agent loads the Java object with a certain value, for example, by zeroing out the page of memory. When a virtual machine monitor (VMM) in the host detects that a machine physical memory page associated with the Java object has the first value, then the VMM frees the machine physical memory page to make the memory available to other VMs or to other processes executing in the host.

    Abstract translation: 呈现虚拟机(VM)执行的主机中的内存的方法,系统和计算机程序。 在一个示例中,方法包括用于确定在Java虚拟机(JVM)中已经保留了超过JVM所需的堆内存的堆内存量的操作。 如果存在多余的堆内存,Java气球代理将在堆内存中保留一个Java对象。 通常,Java对象将是主机中一个或多个内存页面的大小。 此外,Java气球代理程序将Java对象加载到某个值,例如通过清空内存页面。 当主机中的虚拟机监视器(VMM)检测到与Java对象相关联的机器物理内存页面具有第一个值时,VMM将释放机器物理内存页面,使内存可用于其他VM或执行其他进程 在主机。

    UNIFIED RESOURCE MANAGEMENT FOR CONTAINERS AND VIRTUAL MACHINES

    公开(公告)号:US20220075643A1

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

    申请号:US17527399

    申请日:2021-11-16

    Applicant: VMware, Inc.

    Abstract: Various aspects are disclosed for unified resource management of containers and virtual machines. A podVM resource configuration for a pod virtual machine (podVM) is determined using container configurations. The podVM comprising a virtual machine (VM) that provides resource isolation for a pod based on the podVM resource configuration. A host selection for the podVM is received from a VM scheduler. The host selection identifies hardware resources for the podVM. A container scheduler is limited to bind the podVM to a node corresponding to the hardware resources of the host selection from the VM scheduler. The podVM is created in a host corresponding to the host selection. Containers are started within the podVM. The containers correspond to the container configurations.

    Optimizing for page sharing in virtualized java virtual machines
    5.
    发明授权
    Optimizing for page sharing in virtualized java virtual machines 有权
    优化虚拟化Java虚拟机中的页面共享

    公开(公告)号:US09146847B2

    公开(公告)日:2015-09-29

    申请号:US13715539

    申请日:2012-12-14

    Applicant: VMware, Inc.

    CPC classification number: G06F12/00 G06F12/109 G06F2212/151 G06F2212/656

    Abstract: Methods, systems, and computer programs manage memory of a runtime environment executing on a virtual machine. A runtime environment, such as a Java Virtual Machine, may deterministically arrange immutable data within memory such that a hypervisor may perform page sharing on the immutable data. The runtime environment may page-align the immutable data within memory. The runtime environment may further store the immutable within memory using self-referenced or self-relative pointers.

    Abstract translation: 方法,系统和计算机程序管理在虚拟机上执行的运行时环境的内存。 运行时环境(例如Java虚拟机)可以确定性地将不可变数据排列在存储器内,使得管理程序可以在不可变数据上执行页面共享。 运行时环境可能会将存储器中的不可变数据进行页面对齐。 运行时环境可以使用自引用或自相关指针进一步将不可变的内存存储在存储器内。

    Global cache for container images in a clustered container host system

    公开(公告)号:US12050814B2

    公开(公告)日:2024-07-30

    申请号:US18151306

    申请日:2023-01-06

    Applicant: VMware, Inc.

    Abstract: Container images are managed in a clustered container host system with a shared storage device. Hosts of the system each include a virtualization software layer that supports execution of virtual machines (VMs), one or more of which are pod VMs that have implemented therein a container engine that supports execution of containers within the respective pod VM. A method of deploying containers includes determining, from pod objects published by a master device of the system and accessible by all hosts of the system, that a new pod VM is to be created, creating the new pod VM, and spinning up one or more containers in the new pod VM using images of containers previously spun up in another pod VM, wherein the images of the containers previously spun up in the other pod VM are stored in the storage device.

    Image file optimizations by opportunistic sharing

    公开(公告)号:US11809751B2

    公开(公告)日:2023-11-07

    申请号:US17678945

    申请日:2022-02-23

    Applicant: VMware, Inc.

    Abstract: Container images are fetched in a clustered container host system with a shared storage device. Fetching a first container image in a first virtual machine includes creating a first virtual disk in the shared storage device, storing an image of the first container in the first virtual disk, mounting the first virtual disk to the first virtual machine, and updating a metadata cache to associate the image of the first container to the first virtual disk. Fetching a second container image in a second virtual machine includes checking the metadata cache to determine that a portion of the image of the second container is stored in the first virtual disk, creating a second virtual disk in the shared storage device, adding a reference to the first virtual disk in a metadata of the second virtual disk, and mounting the second virtual disk to the second virtual machine.

    Unified resource management for containers and virtual machines

    公开(公告)号:US11593149B2

    公开(公告)日:2023-02-28

    申请号:US17527399

    申请日:2021-11-16

    Applicant: VMware, Inc.

    Abstract: Various aspects are disclosed for unified resource management of containers and virtual machines. A podVM resource configuration for a pod virtual machine (podVM) is determined using container configurations. The podVM comprising a virtual machine (VM) that provides resource isolation for a pod based on the podVM resource configuration. A host selection for the podVM is received from a VM scheduler. The host selection identifies hardware resources for the podVM. A container scheduler is limited to bind the podVM to a node corresponding to the hardware resources of the host selection from the VM scheduler. The podVM is created in a host corresponding to the host selection. Containers are started within the podVM. The containers correspond to the container configurations.

    Global cache for container images in a clustered container host system

    公开(公告)号:US11550513B2

    公开(公告)日:2023-01-10

    申请号:US16751529

    申请日:2020-01-24

    Applicant: VMware, Inc.

    Abstract: Container images are managed in a clustered container host system with a shared storage device. Hosts of the system each include a virtualization software layer that supports execution of virtual machines (VMs), one or more of which are pod VMs that have implemented therein a container engine that supports execution of containers within the respective pod VM. A method of deploying containers includes determining, from pod objects published by a master device of the system and accessible by all hosts of the system, that a new pod VM is to be created, creating the new pod VM, and spinning up one or more containers in the new pod VM using images of containers previously spun up in another pod VM, wherein the images of the containers previously spun up in the other pod VM are stored in the storage device.

Patent Agency Ranking