openstack在dashboard用iso制作qcow2的镜像【制作linux为例】、linux重封装
文章目录
- 说明
- 制作流程
- 1、上传iso镜像到dashboard
- 2、创建源为刚上传的ISO的volume
- 3、创建一个空的volume,后续做系统盘
- 4、创建一个实例,boot from 步骤2所创建的volume
- 创建实例
- 挂载卷
- 安装系统
- 删除实例
- 5、对系统盘的volume使能bootable
- 说明
- 方式1-dashboard上设置
- 方式2-命令行【cinder 命令】
- 命令行修改-【volume set命令】
- 6、创建实例,boot from 为步骤3所创建的volume
- 7、重封装虚拟机并删除实例
- 8 、将volume做成image,注意选择qcow2格式
- 9、修改镜像可见性为公有
- 10、用刚封装的镜像创建实例测试
说明
- 这是在dashboard上制作一个qcow2的镜像
- 也可以直接去官网直接下载qcow2的镜像,一般只有几百兆。
- 这用iso制作呢是为了集成某些软件,然后用这个模版来制作成qcow2镜像,也就是说自定义一个qcow2镜像。
制作流程
1、上传iso镜像到dashboard
- 登陆dashboard,进入admin用户,点击
管理员-镜像-创建镜像
- 然后自定义名称,指定iso文件,选择iso格式,点击创建镜像
- 上传好以后,如图
2、创建源为刚上传的ISO的volume
进入dashboard,选择项目->卷->卷->创建卷
【Project->Volumes-->Volumes->Create Volume
】
- 配置如下
卷来源选择 镜像,选择刚上传的镜像,类型磁盘大小根据情况定
- 创建好以后 如图
3、创建一个空的volume,后续做系统盘
- 进入dashboard,选择
项目->卷->卷->创建卷
【Project->Volumes-->Volumes->Create Volume
】
- 创建一个默认空白卷,大小自定义
- 创建成功后如图
4、创建一个实例,boot from 步骤2所创建的volume
创建实例
选择项目->计算 ->云主机 ->创建实例
【Project->Compute->Instances->Launch Instance
】
配置如下:
每项信息和平常创建一样填写,就是源的时候选择 卷,并指定刚刚创建的这个ISO卷
然后点击创建实例
创建后如下图所示
挂载卷
- 回到上面第3步创建的空卷,挂载到刚才创建的实例上,挂载成功后如下图
安装系统
回到云主机界面,通过console【控制台】进入vm进行安装:
- 然后会进入到安装linux系统的界面
- 和平常装linux一样进行设置
一般只是设置时间和分区而已,其他不动。
一定要最小化安装,不能图形化安装。
- 设置密码和用户名,等待安装完毕
安装成功后,不要点击reboot
删除实例
- 直接回到云主机界面,删除刚才创建的实例
- 这样我们在3中创建的空盘就有系统了
5、对系统盘的volume使能bootable
说明
- 去控制节点,执行下面命令,可以看到我当前的系统盘【iso-centos7.8-2】Bootable为false,现在要让其为true
注,版本不同,命令可能不同,有些可能是openstack volume list
root@controller01 ~]# source public-openrc.sh
[root@controller01 ~]# cinder list
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
| ID | Status | Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
| 2708ed97-e27c-400b-9268-aa307b176678 | available | | 200 | - | true | |
| 6f75186b-1c6d-419a-831c-3eebb4da7869 | available | os-centos7.6 | 100 | RBDdata01 | true | |
| 79db5580-8501-4aa5-a71f-4f9e4bc84839 | available | | 200 | - | true | |
| ad9a148e-62be-465e-8ca5-5fbbf60fa151 | available | iso-centos7.8 | 5 | RBDdata01 | true | |
| fa7da25e-6e13-4c02-a570-ee3ed64bd1e0 | available | iso-centos7.8-2 | 50 | RBDdata01 | false | |
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
[root@controller01 ~]#
方式1-dashboard上设置
- 直接回到卷这,可以看到可启动为false
- 点击编辑卷,吧可启动勾上,点击提交即可
- 现在可以看到可启动已经为true了
- 到控制节点用命令查看也可以看到状态变了
[root@controller01 ~]# cinder list
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
| ID | Status | Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
| 2708ed97-e27c-400b-9268-aa307b176678 | available | | 200 | - | true | |
| 6f75186b-1c6d-419a-831c-3eebb4da7869 | available | os-centos7.6 | 100 | RBDdata01 | true | |
| 79db5580-8501-4aa5-a71f-4f9e4bc84839 | available | | 200 | - | true | |
| ad9a148e-62be-465e-8ca5-5fbbf60fa151 | available | iso-centos7.8 | 5 | RBDdata01 | true | |
| fa7da25e-6e13-4c02-a570-ee3ed64bd1e0 | available | iso-centos7.8-2 | 50 | RBDdata01 | true | |
+--------------------------------------+-----------+-----------------+------+-------------+----------+-------------+
[root@controller01 ~]#
方式2-命令行【cinder 命令】
- 在控制节点操作
命令行修改-【volume set命令】
- openstack版本不同,有些可能没有cinder命令,那么就用volume set命令即可
[root@cloud ~]# openstack volume list | grep os-centos6.9
| 1a1acf3e-3281-4fe1-aa3e-097209ab2fff | os-centos6.9 | available | 20 | |
[root@cloud ~]# openstack volume set 1a1acf3e-3281-4fe1-aa3e-097209ab2fff --bootable
6、创建实例,boot from 为步骤3所创建的volume
选择项目->计算 ->云主机 ->创建实例
【Project->Compute->Instances->Launch Instance
】
- 配置如下:
每项信息和平常创建一样填写,就是源的时候选择 卷,并指定3中创建的卷名称
- 配置这,设置下面内容,修改root密码用的,之前安装系统定义的可能不会生效
- 创建成功如图
7、重封装虚拟机并删除实例
- 封装流程如下:
- 把这个系统标识为重新配置:
# touch /.unconfigured
- 删除 ssh 主机密钥:
# rm -rf /etc/ssh/ssh_host_*
- 在 /etc/sysconfig/network 中设置
HOSTNAME=localhost.localdomain
- 删除 /etc/udev/rules.d/70-*:
# rm -rf /etc/udev/rules.d/70-*
- 从
/etc/sysconfig/network-scripts/ifcfg-eth*
【网卡配置文件】 中删除 HWADDR 行和 UUID 行,并将ONBOOT改为yes - 从 /var/log 中删除所有日志,从 /root 中删除 build 日志 【 可不做】
- 关闭虚拟机:
# poweroff
- 把这个系统标识为重新配置:
- 上面做完以后,虚拟机现在已被封装,并可以被用来创建模板。您可以使用这个模板部署 Linux 虚拟机,不会有与配置文件相关的冲突。
- 封装完毕以后,删除该实例【是为了释放3中的卷】
8 、将volume做成image,注意选择qcow2格式
- 进入dashboard,选择
项目->卷->卷->创建卷
【Project->Volumes-->Volumes->Create Volume
】
点击↓
,选择上传镜像
- 自定义镜像名称
选择磁盘格式为qcow2,然后点击上传
- 等待上传
上传成功以后继续第9步
9、修改镜像可见性为公有
- 管理员-计算-镜像
可以看到当前镜像的可见性是 共享的,现在我们修改其为公有
- 点击编辑镜像-可见性选择 公有-更新镜像
- 这样就可以了
10、用刚封装的镜像创建实例测试
这就是正常创建,源选择刚才制作的qcow2即可
正在创建
创建成功后进入控制台并登陆
- ping和ssh同网段其他ip,没问题,搞定。
openstack在dashboard用iso制作qcow2的镜像【制作linux为例】、linux重封装相关推荐
- 【OpenStack(Train版)安装部署(十二)】之win7系统安装,qcow2格式镜像制作
文章目录 本文章由公号[开发小鸽]发布!欢迎关注!!! 1.win7系统qcow2格式镜像制作 (1)概述 (2)-失败-安装ISO镜像到qcow2磁盘. (3)vnc viewer连接虚机 (4)C ...
- Centos7 kvm环境制作qcow2 格式镜像
#注意需要开启虚拟化引擎 1.0 安装kvm 环境 #在宿主机安装kvm环境: [root@localhost data]# yum install qemu-kvm qemu-img virt-ma ...
- Windows server 2012 r2 系统安装启动u盘制作【系统镜像制作】——转自微信公众号网管爱好者
需要准备的东西 1.windowns server 2012 R2 iso文件 2.u盘 64G 3.UltraISO 安装 UltraISO 这里我为了方便,直接就用的 管家进行安装或安全卫士 接 ...
- openstack的qcow2镜像制作、linux系统中安装kvm虚拟机并导出为qcow2虚拟机、virt-manager制作qocw2镜像和转为raw格式——2.6w字超详细说明所有流程。
文章目录 说明 环境准备 虚拟机中安装kvm虚拟机 1.确保支持cpu虚拟化 2.安装qemu-kvm.libvirt.virt-install包和权限调整 3.开启libvirtd服务病开机自启 4 ...
- windows个人电脑上用vmware作为宿主机制作qcow2镜像
通常云服务商提供的多为基础镜像主机,无法定制系统环境. 本篇主要为了解决项目上云过程有自定义镜像需求以达到快速部署集群需求以节约时间成本的场景 如:项目镜像需要集成k8s.agent脚本等各种集成场景 ...
- linux 系统qcow2镜像制作
文章目录 一.linux 系统qcow2镜像制作 1. 基础知识 KVM 虚拟化kvm发展 VMware与KVM KVM和Qemu.libvirt的关系 2. 什么是qcow2 3. KVM环境下制作 ...
- 制作各种docker镜像
做了一个星期的镜像,收货颇多,现在整理记录下来,当做工作笔记吧.把常用的几个镜像的Dockerfile分享下. 制作基础docker镜像 制作基础镜像网上有很多实例,可以参考下开源中国的这篇文章:ht ...
- 03 KVM虚拟机镜像制作
文章目录 03 KVM虚拟机镜像制作 3.1 概述 3.2 制作镜像 3.2.1 使用root用户安装qemu-img软件包 3.2.2 使用qemu-img工具的创建镜像文件 3.3 修改镜像磁盘空 ...
- Docker笔记三 Docker镜像制作
Docker笔记三 Docker镜像制作 1.Docker镜像制作方法: docker commit 保存当前container的状态到镜像,生成p_w_picpath. docker build 利 ...
最新文章
- spring boot 注解_Spring-Boot项目中如何配置redis注解缓存?
- Java字符类型练习
- 湘潭大学网络编程_湘潭大学计算机学院网络空间安全学院“湘韵”研究生论坛成功举行...
- 《图解HTTP》读书笔记--第4章返回结果的HTTP状态码
- 数据科学与大数据技术的案例_作为数据科学家解决问题的案例研究
- vue 导出_Vue核心知识:8.3 vuex在vue-cli中的应用,文件之间的导出与引入
- 程序员的自我修养(2)——计算机网络
- asp当中的DateDiff的用法
- 软件设计师中级-数据流图(DFD)
- vs运行程序时报错:“Stack around the variable XXX was corrupted”
- 时间线故事脚本_时间轴的创意脚本
- 如何给国外老师写邮件
- Tomcat运行成功但是报500错误
- 26岁考计算机研究生,26岁考研究生好还是考公务员好?总结得太精辟了
- eclipse安装devstyle插件失败问题AN error occurred while colleting items tobe installed
- MySQL内部联结和外部联结
- logistic模型预测人口python_基于logistic回归stats模型的概率预测置信区间
- 九章算法笔记 - 思路总结
- paypal 的支付流程
- 3.01 bison基本概念及语法介绍