PDS Registry Installation

Elasticsearch Server

PDS Registry requires Elasticsearch server. Installation and configuration depends on your environment and business requirements.

  • Cloud - Usually you would run managed service, such as Amazon OpenSearch Service. Follow instructions from your cloud provider.
  • On-Prem (VMs) - Basic instructions are available in PDS Registry documentation
  • On-Prem (Kubernetes) - Many online resources are available.
  • Developers (Laptop) - Basic instructions are available in PDS Registry documentation

Create PDS Registry

You need Registry Manager command-line tool to create Elasticsearch indices. First, install registry tools (you only need Registry Manager) as described in PDS Registry documentation.

Next, run Registry Manager to create following registry indices in Elasticsearch:

  • registry - this index stores metadata extracted from PDS4 labels, one ES document per PDS label.
  • registry-dd - this index stores data dictionary - a list of searchable fields and its data types. When registry is created, the data dictionary is populated with fields (attributes) from PDS common and few discipline dictionaries. Additional dictionaries are loaded automatically from schema location specified in PDS labels.
  • registry-refs - this index stores product references extracted from collection inventory files. There could be 1 or more ES documents per inventory file.

Single Node Cluster

To create registry indices in local Elasticsearch (running at http://localhost:9200) with 1 shard and 0 replicas, run the following Registry Manager command

registry-manager create-registry

You can customize create-registry command by passing several parameters, such as Elasticsearch URL, number of shards and replicas, authentication parameters. To see the list of available parameters and basic usage run

registry-manager create-registry -help

To check that registry indices were created open the following URL in a browser: http://localhost:9200/_cat/indices?v or use curl.

curl "http://localhost:9200/_cat/indices?v"

The response should look similar to this. Make sure that index status is "green".

health status index         uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   registry      PY6ObzELRlSx9gHOWbR8dw   1   0          0            0       208b           208b
green  open   registry-dd   CuJ-nqg1SbKI9hejHrISWA   1   0       2505            0      625kb          625kb
green  open   registry-refs 1cJLc-9cQj2D_MAYo7gOpw   1   0          0            0       208b           208b

Multi Node Cluster

In a multi node Elasticsearch cluster it is recommended to have multiple shards and at least one replica (additional copy). For example, to create registry indices with 3 shards and 1 replica (1 primary + 1 backup), run the following Registry Manager command

registry-manager create-registry \
    -es https://my-cluster.local:9200 -auth /etc/elastic/auth.cfg \
    -shards 3 -replicas 1