一:本地部署KVM

1.安装KVM

1.1安装须知

查看CPU是否支持kvm完全虚拟机。

[root@LINUX ~]# grep "flags" /proc/cpuinfoflags

: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon

pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave avx hypervisor

lahf_lm arat epb xsaveopt pln pts dts tpr_shadow vnmi ept vpid

注释:如果输出的信息中有vmx,说明intel处理器支持完全虚拟化。如果显示svm,说明是AMD的处理器支持虚拟化。

vmware workstation安装kvm的时候,需要开启CPU支持虚拟化。在BIOS界面设置

1.2在新机器上安装KVM

安装操作系统时选择上虚拟包即可

安装KVM包

1.3在现有机器上安装KVM

(1)安装kvm和其他虚拟化所需管理软件包。

[root@LINUX ~]# yum install -y kvm virt-* libvirts bridge-utils qemu-img

软件包名称介绍:

Kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序

Libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。

Bridge-utils:设置网络网卡桥接。

Virt-*:创建、克隆虚拟机命令,以及图形化管理工具virt-manager

Qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。

(2)加载kvm模块,查看kvm模块是否被加载

[root@LINUX ~]# modprobe kvm-intel

[root@LINUX ~]# lsmod | grep kvm

kvm_intel              54285  0

kvm                   333172  1 kvm_intel

(3)重启确实KVM是否被加载

[root@LINUX ~]# reboot          

[root@LINUX ~]# lsmod | grep kvm

kvm_intel              54285  0

kvm                   333172  1 kvm_intel

2.配置KVM

2.1. 关闭iptables和selinux

(1)关闭iptables防火墙和selinux。

[root@LINUX ~]# /etc/init.d/iptables stop

[root@LINUX ~]# chkconfig iptables off

[root@LINUX ~]# chkconfig --list iptables

iptables        0:off   1:off   2:off   3:off   4:off   5:off   6:off

[root@LINUX ~]# vim /etc/sysconfig/selinux

SELINUX=disabled

[root@LINUX ~]# setenforce 0

2.2. 配置桥接

(1)配置eth0、br0网卡

