OpenNebula学习第四节之磁盘镜像的制作
一、准备工作
需要准备一个Ubuntu16.04的ISO文件上传至服务器,如下图所示

二、操作步骤
2.1:创建操作目录
创建一个/var/tmp/cloud_image目录,把Ubuntu16.04 OS的iso镜像上传到该目录,接下来的操作也会在这个目录下面执行
2.2:创建一个OS磁盘镜像
利用命令:qemu-img create -f qcow2 ubuntu1604.img 10G
创建一个空的磁盘镜像。如下图所示

需要注意的是:
-f 指定镜像的格式为qcow2 是一种可压缩的格式比较省空间
2.3:创建磁盘镜像的注册配置文件
该文件的作用是为了更方便的把磁盘镜像注册到OpenNebula的one服务中,需要创建两种类型的磁盘镜像注册文件,OS和CDROM类型,我们首先创建一个OS类型
的镜像注册配置文件,touch一个ubuntu1604-os-img.one,vi内容如下
NAME = "Ubuntu1604-OS"
PATH = "/var/tmp/cloud_image/ubuntu1604.img"
TYPE = "OS"
DESCRIPTION = "Ubuntu Server for company"
其次,创建一个CDROM类型的镜像注册配置文件,touch一个ubuntu1604-cdrom-img.one,vi内容如下
NAME = "Ubuntu1604-CDROM"
PATH = "/var/tmp/cloud_image/ubuntu-16.04.2-server-amd64.iso"
TYPE = "CDROM"
DESCRIPTION = "Ubuntu Server for company"
截止到这里,所有的准备工作基本OK,我们来看一下工作目录的结果

2.4:注册磁盘镜像到OpenNebula
首先说一下注册方式有两种:
- 通过OpenNebula的SunStone服务界面进行注册
- 通过命令行进行注册
1)通过OpenNebula进行磁盘镜像的注册
进入OpenNebula的管理界面点击存储-镜像-添加镜像如下图所示,可以从OpenNebula Server的方式写入镜像的URL或者上传本地镜像进行注册

2)通过命令行进行磁盘镜像的注册
执行命令 : oneimage create ubuntu1604-cdrom-img.one -d 1
语法 : oneimage create 镜像注册配置文件 -d 仓库ID
执行结果如下图所示:通过oneimage list命令可以查看我们刚刚注册的镜像,状态为rdy,创建成功

备注:可以执行 onedatastore list 查看仓库的ID,如下图所示

3)通过OpenNebula服务查看注册的镜像

OS类型的磁盘镜像加入以下属性,因为我们创建的时候格式是qcow2,否则安装系统的时候读取不到10G的磁盘空间

三、重点分析
在执行oneimage create命令的时候遇到过Not allowed to copy image 的错误,错误信息如下

root@KingServer3:/var/tmp/cloud_image# onedatastore show
DATASTORE INFORMATION
ID :
NAME : default
USER : oneadmin
GROUP : oneadmin
CLUSTERS :
TYPE : IMAGE
DS_MAD : fs
TM_MAD : ssh
BASE PATH : /var/lib/one//datastores/1
DISK_TYPE : FILE
STATE : READY DATASTORE CAPACITY
TOTAL: : .9G
FREE: : .2G
USED: : .1G
LIMIT: : - PERMISSIONS
OWNER : um-
GROUP : u--
OTHER : --- DATASTORE TEMPLATE
CLONE_TARGET="SYSTEM"
DISK_TYPE="FILE"
DS_MAD="fs"
LN_TARGET="SYSTEM"
RESTRICTED_DIRS="/"
SAFE_DIRS="/var/tmp"
TM_MAD="ssh"
TYPE="IMAGE_DS" IMAGES root@KingServer3:/var/tmp/cloud_image#
通过上面的操作,我们可以看到SAFE_DIRS="/var/tmp"这一行,所以我的工作空间是建在这个目录下面的,默认就是安全目录,所以不会出现那个问题
3)更改指定仓库的安全目录onedatastore update 1
这个操作就如同vi一个文件一样,如下图,我们修改里面的SAFE_DIRS的值为我们自定义的目录即可

