• TheHarpyEagle
    link
    English
    117 months ago

    This may be a silly question, but what are VMs generally used for in a corporate setting? Is it the same use case as docker?

    • @Anubis
      link
      English
      127 months ago

      In large scale computing, a server will have VERY powerful hardware. You can run multiple VMs on that one machine, giving a slice of that power to each VM so that it basically ends up with multiple individual computers running on one very powerful set of hardware instead of building a ton of individual.

      • @ShunkW
        link
        English
        97 months ago

        The other key feature being cost. A VDI terminal is much cheaper than actual PCs for employees. When I was working IT for a large company, we were able to get them in bulk for about $100 each. A PC cost us at least $800.

      • @[email protected]
        link
        fedilink
        English
        17 months ago

        I have three VMs running concurrently on a decade+ old Dell T7500.

        Even elderly enterprise stuff can do this.

    • @xantoxis
      link
      English
      11
      edit-2
      7 months ago

      Similar to docker, but the technical differences matter a lot. VMs have a lot of capabilities containers don’t have, while missing some of the value on being lightweight.

      However, a more direct (if longer) answer would be: all cloud providers ultimately offer you VMs. You can run docker on those VMs, but you have to start with a VM. Selfhosted stuff (my homelab, for example) will also generally end up as a mix of VMs and docker containers. So no matter what project you’re working on at scale, you’ve probably got some VMs around.

      Whether you then use containers inside them is a more nuanced and subtle question.

    • RubberDuck
      link
      English
      10
      edit-2
      7 months ago

      Running a virtual server allows you to run a server application on its own virtual machine, this eliminates the chance that (when running multiple applications from a server) the underlaying requirement for each apllication conflict.

      In comparison to docker the full server can offer more native capabilities for some applications, while other applications simply only run on a full OS.

      So by virtualizing the servers one large piece of Hardware can be used to run multiple servers and you can (sometimes dynamically) allocate resources as needed.

      The backups can consume all computing power put of office hours while the other applications share during Office hours as needed… sometimes a bit more for VM A and sometimes a bit more for VM B.

      Off course monitoring overallocation is a thing as you might end up with bottlenecks caused by peak loads that occur at the same time… the issue would be bigger when running on dedicated hardware.

      And off course having multiple hardware platforms interconnected allows for a VM to be moved from hardware platform to hardware platform without interruption (license required) meaning you can perform hardware maintenance without an outage.

    • @noahm
      link
      English
      57 months ago

      VMs provide a meaningful security boundary between applications. Containers (docker, etc) do not.

    • monk
      link
      fedilink
      English
      57 months ago

      VMs are for actual isolation. Containers are for overcoming limitations of previous century package managers. They are not the same. =)

    • @[email protected]
      link
      fedilink
      English
      37 months ago

      Pretty much. Isolated environments to run a single service usually, although someone with more familiarity can comment further