How to install dataverse 5.5 ?

From PheonixSolutions
Jump to navigation Jump to search

Introduction

[edit]

Dataverse is an open-source software application for sharing, citing, analyzing, and preserving research data. Version 5.5 introduces enhancements and bug fixes to improve the functionality and performance of the platform. This comprehensive guide provides step-by-step instructions for installing Dataverse 5.5 on a CentOS/RHEL-based server, including setting up dependencies such as Java, Payara, PostgreSQL, Solr, R, and other necessary components.

Prerequisites

[edit]

Before proceeding with the installation of Dataverse 5.5, ensure the following prerequisites are met:

1. Access to a server: You should have SSH access to a server running CentOS/RHEL.

2. Root access: You need to have root or sudo privileges to install packages and configure system settings.

3. Basic understanding of Linux commands: Familiarity with basic Linux commands is required to execute commands and navigate the file system.

4. Database credentials: Make sure you have the necessary credentials for configuring PostgreSQL.

5. Network configuration: Ensure that the necessary ports are open in the firewall for public access.

Installation Procedure

[edit]

Follow these steps to install Dataverse 5.5:

1. Installing Java:

  # dnf install java-11-openjdk

2. Installing payara:

  # useradd dataverse
  # wget https://s3-eu-west-1.amazonaws.com/payara.fish/Payara+Downloads/5.2020.6/payara-5.2020.6.zip
  # unzip payara-5.2020.6.zip
  # mv payara5 /usr/local

Set Payara service account permissions:

  # chown -R root:root /usr/local/payara5
  # chown dataverse /usr/local/payara5/glassfish/lib
  # chown -R dataverse:dataverse /usr/local/payara5/glassfish/domains/domain1
  # chown root /usr/local/payara5/glassfish/lib


3. Installing PostgresSQL:

  # dnf update
  # dnf install epel-release
  # dnf module enable postgresql:13
  # dnf install postgresql-server
  # postgresql-setup --initdb
  # systemctl enable postgresql
  # systemctl start postgresql
  # systemctl status postgresql
  # vim /var/lib/pgsql/data/pg_hba.conf

Find below line update to trust.

  host all all 127.0.0.1/32 trust

4. Installing Solr:

  # useradd solr
  # mkdir /usr/local/solr
  # chown solr:solr /usr/local/solr


Become the Solr user and then download and configure Solr:

  # su - solr
  # cd /usr/local/solr
  # wget https://archive.apache.org/dist/lucene/solr/8.8.1/solr-8.8.1.tgz
  # tar xvzf solr-8.8.1.tgz
  # cd solr-8.8.1
  # cp -r server/solr/configsets/_default server/solr/collection1


Download the “dvinstall.zip” file from https://github.com/IQSS/dataverse/releases/tag/v5.5. Unzip it and then copy the files into place.

  # cd /root
  # wget https://github.com/IQSS/dataverse/releases/download/v5.5/dvinstall.zip
  # unzip dvinstall.zip
  # cp /root/dvinstall/schema*.xml /usr/local/solr/solr-8.8.1/server/solr/collection1/conf
# cp /root/dvinstall/solrconfig.xml /usr/local/solr/solr-8.8.1/server/solr/collection1/conf


Edit /usr/local/solr/solr-8.8.1/server/etc/jetty.xml and increase requestHeaderSize from 8192 to 102400.

  # vim /usr/local/solr/solr-8.8.1/server/etc/jetty.xml


Solr launches asynchronously and attempts to use the lsof binary to watch for its own availability. Installation of this package isn’t required but will prevent a warning in the log at startup.

  # dnf install lsof


You need to tell Solr to create the core “collection1” on startup.

  # echo "name=collection1" > /usr/local/solr/solr-8.8.1/server/solr/collection1/core.properties


5. Solr Init Script:

download solr.service and place it in /tmp. Then start Solr and configure it to start at boot with the following commands:

  # cd /tmp
  # wget https://guides.dataverse.org/en/latest/_downloads/0736976a136678bbc024ce423b223d3a/solr.service
  # cp /tmp/solr.service /etc/systemd/system
  # systemctl daemon-reload
  # systemctl start solr.service
  # systemctl enable solr.service
  # usermod -s /sbin/nologin solr

6. Installing jq:

  # dnf install epel-release
  # dnf install jq
  # cd /usr/bin
  # wget http://stedolan.github.io/jq/download/linux64/jq
  # chmod +x jq
  # jq --version


7. Installing ImageMagick:

  # dnf install ImageMagick


8. Installing R:

  # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm


AlmaLinux 8.3+ users will need to enable the PowerTools repository:

  # dnf config-manager --enable powertools


  # dnf install R-core R-core-devel
# R --version


Open the R console as a root to install R packages.

  # sudo -i R


