Linux serverNETWORK ADMINISTRATIONS

Install & Manage KVMs in RHEL 8 (CentOS 8) | Running Virtual Machines in RHEL 8 | Nehra Classes

Install & Manage KVMs in RHEL 8 (CentOS 8) | Running Virtual Machines in RHEL 8 | Nehra Classes
*****
Kernel-based Virtual Machine (KVM) is an open-source and de facto standard virtualization solution that is tightly integrated into Linux.

It is a loadable kernel module that turns Linux into a type-1 (bare-metal) hypervisor that creates a virtual operating platform used to run virtual machines (VMs).

# grep -e ‘vmx’ /proc/cpuinfo
# grep -e ‘svm’ /proc/cpuinfo

Also, confirm that KVM modules are loaded in the kernel (they should be, by default).

# lsmod | grep kvm

Step 1: Setup Cockpit Web Console on CentOS 8
# dnf install cockpit cockpit-machines

2. When the package installation is complete, start the cockpit socket, enable it to auto-start at system boot and check its status to confirm that it is up and running.
# systemctl start cockpit.socket
# systemctl enable cockpit.socket
# systemctl status cockpit.socket

3. Next, add the cockpit service in the system firewall which is enabled by default, using the firewall-cmd command and reload the firewall configuration to apply the new changes.
# firewall-cmd –add-service=cockpit –permanent
# firewall-cmd –reload

4. To access the cockpit web console, open a web browser and use the following URL to navigate.
https://FQDN:9090/
OR
https://SERVER_IP:9090/

5. Next, install the virtualization module and other virtualization packages as follows.
# dnf module install virt
# dnf install virt-install virt-viewer

6. Next, run the virt-host-validate command to validate if the host machine is set up to run libvirt hypervisor drivers.
# virt-host-validate

7. Next, start the libvirtd daemon (libvirtd) and enable it to start automatically on each boot.
# systemctl start libvirtd.service
# systemctl enable libvirtd.service
# systemctl status libvirtd.service

8. Now create a network bridge (virtual network switch) to integrate virtual machines to the same network as the host.

9. From the pop-up window, enter the bridge name and select the bridge slaves or port devices (e.g enp2s0 representing the Ethernet interface) as shown in the following screenshot. Then click Apply.

10. Now when you look at the list of Interfaces, the new bridge should appear there and after a few seconds, the Ethernet interface should be disabled (taken down).

Step 4: Creating and Managing Virtual Machines via Cockpit Web Console
11. From the cockpit main interface, click on the Virtual Machines option as highlighted in the following screenshot. From the Virtual Machines page, click on Create VM.

12. A window with options to create a new VM will display. Enter the Connection, Name (e,g ubuntu18.04), Installation Source Type (on the test system, we have stored ISO images under the storage pool i.e /var/lib/libvirt/images/). Also check the option to immediately start the VM, then click Create.

13. After clicking Create from the previous step, the VM should be automatically started and it should boot using the ISO image provided. Proceed to install the guest operating system (Ubuntu 18.04 in our case).

If you click on Network Interfaces of the VM, the network source should indicate the newly created bridge network interface.

And during the installation, at the step of configuring a network interface, you should be able to notice that the VMs Ethernet interface receives an IP address from the DHCP server of the host network.

14. When the guest OS installation is complete, reboot the VM, then go to Disks and detach/remove the cdrom device under the VMs disks. Then click Run to start the VM.

15. Now under Consoles, you can log into the guest OS using a user account you created during the installation of the OS.

