Logo Atlas
  • Home
  • About Me
  • Skills
  • Education
  • Recent Posts
  • Certifications
  • Posts
  • Dark Theme
    Light Theme Dark Theme System Theme
Logo Inverted Logo
  • Tags
  • ACLs
  • Administration
  • ANDORID
  • APACHE
  • ARP
  • ASIR
  • ASO
  • AW
  • BIND9
  • Bridge
  • CENTOS
  • CI/CD
  • CISCO
  • Cloning
  • CMS
  • Comands
  • Containers
  • Contenedores
  • Controladores NVIDIA
  • DEBIAN
  • Debian 12
  • Debian13
  • DHCP
  • DNAT
  • DNS
  • DNSMASQ
  • Docker
  • Enrutamiento
  • FIREWALL
  • FORENSE
  • FORTINET
  • FORWARDING
  • FTP
  • GNS3
  • HTTPS
  • Hypervisor
  • IPTABLES
  • IPv4
  • IPv6
  • ISO
  • IWEB
  • Jenkins
  • Jenkis
  • Kubernetes
  • KVM
  • LAMP
  • LEMP
  • Libvirt
  • LINUX
  • MariaDB
  • Metrics
  • Mysql
  • NAT
  • Network
  • Networking
  • NFTABLES
  • NVIDIA Drivers
  • Observability
  • OPENVPN
  • Oracle
  • Pools
  • PostgreSQL
  • Prometheus
  • Redes
  • REDHAT
  • Resize
  • Resources
  • ROCKY
  • Routing
  • Services
  • Servicios
  • Sistemas
  • SMR
  • Snapshots
  • SNAT
  • SSH
  • Storage
  • STRONGSWAN
  • Switches
  • Templates
  • Ubuntu
  • Virtualization
  • VM
  • Volumes
  • VPN
  • Windows
  • WIREGUARD
  • Wireshark
  • WordPress
Hero Image
Introduction to storage in KVM/libvirt

Storage is a foundational part of virtualization: it determines how and where virtual machine disks are stored, how snapshots are handled, and what performance and protection options are available. In the KVM/libvirt ecosystem storage is organized around two basic concepts: Storage pools: logical groupings that represent a storage source (for example, a directory, an LVM volume group, an iSCSI target or a Ceph pool). Libvirt exposes and manages these pools to simplify storage usage for VMs. Storage volumes: the units inside a pool that act as virtual disks for guests. Types of pools Libvirt supports several pool types. A practical summary:

  • KVM
  • Virtualization
  • Libvirt
  • Storage
Saturday, October 25, 2025 | 4 minutes Read
Hero Image
Network types in KVM (NAT, isolated and bridged)

In KVM, network virtualization is mainly managed through libvirt, which lets us create and administer various kinds of virtual networks to which our virtual machines connect. Understanding the available network types is key to properly configuring guest connectivity and the host interaction. There are two broad categories of networks in KVM: Private virtual networks: Internal networks isolated from the outside, managed via virtual bridges created by libvirt. Bridged networks: Networks that connect virtual machines directly to the host’s physical network. Private virtual networks These networks are created on the host and provide a controlled environment for virtual machines. They fall into three main types:

  • KVM
  • Virtualization
  • Libvirt
  • Networking
  • Linux
Saturday, October 18, 2025 | 3 minutes Read
Hero Image
How to create a virtual machine with virt-install

After installing KVM on your Ubuntu or Debian system, the next step is to create a virtual machine using the virt-install command-line tool. Check existing virtual machines Before creating a new VM, check if there are any existing ones: sudo virsh list --all If no machines exist, the list will be empty. Create a virtual machine with virt-install The virt-install command allows you to specify all the VM’s properties. For example:

  • Virtualization
  • Linux
  • KVM
  • VM
  • Hypervisor
  • Ubuntu
  • Debian
Monday, October 13, 2025 | 2 minutes Read
Hero Image
Basic Virtualization Concepts in Linux

