首页 > 其他分享 >KVM虚拟机安装部署全攻略 cockpit

KVM虚拟机安装部署全攻略 cockpit

时间:2024-06-21 14:23:51浏览次数:11  
标签:虚拟化 0.100 qcow2 虚拟机 KVM 全攻略 cockpit

01

原理



KVM(Kernel-based Virtual Machine)虚拟化技术是一种基于内核的虚拟化技术,KVM虚拟化技术的实现依赖于CPU的虚拟化扩展(如Intel VT和AMD-V)。当宿主机启动时,KVM会加载一个轻量级的内核模块kvm.ko,该模块负责与硬件进行交互,实现虚拟机的创建、管理和调度。

 

02

组成



● KVM内核模块:负责与硬件进行交互,提供虚拟机的创建、管理和调度功能。

● QEMU模拟器:用于模拟各种硬件设备,如CPU、内存、硬盘等。QEMU通过与KVM内核模块进行通信,实现对虚拟机的控制和管理。

● libvirt库:提供了一个跨平台的API,用于管理虚拟机、存储和网络等资源。libvirt库可以与KVM、Xen、VMware等多种虚拟化技术集成,实现了资源的集中管理和自动化运维。

 

03

特点



● 高效性:KVM虚拟化技术基于Linux内核,与操作系统紧密结合,提供了高性能的虚拟化解决方案。

● 隔离性:每个虚拟机都有自己的操作系统、应用程序和用户空间,彼此之间相互隔离。这种隔离性使得虚拟机之间的故障互不影响,提高了系统的稳定性和安全性。

● 灵活性:KVM支持多种操作系统和平台,可以根据不同的需求灵活配置虚拟机。

● 自动化运维:通过libvirt库提供的API,可以实现虚拟机的自动化创建、管理和调度,降低了运维成本。

 

04

应用



● 云计算:KVM虚拟化技术为云计算提供了强大的基础设施支持,可以快速地创建、管理和调度虚拟机资源。

● 企业IT基础机房设施管理系统:通过KVM客户端管理软件,可以轻松地直接访问位于多个远程位置的服务器和设备,实现远程管理和维护。

● 科研与教育:KVM虚拟化技术为科研和教育领域提供了灵活的实验环境,可以模拟多种操作系统和平台,方便学生进行实验和学习。

 

 

安装部署

 

01

虚拟化软件安装



注:此教程以Centos7.9系统演示,其他linux内核系统也可参考,然而,不同操作系统间存在的固有差异,可能会引发诸如依赖关系不全、软件版本不兼容等问题。

#安装需要的包yum -y install qemu-kvm virt-install cockpit cockpit-docker cockpit-machines cockpit-dashboard cockpit-storaged cockpit-packagekit#启动systemctl enable --now cockpit.socketsystemctl restart libvirtdsystemctl restart cockpit

浏览器访问:http://ip:9090  ,用户名密码为本机的用户名和密码。

图片

 

02

创建虚拟机



登录后点击虚拟机=》Create VM创建虚拟机

图片

进入安装界面进行系统安装

图片

安装完毕后我们给虚拟机增加数据盘,注意:不同的磁盘 盘符不能相同。

#先关机virsh destroy centos7.9cd /var/lib/libvirt/images#生成100G的磁盘qemu-img create -f qcow2 data1_disk.qcow2 100G#修改虚拟机配置virsh edit centos7.9#增加以下内容    <disk type='file' device='disk'>      <driver name='qemu' type='qcow2'/>      <source file='data1_disk.qcow2'/>      <target dev='vdb' bus='virtio'/>    </disk>#其中type表示硬盘的格式#file表示硬盘所在的路径#dev表示硬盘在系统中显示的盘符#bus表示硬盘的接线类型,如果是windows系统一般是ide

图片

开机

virsh start centos7.9

 

03

测试



创建一个ip为10.10.0.100 规格4C 8G,拥有三个100G数据盘的虚拟机。

 

3.1 准备工作

复制此虚拟机的系统盘作为后续虚拟机的系统盘模板

cp centos7.9.qcow2 virtualization-base-centos.qcow2

获取此虚拟机的xml模板

virsh dumpxml centos7.9 > CentOS7.9-base.xml

3.2 创建数据盘

qemu-img create -f qcow2 data1_disk10.10.0.100.qcow2 100Gqemu-img create -f qcow2 data2_disk10.10.0.100.qcow2 100Gqemu-img create -f qcow2 data3_disk10.10.0.100.qcow2 100G

3.3 复制系统盘

cp virtualization-base-centos.qcow2 os_disk10.10.0.100.qcow2

3.4 修改xml配置文件

cp CentOS7.9-base.xml 10.10.0.100.xmlvim 10.10.0.100.xml

修改如下地方,修改完成后保存退出

图片

 图片图片

3.5 定义并运行虚拟机

#定义虚拟机virsh define 10.10.0.100.xml#查看虚拟机状态virsh list --all#运行虚拟机virsh start 10.10.0.100

3.6 登入虚拟机修改ip

cd /etc/sysconfig/network-scripts/

找到我们需要修改的配置文件,此机器的配置文件名为ifcfg-eth0

