美文网首页大数据&云计算程序员openstack
Openstack使用ISO启动云主机并制作镜像

Openstack使用ISO启动云主机并制作镜像

作者: VienFu | 来源:发表于2019-03-28 15:27 被阅读5次

调研结果

经过M版测试发现openstack其实已经支持这部分功能了,现将具体的操作流程做以下记录。

整体操作流程

  • 下载ISO镜像并将其上传至glance管理;
  • 基于ISO镜像启动一个云主机实例;
  • 创建一个空的volume并将其attach到上一步创建的云主机实例;
  • 登录到VNC Console完成OS的安装;
  • 删除实例,基于volume新建一个云主机实例;
  • 登录到新建实例进行必要软件包的安装;
  • 信息清除并删除新建实例;
  • 基于volume上传image;
  • 基于新的image新建云主机实例;

下面仅就一些需要额外注意的步骤做简单说明。

上传ISO镜像

以Ubuntu16.04为例,首先下载ISO,然后将该ISO镜像上传至Glance管理。
openstack上传镜像一般可以通过以下两种方式来完成:

上传镜像CLI命令

openstack image create --disk-format iso --container-format bare --public --file ./ubuntu-16.04.6-server-amd64.iso ubuntu-iso

openstack Horizon界面操作

upload_image.png

紧接着基于ISO创建云主机不再赘述,直接跳过到下一步。

新建空卷

新建一个空的volume,注意卷的大小,至少要大于ISO文件的大小。


create_blank_volume.png

然后,把该卷attach到新建的云主机上:


attach_vol.png

登陆VNC安装OS

这一步其实跟我们日常直接用ISO通过制作USB启动介质安装OS或者通过光驱安装OS的过程基本上都是一样的,不过特别注意的也是这一步,因为我们需要特别把OS安装到刚才新建的空的volume里。

登陆VNC Console进入安装OS界面:


os_install.png

如上所提,操作跟正常安装OS一样,再提醒一遍:当OS安装到指定目标盘或分区时,一定要对应到空的新建的volume。当OS完成安装时,此时其实OS已经安装到我们新建的volume里了,而这时的云主机已经没什么用了可直接删掉,紧接着把volume设置成bootable:

# 获取volume的ID
cinder list | grep ubuntu16.04_os
# 设置可启动
cinder set-bootable  <volume_id> true

然后,基于该volume再新建一个云主机,登陆到云主机后安装一些通用的软件比如cloud-init、qemu-guest-agent、openssh-server等,之后删除/etc/udev/rules.d/70-persistent-net.rules清除网卡网络配置脚本文件MAC、UUID等信息(或者也可以通过virt-sysprep来清理),最后删除云主机。

基于卷上传镜像

image_upload.png image_list.png

然后就可以基于image创建云主机了:


vms_list.png

ssh(通过key pair的方式)登陆到云主机:


login_vm.png

登陆ok。

相关文章

网友评论

    本文标题:Openstack使用ISO启动云主机并制作镜像

    本文链接:https://www.haomeiwen.com/subject/qtbqbqtx.html