精选文章 oracle 裸磁盘扩容

oracle 裸磁盘扩容

作者:wo4owen 时间: 2020-08-05 09:01:27
wo4owen 2020-08-05 09:01:27

云服务器存储扩容详解

2020-01-20阅读 6640

环境说明

Linux操作系统:CentOS Linux release 7.6.1810 (Core)

平台环境:腾讯云CVM,CBS

本教程相关视频教程:腾讯云大学-云服务器存储扩容


1. 存储扩容概述

随着业务的发展,业务数据不停的增长,原有的磁盘空间可能会出现磁盘空间不够用的情况,因此,需要对磁盘空间进行扩容,以满足业务数据增长的需求,以下图为例,假如起初购买了100G磁盘空间,随着数据的不停增长,原有100G空间不够用了,将空间扩容至200G,CBS是腾讯云提供用于云服务器的持久性数据块级存储服务,云盘具有弹性,按需扩容特性,云盘可以任意的按需扩容。

 

存储扩容概述

不过云盘扩容时不是所有的场景下都可以任意扩容,云盘扩容具有两个限制:

  • 系统盘不支持扩容,理论上系统盘也能够支持扩容,系统盘存放操作系统数据,扩容可能会造成系统启动异常
  • 本地盘不支持扩容,本地盘使用宿主机的本地盘,本地盘弹性扩容能力没有云盘灵活,无法支持弹性按需扩容

要深入掌握云盘的扩容,需要掌握云盘的使用方式,在Linux下通常有如下三种使用方式:

  1. 裸设备创建文件系统,不需要创建任何分区,直接在裸盘上创建文件系统
  2. 磁盘上创建MBR格式的分区,适用于小于2T的多个磁盘分区的场景
  3. 磁盘上创建GPT格式的分区,适用于大于2T的多个磁盘分区的场景

2. Linux云服务器存储扩容

2.1. 裸设备磁盘使用

Linux系统中可以直接在裸设备磁盘上创建文件系统,即磁盘不需要创建任何磁盘分区,直接在磁盘上创文件文件系统并挂载使用,其具有如下特点:

  • 磁盘不需要多个分区
  • 适用于大于2T磁盘
  • 简单易使用
  • 后期支持在线扩容

 

裸设备文件创建文件系统

上图所示是在Linux系统中直接在裸设备创建文件系统的操作步骤,先在控制台购买好云盘并将其挂载到CVM中,然后登陆到Linux系统中对磁盘格式化文件系统并挂载使用,控制台购买和挂载请自行操作,如下演示在Linux系统中裸设备文件系统的使用步骤:

1、 登陆操作系统,通过fdisk -l获取磁盘的名称,系统有两块磁盘vda和vdb,/dev/vdb是我们操作的磁盘

[root@VM_0_89_centos ~]# fdisk -l

Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors   #vda为系统盘
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0009ac89

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048   104857566    52427759+  83  Linux

Disk /dev/vdb: 107.4 GB, 107374182400 bytes, 209715200 sectors   #vdb为数据盘
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

2、直接在磁盘上创建文件系统(注:并未在磁盘上创建任何分区),根据需要格式化为ext4或xfs格式

[root@VM_0_89_centos ~]# mkfs.ext4 /dev/vdb		#创建文件ext4文件系统
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2174746624
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done  

备注:如果要创建为xfs则使用mkfs.xfs /dev/vdb

3、创建好文件系统后即可挂载到系统中使用,使用方式有两种:临时mount和编写fstab实现持久性挂载,线上环境推荐使用编写fstab的方式,避免机器下次重启后磁盘信息未加载,挂载名称推荐使用UUID

blkid获取磁盘UUID信息
[root@VM_0_89_centos ~]# blkid /dev/vdb    
/dev/vdb: UUID="7fb2c90a-fcd1-472c-b07c-8a20e2e9a436" TYPE="ext4"

编写/etc/fstab,其内容如下
UUID="7fb2c90a-fcd1-472c-b07c-8a20e2e9a436" /data		  ext4 	  defaults	0 0 

4、挂载点目录/data需要提前创建好,然后执行mount -a进行加载,mount -a是系统启动时之行的指令,如果fstab编写有误要及时修复,避免影响下次开机启动

执行挂载操作
[root@VM_0_89_centos ~]# mount -a 

