利用iso镜像做本地yum源安装KVM

发布时间:2021-10-27 04:46:19

第一步





? ? 用本地文件创建本地yum源

1. 创建iso存放目录和挂载目录

mkdir /mnt/iso?

mkdir /mnt/cdrom





2. 将iso镜像文件上传到/mnt/iso文件夹下





3. 将/mnt/iso/下的iso文件挂载到/mnt/cdrom目录





? ? ? ?mount -o loop /mnt/iso/XXXXX.iso /mnt/cdrom?

? ? ? ?<注:挂载完之后对其操作会提示设备繁忙,此时需要umount解开挂载才行>

? ? ? ? ?查看是否挂载成功: df -h

? ? <用来查看系统中所有挂载的,mount也可以>





4. 最关键的一步>如果/etc/yum.repos/下面有其它的*.repo文件,先创建个文件夹,将这些*.repo先转移到文件夹中,自己写一个.repo的文件

? ?mkdir /etc/yum.repos.d/bak





? ?mv *.repo /etc/yum.repos.d/bak?





? ?然后创建自己的.repo文件





? ?vi myself.repo





?内容如下:

?[base]

? name=RedHat

? #注:这里的baseurl就是你挂载的目录,在这里是/mnt/cdrom

? baseurl=file:///mnt/cdrom ? ?

? #注:这里的值enabled一定要为1 ?

? enabled=1 ? ? ? ? ? ? ? ? ? ?

? gpgckeck的值无所谓

? gpgckeck=0

? #注:这个你cd /mnt/cdrom/可以看到这个key,这里仅仅是个例子

? gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-5 ??

? ? ? ? ? ? ? ? ?

5. 测试:

? ?yum clean all

? ?yum install vim* ?









? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第二步

安装要用的软件

安装kvm模块

? ? ?#yum -y install qemu-kvm.x86_64





安装kvm调试工具(可以不安装) ??

? ? ?#yum -y install qemu-kvm-tools.x86_64





安装python组件,主要用来记录创建vm时的xml文件

? ? ?#yum -y install python-virtinst.noarch





安装qemu组件,使用qemu命令来创建磁盘,启动虚拟机等(这个可能在安装时qemu-kvm.x86_64已安装)

? ? ?#yum -y install qemu-img.x86_64





安装网络支持工具

? ? ?#yum -y install bridge-utils.x86_64





安装虚拟机管理工具,使用virsh来管理虚拟机

? ? ?#yum -y install libvirt?





此时用 /sbin/ifconfig 查看会多出一个 virbr0 ,这是由于安装和启用了 libvirt 服务后生成的,libvirt 在服务器(host)上生成一个 virtual network switch (virbr0),host 上所有的虚拟机(guests)通过这个 virbr0 连起来。默认情况下 virbr0 使用的是 NAT 模式(采用 IP Masquerade),所以这种情况下 guest 通过 host 才能访问外部。

大多数时候我们虚拟机使用的是 bridge(网桥)直接连到局域网里,所以这个 virbr0 不是必须的(注:不要搞混淆了,bridge 和这里的 virbr0 bridge 是互不相干的)。如何关掉这个 virbr0 呢?先 net-destroy 然后 net-undefine,最后别忘了* libvirtd 让设置生效:?









chkconfig NetworkManager off









# virsh net-list?

Name ? ? ? ? ? ? ? ?State ? ? ?Autostart?

-----------------------------------------?

default ? ? ? ? ? ? ?active ? ?yes

# virsh net-destroy default?

Network default destroyed?

# virsh net-undefine default?

Network default has been undefined?

# service libvirtd restart?

Stopping libvirtd daemon: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]?

Starting libvirtd daemon: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]

这样就关掉了 ?virbr0 ?在使用双机软件过程中,如果系统是red hat 5.x 默认系统安装完成后为xen内核,那么xen内核引导启动后就会有虚拟网卡(vethx、vif0.x、virbr0、xenbr1等)存在。?

这就会直接导致双机软件的两台机器中都会有相同的IP地址存在(virbr0网卡的IP地址都为192.168.122.1)。所以会导致双机系统中的主机关机时,备机不会接管的现象。所以,需要将virbr0卸载掉









重新启动





四、.检查kvm模块是否安装完成

? #lsmod | grep kvm

? 会显示两个模块

? kvm_intel/ kvm_amd?

? kvm





检查物理主机虚拟化完成情况

? #virsh list





? ?Id Name ? ? ? ? ? ? ? ? State

----------------------------------





出现如上表明已装好了





五.设置网卡bridge模式





单网卡桥接





#cd /etc/sysconfig/network-scripts/

#vi ?ifcfg-eth0





加BRIDGE=br0





cp ifcfg-eth0 ifcfg-br0

改 DEVICE=br0

TYPE=Bridge

还要删掉system name uuid等

#service network restart









多网卡 桥接?





cp ifcfg-eth0 ifcfg-br0?

cp ifcfg-eth1 ifcfg-br1

cp ifcfg-eth2 ifcfg-br2









分别 修改 ?ifcfg-eth0 ifcfg-br0 ? ?ifcfg-eth0 增加 BRIDGE=br0 ,删除 IPADDR和NETMASK ,ifcfg-br0 增加 TYPE=Bridge,增加ifcfg-eth0中的IPADDR和NETMASK

分别 修改 ?ifcfg-eth1 ifcfg-br1 ? ?ifcfg-eth1 增加 BRIDGE=br1 ,删除 IPADDR和NETMASK ,ifcfg-br1 增加 TYPE=Bridge,增加ifcfg-eth1中的IPADDR和NETMASK

分别 修改 ?ifcfg-eth2 ifcfg-br2 ? ?ifcfg-eth2 增加 BRIDGE=br2 ,删除 IPADDR和NETMASK ,ifcfg-br2 增加 TYPE=Bridge,增加ifcfg-eth2中的IPADDR和NETMASK









[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet

NM_CONTROLLED=no

BRIDGE=br0

[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-eth1

DEVICE=eth1

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet

NM_CONTROLLED=no

BRIDGE=br1

[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-eth2

DEVICE=eth2

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet

NM_CONTROLLED=no

BRIDGE=br2

[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-br0

DEVICE=br0

BOOTPROTO=static

IPADDR=192.168.155.239

NETMASK=255.255.255.0

ONBOOT=yes

TYPE=Bridge

NM_CONTROLLED=no

[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-br1

DEVICE=br1

BOOTPROTO=static

IPADDR=125.39.158.100

NETMASK=255.255.255.128

ONBOOT=yes

TYPE=Bridge

NM_CONTROLLED=no

[root@GW-DUDUServer11-TJ network-scripts]# cat ifcfg-br2

DEVICE=br2

BOOTPROTO=static

IPADDR=123.150.170.77

NETMASK=255.255.255.128

ONBOOT=yes

TYPE=Bridge

NM_CONTROLLED=no





















#ifconfig





br0 ? ? ? Link encap:Ethernet ?HWaddr 1C:6F:65 0:CC:AF ?

? ? ? ? ? inet addr:58.211.112.15 ?Bcast:58.255.255.255 ?Mask:255.255.255.240

? ? ? ? ? inet6 addr: fe80::6881:d3ff:fe70:3101/64 Scope:Link

? ? ? ? ? UP BROADCAST RUNNING MULTICAST ?MTU:1500 ?Metric:1

? ? ? ? ? RX packets:3525519 errors:0 dropped:0 overruns:0 frame:0

? ? ? ? ? TX packets:1875715 errors:0 dropped:0 overruns:0 carrier:0

? ? ? ? ? collisions:0 txqueuelen:0?

? ? ? ? ? RX bytes:4633406660 (4.3 GiB) ?TX bytes:222071251 (211.7 MiB)





eth0 ? ? ?Link encap:Ethernet ?HWaddr 1C:6F:65 0:CC:AF ?

? ? ? ? ? inet6 addr: fe80::1e6f:65ff:fed0:ccaf/64 Scope:Link

? ? ? ? ? UP BROADCAST RUNNING MULTICAST ?MTU:1500 ?Metric:1

? ? ? ? ? RX packets:3527263 errors:0 dropped:0 overruns:0 frame:0

? ? ? ? ? TX packets:1876659 errors:0 dropped:0 overruns:0 carrier:0

? ? ? ? ? collisions:0 txqueuelen:1000?

? ? ? ? ? RX bytes:4682951686 (4.3 GiB) ?TX bytes:222162510 (211.8 MiB)

? ? ? ? ? Interrupt:25 Base address:0x4000?





lo ? ? ? ?Link encap:Local Loopback ?

? ? ? ? ? inet addr:127.0.0.1 ?Mask:255.0.0.0





出现以上表明安装已正常完成了





六、可以用virt-install 来新建虚拟机了,但是启动后没办法看到

所以要安装客户端来管理,也可以用virsh来管理但还要加VNC来连接虚拟机

安装VNC

#yum install tigervnc-server.x86_64





改防火墙

还要改一下iptables

#vi ?/etc/sysconfig/iptables

加一句

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 6900 -j ACCEPT

#service iptables restart









? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第三步

可以开始新建虚拟机





virt-install --name ztgameIM --ram 1024 --vcpus=1 --disk path=/home/kvm/img/redhat.img,size=20 --network bridge=virbr0 --os-variant=rhel4 --cdrom=/home/kvm/soft/RHEL4.7.iso --vnclisten=0.0.0.0 --vncport=6900 --vnc





说明:--disk path=/home/kvm/img/redhat.img 镜像存放路径









virt-install --name ztgameIM3 --ram 8192 --vcpus=4 --disk path=/home/kvm/img/redhat3.img,size=30 --network bridge=br0 --network bridge=br1 --network bridge=br2 --os-variant=rhel6 ?--cdrom=/mnt/iso/rhel-server-6.4-x86_64-dvd.iso ?--vnclisten=0.0.0.0 ?--vncport=6902 ? --vnc?













virt-install --name ztgameIM1 --ram 8192 --vcpus=4 --disk path=/home/kvm/img/redhat3.img,size=30 --network bridge=br0 --network bridge=br1 ?--os-variant=rhel6 ?--cdrom=/mnt/iso/rhel-server-6.4-x86_64-dvd.iso ?--vnclisten=0.0.0.0 ?--vncport=6900 ? --vnc?

















(1)
用virsh list显示已安装的虚拟机

(2)
Virsh start ztgameIM启动 名为ztgameIM 系统

(3)
用virsh edit ztgameIM 编辑 主机名为 ztgameIM 的配置文件

(4)
再次执行virsh list 看看起来没有

(5)
lsof -i:6900 查看端口号

(6)
查看防火墙iptables-save

(7)
service iptables stop/start

(8)
用VNC连接虚拟机?









(9)
克隆虚拟机 ?先暂停源虚拟机virsh ?undefined ?ztgameIM

(10)
开始克隆virt-clone -o ztgameIM ?-n ztgameIM2 ?-f //home/kvm/img/redhat2.img

(11)
重新定义 virsh define /etc/libvirt/qemu/ztgameIM2.xml

(12)
virsh resume ztgameIM 继续执行

(13)
virsh edit ztgameIM2 修改配置文件,主要是 修改端口号和IP地址 和之前的不冲突

(14)
virsh start ztgameIM2 启动虚拟机

(15)
virsh list ?显示两个虚拟机都在运行





? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第二种方法克隆









(1)先执行apt -get install acpid进行安装并启动该服务,即可让虚拟机响应shutdown命令,否则执行virsh shutdown

不起作用,然后再执行virsh shutdown 虚拟机名 ,执行后有点慢,稍等下再执行 virsh list 进行查看确认





(2)执行virsh dumpxml ztgameIM2 > /etc/libvirt/qemu/ztgameIM3.xml ?克隆配置文件





(3)克隆镜像文件,进入镜像文件存放目录 cp ?redhat2.img ? redhat3.img





?(4) 直接编辑修改配置文件修改name,uuid,disk位置,vnc端口此时还是将该配置文件注册进来,无法通过virsh edit进行编辑





?(5) ?vi ztgameIM3.xml,修改uuid,name ,port,ID





?(6)重新定义 virsh define ztgameIM3.xml ,就可以virsh edit ztgameIM3 了





?(7) virsh start ztgameIM3 就可以启动ztgameIM3虚拟机了



相关文档

  • 三星s8屏幕镜像
  • 孩子胆小希望老师给宝宝多一点锻炼的句子
  • 英语小笑话短一点精选
  • Uncaught RangeError: Invalid array length 问题解决
  • 关于分龄护肤品的广告词
  • 关于童心的作文素材
  • 科技部“粮食丰产增效科技创新”项目申报指南
  • 典型个人求职word简历模板
  • 吉他和弦全指法大全
  • 入党程序小知识
  • ProE/Creo免费插件 MCADEx Tools 6.0
  • 商务英语专业毕业生求职信
  • LocalDateTime不能反序列化的问题
  • 关于计算机应用毕业论文参考
  • 学会自信而理性的冒险
  • 英语谚语带翻译
  • 以真正的快乐话题作文大全
  • 跳健身操有什么注意事项
  • 最新整理aabc式词语
  • 女性吃避孕药8大危害 月经不调乳房疼痛
  • 关于辞就迎新的对联带横批
  • 手机用着老热怎么办
  • 别样的考试作文
  • java简拼_javascript实现根据汉字获取简拼
  • 对时间为“yyyyMMdd”格式的时间数据进行校验,判断其合法性
  • 种植土地租赁合同2020年
  • 结婚后父母离婚我怎办房产怎么分
  • 【感悟幸福作文600字】感悟幸福作文
  • python中for循环的用法_python系列12: for循环应用进阶
  • 六年级英语作文:The power of love 爱的力量
  • 猜你喜欢

    电脑版