KVM初步安装与网络配置

1.虚拟机上打开Intel VT-x or AMD-V支持

 

 

 

 

 

2.安装kvm
  yum -y install kvm python-virtinst libvirt  bridge-utils virt-manager qemu-kvm-tools  virt-viewer  virt-v2v
  如果只是使用命令行管理kvm,可以只安装yum install -y qemu-kvm libvirt virt-install

 

3.lsmod|grep kvm
  没有可以手动加载:
  modprobe kvm
  modprobe kvm-intel

 

 

  

 

4.查看版本信息:

 

   virt-install --version
   virsh --version

 

 

5.启动service libvirtd start

 

6.打开system tools->virtual machine manager,创建一个vm

 

 

图形化界面,一步一步往下和在vmware上安装一个虚机步骤类似

 

7.安装完后,可以查看虚拟硬盘等信息:

 

 

8.

 

 

9.登录新建的vm:

 

 

10.查看kvm的进程:

 

11:KVM的网络,默认安装是NAT模式:
1>查看etc/libvirt/qemu/yo.xml
    ce type="network">
    mac address="52:54:00:0e:7c:0d"/>
   <source network="default"/>

[root@yaya libvirt]# virsh net-list --all
Name                 State      Autostart     Persistent
--------------------------------------------------
default              active     yes           yes

 

2>宿主机上ip addr的输出:

4: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether 52:54:00:3d:11:65 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 500
    link/ether 52:54:00:3d:11:65 brd ff:ff:ff:ff:ff:ff
13: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
    link/ether fe:54:00:0e:7c:0d brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fe0e:7c0d/64 scope link

3>宿主机上查看网桥:
[root@yaya libvirt]# brctl show
bridge name bridge id        STP enabled interfaces
pan0  8000.000000000000  no  
virbr0  8000.5254003d1165 yes  virbr0-nic
                                                     vnet0

4>宿主机上防火墙规则自动被添加,宿主机上对来自guest的包的转发和SNAT把guest的地址转换成宿主机的可用地址访问外网

