文档章节

基于KVM的Openstack镜像模版制作

Inchin
 Inchin
发布于 2017/08/24 15:52
字数 983
阅读 101
收藏 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
OpenStack centos版安装(二)

在OpenStack第一天文档翻译后,丁丁努力坚持每晚抽时间翻译OpenStack官方网站提供的安装与部署指南,本文翻译自官方安装与部署指南的前四章内容,前四章内容主要是对OpenStack整体安装步骤以...

蓝狐乐队
2014/04/18
0
0
OpenStack的各个组件作用及关系

一、OpenStack认证服务----->Keystone Keystone为所有的OpenStack组件提供认证和访问策略服务,它依赖自身REST(基于Identity API)系统进行工作,主要对(但不限于)Swift、Glance、Nova等进...

I_BUG
04/28
0
0
Openstack kvm win7镜像制作

Openstack不但能管理linux虚拟机还能管理windows虚拟机,之前做过基于kvm的debian6镜像,今天实战一下win镜像的制作,以win7为例。 母系统环境:ubuntu12.10 server + kvm 下载virtio驱动,因...

China_OS
2012/12/12
0
3
51CTO《OpenStack极速入门》视频课程上线了!

课程地址: http://edu.51cto.com/course/11184.html 课程目标: 由浅入深、循序渐进地掌握OpenStack体系结构、基础构建,快速构建实验环境。通过全动手的实验,掌握通过命令行和图形化的工具...

dbtrain
06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

49.Nginx防盗链 访问控制 解析php相关 代理服务器

12.13 Nginx防盗链 12.14 Nginx访问控制 12.15 Nginx解析php相关配置(502的问题) 12.16 Nginx代理 扩展 502问题汇总 http://ask.apelearn.com/question/9109 location优先级 http://blog....

王鑫linux
52分钟前
0
0
Nginx防盗链、访问控制、解析php相关配置、Nginx代理

一、Nginx防盗链 1. 编辑虚拟主机配置文件 vim /usr/local/nginx/conf/vhost/test.com.conf 2. 在配置文件中添加如下的内容 { expires 7d; valid_referers none blocked server_names *.tes......

芬野de博客
今天
0
0
spring EL 和资源调用

资源调用 import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.PropertySource;import org.springframework.core.io.Resource;......

Canaan_
今天
1
0
memcached命令行、memcached数据导出和导入

一、memcached命令行 yum装telnet yum install telent 进入memcached telnet 127.0.0.1 11211 命令最后的2表示,两位字节,30表示过期时间(秒) 查看key1 get key1 删除:ctrl+删除键 二、m...

Zhouliang6
今天
0
0
Linux定时备份MySQL数据库

做项目有时候要备份数据库,手动备份太麻烦,所以找了一下定时备份数据库的方法 Linux里有一个 crontab 命令被用来提交和管理用户的需要周期性执行的任务,就像Windows里的定时任务一样,用这...

月夜中徘徊
今天
1
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部