文件存储场景(即HDFS模式)的文件存储实例支持 HDFS 语义、高效元数据操作、高带宽 IO 吞吐,主要用于传统的大数据离线分析场景。本文为您介绍如何创建、挂载文件存储场景实例,并使用 Hadoop Client 访问文件存储实例。
说明
目前大数据文件存储服务仅在北京地域开放。创建大数据文件存储服务所在的区域需与 ECS 实例区域保持一致。
文件存储实例与对象存储的存储桶关联用于存储数据,您可以指定存储数据的 Bucket 和加速配置。
登录大数据文件存储控制台。
在顶部菜单栏选择目标地域。
在文件存储列表页面,单击创建文件存储。
在创建文件存储页面,配置文件存储实例的相关信息。
配置 | 说明 |
---|---|
计费类型 | 目前仅支持按量计费。 |
文件存储名称 | 自定义设置文件存储实例的名称。
|
区域 | 目前大数据文件存储服务仅在华北2(北京)地域开放。 |
可用区 | 与安装了 Hadoop 客户端的 ECS 实例的可用区保持一致。 |
应用场景 | 此处选择文件存储场景,以创建一个支持 HDFS 语义、高效元数据操作、高带宽 IO 吞吐的文件存储实例。 |
对象存储来源 | 选择存储数据的存储桶(Bucket)。
|
缓存加速 | 是否开启缓存加速。开启后,可以提高文件存储速度。 |
类型 | 选择加速基线,提供性能1型和性能2型两种类型的加速基线。 |
容量 | 请按照业务缓存需求设置文件存储实例的缓存容量,起步 10 TiB,步长 5 TiB。 |
私有网络 | 从下拉列表中选择 VPC。 |
子网 | 在下拉列表中选择子网。 |
安全组 | 从下拉列表中选择安全组。 |
文件存储实例的配置完成后,单击页面右下角的确认订单。
在订单详情页确认订单信息,确认无误后,阅读并勾选大数据文件存储相关协议。然后单击立即购买。
创建成功后,单击返回文件存储列表,查看文件存储基本信息。
刚创建的文件存储实例显示为创建中,创建完成后显示为运行中。可以查看文件存储状态,缓存加速配置、应用场景、创建时间等信息。
挂载点是文件存储实例在网络环境中的连接点,通过挂载点连接实例并实现数据传输。
在访问文件存储实例前,你需要将文件存储实例的挂载点配置到 Hadoop 的配置文件中。
wget https://cloudfs.tos-cn-beijing.volces.com/sdk/prod/cloudfs-client-1.5.3.49.tar.gz
tar -zxvf cloudfs-client-1.5.3.49.tar.gz
将解压文件cloudfs-client/lib/cloudfs-sdk-1.5.3.49.jar
复制到 Hadoop 的share/hadoop/hdfs
目录下。
配置core-site.xml
文件。
core-site.xml
文件:vim {hadoop_安装目录}/hadoop/conf/core-site.xml
<!-- 填入文件存储的挂载点信息,例如 --> <property> <name>fs.defaultFS</name> <value>cfs://xxxx.cfs-cn-beijing.ivolces.com</value> </property> <property> <name>fs.cfs.impl</name> <value>com.volcengine.cloudfs.fs.CfsFileSystem</value> </property> <property> <name>fs.AbstractFileSystem.cfs.impl</name> <value>com.volcengine.cloudfs.fs.CFS</value> </property> <property> <name>cfs.access.key</name> <value>AKxxxxxxxxxxx</value> </property> <property> <name>cfs.secret.key</name> <value>SKxxxxxxxxxxx</value> </property> <!-- 可选:如果使用的是 STS Token,需要填写 --> <property> <name>cfs.security.token</name> <value>STSTokenxxxxxxxx</value> </property> <!-- 可选:如果开启缓存加速,需要配置缓存加速接入的 VPC 的网段 --> <property> <name>cfs.client.network.segment</name> <value><VPC 网段,例如 192.168.0.0/16></value> </property>
其中:
<name>fs.defaultFS</name>
的值是大数据文件存储实例的挂载点地址,请根据实际情况替换。<name>cfs.access.key</name>
和<name>cfs.secret.key</name>
的值分别是火山引擎账号的 Access Key ID 和 Secret Access Key,获取方式请参考密钥管理。验证文件存储实例是否部署成功。
hdfs dfs -ls /
命令,有文件结果返回表示部署成功。echo $?
命令,返回0
表示部署成功。完成部署后,您可以通过 hdfs dfs 命令和 SDK 访问 CloudFS。
Configuration conf = new Configuration(); conf.set("fs.cfs.impl", "com.volcengine.cloudfs.fs.CfsFileSystem"); conf.set("cfs.client.network.segment", vpcNet); conf.set("cfs.access.key", ak); conf.set("cfs.secret.key", sk); // Optional: // conf.set("cfs.security.token", sk); FileSystem fs = FileSystem.get("cfs://xxxx.cfs-cn-beijing.ivolces.com", conf);