[root@LINUX ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0     

DEVICE=eth0

HWADDR=00:0C:29:33:B3:E5

TYPE=Ethernet

UUID=142284ae-3173-4b0a-80d8-437c26a96719

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=none

BRIDGE=br0

[root@LINUX ~]# more /etc/sysconfig/network-scripts/ifcfg-br0     

DEVICE=br0

HWADDR=00:0C:29:33:B3:E5

TYPE=Bridge

UUID=142284ae-3173-4b0a-80d8-437c26a96719

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=10.0.1.149

NETMASK=255.255.255.0

GATEWAY=10.0.1.1

[root@LINUX ~]# /etc/init.d/network restart

(2)查看目前所有的网桥接口

[root@LINUX ~]# brctl show

bridge name     bridge id               STP enabled     interfaces

br0             8000.000c2933b3e5       no              eth0

virbr0          8000.525400d969b8       yes             virbr0-nic

2.3. 配置VNC服务

(1)修改VNC服务端的配置文件

[root@LINUX ~]# vim /etc/libvirt/qemu.conf  

vnc_listen = "0.0.0.0"   第十二行,把vnc_listen前面的#号去掉。

(2)重启libvirtd和messagebus服务

[root@LINUX ~]# /etc/init.d/libvirtd restart

Stopping libvirtd daemon:                                        [  OK  ]

Starting libvirtd daemon: libvirtd: initialization failed  [FAILED]

解决办法:

[root@LINUX libvirt]# echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile

[root@LINUX libvirt]# source /etc/profile

[root@LINUX libvirt]# /etc/init.d/libvirtd restart

Stopping libvirtd daemon:                                       [FAILED]

Starting libvirtd daemon: 2014-08-15 16:14:18.595+0000: 2429: info : libvirt version: 0.10.2, package: 29.el6_5.11 (CentOS BuildSystem <http://bugs.centos.org>, 2014-07-31-18:52:08, c6b8.bsys.dev.centos.org)

2014-08-15 16:14:18.595+0000: 2429: warning : virGetHostname:2294 : getaddrinfo failed for 'LINUX': Name or service not known

[  OK  ]

[root@LINUX ~]# /etc/init.d/messagebus restart

Stopping system message bus:                            [  OK  ]

Starting system message bus:                             [  OK  ]

3.安装KVM上虚拟机

3.1. 创建镜像文件目录和虚拟磁盘存放目录

[root@LINUX ~]# mkdir -p /home/iso

[root@LINUX ~]# mkdir -p /home/kvm

 

3.2. 把Centos6.5系统的镜像文件拷贝到iso目录下

此处将单机部署手册中的sucunOs_anydisk.iso放置/home/iso目录下

3.3. 创建kvm虚拟机的磁盘文件

本例创建的磁盘文件为10G,实际使用中应注意下/home的空间,可以设置为100G

[root@LINUX ~]# cd /home/kvm/

[root@LINUX ~]# qemu-img create -f qcow2 -o preallocation=metadata kvm_mode.img 10G        

Formatting 'kvm_mode.img', fmt=qcow2 size=10737418240 encryption=off cluster_size=65536 preallocation='metadata'

3.4. 安装虚拟机

bridge网络模式(有独立IP时使用这种方式)

[root@LINUX ~]# chmod -R 777 /etc/libvirt

[root@LINUX ~]# chmod -R 777 /home/kvm

[root@LINUX ~]#virt-install --name=kvm_test --ram 4096 --vcpus=4 -f /home/kvm/kvm_mode.img --cdrom /home/iso/sucunOs_anydisk.iso --graphics vnc,listen=0.0.0.0,port=7788, --network bridge=br0 --force --autostart

Net模式(没有独立IP时使用这种方式)

[root@LINUX ~]# chmod -R 777 /etc/libvirt

[root@LINUX ~]# chmod -R 777 /home/kvm

[root@LINUX ~]#virt-install --name=kvm_test --ram 4096 --vcpus=4 -f /home/kvm/kvm_mode.img --cdrom /home/iso/sucunOs_anydisk.iso --graphics vnc,listen=0.0.0.0,port=7788 --force --autostart

用VNC连接,进行创建kvm虚拟机(VNC连上之后,跟安装linux Centos 6.5系统一样,重新装一次)

【注】出现上面页面说明客户端已经可以连接到kvm上安装的服务器,点击continue是如果出现闪退的情况,请修改Option->Expert->ColorLevel 的值为full

二:制作镜像

用VNC连接上创建的虚拟后,以SUSE12镜像为例,会进行重装系统和修改一些系统中配置文件。

1.制作镜像注意事项

1.1以suse镜像安装为例,在安装时需要注意磁盘分区一定要自动分区(LVM),否则上传到openstack环境还是无法识别硬盘。

2.修改相关配置文件

2.1.配置网卡

#vim /etc/sysconfig/network/ifcfg-eth0

按下图进行配置相关参数

配置完成后重启网络配置

#systemctl restart network.service

2.2远程登录允许

#vim /etc/sysconfig/SuSEfirewall2

打开防火墙相关配置文件后,设置FW_SERVICES_EXT_TCP参数为ssh

FW_SERVICES_EXT_TCP="ssh"

配置完成后重启防火墙相关配置文件

#rcSuSEfirewall2 restart

2.3开启密码和秘钥登录

#vim /etc/ssh/sshd_config

打开文件后找到AuthorizedKeysFile和PasswordAuthentication相关配置

AuthorizedKeysFile   .ssh/authorized_keys
PasswordAuthentication yes

配置完成后重新启动ssh服务

#systemctl restart sshd

配置完成后,可将本地 /home/kvm镜像上传至需要使用的远程openstack的controller节点使用。

云计算---openstack镜像制作详解的更多相关文章

  1. 云计算---openstack镜像制作

    一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...

  2. Centos7上部署openstack ocata配置详解

    之前写过一篇<openstack mitaka 配置详解>然而最近使用发现阿里不再提供m版本的源,所以最近又开始学习ocata版本,并进行总结,写下如下文档 OpenStack ocata ...

  3. (转)Centos7上部署openstack ocata配置详解

    原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124  文章-2  评论-82  Centos7上部署openstack ocata配置详解 ...

  4. OpenStack各组件详解和通信流程

    一.openstack由来 openstack最早由美国国家航空航天局NASA研发的Nova和Rackspace研发的swift组成.后来以apache许可证授权,旨在为公共及私有云平台建设.open ...

  5. OpenStack Paste.ini详解(二)

    接着OpenStack Paste.ini详解(一),接下来就分析request被paste.ini处理的流程 WSGI server接收到URL形式的request时,这些request首先会被Pa ...

  6. OpenStack 部署步骤详解(mitaka/ocata/一键部署)

    正文 OpenStack作为一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,开放源代码项目的云计算管理平台项目.具体知识我会在后面文章中做出介绍,本章主要按步骤给大家演示在C ...

  7. Openstack keystone组件详解

    OpenStack Keystone Keystone(OpenStack Identity Service)是 OpenStack 框架中负责管理身份验证.服务规则和服务令牌功能的模块.用户访问资源 ...

  8. openStack镜像制作

    参考链接: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/OpenStack/page/Creating ...

  9. OpenStack 镜像制作

    Contents [hide] 1 Centos6.5 img制作 1.1 基础环境安装 1.2 下载或从本地上传系统镜像 1.3 启动服务 1.4 建立镜像文件 1.5 通过virt-install ...

随机推荐

  1. python3中的编码与解码(超好理解)

    编码和解码是针对数据而言的,数据能干什么呢?无非就是用来显示,储存和传输的: 储存和传输数据当然是希望数据越小越好,所以发明了utf-8这种数据编码显示:它智能将英文用一个字节表示,欧洲的字符用两个字 ...

  2. 【LintCode·容易】用栈模拟汉诺塔问题

    用栈模拟汉诺塔问题 描述 在经典的汉诺塔问题中,有 3 个塔和 N 个可用来堆砌成塔的不同大小的盘子.要求盘子必须按照从小到大的顺序从上往下堆 (如:任意一个盘子,其必须堆在比它大的盘子上面).同时, ...

  3. HDU3790-最短路径问题

    最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  4. jquery写的树状列表插件-alvintree

    在做项目的时候遇到选择部门下人员的功能,可多选可单选,所以就想着使用树状列表来进行选择,但在网上找了很多,发现要么就是挺复杂,要么就是需要各种前端框架的支持,试了一个感觉难用,所以就想着自己写一个简便 ...

  5. springBoot系列教程02:mongodb的集成及使用

    1.安装mongodb mongdb的安装很简单,只需要下载解压后运行mongod就好了 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86 ...

  6. bitcms 一个迟到的项目,一个老程序的项目总结

    经历长达两年的开发,两个版本的更换.bitcms要终于面世了.先来接受大家的吐嘈.项目文档,慢慢完善中... 首先先来介绍下项目 bitcms是由asp.net开发,sqlite为数据库的开源内容管理 ...

  7. 【NOI2015】程序自动分析

    https://www.luogu.org/problem/show?pid=1955 并查集+离散化. 先执行所有x=y问题,即合并x和y. 再依次执行所有x!=y问题,即查询x和y是否处于同一集合 ...

  8. 从setTimeout看js函数执行

    老实说,写这篇文章的时候心里是有点压抑的,因为受到打击了,为什么?就 因为喜欢折腾不小心看到了这个"简单"的函数:        for (var i = 0; i < 5; ...

  9. SQL-删除重复记录

    前几日工作的时候,有个小需求,是要求删除一个表table_A里的重复记录(保留一条),假设以字段COL_PK重复来判断记录重复,那么有几种写法: 在Oracle里,可以利用rowid来删除,这是非常高 ...

  10. SVG绘图学习总结

    在我们平时做的很多网站项目中都会需要绘制各种各样的二维矢量图形.比如做城市地下管网的断面图.管线管点的坐标位置矢量标识图.钻孔位置或地层剖面图等等.我们有很多中方法来绘制这些矢量图(vml.canva ...