If you have ever wondered how multiple “machines” can run inside a single physical machine, the answer is virtualization. Let’s explain it in a simple way. What is virtualization? Virtualization is a technology that allows you to create digital versions of machines inside a real machine. Each of these “virtual machines” is called a virtual machine (VM) and can run its own operating system and applications, just like an independent computer.

  • Virtualization
  • Linux
  • KVM
  • VM
Monday, October 13, 2025 | 3 minutes Read
Hero Image
How to install KVM, QEMU and libvirt on Linux

To install KVM on Ubuntu or Debian, you need to prepare the system with the required packages, verify hardware virtualization support, and authorize users to run virtual machines. Below are the steps to install KVM on Ubuntu 24.04 (Noble Numbat) or recent Debian releases. Step 1: Update the system Before installing KVM, update your package repository information: sudo apt update Step 2: Check virtualization support 2.1 Verify CPU compatibility Check if your CPU supports hardware virtualization:

  • Virtualization
  • Linux
  • KVM
  • VM
  • Hypervisor
  • Ubuntu
  • Debian
Monday, October 13, 2025 | 2 minutes Read
Hero Image
How to manage storage pools

This post answers the following questions and provides practical examples: What is a storage pool? How is a pool created and what forms can it take? Storage in KVM/libvirt is organized using “storage pools” and “storage volumes”. In this article we explain what a pool is, why pools are used, and how to manage them with virsh or XML definitions. We include examples, practical recommendations, and notes about LVM-based pools.

  • KVM
  • Virtualization
  • Libvirt
  • Storage
  • Pools
Saturday, October 25, 2025 | 5 minutes Read
Hero Image
How to create and configure private virtual networks

In this step-by-step guide you’ll create three types of virtual networks managed by libvirt and learn simple ways to verify them: NAT (Network Address Translation) Isolated Very isolated (L2 only) We’ll use virsh and XML definitions (you can do the same with virt-manager, but we’ll focus on the CLI). After each creation, there’s a quick check to confirm everything looks good. Before you start: quick requirements Packages: libvirt-daemon and libvirt-daemon-system (or your distro equivalents). Optional: virt-manager. Run commands as root or with sudo. Service: systemctl status libvirtd should be active. See current networks: virsh net-list --all Persistent config paths: /etc/libvirt/qemu/networks/ Tip: avoid subnet conflicts; choose ranges that don’t collide with your physical LAN or other libvirt networks.

  • KVM
  • Virtualization
  • Libvirt
  • Networking
  • Linux
Saturday, October 18, 2025 | 4 minutes Read
Hero Image
How to validate the KVM host installation

Before creating and running virtual machines with KVM, it’s essential to validate that the host meets the required hardware and software capabilities to ensure optimal performance. This guide describes how to verify system capabilities using tools such as virt-host-validate and virsh. 1. Validating CPU virtualization support KVM requires processors with hardware virtualization extensions: Intel: VT-x AMD: AMD-V To check if your CPU is compatible, run: grep --color -Ew 'svm|vmx|lm' /proc/cpuinfo vmx → Intel CPU with VT-x svm → AMD CPU with AMD-V lm → 64-bit support If your CPU lacks these extensions, only CPU emulation will be available and performance will be significantly reduced.

  • Virtualization
  • Linux
  • KVM
  • VM
  • Hypervisor
  • Ubuntu
  • Debian
Monday, October 13, 2025 | 2 minutes Read
Hero Image
Key components of a virtual machine in KVM

In KVM (Kernel-based Virtual Machine), a virtual machine is composed of several elements that interact to emulate a complete hardware environment. Understanding each component helps you manage, troubleshoot, and optimize your VMs more efficiently. 1. Main components Component Description Virtual CPU (vCPU) Cores assigned from the physical host to the guest. Defined with --vcpus when creating the VM. Memory (RAM) Amount of memory assigned. Configured with --ram or can be hot-adjusted with virsh setmem. Virtual disk Storage file (.qcow2, .raw, etc.) used as the guest disk. Managed with virsh vol-* or virt-manager. Network interface Virtual connection (usually virtio or e1000) attached to a libvirt network (default, br0, etc.). Graphics device / console VNC, SPICE, or text mode (no graphical console). Controllable with --graphics or virsh vncdisplay. Firmware / BIOS / UEFI Defines the boot mode (traditional BIOS or UEFI with OVMF). Additional devices CD-ROM, USB controllers, serial channels, sound interfaces, etc. 2. Essential commands to retrieve VM information Once the VM is created, you can use virsh to inspect and manage all its details.

  • Virtualization
  • Linux
  • KVM
  • VM
  • Hypervisor
  • Ubuntu
  • Debian
