openstack封装镜像
1.准备工作:
准备你想要封装的各种镜像的iso,完整版本最简单版本都ok,只要能出虚拟机就行,这个大家去官网下载自己要的iso就可以,我这里用centos6.4最简版本,因为分给我的活让做这个的....
支持虚拟化的centos7机器一台,vm里的就可以,但是你要开cpu支持虚拟化选项了
有一些要求的就比如/要多大空间,/home要多大空间等等的也是可以做的,但是估计你用vm在自己电脑上分出来的小虚拟机这资源上就扛不住了,如果有一台比较专门装了centos的物理机这样最好
2.正式开始:
yum install virt-install virt-sparsify -y
mkdir /openstack-images
cd /openstack-images
把你的iso镜像扔这里吧,其实放哪里都可以,就是自己记住路径就好
qemu-img create -f qcow2 centos6.4.qcow2 20G(最后封装完成后不会这么大,现在只是这么意思意思#35)
chown qemu:qemu /openstack-images -R
systemctl start libvirtd
virt-install -n vm1 -r 1024 --cpu host -c /openstack-images/CentOS-6.4-x86_64-minimal.iso --disk path=/openstack-images/centos6.4.qcow2,device=disk,bus=virtio,size=20,format=qcow2 --vnc --vncport=5900 --vnclisten=0.0.0.0 -v(创建完成后ssh会空住,可以在打开个ssh)
virsh list你会看见刚才刚才创建的虚拟机vm1在run
如果有错误需要删除虚拟机
virsh destroy vm1
virsh undefine vm1
然后你就可以用vncviewer连接你的物理机的5900端口来操作这台虚拟机,我不喜欢用vnc,所以直接在图形界面打开了,如果端口被占用换一个端口就好
virt-manager(会打开管理窗口,你刚才创建的vm1就在这里,在运行,双击它就打开了操作界面,其实跟vnc看到的一样了)
VNC连接:

装系统因人而异,也因系统而异,我就不写了,但是作为需要封装的镜像,一般都是最简安装的,如果有分区要求,就自定义分区去操作就好了
系统装好后启动,此时还没完成,然后进到这台虚拟机的系统里操作,先做一些你需要自定制的东西,比如安装saltstack客户端,然后:
rm -rf /etc/udev/rules.d/70-persistent-net.rules
cat /etc/sysconfig/network-scripts/ifcfg-eth0应该是这样
TYPE="Ethernet"
DEVICE="eth0"
BOOTPROTO="dhcp"
ONBOOT="yes"
NM_CONTROLLED="yes"
sed -i s/^SELINUX=.*/SELINUX=disabled/g /etc/selinux/config
service iptables stop && chkconfig iptables off(7系统应该是firewalld)
service ip6tables stop && chkconfig ip6tables off
init 0关机
du -sh 你的镜像名
可以看到这个img文件应该1g多左右,根据系统不同
virt-sparsify --compress centos6.4.qcow2 centos6.4-cloud.qcow2 # 压缩一定要压缩!
此时这个centos6.4-cloud.qcow2应该是不到300M
把它传到你的openstack安装glance组件的服务器上
openstack image create "centos6.4" --file centos6.4-cloud.qcow2 --disk-format qcow2 --container-format bare --public
3.验证
登录openstack的控制台用此镜像创建一个云主机,此时最小的套餐肯定是不行了,貌似才512M吧,用第二个创建,等一会就ok了,云主机登录就是你在qemu装系统时设置的账号密码
openstack封装镜像的更多相关文章
- openstack快速封装镜像
本来是该写对接ceph的,但是临时有事了,必须先弄镜像,因此提前写这个了,我个人不是按官网来封装镜像的,是按自己的习惯,所以觉得信不过的可以用官网的方式,有兴趣的可以看看都知道,openstack创建 ...
- openstack导入镜像
本文以制作CentOS7.2镜像为例,详细介绍手动制作OpenStack镜像详细步骤,解释每一步这么做的原因.镜像上传到OpenStack glance,支持以下几个功能: 支持密码注入功能(nova ...
- 制作 OpenStack Linux 镜像 - 每天5分钟玩转 OpenStack(151)
这是 OpenStack 实施经验分享系列的第 1 篇. OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作.本节介绍 Linux 镜像的制作方法 ...
- 制作 OpenStack Windows 镜像 - 每天5分钟玩转 OpenStack(152)
这是 OpenStack 实施经验分享系列的第 2 篇. OpenStack 通过 Glance 镜像部署 instance,上一节我们介绍了 linux 镜像制作方法,windows 镜像与 lin ...
- ubuntu openstack windows 镜像制作
openstack windows 镜像制作 首先下载windows所需要的驱动,virtio-win-1.1.16.vfd virtio-win-0.1-59.iso 下载的官方地址是: http ...
- Openstack glance 镜像服务 (五)
Openstack glance 镜像服务 (五) 引用: 官方文档glance安装 https://docs.openstack.org/ocata/zh_CN/install-guide-rdo/ ...
- OpenStack JEOS 镜像
JEOS:Just Enough Operating System 维基百科地址:http://en.wikipedia.org/wiki/Just_enough_operating_system O ...
- Openstack的镜像上传原理
openstack的horizon的上传镜像流程 通过html的form表单上传文件 先上传到horizon指定的临时目录,存储起来 通过glance-api请求接口 实际上glance-api也是提 ...
- OpenStack导入镜像后Launch不起来的几个问题
Dashboard上显示state为error 没有其他报错 用nova list找到虚拟机的id 然后nova show,可以得到fault详细信息 也可以查看下面两个log /var/log/no ...
随机推荐
- C 标准库 - <errno.h>
C 标准库 - <errno.h> 简介 C 标准库的 errno.h 头文件定义了整数变量 errno,它是通过系统调用设置的,在错误事件中的某些库函数表明了什么发生了错误.该宏扩展为类 ...
- react-redux的connect()方法
容器组件使用 connect() 方法连接 Redux 我们用 react-redux 提供的 connect() 方法将“笨拙”的 Counter 转化成容器组件.connect() 允许你从 Re ...
- python(19)- 列表生成式和生成器表达式练习Ⅰ
列表表达式 程序一: 常规写法: egg_list=[] for i in range(100): egg_list.append('egg%s' %i) print(egg_list) 列表表达式写 ...
- 【转载】C#扫盲之:带你掌握C#的扩展方法、以及探讨扩展方法的本质、注意事项
1.为什么需要扩展方法 .NET3.5给我们提供了扩展方法的概念,它的功能是在不修改要添加类型的原有结构时,允许你为类或结构添加新方法. 思考:那么究竟为什么需要扩展方法呢,为什么不直接修改原有类型呢 ...
- fping - send ICMP ECHO_REQUEST packets to network hosts
NAME fping - send ICMP ECHO_REQUEST packets to network hosts SYNOPSIS fping [ options ] [ systems... ...
- css实现弹出窗体始终垂直水平居中
<!DOCTYPE html><html> <head> <meta charset=" utf-8"> <meta name ...
- GoogleFusionTablesAPI初探地图与云计算
http://developer.51cto.com/art/200906/129324.htm http://yexiaochai.iteye.com/blog/1893735 http://yex ...
- SAM4E单片机之旅——10、UART与MCK之PLL
为使用更更高的波特率,则需要更更高的外设时钟的频率.这个时候就需要用到锁相环(PLL)了.锁相环可以对输入的时钟进行分频.升频后进行输出.MCK可以使用的锁相环为PLLA,而PLLA的输入时钟为MAI ...
- Handler向子线程发送数据
public class MainActivity extends AppCompatActivity { private static final String TAG = "MainAc ...
- [CPP - STL] swap技巧
最近在看<Effective STL>,[条款17:使用“交换技巧”修整过剩容量]中提到容器的成函数void swap(container& from),即实现容器对象与from对 ...