Imaging PCs: Difference between revisions

From All Hands Active Wiki
Jump to navigation Jump to search
Nova1313 (talk | contribs)
No edit summary
RachelN (talk | contribs)
No edit summary
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Outdated}}
[[Category:Infrastructure]]
The process of imaging PCs has two projects in motion presently
The process of imaging PCs has two projects in motion presently
=Centralized files=
=Centralized files=
Line 10: Line 13:


==Storage==
==Storage==
2x 250gb drives
*2x 250gb drives
 
*Configured in RAID
Configured in RAID
*Supports external via ESATA or USB for backup.
 
Supports external via ESATA or USB for backup.


==Network==
==Network==
Add to network at 10.1.10.4
*Add to network at 10.1.10.4
 
*Expose to external at shop.allhandsactive.com:5000
Expose to external at shop.allhandsactive.com:5000


==Access==
==Access==
External - http://shop.allhandsactive.com:5000
*External - http://shop.allhandsactive.com:5000
Local - NFS/SMB2/AFP/FTP/WebDAV and 10.1.10.4:5000
*Local - NFS/SMB2/AFP/FTP/WebDAV and 10.1.10.4:5000


=Hypervisor=
=Hypervisor/Image solutions=
Michael G. and Tyler W. started project to move machines to images.  
Michael G. and Tyler W. started project to move machines to images.  


Line 33: Line 33:


==Abbreviations==
==Abbreviations==
HV - Hypervisor
*HV - Hypervisor
VHD - Virtual Hard disk (format varies by option)
*VHD - Virtual Hard disk (format varies by option)
PPT - PCI Pass through (Assigns a dedicated device to a VM)
*PPT - PCI Pass through (Assigns a dedicated device to a VM)
TF2 - Team Fortress 2
*TF2 - Team Fortress 2
VDA - Virtual Desktop Access.
*VDA - Virtual Desktop Access.


==Options tested==
==Options tested==
-- Xen
*Xen
-- Qemu
*Qemu
-- Windows VHD support
*Windows VHD support


Game tested on each instance was TF2 on Medium settings. Frame rate considered good was 60+. TF2 is extremely old at this point but I considered it a good benchmark for the baseline of gaming that we'd do at the shop. Many games I see played run on source.  
Game tested on each instance was TF2 on Medium settings. Frame rate considered good was 60+. TF2 is extremely old at this point but I considered it a good benchmark for the baseline of gaming that we'd do at the shop.


