KVM虚拟机安装使用教程(Ubantu)
背景:
公司在某电信机房有50台ubantu的实体机,机器配置的ip是192.168.100.x的ip,内存和cpu都是高端配置。假如哪些端口需要对外映射,就通过机房的防火墙完成端口映射。
100.1这台机器,能远程ssh,并已经做好了5个端口映射。其余的机器均未开通外网端口。
需求:
现在需要10台centos的机器,来装一个环境,并对外提供一个web服务。
分析:
鉴于机房山高路远,去机房把Ubantu缓存centos的操作系统的计划不能施行。然后就出现了KVM虚拟机的流程。
0.ssh登录100.1,然后以它做跳板,利用SecureCRT或者Xshell的socks代理,然后ssh连接后面的机器(方法请百度,我也不好描述,总之就是非常容易操作)。
ssh 192.168.100.2
sudo su - root
1.确认操作系统版本,修改apt-get源为aliyun,apt-get update.
cat /etc/issue #.04ubantu版本
vim /etc/apt/
deb http://mirrors.aliyun.com/ubuntu/ precise main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-backports main restricted universe multiverse
apt-get update
2.回到scrt的远程ssh界面.(注意,不要进到跳板100.1里面去了)
安装kvm虚拟机
apt-get install ubuntu-virt-server python-vm-builder kvm-ipxe
安装kvm虚拟机的图形化界面
apt-get install virt-manager
安装kvm桥接组件
apt-get install bridge-utils
3.配置kvm桥接.
vi /etc/network/interfaces
修改如下内容
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.100.2
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
gateway 192.168.100.254
dns-nameservers 8.8.8.8
为
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.100.2
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
gateway 192.168.100.254
bridge_ports eth0
bridge_stp off
bridge_fd
bridge_maxwait
dns-nameservers 114.114.114.114
再三确认,仔细确认,确认ok,下一步。
4.重启机器(若是前面没做好,估计你线上的这台机器,估计就要和你say good bye了),5分钟后重新连上去,切换到root用户.
reboot
漫长的等待
sudo su - root
ifconfig,确认:
br0网桥,并绑定有ip.
eth0,木有ip.
lo,绑定127.0.0.1.
virbr0,绑定一个192.168.122.1(也有可能是其他网段).
5.下载centos镜像到本机的/media/.
wget CentOS-6.7-x86_64-bin-DVD1.iso (推荐地址 mirrors.aliyun.com)
6.安装vnc
apt-get install vnc4server
启动vnc
vncserver
输入vnc密码(第一次启动需要输入密码)
xxxxxxx
xxxxxxx
查看vnc端口.
netstat -lntup|grep vnc
7.配置vnc远程连接.
回到跳板机,修改rinnetd文件,完成vnc端口映射,并刷新rinetd进程.(rinetd是linux下一款比较好用的端口映射工具,ubantu下据说可以直接apt-get install rinetd完成安装)
192.168.100.1 已经映射好的端口 192.168.100.2
8.使用vnc的windows客户端,连接Ubantu宿主机192.168.100.2.
选项,调整“颜色、编码”的“颜色底次”为“所有可用颜色”
服务器输入"ip:port",连接后输入密码即可.
9.vnc重新连接(跳过)
vncserver -kill :
//这里的:1是桌面号
vncserver
netstat -lntup|grep vnc
10.打开kvm的管理界面,开始新装虚拟机。
virt-manager
等5秒。
安装虚拟机操作,选择合适的参数,下一步即可。
(ps经验:假如键盘输入无效,- -,记得切换回英文输入法,并敲空格。 )
65536M 内存
核心
G硬盘(下面的勾勾不要)
br0 网络
网卡信息也提前配置下
11.重启虚拟机之后,删除网卡绑定信息。
删除/etc/udev/rules.d/-persistent-net.rules
12.关机并完成kvm复制。
13.KVM虚拟机的快速复制
ip文件设置
删除/etc/udev/rules.d/-persistent-net.rules
history -c && history -w
关机
复制关机后的VM镜像模板文件
cd /var/lib/libvirt/images
cp -av 母板.img 新机器.img
复制模板配置文件
cd /etc/libvirt/qemu/
cp -av 母板.xml 新.xml
修改模板配置文件
修改虚拟机的名称,如:<name>
修改uuid编号 ,如:<uuid>倒数3位
修改mac地址,如:<mac 倒数2位
修改镜像指定位置
重启libvirtd服务
service libvirt-bin restart
查看虚拟机
virsh list --all
virsh start vir_new
virsh list --all
14.上面有一项,网络桥接,这个操作一般不建议操作,为了弄这个桥接,我线上的2台机器失联了(强烈建议本地机器多测试)。
我们需要10台centos,一个实体机可以做2台,5个实体机才能满足需求,那么问题来了,这10个机器进行互联,咋么办?
做法如下,仅供参考: 实体机的网络配置已在上面配置好桥接,现在来新建一个一个副ip:
ifconfig br0: 192.168.50.1 netmask 255.255.255.0 up
(实体机计划使用50.-.5这一网段,我们只用5个实体机,192.168..1只做跳板用,不装虚拟机)
开启iptables,ubantu默认iptables都是放行的。
iptables -t nat -L
然后新建一个转发
iptables -t nat -A POSTROUTING -o br0 -s 192.168.50.0/ -j MASQUERADE
虚拟机的网络配置:
ip配成192.168.50.(虚拟机计划使用50.-.110这1网段,10个机器)
网关配成各自对应的实体机对应的副ip(此处为192.168.50.)
然后重启虚拟机的网卡,虚拟机192.168.50. 192.168.50.1 192.168..2可以互联,虚拟机可以上外网。(5个实体机上面的虚拟机都弄好之后,50.1~50.5 50.101~50.110 100.2~100.6 都是可以随意互联的)
参考链接:
http://help.aliyun.com/knowledge_detail.htm?knowledgeId=5974461 vnc安装参考
http://www.cnblogs.com/york-hust/archive/2012/05/29/2523437.html kvm/QEMU桥接网络
特别鸣谢:
老朋友丁丁的帮助。他对网络的高深技术,给了我极大的帮助,在我最郁闷的时候,就像一盏明灯指引了我。嘿嘿。
KVM虚拟机安装使用教程(Ubantu)的更多相关文章
- KVM 虚拟机 安装配置
原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...
- kvm虚拟化学习笔记(三)之windows kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- QEMU/KVM虚拟机安装配置
1.安装相关组件: [root@KVM ~]# yum install qemu-img qemu-kvm qemu-kvm-tools virt-manager virt-viewer virt-v ...
- kvm虚拟机安装
KVM虚拟化技术介绍 概述 KVM是基于内核的虚拟化技术(Kernel-based Virtual Machine),于2007年的Linux 2.6.20被合并进Linux内核.KVM要求CPU支持 ...
- 基于VirtualBox虚拟机安装Ubuntu教程
基于VirtualBox虚拟机安装Ubuntu图文教程 一. 下载安装VirtualBox 官网下载VirtualBox,目前版本:VirtualBox 6.0.4 for Windows hosts ...
- centos7.4下的KVM虚拟机安装使用
本来是用的vmware,不过后来想试下KVM,想着装个ZSTACK也行,结果zstack使用网络安装没搞明白,把物理机系统毁了,这下彻底完蛋了,只好还装个centos了,但是又不想用VMWARE就想起 ...
- KVM虚拟机安装报错 KVM is not available
在linux系统上使用kvm安装系统时,如果你的cpu不支持虚拟化技术那么可能会报以下错误: Warning:KVM is not available. This may mean the KVM p ...
- windows kvm虚拟机安装
这一步操作需要注意的几个点:a.局域网内与主机传输文件用scp或ftp命令,要保证ISO镜像文件在主机上有操作权限的目录下,比如 /home等:b.不管安装什么系统的虚拟机,创建的磁盘类型,分配的虚拟 ...
- kvm虚拟化学习笔记(二)之linux kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
随机推荐
- PIL图片合成旋转缩放
用PIL实现图片的旋转,缩放,合成 我们需要知道合成位置的中心点坐标,用中心点坐标,不使用左顶点的坐标是由于缩放过程容易计算. 假设A是局部透明的图片,我们希望把B放在A的底部,仅从A的透明部分显示B ...
- Java Tuple使用实例(转)
转自链接:http://www.cnblogs.com/davidwang456/p/4514659.html 一.为什么使用元组tuple? 元组和列表list一样,都可能用于数据存储,包含多个数据 ...
- [ python ] 练习作业 - 1
1,写代码,有如下列表,按照要求实现每一个功能 li = ["alex","wusir","eric","rain",& ...
- Linux自身安全SElinux
查看SELinux状态: 1./usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态 SELinux status: ...
- POJ 2337 Catenyms(欧拉回(通)路:路径输出+最小字典序)
题目链接:http://poj.org/problem?id=2337 题目大意:给你n个字符串,只有字符串首和尾相同才能连接起来.请你以最小字典序输出连接好的单词. 解题思路:跟POJ1386一个意 ...
- HDU 2102 A计划(BFS)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102 题目大意:公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用P表示,时空传输 ...
- asyncio的简单了解
asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持. asyncio的编程模型就是一个消息循环.我们从asyncio模块中直接获取一个EventLoop的引用,然后把需要 ...
- [Linux][Ubuntu18.04.1] nginx+php+MySQL环境搭建
说在前面 今天在腾讯云的CVM服务器搭建了一下环境[主机:标准型S2,Unbuntu18.04的LST版本] 采用了nginx服务器(Nginx 静态处理性能比 Apache高3倍以上,不过apach ...
- Eolinker——前置用例返回的reponse值进行传递
如下补充均是Eolinker的文档中未说明的部分 示例:将login接口reponse中的mobile的值作为参数,传递给”重置密码”的请求体“code" 1.打开”前置用例“,先点击左上角 ...
- C# HTML 生成 PDF
原文出处:http://www.cnblogs.com/shanyou/archive/2012/09/07/2676026.html