检查挂载情况
[root@VM_0_89_centos ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        485M     0  485M   0% /dev
tmpfs           496M   24K  496M   1% /dev/shm
tmpfs           496M  444K  496M   1% /run
tmpfs           496M     0  496M   0% /sys/fs/cgroup
/dev/vda1        50G  1.8G   46G   4% /
tmpfs           100M     0  100M   0% /run/user/0
/dev/vdb         99G   61M   94G   1% /data				#vdb磁盘已顺利挂载到系统中,大小为100G

至此,基于Linux系统上使用裸盘构建文件系统并使用操作演示完毕,通过操作可知,裸盘上创建文件系统方式不需要对磁盘进行分区,操作便捷容易,且方便扩容,下章节中演示基于裸设备文件文件系统存储空间扩容。

2.2 裸设备磁盘扩容

 

裸设备扩容

上述步骤是裸设备磁盘的扩容方式,扩容过程中存在数据损坏的风险,为了避免扩容过程中误操作,强烈建议扩容前对磁盘做快照,避免数据损坏时可以做恢复,谨记!做完快照后在控制台完成磁盘的扩容,扩容完毕后需要在操作系统中识别到扩容的空间,以磁盘扩容至200G为例,演示在Linux中裸设备扩容的操作过程:

1、 确认磁盘的使用方式,通过fdisk -l查看磁盘并未创建有任何磁盘分区

[root@VM_0_89_centos ~]# fdisk -l /dev/vdb

Disk /dev/vdb: 214.7 GB, 214748364800 bytes, 419430400 sectors    #磁盘空间已扩容至200G
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes        #当前磁盘上未创建任何分区

#使用blkid查看vdb磁盘文件系统的情况,可得知,当前/dev/vdb未创建磁盘分区,切构建了ext4文件系统
[root@VM_0_89_centos ~]# blkid
/dev/sr0: UUID="2020-01-13-22-30-05-00" LABEL="config-2" TYPE="iso9660" 
/dev/vda1: UUID="4b499d76-769a-40a0-93dc-4a31a59add28" TYPE="ext4" 
/dev/vdb: UUID="7fb2c90a-fcd1-472c-b07c-8a20e2e9a436" TYPE="ext4"   #直接在裸盘上创建ext4文件系统

2、确认为云盘的扩容方式为裸盘后,根据文件系统的类型,在文件系统层面扩容以识别到云盘的扩容空间

[root@VM_0_89_centos ~]# resize2fs /dev/vdb 
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vdb is mounted on /data; on-line resizing required
old_desc_blocks = 13, new_desc_blocks = 25
The filesystem on /dev/vdb is now 52428800 blocks long.    #提示已经扩容至52428800个block

备注:如果是xfs,则使用xfs_growfs /dev/vdb扩容

3、校验磁盘空间扩容情况,使用df -H校验,vdb磁盘已在文件系统扩容至200G

[root@VM_0_89_centos ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        485M     0  485M   0% /dev
tmpfs           496M   24K  496M   1% /dev/shm
tmpfs           496M  444K  496M   1% /run
tmpfs           496M     0  496M   0% /sys/fs/cgroup
/dev/vda1        50G  1.8G   46G   4% /
tmpfs           100M     0  100M   0% /run/user/0
/dev/vdb        197G   60M  188G   1% /data    #已扩容至200G

通过上述的操作演示可知,裸盘上并未创建任何磁盘分区,因此扩容过程相当便捷,直接在文件系统上扩容即可,使用简单,这也是云上推荐使用方式。

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:实验室作业之英文文本聚类

下一篇:HIDL详解-Android10.0 HwBinder通信原理(二)

您可能感兴趣

  • Java8 官方jvm 标准参考 -XX 配置参数详细信息

    原文地址 https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html 概要 java [ 选项 ] 类名 [ args ] java [ 选项 ] -jar 文件名 [ args ] 选项 命令行选项用空格分隔。请参阅选项。 班级名称 要启动的类的名称。 文档名称 要调用的Java归档(JAR)文件的名称。仅与-j...

  • 印度金融服务公司 Zerodha 使用 Prometheus 在基础监控领域的实践

    在 Zerodha,我们每一天要处理整个印度所有证券交易所每天交易量中大约 15% 的业务。这个过程中产生的数以十亿计的请求均交由我们内部构建的一套系统来处理。此外,我们特别致力于实现尽可能自托管更多的依赖组件,从各种 CRM 系统到大型数据库,Kafka 集群,邮件服务器等等。 为了支持这些主要系统,我们需要运行大量的辅助性质的工作负载,包括一些实时交易,文档处理,KYC 和开户,法律和合...

  • sql server高可用_SQL Server 2019常规可用性和安装概述

    sql server高可用 介绍 (Introduction) On November 4th, 2019, during the Ignite conference at Orlando, Microsoft released the General Availability of its flagship product Microsoft SQL Server 2019. SQL 20...

  • 百度C++研发面试题汇总

    目录 算法 剑指offer 11、旋转数组的最小数字 打印字符串中的所有回文串(要时间复杂度o(n)-希尔排序) 迷宫寻路(dfs和bfs的区别,优缺点) BFS DFS dfs和bfs的区别,优缺点 字符串复制 多线程单例模式 求幂,优化 判断回文,优化 实现快速排序 实现非递归后序遍历二叉树 前序遍历 中序遍历 后序遍历 大数的斐波那契,除留余数 先升序后降序的,找值最快的方法 abcd...

  • 分布式事务科普(终结篇)

    点击上方"IT牧场",选择"设为星标" 技术干货每日送达! 《分布式事务科普》是我在YiQing期间整理的一篇科普型文章,内容共计两万五千字左右,应该算是涵盖了这个领域的大多数知识点。篇幅较长,遂分为上下两篇发出。上篇为《分布式事务科普——初识篇》:ACID、事务隔离级别、MySQL事务实现原理、CAP、BASE、2PC、3PC等(昨天已经发出,有需要的同学可以跳转)。下篇为《分布式事务科普...

  • Elasticsearch的核心原理

    Elasticsearch是一个实时分布式搜索和分析引擎,它让你以前所未有的速度处理大数据成为可能。Elasticsearch是一个基于Apache Lucene的开源搜索引擎。Elasticsearch也使用Java开发并使用Lucence作为其核心来实现所能索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏 Lucene的复杂性,从而让全文搜索变得简单。 大数据视频项...

  • 云服务器有哪些虚拟化技术?这可能是全网最好的文章了

    一、什么是虚拟化? 虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。 虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行...

  • DOS基本概念

    DOS基本概念 早期的计算机系统通常由中央处理器(CPU)、内存、外部设备等部件组成,用户往往独占了计算机的所有资源。例如计算机通过打印机打印时,其它设备都在等待,这样计算机的使用效率很低,用户等待的时间很长。 随着计算机的不断发展,尤其是计算机各种软件的新发展,出现了专门用来解决以上问题的系统软件——操作系统。操作系统的任务是: (1) CPU管理——合理地将CPU分配给各个任务。 (2)...

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。