== Licensing issues ==
== Licensing issues ==
Our copies of Windows at AHA are not licensed for virtualization. They sell VDA licenses that licenses a client instead of the OS that runs it. We don't have them. This might be a route to check out.  
Our copies of Windows at AHA are not licensed for virtualization. They sell VDA licenses that licenses a client instead of the OS that runs it. We don't have them. This might be a route to check out.  
The desktop licenses are only licensed for how we have them installed.  
The desktop licenses are only licensed for how we have them installed.  
Windows 8 has a Personal Use License included with some copies. This would allow us to install a VM of Windows on a machine and legally use it there. We cannot host that VM on a server or remote connect to it.
Windows 8 has a Personal Use License included with some copies. This would allow us to install a VM of Windows on a machine and legally use it there. We cannot host that VM on a server or remote connect to it.
[[http://www.microsoft.com/OEM/en/licensing/sblicensing/Pages/windows-licensing-for-personal-use.aspx]]
[[http://www.microsoft.com/OEM/en/licensing/sblicensing/Pages/windows-licensing-for-personal-use.aspx]]


===Problems across all of the options ===
==Problems across all of the options ==
Windows really doesn't like being virtualized in a multi-install environment.
Windows really doesn't like being virtualized in a multi-install environment.
Graphics performance is not great with existing cards at AHA unless they are used in passthrough mode. This requires purchase of another graphics card for use by the host OS.
Graphics performance is not great with existing cards at AHA unless they are used in passthrough mode. This requires purchase of another graphics card for use by the host OS.
Network issues with clashing host names for SMB sharing and if we did proper DNS.
Network issues with clashing host names for SMB sharing and if we did proper DNS.


==Options==
===Xen (Debian) as hypervisor, Windows and Linux on VHD===
===Xen (Debian) as hypervisor, Windows and Linux on VHD===
Installed on a box, configured both Linux and Windows as images.  
Installed on a box, configured both Linux and Windows as images.  


Linux- No major problems. Multiple copies cannot be started on the same network without tweaking the Xen host to mask each one on Proxy. Annoying but workable.
*Linux - No major problems. Multiple copies cannot be started on the same network without tweaking the Xen host to mask each one on Proxy. Annoying but workable.
Windows - Using the virtual frame buffer graphics performance for games is slow...
*Windows - Using the virtual frame buffer graphics performance for games is slow...


Successfully installed Xen on a box and configured both a Linux and Windows distributions. I tested both virtualized graphics card drivers and passthrough setup.
Successfully installed Xen on a box and configured both a Linux and Windows distributions. I tested both virtualized graphics card drivers and passthrough setup.


Virtualized graphics performance is not okay for heavy or even medium gaming. Similar to performance on Qemu.
Virtualized graphics performance is not okay for heavy or even medium gaming. Similar to performance on Qemu.
Passthrough graphics performance is great. This requires purchasing a dedicated graphics card for use by the host OS when the internal card is passed through to VM.
Passthrough graphics performance is great. This requires purchasing a dedicated graphics card for use by the host OS when the internal card is passed through to VM.


Line 77: Line 83:
Installed Qemu on Debian without Xen. Qemu can also be leveraged by Xen for certain OS installs. Installed both Windows and Linux on Qemu setup using VHD.
Installed Qemu on Debian without Xen. Qemu can also be leveraged by Xen for certain OS installs. Installed both Windows and Linux on Qemu setup using VHD.


Linux - Runs fine has passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Multiple copies of OS aren't easy to do without configuration to each.
*Linux - Runs fine has passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Multiple copies of OS aren't easy to do without configuration to each.
Windows - Runs fine. Used passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Won't support newer games at decent settings without a better graphics driver. Multiple installs are problematic since device names clash on the network.
*Windows - Runs fine. Used passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Won't support newer games at decent settings without a better graphics driver. Multiple installs are problematic since device names clash on the network.


Both are VHDs but have network naming problems when run on multiple machines.
Both are VHDs but have network naming problems when run on multiple machines.
Line 88: Line 94:


This lets you create images which you can easily remove of an OS afterward or move between machines if hardware is similar.  
This lets you create images which you can easily remove of an OS afterward or move between machines if hardware is similar.  
Only one OS loads at a time the benefit is simply that you can have multiple images that are easy to replace on the same machine. That OS has full use of the graphics card. This is ideal.
Only one OS loads at a time the benefit is simply that you can have multiple images that are easy to replace on the same machine. That OS has full use of the graphics card. This is ideal.


Line 93: Line 100:


===VBoot ===
===VBoot ===
Allows booting VHDs via multiboot in Windows that are not Windows based installs. This allowed me to install and configure Linux. No different really then setting up Grub to allow multi os booting. Seems to play nicer with UEFI than Windows/Grub combination. Windows is still not in an image though.
Allows booting VHDs via multiboot in Windows that are not Windows based installs.  
 
This allowed me to install and configure Linux.  
 
No different really then setting up Grub to allow multi os booting. Seems to play nicer with UEFI than Windows/Grub combination. Windows is still not in an image though.


===Grub2 Image support===
===Grub2 Image support===
Grub2 has support for loading images. See VBoot above as it's features are used by my test install of Vboot just simply with a Windows host.
Grub2 has support for loading images. See VBoot above as it's features are used by my test install of Vboot just simply with a Windows host.


===Windows 8 To-Go===
Windows 8 enterprise and Windows 8 pro (via workaround) allow creating a Windows environment on an external USB stick/drive. The host machine needs to be okay to run Windows 8 but doesn't need to have a legal copy of Windows installed. This means that the license resides on the USB drive. The machine can be booted via USB and is a fully functioning OS. This is an ideal way to maintain a portable hard-disk image cleanly. We make limited numbers available and only to select members.
Tested creating image using Windows 8 pro. No issues. See this page: http://www.eightforums.com/installation-setup/21466-booting-running-windows-8-usb-drive-via-grub.html


=Proposed solution=
=Proposed solution=
Line 103: Line 118:


Tyler W.:
Tyler W.:
We should review our gaming requirements.  
 
If we still need to play games at full speed to support members, then virtualization is out of the question until we have funds.
We should review our gaming requirements. If we still need to play games at full speed to support members, then virtualization is out of the question until we have funds.


We can virtualize (have funds!):
We can virtualize (have funds!):
Qemu or Xen are the way to go. Xen's passthrough is great, but requires that we also purchase hardware in addition to Windows 8.1 licenses.
*Qemu or Xen are the way to go. Xen's passthrough is great, but requires that we also purchase hardware in addition to Windows 8.1 licenses.
Legally we cannot virtualize our copies of Windows 7.  
*Legally we cannot virtualize our copies of Windows 7.  


We can't virtualize (we are broke):
We can't virtualize (we are broke):
Dual boot with the Linux image being a VHD booting enabled by VBoot.


NAS is used to store both a VHD of Linux that we keep up to date and the same across all machines.
Windows 8 to-go on USB Hard disks that we provide only to users that really need them.
NAS is used to store ghost image of Windows drive.
 
NAS LDAP is used to control access to both Windows and Linux.
*Dual boot using some bootloader to pick either Linux in a VHD or the Windows 8 to-go drive.
 
*NAS is used to store both a VHD of Linux that we keep up to date and the same across all machines.
*NAS is used to store ghost image of Windows drives.
*NAS LDAP is used to control access to both Windows and Linux.


Guests: Kiosk Linux Account.
Guests: Kiosk Linux Account.


Members: Named personal LDAP enabled Linux account with file storage and a shared Linux Steam library.  
Members: Named personal LDAP enabled Linux account with file storage and a shared Linux Steam library. Do not have SUDO but can build and install packages in their local directory for personal use. We'll provide a base set of packages that we keep up to date.
Do not have SUDO but can build and install packages in their local directory for personal use. We'll provide a base set of packages that we keep up to date.


Only those with express need for Windows gaming (games that we can't run on Linux) get tagged in LDAP to be able to authenticate on Windows. Idea is to phase out Windows use on lab machines.
Windows Gamers: Only if game can't be played on Linux do we tag accounts in LDAP and give them access to the physical USB Windows 8 to-go hard disks. Idea is to phase out Windows use on lab machines.


We actually keep the ghost image of Windows up to date this time. Update process would be.
We actually keep the ghost image of Windows up to date this time. Update process would be.
1) Pull existing image from NAS to a machine via ghost.
#Pull existing image from NAS to a USB drive via Ghost.
2) Bring image up to date and install new software, patch all games to current date.
#Bring image up to date and install new software, patch all games to current date.
3) Push clean image to NAS.
#Push clean image to NAS.
4) Update machines from NAS.
#Update other Windows 8 to-go drives from NAS.


Machines auto boot to Linux VHD.
Machines auto boot to Linux VHD.

Latest revision as of 17:03, 16 December 2023


Notice
Notice
OUTDATED!:
The content of this page is outdated.
If you have checked or updated this page and found the content to be suitable, please remove this notice.

The process of imaging PCs has two projects in motion presently

Centralized files

Synology NAS has been purchased by Tyler W.

Configured but not installed.

Accounts

  • LDAP Server is configured.
  • Give each member unique account with a fixed amount of storage.

Storage

  • 2x 250gb drives
  • Configured in RAID
  • Supports external via ESATA or USB for backup.

Network

  • Add to network at 10.1.10.4
  • Expose to external at shop.allhandsactive.com:5000

Access

Hypervisor/Image solutions

Michael G. and Tyler W. started project to move machines to images.

Current machines are riddled with malware. Master image was not kept up to date and cloning using ghost is pretty annoying/not being done.

Proposal was to explore hypervisors and install OS as an image on each machine that could be pushed down or pulled down from NAS as needed. Add support to each machine.

Abbreviations

  • HV - Hypervisor
  • VHD - Virtual Hard disk (format varies by option)
  • PPT - PCI Pass through (Assigns a dedicated device to a VM)
  • TF2 - Team Fortress 2
  • VDA - Virtual Desktop Access.

Options tested

  • Xen
  • Qemu
  • Windows VHD support

Game tested on each instance was TF2 on Medium settings. Frame rate considered good was 60+. TF2 is extremely old at this point but I considered it a good benchmark for the baseline of gaming that we'd do at the shop.

Licensing issues

Our copies of Windows at AHA are not licensed for virtualization. They sell VDA licenses that licenses a client instead of the OS that runs it. We don't have them. This might be a route to check out.

The desktop licenses are only licensed for how we have them installed.

Windows 8 has a Personal Use License included with some copies. This would allow us to install a VM of Windows on a machine and legally use it there. We cannot host that VM on a server or remote connect to it. [[1]]

Problems across all of the options

Windows really doesn't like being virtualized in a multi-install environment.

Graphics performance is not great with existing cards at AHA unless they are used in passthrough mode. This requires purchase of another graphics card for use by the host OS.

Network issues with clashing host names for SMB sharing and if we did proper DNS.

Options

Xen (Debian) as hypervisor, Windows and Linux on VHD

Installed on a box, configured both Linux and Windows as images.

  • Linux - No major problems. Multiple copies cannot be started on the same network without tweaking the Xen host to mask each one on Proxy. Annoying but workable.
  • Windows - Using the virtual frame buffer graphics performance for games is slow...

Successfully installed Xen on a box and configured both a Linux and Windows distributions. I tested both virtualized graphics card drivers and passthrough setup.

Virtualized graphics performance is not okay for heavy or even medium gaming. Similar to performance on Qemu.

Passthrough graphics performance is great. This requires purchasing a dedicated graphics card for use by the host OS when the internal card is passed through to VM.

With multiple graphics cards ideally add a KVM switch so a key combination will switch the monitor, keyboard and mouse between host and the VM.

Guest OSs are easy to make as images.

Annoying to setup.

Qemu

Installed Qemu on Debian without Xen. Qemu can also be leveraged by Xen for certain OS installs. Installed both Windows and Linux on Qemu setup using VHD.

  • Linux - Runs fine has passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Multiple copies of OS aren't easy to do without configuration to each.
  • Windows - Runs fine. Used passthrough of framebuffer via emulated drivers. Has 3D support but not as fast as native. Won't support newer games at decent settings without a better graphics driver. Multiple installs are problematic since device names clash on the network.

Both are VHDs but have network naming problems when run on multiple machines.

Windows VHD support

Windows has built in VHD support.

You can bring up cmd line and mount a VHD during windows install.

This lets you create images which you can easily remove of an OS afterward or move between machines if hardware is similar.

Only one OS loads at a time the benefit is simply that you can have multiple images that are easy to replace on the same machine. That OS has full use of the graphics card. This is ideal.

Windows only. This doesn't change our current situation in anyway except if we wanted to test other versions of Windows.

VBoot

Allows booting VHDs via multiboot in Windows that are not Windows based installs.

This allowed me to install and configure Linux.

No different really then setting up Grub to allow multi os booting. Seems to play nicer with UEFI than Windows/Grub combination. Windows is still not in an image though.

Grub2 Image support

Grub2 has support for loading images. See VBoot above as it's features are used by my test install of Vboot just simply with a Windows host.

Windows 8 To-Go

Windows 8 enterprise and Windows 8 pro (via workaround) allow creating a Windows environment on an external USB stick/drive. The host machine needs to be okay to run Windows 8 but doesn't need to have a legal copy of Windows installed. This means that the license resides on the USB drive. The machine can be booted via USB and is a fully functioning OS. This is an ideal way to maintain a portable hard-disk image cleanly. We make limited numbers available and only to select members.

Tested creating image using Windows 8 pro. No issues. See this page: http://www.eightforums.com/installation-setup/21466-booting-running-windows-8-usb-drive-via-grub.html

Proposed solution

Please comment here with questions or comments.

Tyler W.:

We should review our gaming requirements. If we still need to play games at full speed to support members, then virtualization is out of the question until we have funds.

We can virtualize (have funds!):

  • Qemu or Xen are the way to go. Xen's passthrough is great, but requires that we also purchase hardware in addition to Windows 8.1 licenses.
  • Legally we cannot virtualize our copies of Windows 7.

We can't virtualize (we are broke):

Windows 8 to-go on USB Hard disks that we provide only to users that really need them.

  • Dual boot using some bootloader to pick either Linux in a VHD or the Windows 8 to-go drive.
  • NAS is used to store both a VHD of Linux that we keep up to date and the same across all machines.
  • NAS is used to store ghost image of Windows drives.
  • NAS LDAP is used to control access to both Windows and Linux.

Guests: Kiosk Linux Account.

Members: Named personal LDAP enabled Linux account with file storage and a shared Linux Steam library. Do not have SUDO but can build and install packages in their local directory for personal use. We'll provide a base set of packages that we keep up to date.

Windows Gamers: Only if game can't be played on Linux do we tag accounts in LDAP and give them access to the physical USB Windows 8 to-go hard disks. Idea is to phase out Windows use on lab machines.

We actually keep the ghost image of Windows up to date this time. Update process would be.

  1. Pull existing image from NAS to a USB drive via Ghost.
  2. Bring image up to date and install new software, patch all games to current date.
  3. Push clean image to NAS.
  4. Update other Windows 8 to-go drives from NAS.

Machines auto boot to Linux VHD.