KVM虚拟化技术学习-网络及脚本管理

简介: KVM虚拟化技术学习-网络及脚本管理

1.配置桥接

1.在宿主机上,修改文件

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# mv ifcfg-ens33 ifcfg-ens33.bak
[root@localhost network-scripts]# vi ifcfg-br0
YPE=Bridge
NAME=br0
DEVICE=br0
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.1.101
GATEWAY=192.168.1.1
NETMASK=255.255.255.0
DNS1=8.8.8.8
[root@localhost network-scripts]# vi ifcfg-ens33
DEVICE=ens33
ONBOOT=yes
BRIDGE=br0

2.重启服务

[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# systemctl restart libvirtd

3.虚拟机添加网卡即可

右击虚拟机-》控制台--》添加硬件--》添加网卡

2.配置NAT网络

1.修改配置文件

[root@localhost network-scripts]# cd /etc/libvirt/qemu/networks/
[root@qfedu.com ~]# vim /etc/libvirt/qemu/networks/nat3.xml
<network>
<name>nat3</name>
<uuid>4d8b9b5c-748f-4e16-a509-848202b9c83b</uuid>
<forward mode='nat'/> //和隔离模式的区别
<bridge name='virbr4' stp='on' delay='0'/>
<mac address='52:57:00:62:0c:d4'/>
<domain name='nat3'/>
<ip address='192.168.104.1' netmask='255.255.255.0'>
 <dhcp>
 <range start='192.168.104.128' end='192.168.104.254'/>
 </dhcp>
</ip>
</network>
重启服务:
[root@qfedu.com ~]# systemctl restart libvirtd

3.配置isolated网络

1.配置文件

<network>
<name>isolate1</name>
<uuid>6341d3a6-7330-4e45-a8fe-164a6a68929a</uuid>
<bridge name='virbr2' stp='on' delay='0'/>
<mac address='52:54:00:6b:39:0c'/>
<domain name='isolate1'/>
<ip address='192.168.101.1' netmask='255.255.255.0'>
 <dhcp>
 <range start='192.168.101.128' end='192.168.101.254'/>
 </dhcp>
</ip>
</network>

2.其他网络管理命令

查看所有的⽹络:
[root@qfedu.com ~]# virsh net-list
启动⽹络:
[root@qfedu.com ~]# virsh net-start isolated200
开机⾃启动:
[root@qfedu.com ~]# virsh net-autostart isolated200 
⽹络相关基本命令
查看⼀个guest主机的⽹络接⼝信息:
[root@qfedu.com ~]# virsh domiflist vm1
接⼝ 类型 源 型号 MAC
---------------------------------------
vnet0 network default virtio 52:54:00:94:a7:a1

4.脚本

#!/bin/bash
#KVM batch create vm tool
#version: 0.1
#author: wing
#需要事先准备模板镜像和配置⽂件模板
echo "1.创建⾃定义配置单个虚拟机
2.批量创建⾃定义配置虚拟机
3.批量创建默认配置虚拟机
4.删除虚拟机"
#扩展功能:
[root@qfedu.com ~]# 查看现在虚拟机
[root@qfedu.com ~]# 查看某个虚拟机的配置
[root@qfedu.com ~]# 升配/降配
[root@qfedu.com ~]# 添加/删除⽹络
read -p "选取你的操作(1/2/3):" op
batch_self_define() {
 KVMname=`openssl rand -hex 5`
 sourceimage=/var/lib/libvirt/images/vmmodel.img
 sourcexml=/etc/libvirt/qemu/vmmodel.xml
 newimg=/var/lib/libvirt/images/${KVMname}.img
 newxml=/etc/libvirt/qemu/${KVMname}.xml
 cp $sourceimage $newimg
 cp $sourcexml $newxml
 KVMuuid=`uuidgen`
 KVMmem=${1}000000
 KVMcpu=$2
 KVMimg=$newimg
 KVMmac=`openssl rand -hex 3 | sed -r 's/..\B/&:/g'`
 sed -i
"s@KVMname@$KVMname@;s@KVMuuid@$KVMuuid@;s@KVMmem@$KVMmem@;s@KVMcpu@$KVMcpu
@;s@KVMimg@$KVMimg@;s@KVMmac@$KVMmac@" $newxml
 virsh define $newxml
 virsh list --all
}
self_define() {
 read -p "请输⼊新虚机名称:" newname
 read -p "请输⼊新虚机内存⼤⼩(G):" newmem
 read -p "请输⼊新虚机cpu个数:" newcpu
 sourceimage=/var/lib/libvirt/images/vmmodel.img
 sourcexml=/etc/libvirt/qemu/vmmodel.xml
 newimg=/var/lib/libvirt/images/${newname}.img
 newxml=/etc/libvirt/qemu/${newname}.xml
 cp $sourceimage $newimg
 cp $sourcexml $newxml
 KVMname=$newname
 KVMuuid=`uuidgen`
 KVMmem=${newmem}000000
 KVMcpu=$newcpu
 KVMimg=$newimg
 KVMmac=`openssl rand -hex 3 | sed -r 's/..\B/&:/g'`
 sed -i
"s@KVMname@$KVMname@;s@KVMuuid@$KVMuuid@;s@KVMmem@$KVMmem@;s@KVMcpu@$KVMcpu
@;s@KVMimg@$KVMimg@;s@KVMmac@$KVMmac@" $newxml
 virsh define $newxml
 virsh list --all
}
case $op in
1)self_define;;
2)
 read -p "请输⼊要创建的虚拟机的个数:" num
 read -p "请输⼊新虚机内存⼤⼩(G):" newmem
 read -p "请输⼊新虚机cpu个数:" newcpu
 for((i=1;i<=$num;i++))
 do
 batch_self_define $newmem $newcpu
 done;;