Monday, October 13, 2025 | 3 minutes Read
Hero Image
Types of hypervisors in Linux

What is a hypervisor? A hypervisor, also known as a Virtual Machine Monitor (VMM), is a software virtualization layer that allows you to create and run multiple virtual machines (VMs) on a single server, as well as run different operating systems in isolation. The physical server running the hypervisor is called the host machine, while each individual VM is called a guest machine. The term “hypervisor” was coined in the 1970s based on the concept of a supervisor in an operating system kernel. By adding the prefix “hyper-”, it is considered the supervisor of the supervisors.

  • Virtualization
  • Linux
  • KVM
  • VM
  • Hypervisor
Monday, October 13, 2025 | 3 minutes Read
Hero Image
How to manage storage volumes with virsh

Short: examples of using the libvirt API (virsh vol-*) to manage volumes inside storage pools and notes about backend-specific behavior. Managing storage volumes with virsh In this section we’ll look at storage volume management using libvirt’s API (the virsh tool). We will use pools of type dir (image files on disk), although many operations are applicable to other backends; differences are noted where relevant. Pools and volumes: quick concept A “volume” in libvirt is the storage unit created inside a pool. In dir and fs pools volumes are files (for example qcow2, raw); in logical pools they are LVM logical volumes; in disk pools they can map to partitions; and in networked backends (Gluster, RBD, iSCSI) creation and management may require backend-specific tools.

  • KVM
  • Virtualization
  • Libvirt
  • Storage
  • Volumes
Saturday, October 25, 2025 | 6 minutes Read
Hero Image
How to create a bridge interface on the KVM host

A bridge on the host allows your virtual machines to connect directly to the physical network as if they were another machine on the LAN. It’s the basis for “bridged networks” covered in the network types section. Important: if you perform these changes over remote SSH you may lose connectivity. Whenever possible use local/console access or have a recovery plan (KVM/IPMI, a second interface, maintenance window, etc.). 0. Preparation: identify your physical interface and back up configs Identify the physical interface connected to your LAN/Internet (for example: enp1s0, enp3s0, eth0): ip -br link ip -br addr Back up your network configuration files before changing anything — use the command appropriate to your setup: sudo cp -a /etc/netplan /etc/netplan.bak.$(date +%F) 2>/dev/null sudo cp -a /etc/network/interfaces /etc/network/interfaces.bak.$(date +%F) 2>/dev/null Important note: the IP must live on the bridge (br0), not on the physical interface. The physical interface will be left without an IP and become a slave of the bridge. Option A: Netplan (modern Ubuntu/Debian) Applies to systems using Netplan (Ubuntu Server ≥ 18.04, Debian when migrated). The most common renderer is networkd, but NetworkManager can also be used. Here we configure br0 and enslave the physical interface to the bridge.

  • KVM
  • Virtualization
  • Libvirt
  • Networking
  • Linux
  • Bridge
Saturday, October 18, 2025 | 5 minutes Read
  • ««
  • «
  • 1
  • 2
  • »
  • »»
Navigation
  • About Me
  • Skills
  • Education
  • Recent Posts
  • Certifications
Contact me:
  • contacto@javiercd.es
  • javierasping
  • Francisco Javier Cruces Doval

Liability Notice: This theme is under MIT license. So, you can use it for non-commercial, commercial, or private uses. You can modify or distribute the theme without requiring any permission from the theme author. However, the theme author does not provide any warranty or takes any liability for any issue with the theme.


Toha Theme Logo Toha
© 2023 Copyright.
Powered by Hugo Logo