云服务器磁盘管理教程(云主机如何用虚拟磁盘扩容?)
云服务器磁盘管理教程
云主机如何用虚拟磁盘扩容?互联网的数据量不断在增长,寻求更大的存储空间是每个网站的需求,如果服务器的容量不足,那么网站就无法继续支撑运作,这样对企业的损害是非常大的。不仅仅面临着用户的流失,也面临着数据丢失的风险。今天,云主机来跟大家聊聊虚拟磁盘。
虚拟磁盘的实现
我们知道,服务器扩展存储的手段主要有直连存储(DAS)、存储区域网络(SAN)和网络附加存储(NAS)这三种类型。那么哪种存储类型可以用来实现虚拟磁盘呢?
在虚拟化环境中,类似VMWare这样的虚拟机管理程序hypervisor,要同时给很多VM分配存储空间。这个过程中,我们需要先把物理存储资源重新划分成虚拟磁盘,然后再分配给VM。
显然我们不能用DAS方式把物理磁盘直连到VM上,如果这样,需要的物理磁盘就太多了。SAN是以逻辑单元(LUN:Logic Unit)的形式提供存储资源,但虚拟环境下的VM数量很大,LUN的数量也不足以支撑这么多虚拟磁盘。更重要的一点,虚拟磁盘对于众多的VM来说是共享的,因为VM需要随时创建、删除或者迁移,在迁移VM的时候就需要共享存储,只有这样原来的数据才不会丢失。无论DAS还是SAN,都不适合共享存储。
考虑到资源分配以及共享的问题,hypervisor采用NAS的方式来实现虚拟磁盘。VMware通常采用VMFS(Virtual Machine File System)或NFS协议来实现虚拟磁盘,VMFS是专门针对虚拟机环境的文件系统协议。
每个虚拟机的数据实际上就是一堆文件,最主要的文件就是虚拟磁盘文件(VMDK文件),此外还有交换分区文件(vswp文件,相当于swap)、非易失性内存文件(nvram相当于bios)等。每个VM对虚拟磁盘的IO操作,实际上是对这个虚拟磁盘文件的读写。
VMFS的设计、构建和优化针对虚拟服务器环境,可让多个虚拟机共同访问一个整合的群集式存储池,从而显着提高了资源利用率。采用 VMFS 可实现资源共享,使管理员轻松地从更高效率和存储利用率中直接获益。
那么我们如何在云计算中使用虚拟磁盘呢?实例存储
最主要的一种使用虚拟磁盘的方式就是实例存储,每一个VM就是一个虚拟机实例,hypervisor在每个实例中提供仿真的硬件环境,包括CPU、内存和磁盘。这种方式,使得虚拟磁盘成为虚拟机实例的一部分,就像物理世界一样。VM删除后,虚拟磁盘也会被删除。
这种实例存储模型中,虚拟磁盘与虚拟机之间的存储关系,实际上是DAS存储。但虚拟磁盘的底层实现,上面我们说了,是用NAS方式实现的。而hypervisor的作用就是把VM层的存储模型,与虚拟机下层的实现协议(VMFS或NFS)分离开了。
卷存储
实例存储有它的限制,开发者一般希望把实例数据(比如OS以及安装的一些服务器应用软件)和用户数据分开,这样重建VM的时候可以保留用户的数据。
这个需求衍生出另外一种存储模型:卷存储。卷是存储的主要单位,相当于一个虚拟的磁盘分区。不属于虚拟机实例的一部分,可以认为是虚拟机的外置存储设备。
卷可以从一个VM卸下,然后附加给另外一个VM.这样我们就实现了实例数据与用户数据的分离。OpenStack的Cinder就是一个卷存储的实现。
除了实例存储和卷存储,最后我们再说一说另外一种比较特殊的虚拟化存储:对象存储。
对象存储
很多云应用需要在不同的VM之间共享数据,经常需要跨越多个数据中心,对象存储可以解决这个问题。
在对象存储模型中,数据存储在存储段(bucket)中,按字面意思bucket也可以被称为“桶”。我们可以用硬盘进行类比,对象就好比文件,存储段就像是文件夹(或目录)。对象和存储段可以通过统一资源标识符(URI: Uniform Resource Identifier)查找。
对象存储的核心设计思想其实也是虚拟化,具体说来,就是把文件的物理存储位置,比如卷、目录、磁盘等,虚拟化为bucket,把文件虚拟化为对象。对应用层来说,简化了对数据的存取访问,屏蔽了底层存储技术的异构性和复杂性。
当然你也许会问,NAS存储技术不是也可以解决数据共享的问题吗?
由于对象存储的规模优势和成本优势,很多云环境采用对象存储来代替NAS。由于对象存储将遍布于很多节点且最新的数据并非总是可用, 所以对象存储的数据一致性不强。如果对强一致性有要求,那么可以使用NAS.目前在云计算环境下,NAS和对象存储是共存的关系。和NAS一样,对象存储也是软件架构,不是硬件架构。应用直接通过REST API来访问对象存储。
但是,这一操作具体到实际的云平台中,我们要根据实际情况去进行操作才合适,最好有专门的技术人员进行操作分析。如果企业没有相关资源,不妨联系你的云主机服务商。
- 免费海外云主机有什么优势(国外云主机有什么优势?怎么选择?)
- pythondjango搭建web(PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上)
- 云主机状态错误(云主机解析IP无法访问网站原因)
- 好用又便宜的云主机(如何购买真正的云主机)
- 虚拟主机跟云主机有什么区别(云主机和虚拟主机哪个好?)
- 云主机的作用和功能(云主机具备的特性有哪些?)
- 云主机的优势是什么(云主机有哪些用途和优势)
- 三大云主机的最大区别(服务器之家推荐几款免费云主机体验)
- 云主机功能描述(云主机有哪些使用优势?)
- ddos防御实例(浅析云主机防ddos的基础防御)
- 入门云主机推荐(怎么样购买到心仪又便宜的云主机?)
- 云主机和免备案空间(香港云主机免备案利弊分析)
- 国产云主机哪个好(便宜好用的国内云主机怎么挑选?)
- 阿里云盘挂载云服务器(阿里云主机的安装硬盘挂载数据盘加载或修改/www)
- linux系统安装宝塔面板启动失败(Linux云主机安装宝塔面板新手教程)
- 一般用云主机干嘛(免费云主机怎么申请?有什么限制?)
- 盘古开天地 他创造了世界,谁创造了盘古 盘古是伏羲吗(盘古开天地他创造了世界)
- 关于队徽 你了解这些么 二(关于队徽你了解这些么)
- 冬天来了手脚冰凉 真不是因为上辈子你是折翼的天使(冬天来了手脚冰凉)
- 0 1 岁婴儿最强作息指南,照着做养出天使宝宝(01岁婴儿最强作息指南)
- 沪上这16所高校 萌新 礼包开箱 哪一款让你心动(沪上这16所高校萌新)
- 她救了被绑架的他,而这一切竟是一场阴谋...(她救了被绑架的他)
热门推荐
- php单例设计方法(php设计模式之单例模式用法经典示例分析)
- docker搭建编译开发环境(Shell脚本构建Docker 半自动化编译打包发布应用操作)
- dedecms添加代码(dedecms内容页调用栏目链接和栏目名称的方法)
- mysql创建存储过程的代码(MySQL修改存储过程的详细步骤)
- vue3.0路线图(Vue3.0 自己实现放大镜效果案例讲解)
- dedecms搬家乱码(dedecms 的cn_substr_utf8字符串截取函数商榷)
- laravel自定义命令(laravel中数据显示方法默认值和下拉option默认选中)
- centos7.5安装mysql教程(CentOS8下MySQL 8.0安装部署的方法)
- 怎么用python获取目录(python 获得任意路径下的文件及其根目录的方法)
- pythonmatplotlib条形图动画(Python Matplotlib实现三维数据的散点图绘制)