文档章节

基于KVM的Openstack镜像模版制作

Inchin
 Inchin
发布于 2017/08/24 15:52
字数 983
阅读 132
收藏 0

1.   环境准备

Ø  ISO准备

根据需要制作的Openstack镜像,下载所需的ISO文件。此处以安装制作CentOS7.2为例。

已准备好iso文件:CentOS-7-x86_64-Minimal-1511.iso

 

Ø  宿主机准备

²  查看宿主机的cpu是否支持KVM

grep -E -o '(vmx|svm)' --color=auto /proc/cpuinfo

vmx表示CPU支持Intel VT 技术,svm代表CPU支持AMD-v技术

²  安装libvirt虚拟化管理工具

# yum -y install virt-manager virt-viewer libvirt libvirt-python python-virtinst virt-install

# service libvirtd start   

# chkconfig libvirtd on

 

宿主机(建议直接使用已安装部署Openstack计算节点的物理机,例子以172.16.70.1为例)环境安装centos7.2操作系统,已经安装virt-install、kvm、qemu-img等工具;上传CentOS-7-x86_64-Minimal-1511.iso至目录/usr/local/src

2.   镜像制作

Ø  创建虚拟机磁盘镜像

在宿主机上执行命令创建虚拟机磁盘文件

# qemu-img create -f qcow2 /tmp/CentOS-7.20-x86_64.qcow2 40G

 

Ø  从ISO启动虚拟机

virt-install --virt-type kvm --name CentOS-7.20-x86_64 \

--ram 2048 --disk /tmp/CentOS-7.20-x86_64.qcow2,format=qcow2 \

--graphics vnc,listen=0.0.0.0 --noautoconsole \

--os-type=linux --os-variant=rhel7 \

--network bridge=br71 \

--cdrom=/usr/local/src/CentOS-7-x86_64-Minimal-1511.iso

例子宿主机***.**.**.**已有网桥bridge br71。如果不使用网桥,标红处可用如下行替换

--network network=default \

 

Ø  虚拟机操作系统安装

使用tightVNC客户端工具连接虚拟机。连接完成后正常情况下将可以打开虚拟机的安装界面,按照正常的操作系统安装方法完成虚拟机操作系统的安装。安装过程省略,注意在进行磁盘分区的时候可以使用默认的LVM,也可以自定义分区结构。针对虚拟机的建议是只分配一个根分区/,不创建其它分配和swap分区。安装成功后,点击reboot,注意并不会重启,需要我们手动启动:

启动完毕后,我们再连接到虚拟机上。

使用tightVNC客户端连接虚拟机,IP地址为虚拟机所在宿主机的外网地址,端口为虚拟机监听的端口,端口号可使用如下命令查询:

# netstat -anoplt|grep -i `ps -ef|grep -v grep|grep CentOS-7.20-x86_64|awk '{print $2}'`

连接后即可进入虚拟机

配置虚拟机网络,使虚拟机能够接入具体的yum源。

 

 

Ø  安装 ACPI 服务

启动后,你可能需要手动配置你的虚拟机的网络。为了让虚拟化层能重启和关闭虚拟机,必须在虚拟机内安装并运行 acpid 服务。

在 CentOS虚拟机内运行以下命令安装 ACPI 服务并配置为系统启动时自动启动。

# yum install acpid

# systemctl enable acpid

 

Ø  清除MAC地址相关信息

操作系统会在/etc/sysconfig/network-scripts/ifcfg-eth0 和

/etc/udev/rules.d/70-persistent-net.rules 这类文件记录下网卡MAC地址,但是,虚拟机的网卡MAC地址在每次虚拟机创建的时候都会不同,因此这些信息必须从配置文件删除掉。

 

Ø  其它标准化操作

可以把所有虚拟机都需要进行的设置在镜像这一级全部设置完毕。例如:比如关闭SElinux、firewalld、postfix。以及设置内网DNS,安装相关的Agent等。

 

Ø  收尾工作

关闭虚拟机。如果以后不在需要该虚拟机也可以直接删除。建议是保留,方便后期进行虚拟机镜像的定制。

 

