您的位置:首页 > 其它

通过修改DB给cloudstack添加模板

2014-06-13 15:58 260 查看
转载地址:http://www.07net01.com/linux/tongguoxiugaiDBgeiCloudStackzhongtianjiamoban_559644_1376291742.html

CloudStack的模板上传有只能通过http server,但经常会遇到httpserver搭建异常、上传发生timeout或者上传一半的时候无法继续上传等等各种问题,而项目实施的时候,按进度又要求必须尽快使用该模板,这个时候就会有是否能够直接将模板scp到SecondaryStorage中的需求。

在SS中,模板存放在template目录中,此目录的结构为:template/tmpl/[account_id]/[template_id]/account_id为此模板所属用户的id例如:登陆admin用户,上传一个centos.ova作为vmware模板,该模板id为202,则此模板在SS中存放路径为template/tmpl/2/202/。该目录中一共有4个文件:509f8d99-d81f-3104-95c9-9cfd23026f83.ova,CentOS_5.6-disk1.vmdk,CentOS5.6.mf,CentOS
5.6.ovf,template.properties。".ova"文件是上传的原始ova文件,".vmdk",".mf",".ovf"是由ova解压之后产生的模板文件。".vmdk"是虚拟机的磁盘镜像文件".ovf"是虚拟机在导出为ovf格式的时候所产生的描述文件,包含了虚拟机磁盘文件vmdk,资源文件iso和domain之间的正确对应".mf"是相关文件的SHA的集合,主要作用是防止模板文件被修改此例中,mf文件内容如下:[root@localhost
202]# catCentOS\ 5.6.mf 
SHA1(CentOS 5.6.ovf)=867999689b9a2f4591dc3c930d4033f7872264b0SHA1(CentOS_5.6-disk1.vmdk)=f8a0fdbbafafcc2dc1535c1bf53f500180a5cf75以上3个文件是vmware模板相关文件,另外一个template.properties则是CloudStack在installtemplate完成之后,产生的模板描述文件,内容如下:[root@localhost
202]# cattemplate.properties ##Mon Jul 29 06:42:11 UTC 2013ova.virtualsize=10737418240 //模板的额定值filename=509f8d99-d81f-3104-95c9-9cfd23026f83.ova //ova文件名ova.filename=509f8d99-d81f-3104-95c9-9cfd23026f83.ova  //ova文件名id=202  //db中vm_template.idpublic=true
//db 中vm_template.public,控制模板的访问权限uniquename=202-2-fc9f565a-9e17-3de2-b81a-f91b2b69894f//db中vm_template.uniquenamevirtualsize=10737418240 //模板的额定值checksum=847b01e45b6ad09519f4c3fabeb5b823//校验码,检查文件是否完整或被改变hvm=true//db中vm_template.hvm,是否需要主机支持hvmova=true
//是否ova文件description=test//db中vm_template.display_textova.size=1011362816 //ova模板文件大小size=1011362816 //ova模板文件大小

==============================================================================CloudStack中对模板的信息,会分别存放在5个表中:vm_template,template_host_ref,template_zone_ref,template_spool_ref,template_swift_ref。vm_template主要存放模板的详细信息,包含名称,访问权限,下载地址,格式,类型等。表结构如下:+--------------------+---------------------+------+-----+---------+----------------+|
Field            | Type             | Null | Key | Default | Extra        |+--------------------+---------------------+------+-----+---------+----------------+|
id               | bigint(20) unsigned | NO  | PRI | NULL   | auto_increment || unique_name       | varchar(255)      | NO   |    | NULL    | 
           || name             | varchar(255)      | NO   |    | NULL    |             || uuid  
          | varchar(40)       | YES  | UNI | NULL   |             || public           | int(1) unsigned    | NO
  |    | NULL    |             |访问权限| featured          | int(1)unsigned     | NO  |     | NULL   |        
    |访问权限| type             | varchar(32)       | YES  |    | NULL    |             | | hvm       
      | int(1) unsigned    | NO   |    | NULL   |              || bits             | int(6) unsigned    | NO  
|    | NULL   |             |32/64| url              | varchar(255)      | YES  |    | NULL    |      
      |模板上传地址|
format           | varchar(32)        | NO 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cloudstack 模板