OpenNebula学习第四节之磁盘镜像的制作的更多相关文章
- VUE2.0实现购物车和地址选配功能学习第四节
第四节 v-on实现金额动态计算 用¥金额 进行格式处理,可以使用原生js进行转换,但是在vuei,使用filter过滤器更加方便 注: 1.es6语法=>和import等 好处在于res参数后 ...
- JPA学习---第四节:JPA实例与JPA主键生成策略
1.编写实体类,代码如下: package learn.jpa.bean; import javax.persistence.Entity; import javax.persistence.Gene ...
- Python学习-第四节:常用模块-logging,re,time
1:logging模块 import logging logging.debug('This is debug message') logging.info('This is info message ...
- Ant学习---第四节:Ant属性的介绍
一.ant 属性设置,用 property 标签,详解如下: 特点 大小写敏感: 不可改变,先到先得,谁先设定,之后的都不能改变. 设置 1 .设置 name 和 value 属性值,比如: < ...
- Netty学习第四节WebSocket入门
1.什么是webSocket? webSocket是H5提出的一个协议规范,webSocket约定了一个通信的规范,通过一个握手的机制,客户端和服务端,就能建立一个类似TCP的连接,从而方 ...
- Coursera在线学习---第四节.过拟合问题
一.解决过拟合问题方法 1)减少特征数量 --人为筛选 --靠模型筛选 2)正则化(Regularization) 原理:可以降低参数Θ的数量级,使一些Θ值变得非常之小.这样的目的既能保证足够的特征变 ...
- python学习第四节 迭代器 生成器
1:什么是迭代 可以直接作用于for循环的对象统称为可迭代对象(Iterable). 可以被next()函数调用并不断返回下一个值的对象称为迭代器(Iterator). 所有的Iterable均可以通 ...
- 学习HTML 第四节.插入图像
学习HTML 第四节.插入图像 全是文字的网页太枯燥了吧,我们来搞个图片上去! <!DOCTYPE html><html><head><meta charse ...
- 风炫安全web安全学习第三十四节课 文件包含漏洞防御
风炫安全web安全学习第三十四节课 文件包含漏洞防御 文件包含防御 在功能设计上不要把文件包含的对应文件放到前台去操作 过滤各种../,https://, http:// 配置php.ini文件 al ...
随机推荐
- 用AB对Webservice做压力测试
AB工具下载 AB工具介绍见 web压力测试工具 下载ab工具后放到任意目录下,从命令行打开ab.exe 使用以下命令测试Webservice ab -c 100 -n 1000 -p zip.txt ...
- Training JTAG Interface
For most embedded CPU architecture implementations, the JTAG port is used by the debugger to interfa ...
- vs2012\vs2013\vs2015碰到生成时报该错误:项目中不存在目标“GatherAllFilesToPublish”
手头一个vs2010升级到vs2012后,web项目发布到本地目录时项目报错:“该项目中不存在目标“GatherAllFilesToPublish”” 通过谷歌大神的帮助,找到了解决方法.共享之. 原 ...
- python测试开发django-39.xadmin详情页面布局form_layout
前言 xadmin的详情页面默认是一行展示一个字段,可以使用form_layout对详情页面的布局重新设计. 可以设置必填和非必填字段,也可以设置不显示,不可以编辑的字段. models模块 先在mo ...
- linux文件名称查找which,whereis,locate
1. 文件名称查找 使用find查询时.因为磁盘查询.所以速度较慢. 所以linux下查询更常使用which, whereis, locate来查询,因为是利用数据库查询.所以速度非常快. 2. wh ...
- Oracle简易界面工具 (Oracle 10g, Oracle 11g)
Oracle简易界面工具 背景:偶在远程机上干活,须要调用到 Oracle 11gserver的数据,远程机上已安装Oracle client, 但 sql plus 和 sql developer ...
- 豪斯医生第一季/全集House M.D 1迅雷下载
豪斯医生 第一季 House M.D. Season 1 (2004)本季看点:态度无礼,表情凶恶,跛足拄着一根藤棍,永远是牛仔裤运动鞋的便装打扮而不是整洁的白大褂,普林斯顿大学附属医院的格雷戈·豪斯 ...
- Xcode打包踩过的那些坑
一.file was built for archive which is not the architecture being linked (armv7s) 项目是基于cocos2d-x绑定lua ...
- windows下node.js调用bat
node.js调用bat需要用到Child Processes模块 因为bat是文件,所以需要使用execFile方法 如果指定了cwd,它会切换bat执行的目录,类似cd的功能,如果未指定默认为 ...
- 简析Window、Activity、DecorView以及ViewRoot之间的错综关系
一.职能简介 Activity Activity并不负责视图控制,它只是控制生命周期和处理事件.真正控制视图的是Window.一个Activity包含了一个Window,Window才是真正代表一个窗 ...