Skip to content
This repository has been archived by the owner on Apr 17, 2023. It is now read-only.

CEDAR Server Install Guide

Martin O'Connor edited this page Jan 18, 2018 · 38 revisions

These instructions are deprecated and are kept for reference only. We have adopted a Docker-based installation process that supersede these instructions.

Introduction

The application is composed from several micro services. All services need to be installed, configured, and run separately.

The process is similar for all Unix-based operating systems, with small differences. In this guide we will present the steps for Mac OS X and for Red Hat Enterprise Linux 6.6. In case of other Unix-based systems, the steps should be similar.

We present how to set up a development environment on OS X, and a production environment on Red Hat.

Versions

For the versions of the different components, see the CEDAR parent POM.

Special remarks for Red Hat

  • The commands are executed with a dedicated user, cedar, who has sudo privileges.
  • Nothing should be installed with root unless explicitly specified!

Important note for RHEL #1

If you log in to the server with your own account, and want to switch to the cedar service account, but you do not know its password, use the following line to switch user:

sudo su - cedar

Important note for RHEL #2

If you see commands in this guide that should be executed using sudo, but you do not know the password of cedar user, you should log out from the cedar session and log in using your own user, execute the sudo-prefixed command there, and switch back to the cedar user. Be careful, because working directories change when switching users.

General note for all systems

If things are not happening as they should, please always check if all the configuration changes are applied to the services. Please stop and start the servers that you suspect are behaving strangely. The two likely culprits are:

  • Nginx
  • Keycloak

The steps

  1. Create a service user
    1. Introduction
    2. Service user on OS X
    3. Create a service user on RHEL 6.6
  2. Create a home directory for the project
    1. Introduction
    2. Create home directory for the project on OS X
    3. Create home directory for the project on RHEL 6.6
  3. Configure environment variables and aliases
    1. Introduction
    2. Configure environment variables on OS X
    3. Configure environment variables on RHEL 6.6
    4. Environment variable values
  4. Create a log directory for the project
    1. Create log directory
  5. Get the code
    1. List of Repositories
    2. Clone the projects from Github on OS X
    3. Download the components via Subversion Export on RHEL 6.6
    4. Download the components on RHEL 6.6 via Git Clone
  6. Install JDK
    1. Install JDK on OS X
    2. Install JDK on RHEL 6.6
  7. Install Homebrew
    1. Install Homebrew on OS X
  8. Install Maven
    1. Install Maven on OS X
    2. Install Maven on RHEL 6.6
  9. Install MongoDB
    1. Install MongoDB on OS X
    2. Install MongoDB on RHEL 6.6
  10. Install Elasticsearch
    1. Install and Configure Elasticsearch on OS X
    2. Install and Configure Elasticsearch on RHEL 6.6
  11. Install Nginx
    1. Introduction
    2. Install Nginx on OS X
    3. Install Nginx on RHEL 6.6
  12. Install Redis
    1. Introduction
    2. Install Redis on OS X
    3. Install Redis on RHEL 6.6
  13. Configure host names
    1. Configure host names
    2. Configure host names on OS X
    3. Configure host names on RHEL 6.6
  14. Configure Nginx for Keycloak
    1. Introduction
    2. Configure Nginx for Keycloak on OS X
    3. Configure NginX for Keycloak on RHEL 6.6
  15. Install Keycloak
    1. Introduction
    2. Install Keycloak on OS X
    3. Install Keycloak on RHEL 6.6
    4. Verify the installation
  16. Configure Keycloak
    1. Start Keycloak in standalone mode
    2. Configure Keycloak on OS X
    3. Configure Keycloak on RHEL 6.6
    4. Import CEDAR Theme and Realm on OS X
    5. Import CEDAR Theme and Realm on RHEL 6.6
    6. Create admin user for CEDAR realm
  17. Install Neo4j
    1. Introduction
    2. Install Neo4j on OS X
    3. Install Neo4j on RHEL 6.6
    4. Update environment variables with Neo4j values
  18. Configure HTTPS for Nginx to Keycloak Communication
    1. Introduction
    2. Generate the certificate with keytool on RHEL 6.6
    3. Configure HTTPS for Keycloak on OS X
    4. Configure HTTPS for Keycloak on RHEL 6.6
  19. Generate keycloak.json
    1. Generate keycloak.json
  20. Install NodeJS, NPM, Gulp
    1. Setup NodeJS, NPM, Gulp on OS X
    2. Setup NodeJS, NPM, Gulp on RHEL 6.6
  21. Launch the third-party back end components
    1. Launch the third-party back end components
  22. Build an launch the back end
    1. Build the code
    2. Add Keycloak event listener
    3. Initialize the back end
    4. Launch the servers
  23. Configure Nginx for HTTPS using a Signed Certificate
    1. Introduction
    2. Installing Let's Encrypt on RHEL 6.6
    3. Configure Nginx on OS X
    4. Configure Nginx on RHEL 6.6 with Let's Encrypt
  24. Build and launch the front end
    1. Configure and launch the front end
    2. Testing the front end
  25. Launch every component
    1. Launch every component
    2. Stop every component
  26. Useful scripts
    1. Useful scripts
  27. iTerm2 + zsh + oh-my-zsh on OS X
    1. iTerm2 + zsh + oh-my-zsh on OS X
  28. Using a Self-Signed Certificate when Configuring Nginx for SSL
    1. Introduction
    2. Generate self-signed certificate for Nginx
      1. Introduction
      2. Generate certificate for NginX on OS X
      3. Generate certificate for NginX on RHEL 6.6
    3. Configure NginX with self-signed certificate
      1. Introduction
      2. Configure NginX on RHEL 6.6
    4. Import ca.crt as a trusted certificate
      1. Import ca.crt as a trusted certificate
      2. Import ca.crt as a trusted certificate on OS X
      3. Import ca.crt as a trusted certificate on RHEL 6.6
    5. Install Root CA certificate
      1. Install Root CA certificate
Clone this wiki locally