首先通过VMware创建一台虚机,建议内存大于1G,并开启CPU 的inter vt-x功能,安装好对应的软件后,yum install -y qemu-kvm* virt-* libvirt*

准备一个镜像,用于KVM创建虚机是的系统文件,通过WSCP上传系统镜像文件,这个镜像就是后面创建虚机时所用的镜像文件。

通过命令行创建虚机

[root@KVM03-10 ~]# virt-install --virt-type kvm --os-type rhel7 --name centos7 --memory 1024 --vcpu 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7.3-x86_64-DVD-1611.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

#virtual-install  是因为之前安装了virt-*,采用这条命令,另外还有qemu-img等命令也可用于创建虚机

#virt-type kvm虚拟化类型KVM;Libvirt支持管理多种虚拟化,这里是告诉libvirt我是创建什么类型的虚拟机

#os-type 操作系统类型,rhel7

#name 虚机名称

#memory 虚机内存大小

#vcpu 虚机cpu数量

#disk 虚机硬盘位置、大小、格式

[root@KVM03-10 opt]# ll -h
total 4.1G
-rw-------. 1 qemu qemu 10G Aug 26 09:59 centos2.raw
-rw-r--r--. 1 qemu qemu 4.1G Apr 27 20:56 CentOS-7.3-x86_64-DVD-1611.iso

#cdrom 虚机启用所用到的镜像文件

#network 虚机使用的网络,该功能是由libvirt提供,我理解的!所以需要保障yum安装的时候libvirt安装完全。该过程可以看看vmware workstations的默认网络是nat模式

#--graphics 虚机的链接方式,VNC,并允许所有用户连接vnc,listen=0.0.0.0

#noautoconsole

进行到这一步提示我们安装已经在进行中,让我们连接,这里需要通过VNC连接,查看qemu-kvm vnc使用的端口情况

[root@KVM03-10 opt]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 4573/qemu-kvm
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1804/rpcbind
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 4395/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1830/sshd

通过tight-VNC即可连接,但是连接前需要关闭firewall

[root@KVM03-10 qemu]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-08-26 17:46:46 CST; 4h 47min left
Docs: man:firewalld(1)
Main PID: 1876 (firewalld)
Tasks: 2
CGroup: /system.slice/firewalld.service
└─1876 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Aug 26 17:46:43 KVM03-10.0.0.15 systemd[1]: Starting firewalld - dynamic firewall daemon...
Aug 26 17:46:46 KVM03-10.0.0.15 systemd[1]: Started firewalld - dynamic firewall daemon.
[root@KVM03-10 qemu]# systemctl stop firewalld
[root@KVM03-10 qemu]# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

即可进入到虚机安装部署界面

安装步骤同正常情况下centos的安装没有差异,唯独分区的地方,分区类型选择为standard partition

把10G的磁盘全部给根分区,这样做的目的主要是

centos系统可以自动识别网卡为虚拟网卡,并开机启动,会为其分配一个地址

等待一会,虚机就安装完成了!!

