12.10. 云提供商集成¶
12.10.1. AWS凭据集成¶
GeoMesa HBase和文件系统处理器通过可配置的 AWSCredentialsProviderService
。这为访问S3提供了可插拔的凭据,S3可用作HBase和文件系统数据存储的后备对象存储。
12.10.2. 集成Azure的GetHDFS处理器¶
可以使用 Hadoop Azure Support 使用HDFS访问Azure Blob存储。您可以利用此功能让GetHDFS处理器直接从Azure Blob存储拉取数据。但是,由于GetHDFS处理器的编写方式, fs.defaultFS
访问时始终使用配置属性 wasb://
URI。这意味着 wasb://
您希望GetHDFS处理器连接到的容器必须在HDFS中硬编码 core-site.xml
配置。这导致了两个问题。首先,这意味着我们只能在Azure上的一个帐户中连接到一个容器。其次,在同时运行GeoMesa-Acumulo的服务器上使用NiFi时,它会导致问题 fs.defaultFS
属性需要设置为正确的HDFS主NameNode。
有两种方法可以绕过这个问题。您可以维护一个 core-site.xml
为您想要访问的每个容器创建一个文件,但从长远来看,这并不容易扩展或维护。更好的选择是保留默认设置 fs.defaultFS
HDFS中的价值 core-site.xml
文件。然后,我们可以利用 Hadoop Configuration Resources
GetHDFS处理器中的。通常情况下,您会将 Hadoop Configuration Resources
属性设置为 core-site.xml
以及 hdfs-site.xml
档案。相反,我们将创建一个附加文件并将其包括在路径的最后,以便它覆盖 fs.defaultFS
在生成配置对象时。为此,只需使用适当的名称创建一个新的XML文件(我们建议使用容器的名称)。插入 fs.defaultFS
属性添加到文件中,并设置该值。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>wasb://container@accountName.blob.core.windows.net/</value>
</property>
</configuration>