Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning

Pushpull is deprecated... see

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyOODT-837

Table of Contents

Introduction

OODT's PushPull component framework provides a client architecture for accessing an array of remote resources. This component is used to pull from remote resources and push to local ones. It is typically used in conjunction with the CAS Crawler component. An example use case would be pulling data products from a remote FTP service and pushing them to a local staging area from which the CAS Crawler then then inject them into the File Manager.

Download and Install

  1. Download a Released tarball/zip from the Downloads page. (http://oodt.apache.org/downloads/download)
  2. Uncompress it
  3. cd into the apache-oodt-{version} folder
  4. mvn package

...

  1. cd $CAS_PP_HOME/bin
  2. The two options listed below:
    1. Export 2 env vars
    2. Replace the CAS_PP_RESOURCES and DAEMONLAUNCHER_PORT with static values

      Code Block
      borderStyledashed
      title[CAS_PP_HOME]/bin/pushpullborderStyledashed
      line
      25   ${JAVA_HOME}/bin/java \
      26   -cp ${LIB_DEPS} -Dcom.sun.management.jmxremote \
      27   -Djava.util.logging.config.file=../etc/logging.properties \
      28   -Djavax.net.ssl.trustStore=${CAS_PP_RESOURCES}/jssecacerts \
      29   org.apache.oodt.cas.pushpull.daemon.DaemonLauncher \
      30   --rmiRegistryPort ${DAEMONLAUNCHER_PORT} \
      31   --propertiesFile ${CAS_PP_RESOURCES}/push_pull_framework.properties \
      32   --remoteSpecsFile ${CAS_PP_RESOURCES}/examples/RemoteSpecsFiles/RemoteSpecs.xml
      
      # You can leave this file unchanged by merely exporting the following env vars (bash shell)
      
      export CAS_PP_RESOURCES=$CAS_PP_HOME/etc
      export DAEMONLAUNCHER_PORT=9012
      
      # Or you can always use this config and not setup env vars
      line
      25   ${JAVA_HOME}/bin/java \
      26   -cp ${LIB_DEPS} -Dcom.sun.management.jmxremote \
      27   -Djava.util.logging.config.file=${CAS_PP_HOME}/etc/logging.properties \
      28   -Djavax.net.ssl.trustStore=${CAS_PP_HOME}/etc/jssecacerts \
      29   org.apache.oodt.cas.pushpull.daemon.DaemonLauncher \
      30   --rmiRegistryPort 9012 \
      31   --propertiesFile ${CAS_PP_HOME}/etc/push_pull_framework.properties \
      32   --remoteSpecsFile ${CAS_PP_HOME}/etc/examples/RemoteSpecsFiles/RemoteSpecs.xml
      
  3. ./pushpull

...

1. You will need to have a fileManager that pushpull can inspect to see if the product has been ingested into the archive.

Code Block
borderStyledashed
title[CAS_PP_HOME]/etc/push_pull_framework.propertiesborderStyledashed
# ingester filemgr url
org.apache.oodt.cas.filemgr.url=http://localhost:9000

2. Then you just configure the RemoteSpecs.xml file and update the <dataInfo> element and set queryElement="Filename" within the <daemon> block. If you have multiple daemon's configured you will have to configure each one.

Code Block
borderStyledashed
title[CAS_PP_HOME]/policy/RemoteSpecs/RemoteSpecs.xmlborderStyledashed
<dataInfo stagingArea="MOD09GA-NRT" deleteFromServer="no" queryElement="Filename"/>
</daemon>

...