Snow Owl Docs
9.x
9.x
  • Introduction
  • Quick Start
    • Create your first Resource
    • Import SNOMED CT
    • Find concepts by ID or term
    • Find concepts using ECL
    • Next steps
  • Setup and Administration
    • Plan your deployment
      • Technology stack
      • Hardware requirements
      • Software requirements
    • Configuration
      • Release package
      • Folder structure
      • Get SSL certificate (optional)
      • Preload dataset (optional)
      • Configure Elastic Cloud (optional)
      • System settings
      • Spin up the service
    • Upgrade Snow Owl
    • Backup and restore
      • Backup
      • Restore
    • User management
    • Advanced installation methods
      • Install Snow Owl
        • Using an archive
        • Using RPM
        • Using DEB
      • System configuration
        • Disable swapping
        • File descriptors
        • Virtual memory
        • Number of threads
      • Configure Snow Owl
      • Start Snow Owl
      • Stop Snow Owl
    • Advanced configuration
      • Setting JVM options
      • Logging configuration
      • Elasticsearch configuration
      • Security
        • File realm
        • LDAP realm
  • Terminology Standards
    • SNOMED CT
      • Extensions and Snow Owl
      • Scenarios
        • Single Edition
        • Single Extension Authoring
        • Multi Extension Authoring
      • Development
      • Releases
      • Upgrading
    • LOINC
    • Socialstyrelsen Standards
      • ICD-10-SE
      • ICF
      • KVÅ (KKÅ/KMÅ)
  • Content syndication
  • REST APIs
    • FHIR API
      • CodeSystem
      • ValueSet
      • ConceptMap
    • Native API
      • Resource management
      • Content access
      • Content management
      • SNOMED CT API
        • Branching
        • Compare
        • Concepts
        • Reference Sets
  • Release notes
Powered by GitBook
On this page
  • Terminology Server
  • Elasticsearch
  • A&A service
  • Reverse proxy
Export as PDF
  1. Setup and Administration
  2. Plan your deployment

Technology stack

Last updated 1 year ago

The technology stack behind the Terminology Server consists of the following components:

  • The Terminology Server application

  • Elasticsearch as the data layer

  • Optional: Authentication/Authorization service

    • Either an OpenID Connect/OAuth2.0 compatible external service with JSON Web Token support

    • Or an LDAP-compliant directory service

  • Optional: A reverse proxy handling the requests towards the REST API

Terminology Server

Outgoing communication from the Terminology Server goes via:

  • HTTP(s) towards Elasticsearch and to the external OpenID Connect/OAuth2 authorization server

  • LDAP(s) towards the A&A service

Incoming communication is handled through the HTTP port 8080.

A selected reverse proxy channels all incoming traffic through to the Terminology Server.

Elasticsearch

Elasticsearch versions supported by each major version of Snow Owl:

Snow Owl 7.x
Snow Owl 8.x
Snow Owl 9.x

Elasticsearch 7.x

Elasticsearch 8.x

The Elasticsearch cluster can either be:

  • a co-located, single-node, self-hosted cluster

A&A service

Reverse proxy

With a preconfigured domain name and DNS record, the default installation package can take care of requesting and maintaining the necessary certificates for secure HTTP. See the details of this in the Configuration section.

For simplifying the initial setup process we are shipping the Terminology Server with a default configuration of a co-located Elasticsearch cluster, a pre-populated OpenLDAP server, and an NGINX reverse proxy with the ability to opt-in for an SSL certificate.

(deprecated)

a managed Elasticsearch cluster hosted by

Having a co-located Elasticsearch service next to the Terminology Server directly impacts the hardware requirements. See our list of recommended hardware on the .

For authorization and authentication, the application supports external OpenID Connect/OAuth2 compatible authorization services (eg. Auth0) and any traditional LDAP Directory Servers. We recommend starting with and evolving to other solutions later because it is easy to set up and maintain while keeping Snow Owl's user data isolated from any other A&A services.

A reverse proxy, such as is recommended to be utilized between the Terminology Server and either the intranet or the internet. This will increase security and help with channeling REST API requests appropriately.

elastic.co
next page
OpenLDAP
NGINX
✔️
✔️
✔️
✖️
✔️
✔️
Snow Owl Terminology Server Architecture Diagram