vim ifcfg-eth0BOOTPROTO="static"ONBOOT="yes"IPADDR=10.10.0.100 #静态IPGATEWAY=x.x.x.x #默认网关NETMASK=255.255.255.0 #子网掩码

重启网络

service network restart

修改端口
    cockpit修改端口

Cockpit是一个基于web的用户界面,它允许用户通过web界面管理Linux系统。默认情况下,Cockpit的web服务器监听在9090端口上。如果您想要修改Cockpit的端口,您需要编辑Cockpit的服务文件或者使用systemd的socket激活机制。

以下是如何修改Cockpit的端口:

  1. 编辑服务文件:

      sudo systemctl edit cockpit.socket

这将在/etc/systemd/system/cockpit.socket.d/目录下创建一个覆盖文件。在其中添加以下内容来修改端口:

      [Socket] ListenStream=新端口号

例如,要将端口改为8080:

      [Socket] ListenStream=8080

然后重新加载systemd配置并重启Cockpit服务:

      sudo systemctl daemon-reload sudo systemctl restart cockpit.socket cockpit.service



标签:虚拟化,0.100,qcow2,虚拟机,KVM,全攻略,cockpit
From: https://www.cnblogs.com/gaoyanbing/p/18260413

相关文章

  • 金仓数据库全攻略:简化部署,优化管理的全流程指南
    金仓数据库人大金仓(KINGBASE)是一家拥有20多年数据库领域经验的公司,专注于数据库产品的研发和服务。公司曾参与多项国家级重大课题研究,如"863"计划、电子发展基金、信息安全专项等。其核心产品是金仓数据库管理系统KingbaseES,这是一个大型通用数据库,具有国际先进水平。金仓数据......
  • kvm镜像迁移到openstack集群,发现镜像文件有损
     因为没有停机然后复制或者是创建出来的镜像文件,有可能系统盘直接损坏了,修复一下之后,重新用它来生成虚拟机,可以正常使用了 修复命令:xfs_repair /dev/vda2 #这个不行用下面的,如果磁盘繁忙,umount一下xfs_repair-L /dev/vda2  【1】定义虚拟机,发现磁盘文件损坏了......
  • 跨平台、跨主机共享键鼠方案(KVM)
    背景最近慢慢把开发工作转移到了Ubuntu系统,但由于部分限制,不得不继续使用win电脑的部分功能,于是就有了这么个场景:怎么在日常使用的过程当中,使用一套键鼠设备控制不同主机、系统。针对这些场景我个人使用过3套方案,可以给大家参考评估,选择最合适自己的方案。 方案方......
  • 虚拟机的初步安装
    一,虚拟机简介VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC,以此来实现在一台机器上真正同时运行两个独立的操作系统。VMware主要特点:1,不需要分区或重新开机就能在同一台PC上使用两种以上的操作系统2.本机系统可以与虚拟......
  • 在CentOS上创建虚拟机以及Redis
    虚拟机向导步骤1.典型2.稍后安装操作系统3.liunxCentOS764位4.自定义文件——使用IOS映射文件完成开启虚拟机选择InstallCentOS7设置ROOT密码都可以设置为root网卡设置ipaddr查看IP地址cd/进入根目录cdetc进入etc目录cdsysconfig进入sysconf......
  • 第一章 虚拟机栈
    虚拟机栈的出现背景(1)由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的【如果设计成基于寄存器的,耦合度高,性能会有所提升,因为可以对具体的CPU架构进行优化,但是跨平台性大大降低】.(2)优点是跨平台,指令集小,编译器容易实......
  • Linux虚拟化技术概览:从KVM到Docker
    Linux虚拟化技术是现代数据中心和云基础设施的核心组成部分,它允许在同一台物理服务器上运行多个独立的操作系统实例,从而提高资源利用率、灵活性和安全性。从KVM到Docker,Linux虚拟化经历了从传统虚拟机到轻量级容器的演进,下面是对这一技术发展路径的一个概览。1.KVM(Kernel-b......
  • 深入理解Java虚拟机
    类加载加载java数据类型分为基本数据类型和引用数据类型,基本数据类型由虚拟机预先定义,引用数据类型才需要类的加载过程。类的加载,就是将java类的字节码文件加载到内存中,并通过字节码在内存中构建出类的原型---类模板对象。jvm把字节码中的常量池,类字段,类方法等信息存储到类模......
  • Windows11[虚拟机] Kettle 通过SSH隧道 连接远程[Mac] Mysql数据库
    Kettle无法直接连接使用SSH通道的MySQL,需要通过SSH隧道(推荐),具体操作如下所示:一、搭建XshellSSH隧道转发1、点击“连接”借助Xshell7,首先创建会话mac(名字随便写),右键-->属性,在弹出窗口中填写名称(随便写),填写主机:SSH隧道的ip地 点击“添加”按钮出现如下,填写源主机:localh......
  • KVM 概念,以及跟QEMU的关系
    参考链接:https://developer.aliyun.com/article/724394传统软件运行在单个机器设备上的交付形式已经不能满足当下现代应用的交付的需求。现代应用轻量、动态、密集,为了更充分的利用单个机器上的计算、存储和网络,虚拟化技术应运而生。在虚拟化技术的加持下,平台资源被当成一种服......