カスタムデータディレクトリ

データディレクトリは,ファイルシステム上のディレクトリがそのカスタム構成とアップロードされたファイルの大部分を格納する位置である.この構成は以下のように定義される.

  • GeoNetworkはどんなシソーラスを使っていますか?

  • GeoNetworkに挿入されているのはどのような方式ですか?

データ·ディレクトリはまた、様々な目的のためのディレクトリの多くのサポートファイルを含む:

  • ルーネ指数

  • 空間索引

  • ロゴ.ロゴ.

  • メタデータレコードに付加されたアップロード文書

  • サムネイル.

生産投入時には,将来更新が容易になるように外部データディレクトリを定義することが望ましい.必要に応じて、データディレクトリは、WARを読み出し専用モードで実行することを許可する。

新しいデータディレクトリを作成する

ディレクトリを起動する前に、データディレクトリを作成する必要があります。それはディレクトリを起動するユーザが読み取り可能で書き込み可能でなければならない。

データディレクトリが空フォルダである場合、ディレクトリは、以下のコマンドを使用してディレクトリのデフォルト構造を初期化します。 INSTALL_DIR/web/geonetwork/WEB-INF/data それがそうです。

データディレクトリが設定されていない場合、アプリケーション起動時ログには、以下のメッセージが表示される。

2015-12-16 07:59:17,108 WARN  [geonetwork.data.directory] -     - Data directory properties is not set. Use geonetwork.dir or geonetwork.dir properties.
2015-12-16 07:59:17,108 WARN  [geonetwork.data.directory] -     - Data directory provided could not be used. Using default location: /data/dev/gn/3.0.x/web/src/main/webapp/WEB-INF/data

ユーザがデータディレクトリにアクセスできない場合、ログ表示:

2015-12-16 08:09:17,723 WARN  [geonetwork.data.directory] -     - Data directory '/tmp/gndatadir' is not writable. Set read/write privileges to user starting the catalogue (ie. francois).
2015-12-16 08:09:17,723 WARN  [geonetwork.data.directory] -     - Data directory provided could not be used. Using default location: /data/dev/gn/3.0.x/web/src/main/webapp/WEB-INF/data

データディレクトリの設定

データディレクトリ変数は、以下のコマンドを使用して設定することができます。

  • Java環境変数

  • Servletコンテキストパラメータ

  • システム環境変数

  • Bean構成(バージョン3.0.4で追加)

Java環境変数とServletコンテキストパラメータについては、:を使用してください。

  • <webappName>.dir,設定されていない場合はgeonetwork.dirを使用する.

システム環境変数の使用:

  • _dir、geonnetwork_dir設定が使用されていない場合

解決手順は以下のとおりである.

  1. <webappname>.dir

  1. Java環境変数(すなわち-D<webappname>.dir=/a/data/dir)

  2. Servletコンテキストパラメータ(すなわちWeb.xml)

  3. Configg.xml appHandlerパラメータ(すなわちConfigg.xml)

  4. システム環境変数(すなわち<webappname>_dir=/a/data/dir).“.”環境変数ではサポートされていません

  1. geonetwork.dir

  1. Java環境変数(すなわち-Dgeonetwork.dir=/a/data/dir)

  2. Servletコンテキストパラメータ(すなわちWeb.xml)

  3. Configg.xml appHandlerパラメータ(すなわちConfigg.xml)

  4. システム環境変数(すなわちGeonnetwork_dir=/a/data/dir).“.”環境変数ではサポートされていません

Javaシステム属性

使用するサーブレットコンテナにより,Javaシステム属性を用いてデータディレクトリ位置を指定することも可能である.

Tomcatでは,以下のように構成される.

CATALINA_OPTS="-Dgeonetwork.dir=/var/lib/geonetwork_data"

Bean構成

バージョン 3.0.4 で追加.

カスタムBeanを用いて構成データリストを構成するには、更新中のGeonetworkDataDirectory Beanを使用してください source file core/src/main/resources/config-spring-geonetwork.xml

<bean id="GeonetworkDataDirectory" class="org.fao.geonet.kernel.GeonetworkDataDirectory" lazy-init="true">
  <property name="systemDataDir" ref="GNSystemDataDir"/>
  <property name="schemaPluginsDir" ref="GNSchemaPluginsDir"/>
</bean>
<bean id="GNSystemDataDir" class="java.nio.file.Paths" factory-method="get">
   <constructor-arg index="0" value="/path/to/gn/dir"/>
   <constructor-arg index="1"><array /></constructor-arg>
</bean>
<bean id="GNSchemaPluginsDir" class="java.nio.file.Paths" factory-method="get">
    <constructor-arg index="0" value="/path/to/schema/dir"/>
    <constructor-arg index="1"><array /></constructor-arg>
