KVM主机迁移
新主机kvm初始环境的部署
I.检查主机cpu是否支持虚拟化
[root@10-110-157-44 network-scripts]# egrep '(vmx|svm)' --color=auto /proc/cpuinfo
其中vmx是Intel-VT
技术支持,svm是AMD-V
技术支持
如果有值,表示cpu支持虚拟化,一般公司的物理主机都支持cpu虚拟化
II.宿主机软件安装
[root@10-110-157-44 network-scripts]# yum -y install kvm kmod-kvm qemu python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools
[root@10-110-157-44 network-scripts]# service libvirtd start
[root@10-110-157-44 network-scripts]# chkconfig libvirtd on
[root@10-110-157-44 network-scripts]# chkconfig --list |grep libvirtd
libvirtd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
III.检查kvm模块是否加载
[root@10-110-157-44 network-scripts]# lsmod | grep kvm
kvm_intel 55656 20
kvm 345659 1 kvm_intel
IV.网桥的搭建
直接使用桥接方式,新建立桥接网卡br0,然后将物理网卡eth0(有的主机可能不是eth0)变更成bridge类型
[root@10-110-157-44 network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@10-110-157-44 network-scripts]# cat ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=Ethernet
BRIDGE=br0 #指定桥接的网卡名称
[root@10-110-157-44 network-scripts]# cat ifcfg-br0
DEVICE=br0
BOOTPROTO=static
IPADDR=10.110.157.44
NETMASK=255.255.0.0
GATEWAY=10.110.0.1
ONBOOT=yes
TYPE=Bridge #类型变更
NM_CONTROLLED=no
[root@10-110-157-44 network-scripts]#
更改br0与eth0配置文件之后,重启网卡服务
V.查看宿主机网络
[root@10-110-157-44 network-scripts]# ifconfig
br0 Link encap:Ethernet HWaddr EC:F4:BB:F0:68:30
inet addr:10.110.157.44 Bcast:10.110.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:182591419 errors:0 dropped:0 overruns:0 frame:0
TX packets:411766 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9868491385 (9.1 GiB) TX bytes:319978156 (305.1 MiB)
eth0 Link encap:Ethernet HWaddr EC:F4:BB:F0:68:30
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:184253215 errors:0 dropped:0 overruns:0 frame:0
TX packets:4941290 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12839319724 (11.9 GiB) TX bytes:4949051578 (4.6 GiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:54307 errors:0 dropped:0 overruns:0 frame:0
TX packets:54307 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5785417 (5.5 MiB) TX bytes:5785417 (5.5 MiB)
迁移kvm主机数据
I.查看宿主机上现有虚拟主机
[root@10-110-157-41 qemu]# virsh list --all
Id Name State
----------------------------------------------------
6 ci.bigdata.letv.com running
7 gitlab.bigdata.letv.com running
说明有两台虚拟主机在运行
II.虚拟主机配置文件
[root@10-110-157-41 qemu]# pwd
/etc/libvirt/qemu
[root@10-110-157-41 qemu]# ll
total 12
-rw------- 1 root root 2433 Dec 26 2017 ci.bigdata.letv.com.xml
-rw------- 1 root root 2425 Dec 14 2017 gitlab.bigdata.letv.com.xml
drwx------ 3 root root 4096 Dec 14 2017 networks
以上两个xml文件即为宿主机配置文件,需要copy至新宿主机之上同样路径的目录之下
III.关停虚拟主机
关停之前,最好先通过xshell连接至虚拟主机,更改其root密码(如果知道root密码,不用更改)并保存
[root@10-110-157-41 qemu]# virsh list --all
Id Name State
----------------------------------------------------
6 ci.bigdata.letv.com running
7 gitlab.bigdata.letv.com running
[root@10-110-157-41 qemu]# virsh shutdown ci.bigdata.letv.com
shutdown后面跟上虚拟主机的name
或者id
号均可
关停之后virsh list --all
查看虚拟主机运行状态,直至显示off
即表示已经完全关机
IV.虚拟主机镜像文件
[root@10-110-157-41 qemu]# grep 'source file' ci.bigdata.letv.com.xml
<source file='/data/jenkins/CI_SERVER.qcow2'/>
[root@10-110-157-41 qemu]# ll -h /data/jenkins/
total 898G
-rw-r--r-- 1 qemu qemu 898G Jan 10 10:47 CI_SERVER.qcow2
将以上qcow2的文件,copy至新的宿主机之上,按以上xml文件中定义的,将qcow2文件放至对应的目录,或者更改对应的xml中的指定路径均可
V.启动虚拟主机
[root@10-110-157-44 ~]# virsh start ci.bigdata.letv.com
[root@10-110-157-44 qemu]# virsh list --all
Id Name State
----------------------------------------------------
1 ci.bigdata.letv.com running
2 gitlab.bigdata.letv.com off
VI.虚拟主机ip
因为桥接方式,所以虚拟主机应该与其宿主机在同一网段,公司内部的网段比较好区分,比如上者10.110网段,可以将虚拟主机的ip设定为10.110.xxx.xxx即可。公司同一个网段中,一般不会选用到254,会预留一部分ip段,所以找到与宿主机同一网段的ip很容易,此处直接找云计算申请ip即可,务必要为虚拟主机申请ip,否则后续可能会存在ip冲突问题
VI.虚拟主机ip的设定
通过vnc,连接宿主机的ip,同时选择对应的端口,即可以连接至虚拟主机
vnc的端口查看,可以通过/etc/libvirt/qemu
中的配置文件来查看,也可以通过ps aux| grep kvm
来查看
[root@10-110-157-44 qemu]# ps aux | grep kvm
root 1194 0.0 0.0 0 0 ? S Jan07 0:00 [kvm-irqfd-clean]
qemu 38690 11.4 34.8 20556192 11406408 ? Sl Jan07 435:16 /usr/libexec/qemu-kvm -name ci.bigdata.letv.com -S -M rhel6.5.0 -enable-kvm -m 16384 -realtime mlock=off -smp 8,sockets=8,cores=1,threads=1 -uuid 26cd024b-0c8e-3cc0-6869-bd6f901bbe7a -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/ci.bigdata.letv.com.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/data/jenkins/CI_SERVER.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,cache=none -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=21,id=hostnet0,vhost=on,vhostfd=22 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ee:e3:16,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 0.0.0.0:1 -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 -msg timestamp=on
如上,ci.bigdata.letv.com
的虚拟主机,其vnc端口为0.0.0.0:1
,即vnc中连接地址为10.110.157.44:5901
,进入之后,和普通主机一样更改至申请的ip即可。
自建的kvm主机,不能加入系统的ump中,所以ssh白名单,只能通过chattr
命令来进行控制
VII.kvm虚拟主机忘记root密码
[root@10-110-157-44 qemu]# yum -y install libguestfs-tools
在宿主机安装以上软件,然后找到一台已知密码的主机的/etc/shadow文件中root的加密字串,先关闭虚拟主机,然后进行字符串替换
[root@10-110-157-44 qemu]# virt-edit ci.bigdata.letv.com /etc/shadow
通过以上,更改虚拟主机中的root密码,即可完成虚拟主机的更改
KVM主机迁移的更多相关文章
- kvm虚拟机迁移
一.迁移简介 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行.在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实时备份操作系 ...
- kvm虚拟迁移
1. 虚拟迁移 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行.在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实时备份操作 ...
- kvm热迁移(4)
一.迁移简介 迁移分为热迁移和冷迁移,冷迁移是在机器关机的状态下进行迁移,具体操作在之前的博客有体现.热迁移是在机器处于开机状态进行迁移,本次博客主要讲解热迁移. 系统的迁移是指把源主机上的操作系统和 ...
- KVM虚拟迁移(5)
一.迁移简介 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行.在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实时 ...
- kvm虚拟机迁移(6)
一.迁移简介 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行. 在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实 ...
- ESXI 迁移至KVM (V2V迁移)
1.1.1 ESXI将虚拟机导出 导出ova模板 将导出的ova模板导入到KVM环境中. 1.1.2 配置KVM环境 详情参考:http://www.cnblogs.com/clsn/p/836625 ...
- KVM 热迁移
最终我们迁移的目的就是: ·简化系统维护管理 ·高系统负载均衡 ·增强系统错误容忍度 ·优化系统电源管理 热迁移 又叫动态迁移,实时迁移,即虚拟机保存( save )/恢复( restore ):将整 ...
- opennebula 添加kvm主机日志
Sun Sep :: [ReM][D]: Req: UID: HostDelete invoked, Sun Sep :: [ReM][D]: Req: UID: HostDelete result ...
- KVM虚拟机迁移至VMware
1.将kvm下虚拟机关机: [root@localhost ~]# virsh list --all Id Name State ----------------------------------- ...
随机推荐
- MyBatis框架之异常处理
MyBatis框架定义了许多的异常类,之所以定义这么多的异常类,应该是将每一种异常情况都独立出来,这样在出现异常时,定位就很明确了.而我们平时写代码时,都是瞎搞一通,异常类大多也是随便定义,或者是使用 ...
- vector内存增长方式
首先必须要了解vector是一种特殊的数组,因此其内存必然是连续的 其次它的连续是建立在不断地对内存的预分配上的,即不断地销毁当前,重新建立内存,效率有点低.所以存在几个函数capacity, siz ...
- CodeForces - 1051D (线性DP)
题目:https://codeforces.com/problemset/problem/1051/D 题意:一个2行n列的矩形,上面有黑白块,然后问你怎么布置才能有k个连通块,问有多少种方案数 思路 ...
- Where should I put <script> tags in HTML markup?
Where should I put <script> tags in HTML markup? When embedding JavaScript in an HTML document ...
- appium常见问题09_MAC打开uiautimatorviewer闪退怎么办?
问题: 下载安装Android SDK后,并且已在.bash_profile文件中配置环境变量.但是在tools中打开定位工具uiautomatorviewer出现闪退. 解决: 首先检查环境变量配置 ...
- appium常见问题05_修改Android手机运行环境(adb指令修改hosts)
自动化测试过程中,手机有时会跳网,怎样保持手机测试的环境稳定性,可以通过adb指令修改android手机hosts,保持手机运行在hosts中配置的环境中: 修改方法如下: 前提条件:已安装andro ...
- JS中基本数据类型和引用类型最根本的区别
栈内存和堆内存:https://segmentfault.com/a/1190000015118062 https://segmentfault.com/a/1190000016389376 变量:内 ...
- USACO 5.4 章节
Canada Tour 题目大意 双向连通图,点从左向右排列, 你需要先从最左的点到最右的点,(过程中只能从左向右走) 然后再从最右的点返回最左的点,(过程中只能从右向左走) 过程中除了最左的点,其它 ...
- Pikachu漏洞练习平台实验——CSRF(三)
概述 CSRF 是 Cross Site Request Forgery 的 简称,中文名为跨域请求伪造 在CSRF的攻击场景中,攻击者会伪造一个请求(一般是一个链接) 然后欺骗目标用户进行点击,用户 ...
- tomcat开启PID文件
1.配置tomcat启动后将进程号保存至 ./bin/tomcat.pid 文件. 修改 catalina.sh 文件,在 PRGDIR 下面一行添加 CATALINAPID 参数行,如下: PRGD ...