[root@yaya Desktop]# iptables -nvL -t nat
Chain POSTROUTING (policy ACCEPT 242 packets, 16589 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MASQUERADE  tcp  --  *      *       192.168.122.0/24    !192.168.122.0/24    masq ports: 1024-65535 
    0     0 MASQUERADE  udp  --  *      *       192.168.122.0/24    !192.168.122.0/24    masq ports: 1024-65535 
    0     0 MASQUERADE  all  --  *      *       192.168.122.0/24    !192.168.122.0/24    

[root@yaya Desktop]# iptables -nvL 
Chain INPUT (policy ACCEPT 14865 packets, 13M bytes)
 pkts bytes target     prot opt in     out     source               destination         
    5   311 ACCEPT     udp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0           udp dpt:53 
    0     0 ACCEPT     tcp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0           tcp dpt:53 
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  *      virbr0  0.0.0.0/0            192.168.122.0/24    state RELATED,ESTABLISHED 
    0     0 ACCEPT     all  --  virbr0 *       192.168.122.0/24     0.0.0.0/0           
    0     0 ACCEPT     all  --  virbr0 virbr0  0.0.0.0/0            0.0.0.0/0           
    0     0 REJECT     all  --  *      virbr0  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable 
    0     0 REJECT     all  --  virbr0 *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable 

12:手动修改成bridge模式:

1>[root@yaya network-scripts]# cp ifcfg-eth0 ifcfg-br0
ifcfg-eth0的内容:
DEVICE=eth0
HWADDR=00:0c:29:86:a3:60
TYPE=Ethernet
UUID=a7cd0a6d-0e88-48fb-b15b-99291bb11127
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
USERCTL=no
PEERDNS=yes
IPV6INIT=no
BRIDGE=br0

 

ifcfg-br0的内容:
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.0.109
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
USERCTL=no
PEERDNS=yes
IPV6INIT=no

 

2>service network start
Bringing up interface eth0:  Error: Connection activation failed: Master connection not found or invalid
                                                           [FAILED]
解决办法是:
[root@yaya network-scripts]# service NetworkManager stop

 

3>宿主机上查看:

[root@yaya Desktop]# brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.000c2986a360	no		eth0
pan0		8000.000000000000	no		
virbr0		8000.5254003d1165	yes		virbr0-nic
[root@yaya Desktop]# 
[root@yaya Desktop]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
169.254.0.0     0.0.0.0         255.255.0.0     U     1015   0        0 br0
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 br0

 

4.vm选择新建的网桥并重启:

 

 

可见网络和宿主机同一网段,由此见KVM的NAT和Bridge和Vmware的模式类似的

 

5>宿主机再次查看网桥:

[root@yaya Desktop]# brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.000c2986a360	no		eth0
							vnet0
pan0		8000.000000000000	no		
virbr0		8000.5254003d1165	yes		virbr0-nic
[root@yaya Desktop]# 

 

 

 

 

 

 

 

### 如何在虚拟机上安装Linux并配置虚拟网络 #### 创建和配置虚拟机环境 创建虚拟机之后,需对其进行初步配置以确保其能够顺利运行所选的操作系统。对于内存设置而言,建议至少分配2GB以上的RAM来保障系统的流畅度[^1]。 ```bash # 虚拟机硬件配置命令示例(取决于使用的虚拟化平台) vmware-vdiskmanager -c -f qcow2 disk.img 80G # QEMU/KVM环境下创建动态扩展磁盘 ``` 加载操作系统映像到虚拟光驱中以便开始安装过程。这一步骤通常涉及浏览至ISO文件位置并将之挂载作为启动介质。 #### 开启虚拟机初始引导 当一切准备就绪后,便可以从新添加的CD/DVD驱动器启动虚拟机实例。根据屏幕提示操作,选择合适的语言和地区选项继续前进;随后进入图形界面或字符模式下的安装向导程序。 针对桌面版发行版本,在此阶段可以选择安装额外组件比如GNOME、KDE等窗口管理器。接下来就是至关重要的存储布局规划环节——定义根(`/`)、引导(`/boot`)分区及其各自容量大小,并建立交换空间(swap area),后者一般推荐设定成物理内存总量的一半或是两倍左右。 #### 配置虚拟网络连接 为了使虚拟机内的Linux能访问外部互联网资源或者其他主机通信交流,则需要进一步调整网络参数: - **NAT模式**:这是最简单的方式之一,默认情况下大多数hypervisor都会启用它。通过这种方式,宿主机充当网关角色允许客户OS共享同一个IP地址池而无需任何特殊路由规则。 - **桥接适配器(Bridged Adapter)**:让来宾获得独立于母体之外的真实MAC/IP组合,仿佛它们直接接入局域网一样工作着。适用于测试服务器部署场景或者是那些期望被其他设备当作常规节点对待的情况。 - **仅限内部(Intern-only)** 或者 **自定义(Custom)** :用于构建隔离型实验环境,其中各成员间可互相连通却无法触及更广阔的世界范围。 具体实施方法依赖具体的虚拟化解决方案提供商所提供的工具集实现上述任一类型的联网方式切换。例如VirtualBox用户可以通过GUI界面上`Settings -> Network`路径找到对应选项卡来进行修改;而对于基于命令行工作的libvirt/qemu来说,则可能涉及到编辑XML描述文档中的相应字段内容。 一旦选择了恰当的形式,务必记得同步更新/etc/netplan/*.yaml (Ubuntu系)或者其他形式的静态网络脚本,指明DHCP获取还是固定IP方案,同时指定DNS解析服务的位置信息等等细节之处。 最后别忘了重启networking服务使得改动生效: ```bash sudo systemctl restart networking.service # 或者对于采用netplan的现代Linux发行版 sudo netplan apply ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值