没事学学KVM(二)创建一台虚拟机的更多相关文章

  1. Mirantis对OpenStack的性能测试:高并发创建75000台虚拟机

    硅谷创业公司Mirantis不久前进行了一项基准测试,测试在OpenStack Havana版本上创建75000台虚拟机的性能数据.就启动时间和成功率而言,当应用250个并发部署75000台虚拟机是最 ...

  2. Centos7 搭建KVM并创建Linux Windows虚拟机

    一.安装KVM   查看系统版本 cat /etc/redhat-release     关闭防火墙及selinux   systemctl disable firewalld.service 查看防 ...

  3. 没事学学KVM(四)虚拟机基础管理

    上次学完虚机的创建.开关机.备份配置文件等,今天学学其他几个常用的虚机管理命令: 1.重命名  方法一:virsh domrename old-name new-name virsh # list I ...

  4. 没事学学KVM(五)虚拟机基础管理

    1.今天学习一下KVM的开机自启功能.开机启动,即随宿主机启动而启动 virsh autostart vm-name 开机自启的前提是libvirt功能也是开机启动的:systemctl enable ...

  5. 没事学学KVM(一)

    学习KVM肯定要找来一台虚机来学习呀,通过VMware workstation创建虚机,现在的电脑CPU,包括INTER,AMD都支持,公司发的电脑CPU为inter,通过开启inter VT-X可在 ...

  6. <Mastering KVM Virtualization>:第四章 使用libvirt创建你的第一台虚拟机

    在第3章<搭建独立的KVM虚拟化>中,你安装并启动了libvirtd服务.你还引入了帮助你管理虚拟机的libvirt管理工具virt-manager和virsh. 相较于命令行,新用户总是 ...

  7. KVM 命令行启动第一台虚拟机

    KVM创建第一台虚拟机 1 创建一个镜像 [root@kvm ~]# qemu-img create -f raw /opt/CentOS6.-x86_64.raw 5G Formatting [ro ...

  8. 通过virt-manager 利用NFS创建、迁移虚拟机1

    NFS作为一种网络文件系统,近些年随着云计算的发展也变得越来越受欢迎.因为云环境下会部署大量的虚拟机,而在物理机发生故障的时候,云服务商必须要保障虚拟机的安全性,即不能因为物理机的故障就停止虚拟机.这 ...

  9. (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)

    在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机 前提:服务器端安装桌面版的centos系统 CentOS Linux release 7.5.1804 (Core) ...

随机推荐

  1. RXJAVA之概述

    RXjava是一个异步和基于事件的程序库.RXjava的核心理念是编程风格的的变化,从传统的命令式程序改变到函数响应式编程. RXjava的基本概念: Observable:发射源,即对象产生的地方. ...

  2. Java Set 常用集合 HashSet、LinkedHashSet、TreeSet

    Java 中的 Set 是非常常用的数据类型.Set 是无序的 Collection,Java Set 有三个常用的实现类,分别是:HashSet.LinkedHashSet.TreeSet 本文基于 ...

  3. Mac 环境下配置 MySQL 以及 Mac终端登录MySQL

    1.首先mysql官网下载Mac 版 mysql直接安装 2.打开偏好设置-> MySQL -> 查看是否开启mysql服务 3.打开终端 进入mysql目录: /usr/local/my ...

  4. python实现随机复制若干个文件到新目录

    python实现随机复制若干个文件到新目录 1说明 1.1 目的 随机选择一个文件下的若干个文件,并将文件复制到新文件夹下 1.2 要求 需要将random_select_and_copy_file. ...

  5. Linux系统编程 —读写锁rwlock

    读写锁是另一种实现线程间同步的方式.与互斥量类似,但读写锁将操作分为读.写两种方式,可以多个线程同时占用读模式的读写锁,这样使得读写锁具有更高的并行性. 读写锁的特性为:写独占,读共享:写锁优先级高. ...

  6. 每日爬虫JS小逆之5分钟旅游网MD5一锅端

    来吧骚年,每天花5分钟锻炼一下自己的JS调试也是极好的,对后期调试滑块验证码还原.拖动很有帮助,坚持下去,我们能赢.建议亲自试试哦,如果对大家有帮助的话不妨关注一下知识图谱与大数据公众号,当然不关注也 ...

  7. django 的初始项目结构

    2.创建Django项目   root@dev:shiyanlou_project# workon syl (syl) root@dev:shiyanlou_project# cd /aaa/shiy ...

  8. MySQL 8.0索引合并

    简介 参考https://dev.mysql.com/doc/refman/8.0/en/index-merge-optimization.html#index-merge-intersection. ...

  9. SQL Server 子查询遇到的坑

    这两天改 Bug 时使用 Sql Server 的子查询遇到了一些问题,特此记录一下,之前用 MySQL 比较多,按照 MySQL 的语法其实是没有问题的. 以下面这张表为例: 执行以下 SQL: s ...

  10. Centos-搜索文件或目录-find

    find 在指定的目录下查找指定的文件 相关选项 -type 指定文件类型 -name   指定文件名字,支持通配符 -gid   指定用户组ID -uid   指定用户ID -empty 查找长度为 ...