Step 5: Accessing a Virtual Machine Guest OS via SSH.
*****
Join this channel to get access to perks: →
https://www.youtube.com/channel/UCvk2Fst1h1a0StSnUcvGfBQ/join
*****
My Desktop Computer Components: →
Processor → https://amzn.to/3zfMcGv
Motherboard → https://amzn.to/3ipA6UD
Graphics Card → https://amzn.to/3exMCjX
RAM → https://amzn.to/3eA4Zom
SSD NVME → https://amzn.to/3iqxntX
SSD Sata → https://amzn.to/3zdWvuK
Power Supply Unit → https://amzn.to/3ktLf9D
Cabinet → https://amzn.to/3iqxINf
Keyboard & Mouse Combo → https://amzn.to/3hN18pK
Monitor → https://amzn.to/36Kztzx
Audio System → https://amzn.to/2VTbrA9
UPS → https://amzn.to/3zgGfJo
******
Contact Us: →
Github → https://github.com/ervikasnehra
WhatsApp → https://bit.ly/2Kpqp5z
Telegram Channel → https://t.me/NehraClasses
Email → nehraclasses@gmail.com
******
Follow Us On Social Media Platforms: →
Twitter → https://twitter.com/nehraclasses/
Facebook Page → https://www.facebook.com/nehraclasses/
Instagram → https://www.instagram.com/nehraclasses/
Website → https://nehraclassesonline.business.site/
=======
©COPYRIGHT. ALL RIGHTS RESERVED.

#NehraClasses #LinuxTraining #AnsibleTraining

source

centos 8

