About Features Downloads Getting Started Documentation Events Support GitHub

Site Tools


Warning: This page has not been updated in over over a year and may be outdated or deprecated.
configuration:ils:examples:koha_multibackend

Configuring multiple Koha instances using the MultiBackend driver

Thanks to Mohan Pradhan and Mariyapillai Jayakananthan for developing this documentation.

This example document explains how to set up a single VuFind instance to retrieve records from multiple Koha instances, allowing all of the records to be searched in a single place. It also sets up the MultiILS authentication method, allowing users to access their VuFind accounts with the same credentials they use in Koha.

This is not meant to supersede the more general information found on the MultiBackend Driver and Koha Indexing pages.

Notes and Assumptions

  • This documentation was created in 2021. As time passes and software packages are updated, some of these screen shots may become outdates, though the basic principles should remain the same.
  • These notes were developed using a Debian-flavored Linux distribution; details for other platforms may differ.
  • These notes assume a $VUFIND_HOME value of /usr/local/vufind, and $VUFIND_LOCAL_DIR of /usr/local/vufind/local. You will have to substitute different values for these paths if your local setup uses non-default locations.
  • This example assumes that VuFind and Koha are running on the same server. If they are installed on separate servers, additional firewall and database configuration may be needed to enable API and database communication.

About this Approach

As of this writing, VuFind includes three different drivers for Koha:

  • The Koha driver operates by accessing Koha's database directly, and it has very limited (read-only) functionality. Its use is not recommended in most situations.
  • The KohaILSDI driver uses a protocol-based approach to communication between VuFind and Koha; many user functions are handled through API calls, though some lookups are accomplished through direct database access. It offers more functionality than the Koha driver, but it is the most complex to set up, since it requires both HTTP and database access to the Koha server.
  • The KohaRest driver interacts with Koha exclusively through an HTTP-based API. It is the recommended method for interoperation between VuFind and Koha, but some older versions of Koha may not support the plugins required to activate the API.

This document demonstrates setting up communication with three different Koha instances, each using a different ILS driver. While this scenario could occur in a real-world situation if multiple instances had different Koha versions or security requirements, this is mainly done to demonstrate the three different driver configuration methods and to highlight how MultiBackend configuration works. If you have control over your setup, you should prefer the KohaRest driver when possible.

Also note that some of the older ILS drivers may be deprecated or removed in future versions of VuFind.

Step 1: Exporting Records from Koha

Before you can load records into VuFind, you must first extract them from Koha.

To retrieve records from Koha, there are two possible approaches:

  • I. Use the OAI-PMH protocol
  • II. Manually export the MARC data from Koha

Each approach is described in a section below; you can choose one or the other but do not need to do both. Option I (OAI-PMH) is recommended, as it makes automatic, incremental updating much easier.

Option I: OAI-PMH Configuration in Koha

In Koha, OAI-PMH should be enabled by visiting by Home/Administration/Systems preference/Web services.

Koha's OAI-PMH Configuration Screen

You can check whether the service is enabled by visiting {Koha OPAC URL}/cgi-bin/koha/oai.pl?verb=Identify in your web browser. If the service is turned on, you should see something similar to this:

Koha OAI-PMH Identify Results

Before harvesting data from Koha to VuFind, you should click the Records button then click metadata[format marc21], and you should see something similar to the following:

Koha OAI-PMH Records

Option II: Manually Exporting MARC Data from Koha

  1. Log in to Koha.
  2. Go to Home > Tools > Export data
  3. Fill in the form: Koha export form
  4. Click “Export bibliographic records”

Step 2: VuFind Configuration

As described above, this example assumes you are setting up VuFind to communicate with three distinct instances of Koha. We will call them Library1, Library2 and Library3 for this example. You can extend this to include additional instances by simply repeating the steps extra times using different instance names.

Setting Up Configuration Files

Several configuration files need to be copied into your local settings directory in order to set up all aspects of record loading and ILS communication.

Import Configurations

Details coming soon…

Driver Configurations

Creating the Files

Details coming soon…

Setting Up Database Privileges

Details coming soon…

Step 3: Importing Records into VuFind

Depending on whether you chose option I or option II to export records from Koha in step 1, you may need to take different actions to load those records into VuFind now. Choose the appropriate option below; note that option I offers greater automation potential.

Option I: Loading Records via OAI-PMH

Details coming soon…

Option II: Loading a Manually Exported MARC File

Details coming soon…

Screenshots of the Outcome of the Configuration

Details coming soon…

configuration/ils/examples/koha_multibackend.txt · Last modified: 2021/05/13 12:08 by demiankatz