Azure VM的磁盘空间远远不能满足ES集群存储需求(还需除掉VM的临时盘),同时也未找着ES配置 block blob storage 存储的组件,因此下文介绍通过挂载附加盘的方式增加ES集群存储空间容量的操作过程。
目录:
- LVM基本术语
- Azure Storage 介绍
- ES cluster 配置Azure Storage
LVM基本术语
- LVM:是Linux提供的逻辑盘卷管理(Logical VolumeManager)的简称
- 物理存储介质(The physical media): 这里指系统的存储设备:硬盘,如:/dev/hda1、/dev/sda等等,是存储系统最低层的存储单元
- 物理卷(physical volume): 物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数
- 卷组(Volume Group): LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成
- 逻辑卷(logical volume): LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)
Azure Storage 介绍
- Azure 存储空间提供以下四种服务:Blob 存储、表存储、队列存储和文件存储,如下图(主要关注blob storage):
- Blob Storage: 用于存储非结构化对象数据, 可以是任何类型的文本或二进制数据,例如文档、媒体文件或应用程序安装程序,Blob 存储也称为对象存储
- 每个 Blob 都组织到一个容器中, 一个存储帐户可以包含任意数目的容器,一个容器可以包含任意数目的 Blob,直至达到存储帐户的容量限制 500 TB
- Blob 存储提供三种类型的 Blob:block blobs, append blobs, and page blobs (disks).
- block blobs: 主要对streaming and storing cloud objects 进行相应的优化,是用于存储文档、介质文件和备份等对象的不错选择
- append blobs:类似于block Blob,针对追加操作进行了优化, 适用于新增加的数据写入到 Blob 结尾的场景
- page blobs: 对IaaS 磁盘和支持随机写入方面进行了优化, 最大容量仅为1 TB,Azure 虚拟机网络连接的 IaaS 磁盘是一个 VHD (Virtual Hard Drive),存储为page Blob
- ES的存储暂时未找着配置 block blob storage 的组件或接口,所以使用的是page blob storage, 悲吹的是要承担3位的成本差异,报价对比如下:
ES cluster 配置Azure Storage
- 新建空磁盘,在Azure portal选择VM: JNES01, 执行“附加空磁盘”, 如下图:最大1T,允许挂多个磁盘
- 查看: fdisk -l
- 物理卷: pvcreate /dev/sdc
- 卷组:vgcreate ESData /dev/sdc
- 逻辑卷: lvcreate -l 100%FREE -n lves ESData
- 查看磁盘信息:fdisk -l
- 格式化:mkfs.xfs -f /dev/mapper/ESData-lves
- 创建目录:mkdir -p /mnt/data
- 命令:mount -t xfs /dev/mapper/ESData-lves /mnt/data
- 命令:blkid /dev/mapper/ESData-lves echo "UUID=`blkid /dev/mapper/ESData-lves -o value | head -n 1` /mnt/data xfs defaults 0 0" >> /etc/fstab
- 命令:df -h
- ES在配置数据的存储目录时,可同时配置为多个,如下:
- 用 storage explorer 工具查看存储结果 (注意:/dev/sdb1 60G的临时盘看不到), 如下图: