About-virtualization-simple: Difference between revisions

From Alpine Linux
(improve text, fix links)
(add external links, some texts)
Line 12: Line 12:
== Does my system/device support virtualization? ==
== Does my system/device support virtualization? ==
{{Pill||TODO|goldenrod|yellow}}
{{Pill||TODO|goldenrod|yellow}}
* This means if your system/device provides some features to accelerate/enhance virtualization at hardware level.
* Add here bios screen-shots of some different brands.
* Add here bios screen-shots of some different brands.
<pre>
# cat /proc/cpuinfo | grep -io vmx | head -n1
vmx
</pre>


== Setup walkthrough ==
== Setup walkthrough ==
Line 47: Line 54:
This means your devices' virtualization feature is enabled in bios.
This means your devices' virtualization feature is enabled in bios.


Lets find your CPU brand/type.
* Does this mean if <code>/dev/kvm</code> is not available running ''virtual machines'' is not possible?
** No, you can still run ''virtual machines'', but may have some performance or reduced features.
 
 
Now, lets find your CPU brand/type.
<pre>
<pre>
# cat /proc/cpuinfo | grep -E 'model name|Processor'
# cat /proc/cpuinfo | grep -E 'model name|Processor'
Line 97: Line 108:
== Resources ==
== Resources ==
* https://cdn.alpinelinux.org/v3.22/releases/cloud/
* https://cdn.alpinelinux.org/v3.22/releases/cloud/
* https://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine
* https://en.wikipedia.org/wiki/Libvirt
* https://en.wikipedia.org/wiki/X86_virtualization#Intel_virtualization_(VT-x)

Revision as of 15:00, 22 September 2025

What is virtualization

TODO

  • Desc

Above is a short description, This is a vast area to explore, see some resource links below.

This page and some more in section simple should get you started.

Types of virtualization

  • Aside from providing general virtualization tools/utilities packages, Alpine Linux supports virtualization extensively. See its download area exclusively for different platform it supports, i.e. Cloud Images
  • Scope of this page is to get you started with basic virtualization, using general available hardware(see Test Bed), for more see some resource links below.

Does my system/device support virtualization?

TODO

  • This means if your system/device provides some features to accelerate/enhance virtualization at hardware level.
  • Add here bios screen-shots of some different brands.
# cat /proc/cpuinfo | grep -io vmx | head -n1

vmx

Setup walkthrough

WIP

Basic check/setup to prep your system for virtualization usage.

Objective

  1. Install Alpine Linux.
  2. Verify if virtualization is enabled in bios.
  3. Enable/verify availability of /dev/kvm.
  4. Enable/verify correctly loading of virtualization kernel modules for usage.

Test bed

WIP

  • Describe here the test bed/setup used to run the scripts/commands below.
  1. MODEL: Dell Laptop.
  2. CPU: Intel i5 3rd/4th generation with virtualization enabled.
  3. RAM: 8GB

Install Alpine Linux

  1. Diskless installs (Ram based)
  2. SYS installs
Tip: - For further setup to work correctly, its assumed that Alpine Linux installed in, done for version between v3.21.x and v3.22.x

v3.21.x-v3.22.x

Manually fixing/enabling system level kvm modules (as root)

# ls -l /dev/kvm 

crw-rw---- 1 root kvm 10, 232 Sep 21 03:47 /dev/kvm

This means your devices' virtualization feature is enabled in bios.

  • Does this mean if /dev/kvm is not available running virtual machines is not possible?
    • No, you can still run virtual machines, but may have some performance or reduced features.


Now, lets find your CPU brand/type.

# cat /proc/cpuinfo | grep -E 'model name|Processor'

model name	: Intel(R) Core(TM) i5-3340M CPU @ 2.70GHz
...

Cpu is INTEL.

Lets load kvm module.

# modprobe kvm

Lets check current kvm modules already loaded.

# lsmod | grep kvm

kvm                  1392640  0
irqbypass              12288  1 kvm

If this does not show/load CPU specific kernel modules yet.

Lets load it.

# modprobe kvm_intel # for INTEL cpu

# modprobe kvm_amd # for AMD cpu

# lsmod | grep kvm

kvm_intel             409600  3
kvm                  1392640  2 kvm_intel
irqbypass              12288  1 kvm

CPU specific kernel modules are now loaded.

See also

Using virtualization (simple)

New: Walkthroughs

Using virtualization (advanced)

Resources