网站中如何做图片轮播,网站开发常用的框架,互联网行业 英文,宁波网站开发服务一、云主机镜像简介
1#xff0e;云主机镜像
云主机镜像不同于容器镜像#xff0c;是一个含有引导分区、操作系统以及必要应用的单一文件#xff0c;可以理解成是对整个系统安装光盘所有数据的克隆文件。云用户在创建和申请云主机时可通过选择不同的镜像来快速获取相应操作…一、云主机镜像简介
1云主机镜像
云主机镜像不同于容器镜像是一个含有引导分区、操作系统以及必要应用的单一文件可以理解成是对整个系统安装光盘所有数据的克隆文件。云用户在创建和申请云主机时可通过选择不同的镜像来快速获取相应操作系统的云主机。 在传统的IT环境中对于每一台主机安装系统都需要系统的镜像文件从头开始安装。但这些方式都存在以下的一些问题当需要安装的系统数较多时需要的时间久且效率低下安装完成后需要对每台主机此意进行配置如配置IP等操作备份与恢复系统不够灵活。云环境下提供了更加高效的解决方案就是使用镜像Image。Image是一个模板里面包含了基本的操作系统和其他的软件及配置信息等。
2镜像格式
Cloud OS 兼容CAS、VMware等虚拟化平台其中在适配CAS 虚拟化平台时支持使用QCOW2QEMUcopy-on-write version 2和RAW两种格式的镜像文件。raw格式是原始镜像会直接当作一个块设备给虚拟机来使用至于文件里面的空洞则是由宿主机的文件系统来管理的。qcow2 镜像格式是 QEMU 模拟器支持的一种磁盘镜像也可以用一个文件的形式来表示一块固定大小的块设备磁盘。 通常一个QCOW2格式的镜像文件具有头文件、L1表、refcount表、一个或者多个refcount块、快照头、L2表和数据簇。其中L1表、refcount表和快照偷偷的第一个头为簇对齐。对于QCOW2镜像格式磁盘设备的内容保存在簇中。每一个簇包含多个512字节的扇区。为了将给定的地址定位到簇的地址必须要遍历L1表和L2表。L1表中存储了一组到L2表的偏移值而L2表中存储了一组到簇的偏移值。QCOW2相对于上一代QCOW有以下不同之处QCOW2支持快照概念QCOW1仅支持copy-on-write镜像的概念QCOW2中引用了引用计数的概念并引用计数用来支持快照的概念QCOW2中L2表总是可以占据一个单独的簇而之前簇的大小在头l2_bits中被指定QCOW2压缩簇的大小以扇区为单位而非字节为单位。 QCOW2和RAW两种格式可以互相转化。与普通的 raw 格式的镜像相比QCOW2格式的镜像有以下特性QCOW2更小的空间占用但RAW相比QCOW2 格式的镜像具有I/O 效率高的特点QCOW2支持写时拷贝COW, copy-on-write镜像文件只反映底层磁盘的变化QCOW2支持快照snapshot镜像文件能够包含多个快照的历史QCOW2可选择基于 zlib 的压缩方式QCOW2可以选择 AES 加密。
二、 glance简介
1OpenStack简介
云管理平台基于业界标准的OpenStack OpenStack架构具体如图2.1所示。
图2.1 OpenStack基础架构图 OpenStack架构中有Nova、Neutron、Horizon、Ceilometer、Keystone、Swift。其中Nova为VM提供计算资源Glance为VM提供镜像Cinder为VM提供块存储资源Neutron为VM提供网络资源及网络连接Horizon(Dashboard)与其他主要模块的关联包括Nova,Cinder,Glance,Swift,Neutron,Keystone)通过Ceilometer(监控功能可以监控的模块(包括Nova,Glance,Cinder,Neutron)Keystone身份验证功能模块可以对其他模块进行相应操作进行身份及权限验证(包括Nova,Glance,Cinder,Swift,Neutron,Ceilometer) Swift对象存储保存Cinder连接VM后所产生的备份数据及Glance提供的镜像文件。
2glance简介
在OpenStack架构中由Glance提供镜像服务Image Service。 Glance架构如图2.2所示。
图2.2 glance结构图 glance组件中主要有glance-api、glance-registry、glance的数据库和image store。 glance-api接收REST API的请求在功能上与nova-api十分类似都是接收REST API请求然后通过其他模块glance-registry及image store来完成诸如镜像的查找、获取、上传、删除等操作默认监听端口为9292。 glance-registry用于与MySQL数据库交互用于提供镜像元数据相关的REST接口通过glance-registry可以向数据库中写入或获取镜像的各种数据glance-registry监听端口为9191。 glance的数据库中有两张表一张是image表另一张是image property表。Image表保存了镜像格式、大小等信息image property表则主要保存镜像的定制化信息。 image store是一个存储的接口层是镜像保存与获取的接口它仅仅是一个接口层具体的实现需要外部的存储支持目前支持的接口有Amazon S3、GlusterFS、Swiftsheepdogceph分布式存储等。
三、制作云主机镜像
本文主要介绍适用于CAS虚拟化平台的H3Cloud OS3.0制作云主机镜像的方法下文中的例子是镜像文件是安装Windows操作系统。
1新建虚拟机
首先在CAS管理平台新建虚拟机若安装Windows操作系统则在新建虚拟机页面选择对应的Windows操作系统版本若安装Linux操作系统则在新建虚拟机页面选择对应的Linux操作系统版本。
图3.1 CAS虚拟化平台新建虚拟机
2安装操作系统
上传操作系统镜像文件至主机本地存储或共享存储修改虚拟机选择光驱选择连接要安装的操作系统镜像文件。启动虚拟机并进入虚拟机控制台安装操作系统。
图3.2 上传操作系统文件
图3.3 虚拟机挂载操作系统镜像文件 注意安装完操作系统设置账号密码时不要设有特殊字符当密码中有特殊字符时可能导致Cloud OS系统平台无法成功新建镜像。 修改虚拟机选择光驱断开与操作系统镜像文件的连接。选择文件类型为CASTools连接CASTools安装文件进入虚拟机控制台安装CASTools。
图3.4 虚拟机断开操作系统镜像文件的连接
图3.5 虚拟机连接CASTools安装文件 安装完CASTools后在修改虚拟机界面断开与CASTools安装文件的连接。在下载虚拟机镜像或上传虚拟机镜像前要先关闭虚拟机避免虚拟机镜像文件的md5值发生变化。
3下载镜像文件
在虚拟机所在的主机的default存储池中下载对应的虚拟机镜像文件虚拟机镜像文件的使用者为对应的虚拟机并可以看到具体镜像文件的大小文件类型。
图3.6 下载制作好的虚拟机镜像文件
4上传云主机镜像
上传云主机镜像有两种方式本地上传和服务器上传。对于超过5G的镜像一般通过FTP进行服务器上传。
4.1本地上传镜像文件 进入云服务中的镜像界面选择新建镜像填写镜像名选择镜像的镜像格式和虚拟化类型选择对应的操作系统类型和版本填写的最小磁盘的值不可以小于镜像文件的大小。上传方式选择本地上传并从本地选择镜像界面会提示大于5G的文件需要通过服务器来上传。4.2服务器上传镜像文件
使用root账号登录CAS主机后台根据在CAS页面查看到的VIP02镜像文件的目录为/vms/images进入到该目录下并通过ll命令检验镜像文件在这个目录下。
图3.8 查看虚拟机镜像文件目录
图3.9ssh远程登录到cvk主机后台进入镜像文件所在目录下 在/vms/images目录下ftp到Cloud OS的IP并输入pass再回车提示“Passive mode on.”进入被动模式再通过put vip02将虚拟机镜像文件上传至Cloud OS后台。且ftp登录用户应该为admin用户而不是后台root用户否则前台可能识别不到该文件。等待1-2min至镜像上传完毕。
图3.10 在镜像文件目录下ftp上传镜像文件至cloudos
5Md5值计算
Cloud OS新建镜像选择服务器上传镜像为了避免文件上传不完整需要填写md5值进行校验。对镜像文件进行md5值的计算有两种种方式在CAS本地目录下进行镜像文件的md5值校验下载md5值计算工具在本地对镜像文件进行md5值的计算。将计算得到的md5值填写到新建镜像页面。
5.1 CAS后台计算md5值
在CAS本地目录下进行镜像文件的md5值校验先进入镜像文件所在的目录“md5sum 文件名”命令计算镜像文件的md5值。注意需要关闭虚拟机再计算md5值开启状态的虚拟机的镜像文件的md5值会发生变化。
图3.12在cvk后台对镜像文件进行md5值计算
5.2 md5计算工具计算md5值
下载md5值计算工具在本地对镜像文件进行md5值的计算。首先在新建镜像。服务器上传下图中下载md5值计算工具在添加本地下载的镜像文件计算出md5值。
图3.14通过md5值计算工具计算镜像文件的md5值
6Cloud OS新建云主机镜像失败原因分析
在Cloud OS新建镜像文件有时会出现任务台新建镜像已执行但是前台页面并没有新增镜像文件的情况的出现。出现这样问题的原因是新增云主机镜像失败任务台只会显示动作是否执行但是并不代表任务成功。失败的原因可能有md5值不正确glance空间不足或者用户的登录密码含有特殊字符。 当新建云主机镜像失败后可先检查操作系统的密码是否含有特殊字符若有则对密码进行修改若没有在CloudOS后台查看文件的md5值与本地镜像通过md5值计算工具和cvk后台计算得到的md5值进行对比若不一致则重新进行上传若一致则有可能是glance空间不足。
7Cloud OS后台文件的md5值计算
可以通过在Cloud OS的目录下找到ftp上传的文件存储路径进入到该路径下进行md5值校验在Cloud OS的目录下先通过“find / -name vip02 ”找到ftp上传的文件存储路径为/var/lib/ftp_server/admin进入到该路径下进行md5值计算。若镜像上传完整计算得到的md5值应该与前面两种方式计算得到的md5值一致。另若是给集群模式的Cloud OS环境在通过ftp传镜像文件到Cloud OS后台时文件会存放在运行glance服务的节点的文件路径/var/lib/ftp_server/admin下并不一定会存放在master节点下。 先运行source /opt/bin/common/tool.sh命令再通过命令pod | grep glance 查看glance容器所在节点的IP。
图3.15 查找glance容器运行所在的节点IP
图3.16CloudOS后台查找ftp上传的文件并计算md5值
8查看镜像文件的存放
完成新建镜像之后可以在Cloud OS后台查看到在/var/lib/glance/images/目录下有了新的镜像文件文件名即为该镜像的ID。
图3.17 在CloudOS后台查看新建云主机镜像信息
四、总结
本文主要介绍了云主机镜像是一个含有引导分区、操作系统以及必要应用的单一文件是为了解决传统IT环境中需要给每台虚拟机安装操作系统耗费时间久、效率低的背景下提出的也介绍了镜像文件常用的格式为QCOW2其具有占用磁盘空间小的特点。介绍了OpenStack和为虚拟机提供镜像文件的组件glance基础架构及各组件的作用。主要详细介绍了云主机镜像的制作过程及过程中的注意事项例如在给虚拟机安装完操作系统和CASTools后在确定CASTools运行的前提下关闭虚拟机防止出现镜像文件的md5值发生变化而造成新增云主机镜像失败的情况将镜像文件通过ftp上传至Cloud OS时需要先用root账户ssh登录cvk主机用CloudOS的前台账号admin进行ftp连接登录否则前台页面可能识别不到上传上去的文件不要混淆。