14 thoughts on “Install & Manage KVMs in RHEL 8 (CentOS 8) | Running Virtual Machines in RHEL 8 | Nehra Classes

  • Install & Manage KVMs in CentOS 8 (RHEL 8):
    ===========================================

    Kernel-based Virtual Machine (KVM) is an open-source and de facto standard virtualization solution that is tightly integrated into Linux.

    It is a loadable kernel module that turns Linux into a type-1 (bare-metal) hypervisor that creates a virtual operating platform used to run virtual machines (VMs).

    Under KVM, each VM is a Linux process that is scheduled and managed by the kernel and has private virtualized hardware (i.e CPU, network card, disk, etc.).

    It also supports nested virtualization, which allows you to run a VM inside another VM.

    Some of its key features include support for a wide range of Linux-supported hardware platforms (x86 hardware with virtualization extensions (Intel VT or AMD-V)),
    it provides enhanced VM security and isolation using both SELinux and secure virtualization (sVirt), it inherits kernel memory management features, and it supports
    both offline and real-time migration.

    Prerequisites
    A fresh installation of CentOS 8 server
    A fresh installation of RHEL 8 server
    A RedHat subscription enabled on RHEL 8 server
    Additionally, make sure that your hardware platform supports virtualization by running the following command.

    # grep -e 'vmx' /proc/cpuinfo #Intel systems
    # grep -e 'svm' /proc/cpuinfo #AMD systems

    Also, confirm that KVM modules are loaded in the kernel (they should be, by default).

    # lsmod | grep kvm

    Step 1: Setup Cockpit Web Console on CentOS 8
    # dnf install cockpit cockpit-machines

    2. When the package installation is complete, start the cockpit socket, enable it to auto-start at system boot and check its status to confirm that it is up and running.
    # systemctl start cockpit.socket
    # systemctl enable cockpit.socket
    # systemctl status cockpit.socket

    3. Next, add the cockpit service in the system firewall which is enabled by default, using the firewall-cmd command and reload the firewall configuration to apply the new changes.
    # firewall-cmd –add-service=cockpit –permanent
    # firewall-cmd –reload

    4. To access the cockpit web console, open a web browser and use the following URL to navigate.
    https://FQDN:9090/
    OR
    https://SERVER_IP:9090/

    5. Next, install the virtualization module and other virtualization packages as follows. The virt-install package provides a tool for installing virtual machines from the command-line interface, and a virt-viewer is used to view virtual machines.
    # dnf module install virt
    # dnf install virt-install virt-viewer

    6. Next, run the virt-host-validate command to validate if the host machine is set up to run libvirt hypervisor drivers.
    # virt-host-validate

    7. Next, start the libvirtd daemon (libvirtd) and enable it to start automatically on each boot. Then check its status to confirm that it is up and running.
    # systemctl start libvirtd.service
    # systemctl enable libvirtd.service
    # systemctl status libvirtd.service

    8. Now create a network bridge (virtual network switch) to integrate virtual machines to the same network as the host. By default, once libvirtd daemon is started, it activates the default network interface virbr0 that represents the virtual network switch which operates in NAT mode.

    For this guide, we will create a network interface in a bridged mode called br0. This will enable virtual machines to be accessible on the host networks.

    9. From the pop-up window, enter the bridge name and select the bridge slaves or port devices (e.g enp2s0 representing the Ethernet interface) as shown in the following screenshot. Then click Apply.

    10. Now when you look at the list of Interfaces, the new bridge should appear there and after a few seconds, the Ethernet interface should be disabled (taken down).

    Step 4: Creating and Managing Virtual Machines via Cockpit Web Console
    11. From the cockpit main interface, click on the Virtual Machines option as highlighted in the following screenshot. From the Virtual Machines page, click on Create VM.

    12. A window with options to create a new VM will display. Enter the Connection, Name (e,g ubuntu18.04), Installation Source Type (on the test system, we have stored ISO images under the storage pool i.e /var/lib/libvirt/images/), Installation Source, Storage, Size, Memory as shown in the following image. The OS Vendor and Operating System should be picked automatically after entering Installation Source.

    Also check the option to immediately start the VM, then click Create.

    13. After clicking Create from the previous step, the VM should be automatically started and it should boot using the ISO image provided. Proceed to install the guest operating system (Ubuntu 18.04 in our case).

    If you click on Network Interfaces of the VM, the network source should indicate the newly created bridge network interface.

    And during the installation, at the step of configuring a network interface, you should be able to notice that the VMs Ethernet interface receives an IP address from the DHCP server of the host network.

    Note that you need to install the OpenSSH package to access the guest OS via SSH from any machine on the host network, as described in the last section.

    14. When the guest OS installation is complete, reboot the VM, then go to Disks and detach/remove the cdrom device under the VMs disks. Then click Run to start the VM.

    15. Now under Consoles, you can log into the guest OS using a user account you created during the installation of the OS.

    Step 5: Accessing a Virtual Machine Guest OS via SSH

    16. To access the newly installed guest OS from the host network via SSH, run the following command (replace 10.42.0.197 with your guest’s IP address).
    $ ssh tecmint@10.42.0.197

    17. To shut down, restart or delete a VM, click on it from the list of VMs, then use the buttons highlighted in the following screenshot.
    Delete Guest VM from KVM.

  • Is this free of charge. Can we use in production environment or oracle database?

  • nice. please list equivalent RHEL commands too. Thank you.

  • Sir how to configure KVM in Rhel 7 ,I don't have Redhat support.what to do?

  • Do you have any video covering red hat virtualization host 4.4.1 and how to use ovirt within RHVH?

  • Hello Sir,
    I followed all step kvm installed successfully but when try to install ubuntu vm in kvm via cockpit, vm get paused with following log error

    cat /var/log/libvirt/ubuntu.log

    KVM: entry failed, hardware error 0x80000021

    If you're running a guest on an Intel machine without unrestricted mode

    support, the failure can be most likely due to the guest entering an invalid

    state for Intel VT. For example, the guest maybe running in big real mode

    which is not supported on less recent Intel processors.

    EAX=00009900 EBX=00000000 ECX=00000000 EDX=00000600

    ESI=00000000 EDI=00000000 EBP=00000000 ESP=00000000

    EIP=00001010 EFL=00010002 [——-] CPL=0 II=0 A20=1 SMM=0 HLT=0

    ES =9900 00099000 0000ffff 00009300

    CS =9900 00099000 0000ffff 00009b00

    SS =9900 00099000 0000ffff 00009300

    DS =9900 00099000 0000ffff 00009300

    FS =0000 00000000 0000ffff 00009300

    GS =0000 00000000 0000ffff 00009300

    LDT=0000 00000000 0000ffff 00008200

    TR =0000 00000000 0000ffff 00008b00

    GDT= 00000000 0000ffff

    IDT= 00000000 0000ffff

    …..

  • Thanks sir🙏, to share the video how to create and manage vm via cockpit web interface. Very interesting. Jai Hind🇮🇳

  • Vikash, Can you show the same in Ubuntu ? I mean KVM configuration in Ubuntu.. Actually in my company we are using Ubuntu only. We have KVM setup on Ubuntu

  • very good video, i have learned kvm and kvm vm management via cockpit web interface, thanks again

  • I hope it would be series of KVM videos.
    Thank you for taking time and serving the society.

Comments are closed.