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 ...
随机推荐
- 未找到与约束 ContractName Microsoft.VisualStudio.Utilitues.IContentTypeRegistryService......
1.问题提出 用VS 2013 with Update5 开发项目,点击项目中的文件,发现打不开,抛出如下的错误. 错误提示: 未找到与约束 ContractName Microsoft.Visual ...
- js固定小数位数 .toFixed()
toFixed(num)法可把 Number 四舍五入为指定小数位数的数字. num为需要固定的位数 var num=2;console.log(num.toFixed(2));//2.00;var ...
- nginx报502修复日志
参考:https://www.baidu.com/link?url=PGd7mgvalnQp0MOVZTyDJIvr6_eJn1hmPlmsLpdj2vH6w3FzMt3pZEd_MKpoiqX1OF ...
- tcgetattr函数与tcsetattr函数控制终端
6.4.4 使用tcgetattr函数与tcsetattr函数控制终端 为了便于通过程序来获得和修改终端参数,Linux还提供了tcgetattr函数和tcsetattr函数.tcgetattr用于 ...
- Linux内核的三种调度策略
一 Linux内核的三种调度策略: 1,SCHED_OTHER 分时调度策略, 2,SCHED_FIFO实时调度策略,先到先服务.一旦占用cpu则一直运行.一直运行直到有更高优先级任务到达或自己放 ...
- python【项目】:选课系统【简易版】
功能要求 角色:学校.学员.课程.讲师要求:1. 创建学校2. 创建课程3. 课程包含,周期,价格,通过学校创建课程4. 通过学校创建班级, 班级关联课程.讲师5. 创建学员时,选择学校,关联班级5. ...
- 转载:Logistic回归原理及公式推导
转载自:AriesSurfer 原文见 http://blog.csdn.NET/acdreamers/article/details/27365941 Logistic回归为概率型非线性回归模型,是 ...
- (五)Spring 对事务的支持
第一节:事务简介 满足一下四个条件: 第一:原子性: 第二:一致性: 第三:隔离性: 第四:持久性: ------------------------------------------------- ...
- OpenCV3学习笔记
http://blog.csdn.net/u010429424/article/details/73691001 http://blog.csdn.net/zhaoxfxy/article/detai ...
- git与pycharm合并,珠联璧合
前段时间提交代码都是各种手写push push push,好蠢,今天尝试了一下ide直接提交,爽的一匹,做个总结. 首先github帐号肯定要有. 看图,设置好帐号啥的 再设置git路径,这个应该自动 ...