</bean>

S 3オブジェクトストレージの使用

インフラストラクチャに利用可能な永続的なストレージがない場合、GeoNetworkは、Amazon S 3(または互換性のある)オブジェクトストレージを使用して画像およびデータを格納するように構成することができます。

In order to do that, you must use a custom bean configuration. Replace the source file filesystemStore, source file resourceStore and source file resources beans in source file core/src/main/resources/config-spring-geonetwork.xml with something like that:

<bean id="s3credentials" class="org.fao.geonet.resources.S3Credentials">
  <property name="region" value="eu-west-1"/>
  <property name="bucket" value="geonetwork-test"/>
  <property name="keyPrefix" value="geonetwork"/>
  <!-- Only needed if you don't have a ~/.aws/credentials -->
  <property name="accessKey" value="MyAccessKey"/>
  <property name="secretKey" value="MySecretKey"/>
  <!-- Only needed when not using Amazon S3-->
  <property name="endpoint" value="sos-ch-dk-2.exo.io"/>
</bean>
<bean id="filesystemStore" class="org.fao.geonet.api.records.attachments.S3Store" />
<bean id="resourceStore"
      class="org.fao.geonet.api.records.attachments.ResourceLoggerStore">
  <constructor-arg index="0" ref="filesystemStore"/>
</bean>
<bean id="resources" class="org.fao.geonet.resources.S3Resources"/>

♪the source file s3credentials Beanは空に保持することができ、以下のシステム環境変数を使用して構成することができる(容器環境では便利)。

  • AWS_S3_PREFIX

  • AWS_S3_BUCKET

  • AWS_DEFAULT_REGION

  • AWS_S3_ENDPOINT

  • AWS_ACCESS_KEY_ID

  • AWS_SECRET_ACCESS_KEY

データディレクトリの構造

データディレクトリには:

data_directory/
 |--config: Extra configuration (eg. could contain overrides)
 |   |--schemaplugin-uri-catalog.xml
 |   |--codelist: The thesauri in SKOS format
 |   |--schemaPlugins: The directory used to store new metadata standards
 |
 |--data
 |   |--metadata_data: The data related to metadata records
 |   |--resources:
 |   |     |--htmlcache
 |   |     |--images
 |   |     |   |--harvesting
 |   |     |   |--logos
 |   |     |   |--statTmp
 |   |
 |   |--metadata_subversion: The subversion repository
 |   |--backup: Folder containing removed metadata
 |
 |--index: All indexes used for search
 |   |--nonspatial: Lucene index
 |   |--spatialindex.*: ESRI Shapefile for the index (if not using spatial db)

高度なデータディレクトリ構成

Javaシステム属性を用いてすべてのサブディレクトリを単独で配置することができる.例えば、インデックスディレクトリをカスタム位置に置くためには、使用してください。

  • <webappName>.lucene.dir、設定されていない場合は、使用してください:

  • geonetwork.lucene.dir

例えば:

  • Start-geonetwork.shスクリプトに以下のJava属性を追加します。

java -Xms1g -Xmx1g -Xss2M -XX:MaxPermSize=128m -Dgeonetwork.dir=/app/geonetwork_data_dir -Dgeonetwork.lucene.dir=/ssd/geonetwork_lucene_dir
  • Start-geonetwork.shスクリプトに以下のシステム属性を追加します。

export geonetwork_dir=/app/geonetwork_data_dir
export geonetwork_lucene_dir=/ssd/geonetwork_lucene_dir
  • シソーラスやモードが何も変更されていない場合には、WebAppのバージョンを使用する必要がある場合があります。この場合は、設定してください。

-Dgeonetwork.dir=/data/catalogue
-Dgeonetwork.schema.dir=/app/tomcat/webapps/geonetwork/WEB-INF/data/config/schema_plugins
-Dgeonetwork.codeList.dir=/app/tomcat/webapps/geonetwork/WEB-INF/data/config/codelist

設定可能な属性リストは、:

  • geonetwork.dir

  • geonetwork.lucene.dir

  • geonetwork.spatial.dir

  • geonetwork.config.dir

  • geonetwork.codeList.dir

  • geonetwork.schema.dir

  • geonetwork.data.dir

  • geonetwork.resources.dir

  • geonetwork.svn.dir

  • geonetwork.upload.dir

  • geonetwork.backup.dir

  • geonetwork.formatter.dir

  • geonetwork.htmlcache.dir

構成をチェックする

起動後、構成がサインされます Admin console > Statistics and status > Information ペイジ。

../_images/datadirectory.png