Ø  建议安装工具

gcc tcpdump lsof parted snmpwalk perl wget createrepo perl-ExtUtils-MakeMaker setuptool bzip2 gzip unzip zip net-snmp python-setuptools python-devel

 

3.   上传镜像至Openstack Glance服务

Ø  上传镜像

镜像拷贝至Openstack的控制节点,执行如下命令:

glance image-create --name "CentOS-7.2-x86_64" --disk-format qcow2 --min-disk 40 --container-format bare --file /tmp/CentOS-7-x86_64.qcow2 --progress

 

参考

【1】OpenStack制作Windows 2008 KVM镜像 https://www.unixhot.com/article/70

【2】制作适用于openstack的Windows server 2008镜像

http://blog.csdn.net/just_young/article/details/40075943

© 著作权归作者所有

共有 人打赏支持
Inchin
粉丝 0
博文 32
码字总数 8499
作品 0
长沙
技术主管
私信 提问
Openstack 自制linux kvm debian6镜像

这篇笔记写了好几个月了,一直没有整理,为了防止以后遗忘,先记录一下 1 参照以前文档搭建一台可以安装kvm虚拟机的机器 http://my.oschina.net/guol/blog/62239 2 建立镜像 kvm-img create...

China_OS
2012/11/04
0
0
在 Ubuntu 上安装和配置 OpenStack Nova

OpenStack 是由 Rackspace 和 NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack 包含两个主...

鉴客
2012/03/10
1K
0
谁知道在openstack上能不能直接读取并解析OVF包?

用wmware生成了OVF文件,现在需要将OVF包部署到openstack上。从官方文档当中读后发现用kvm制作镜像以后,用glance的add命令 可以在openstack上添加镜像,可以选择container_format=ovf. 但是...

Eric_Lee
2012/12/03
929
1
在 CentOS 上安装和配置 OpenStack Nova

因为 Python 的版本问题,在 CentOS 5.6 上安装 OpenStack 不是件容易的事情,因为 OpenStack 是 Python 2.6 写的,CentOS 5.6 上默认的是 Python 2.4 的环境,一些关键工具(比如 yum 等)和...

鉴客
2012/03/10
1K
0
openstack 启动 docker实例,遇到docker实例无法启动的问题。

各位好,小弟最近遇到了一个问题,已经搞了好多天了。 背景:就是我想用openstack启动docker实例(docker镜像里面有个http请求客户端),让docker实例启动之后,请求默认的HTTP服务器。 我在...

choles
2015/11/02
155
0

没有更多内容

加载失败,请刷新页面

加载更多

[开源系统] springboot快速开发框架推荐

本期为大家精选了 码云 上优秀的 Spring Boot 语言开源项目,涵盖了企业级系统框架、文件文档系统、秒杀系统、微服务化系统、后台管理系统等,希望能够给大家带来一点帮助:) 1、项目名称:...

MoksMo
7分钟前
0
0
深入解析Vue里函数的调用顺序介绍

今天为大家分享一篇对vue里函数的调用顺序介绍,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 method用来定义方法的,比如你@cl...

前端攻城老湿
13分钟前
1
0
深入总结Javascript原型及原型链

本篇文章给大家详细分析了javascript原型及原型链的相关知识点以及用法分享,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 我们创建的每个函数都有一...

前端攻城小牛
15分钟前
1
0
千万级规模【高性能、高并发】互联网架构经验分享~

作者:Java关博 链接:http://blog.51cto.com/14049376/2329037?utm_source=tuicool&utm_medium=referral 架构以及我理解中架构的本质 在开始谈我对架构本质的理解之前,先谈谈对今天技术沙龙...

Java干货分享
16分钟前
0
0
缓存

并发情况下发生的缓存问题: 缓存一致性: 缓存穿透:是指在高并发场景下,如果某一个key被高并发的访问,缓存没有命中,出于容错性的考虑,会去数据库获取数据,从而导致大量请求访问数据库...

wuyiyi
21分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部