3)
 read -p "请输⼊要创建的虚拟机的个数:" num
 for((i=1;i<=$num;i++))
 do
 batch_self_define 1 1
 done;;
*)
 echo "输⼊错误,请重新执⾏脚本"
 exit;;
esac
目录
相关文章
|
8月前
|
机器学习/深度学习 算法 数据挖掘
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
237 0
|
7月前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
6月前
|
机器学习/深度学习 人工智能 监控
上海拔俗AI软件定制:让技术真正为你所用,拔俗网络这样做
在上海,企业正通过AI软件定制破解通用化难题。该模式以业务场景为核心,量身打造智能解决方案,涵盖场景化模型开发、模块化架构设计与数据闭环优化三大技术维度,推动技术与业务深度融合,助力企业实现高效、可持续的数字化转型。
215 0
|
7月前
|
监控 前端开发 安全
Netty 高性能网络编程框架技术详解与实践指南
本文档全面介绍 Netty 高性能网络编程框架的核心概念、架构设计和实践应用。作为 Java 领域最优秀的 NIO 框架之一,Netty 提供了异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。本文将深入探讨其 Reactor 模型、ChannelPipeline、编解码器、内存管理等核心机制,帮助开发者构建高性能的网络应用系统。
470 0
|
8月前
|
机器学习/深度学习 监控 安全
解密虚拟化弹性内存:五大核心技术与实施策略
本文深入解析虚拟化环境中实现内存弹性管理的五大核心技术与实施策略。内容涵盖内存架构演进、关键技术原理、性能优化方法及典型问题解决方案,助力提升虚拟机密度与资源利用率。
354 0
|
9月前
|
监控 算法 安全
基于 C# 基数树算法的网络屏幕监控敏感词检测技术研究
随着数字化办公和网络交互迅猛发展,网络屏幕监控成为信息安全的关键。基数树(Trie Tree)凭借高效的字符串处理能力,在敏感词检测中表现出色。结合C#语言,可构建高时效、高准确率的敏感词识别模块,提升网络安全防护能力。
222 2
|
11月前
|
机器学习/深度学习 算法 PyTorch
Perforated Backpropagation:神经网络优化的创新技术及PyTorch使用指南
深度学习近年来在多个领域取得了显著进展,但其核心组件——人工神经元和反向传播算法自提出以来鲜有根本性突破。穿孔反向传播(Perforated Backpropagation)技术通过引入“树突”机制,模仿生物神经元的计算能力,实现了对传统神经元的增强。该技术利用基于协方差的损失函数训练树突节点,使其能够识别神经元分类中的异常模式,从而提升整体网络性能。实验表明,该方法不仅可提高模型精度(如BERT模型准确率提升3%-17%),还能实现高效模型压缩(参数减少44%而无性能损失)。这一革新为深度学习的基础构建模块带来了新的可能性,尤其适用于边缘设备和大规模模型优化场景。
435 16
Perforated Backpropagation:神经网络优化的创新技术及PyTorch使用指南
|
11月前
|
调度 Python
探索Python高级并发与网络编程技术。
可以看出,Python的高级并发和网络编程极具挑战,却也饱含乐趣。探索这些技术,你将会发现:它们好比是Python世界的海洋,有穿越风暴的波涛,也有寂静深海的奇妙。开始旅途,探索无尽可能吧!
260 15
|
11月前
|
监控 算法 JavaScript
基于 JavaScript 图算法的局域网网络访问控制模型构建及局域网禁止上网软件的技术实现路径研究
本文探讨局域网网络访问控制软件的技术框架,将其核心功能映射为图论模型,通过节点与边表示终端设备及访问关系。以JavaScript实现DFS算法,模拟访问权限判断,优化动态策略更新与多层级访问控制。结合流量监控数据,提升网络安全响应能力,为企业自主研发提供理论支持,推动智能化演进,助力数字化管理。
275 4