And you need to install the following R Packages. R2HTML, rjson, DescTools, Rserve, Haven by using below commands.

> install.packages("R2HTML", repos="https://cloud.r-project.org/%22, lib="/usr/lib64/R/library" )
> install.packages("rjson", repos="https://cloud.r-project.org/%22, lib="/usr/lib64/R/library" )
> install.packages("DescTools", repos="https://cloud.r-project.org/%22, lib="/usr/lib64/R/library" )
> install.packages("Rserve", repos="https://cloud.r-project.org/%22, lib="/usr/lib64/R/library" )
> install.packages("haven", repos="https://cloud.r-project.org/%22, lib="/usr/lib64/R/library" )

To start Rserve:

  # dnf install git
  # cd /root
  # git clone https://github.com/IQSS/dataverse.git
  # cd dataverse//scripts/r/rserve
  #./rserve-setup.sh
  # systemctl daemon-reload
  # systemctl enable rserve
  # systemctl start rserve


9. Installing Counter Processor:

  # cd /usr/local
  # wget https://github.com/CDLUC3/counter-processor/archive/v0.0.1.tar.gz
  # tar xvfz v0.0.1.tar.gz
  # cd /usr/local/counter-processor-0.0.1

Create an account in maxmind.com and enable the licence key to download the database.
Download GeoLite2-Country.tar.gz manually and upload it to /usr/local/counter-processor-0.0.1 directory on the server.

  # tar xvfz GeoLite2-Country.tar.gz
  # cp GeoLite2-Country_*/GeoLite2-Country.mmdb maxmind_geoip


  # useradd counter
  # chown -R counter:counter /usr/local/counter-processor-0.0.1


10. Installing Counter Processor Python Requirements:

  # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  # dnf install python36
  # python3.6 -m ensurepip
  # cd /usr/local/counter-processor-0.0.1
  # pip3 install -r requirements.txt


11. Installing Dataverse 5.5

  # cd /root/dataverse

Run the dataverse script:

  # ./install

While running this script will ask the following details you need to enter the details.

Fully Qualified Domain Name of your host: research.kub-dataverse.dk
Payara service account username: root
App. Server (Payara) Directory: /usr/local/payara5
Administrator email address for this Dataverse: pacian@yahoo.com
SMTP (mail) server (and port) to relay notification messages: localhost
Postgres Server Address: 127.0.0.1
Postgres Server Port: 5432
Postgres ADMIN password: secret
Name of the Postgres Database: dvndb
Name of the Postgres User: dvnapp
Postgres user password: secret
Remote SOLR indexing service: LOCAL
Rserve Server: localhost
Rserve Server Port: 6311
Rserve User Name: rserve
Rserve User Password: rserve
Datacite username: DK.MQAJO
Datacite password: DCFT12:48test
Datacite URL: https://mds.test.datacite.org
Datacite REST API URL: https://api.test.datacite.org


Once successfully installed.

Payara runs on port 4848.
http://research.kub-dataverse.dk:4848/

Dataverse runs on port 8080 and 8181.
http://research.kub-dataverse.dk:8080/

Use the following default credentials to log in:

URL: http//research.kub-dataverse.dk:8080/

username: Admin

password: admin

Once you logged in it will ask to set up a new password. You can enter your preferred password.

12. Allow ports in Firewall:
You need to allow the ports to public access

  # firewall-cmd --zone=public --add-port=8080/tcp
  # firewall-cmd --zone=public --add-port=8181/tcp
  # firewall-cmd --zone=public --add-port=4848/tcp


13. Setup payara Password:

  # /usr/local/payara5/bin/asadmin --host research.kub-dataverse.dk --port 4848 change-admin-password
Enter admin user name: Enter as admin and press enter button
Enter the admin password: leave as Empty and press enter button
Enter the new admin password: Enter your prefered password and press enter button
Enter the new admin password again: Enter your prefered password and press enter button


Enable Secure Payara admin:

  # /usr/local/payara5/bin/asadmin --host research.kub-dataverse.dk --port 4848 enable-secure-admin


Enter admin user name: Enter as admin and press enter button
Enter admin password for user: Enter the above created password and press enter button


Restart Domain

  # /usr/local/payara5/bin/asadmin stop-domain
  # /usr/local/payara5/bin/asadmin start-domain


Once completed successfully you can login to Payara with a created password.

Conclusion

[edit]

By following the steps outlined in this guide, you should be able to successfully install Dataverse 5.5 on your CentOS/RHEL-based server. Ensure that each step is executed accurately, and verify the installation at each stage to ensure a smooth deployment. Dataverse 5.5 offers enhanced features and functionalities for managing and sharing research data effectively. If you encounter any issues during the installation process, refer to the documentation or seek assistance from relevant support channels.