Install Pelican
This document lists Pelican’s operating system requirements and explains how you can download and install the correct Pelican executable.
Know what you want? Visit our Downloads Repository .
Before Starting
Pelican is distributed as two separate executables:
| Binary | Purpose |
|---|---|
pelican | Client — download and upload data, manage credentials, submit jobs |
pelican-server | Server — run an Origin, Cache, Director, or Registry |
Most users only need the pelican client.
If you intend to run a federation service (Origin, Cache, Director, or Registry), you also need pelican-server.
On RPM-based Linux systems both binaries are installed together via the pelican and pelican-server RPM packages.
For containerized server deployments we recommend our Pelican Docker images, which ship both binaries.
Supported Operating Systems
Pelican supports the following operating systems, when running as a client:
- Red Hat Enterprise Linux (CentOS, Fedora, Alma, Rocky, or openSUSE)
- Debian or Ubuntu
- Alpine Linux
- macOS
- Windows
- Conda-forge (Linux, macOS, Windows)
Note: Installation of Pelican on other operating systems is possible, but not recommended or supported.
Determine Which Executable To Download
Each section of the following chart contains a link to a specific Pelican executable based on your operating system and CPU architecture. If you don’t know your computer’s architecture, refer to any specific instructions for your operating system under Install Pelican Executable. The vast majority of non-MacOS operating systems will use an x86_64 architecture.
Once you’ve determined which executable to use, copy the provided link and continue to Install Pelican Executable.
What Version Should I Download?
In most cases, you should use the highest version of Pelican available because it will contain our latest features and bug fixes. This is the default link provided unless you specify otherwise.
If you need a specific version that isn’t the latest, you can select it using the chart’s “Version” dropdown. Pelican follows the semantic versioning scheme , so, for example, 7.10.5 means:
- 7 represents the major release (changes in this number represent large changes that may break backwards compatibility)
- 10 represents feature releases (each increment within the same major release represents new, backward-compatible functionality)
- 5 represents a bug fix/patch release
The download table above includes Pelican versions as old as v7.6.x To download older versions, please refer to our GitHub release archive .
Install Pelican Executable
Linux
- Install Pelican on Red Hat Enterprise Linux (CentOS, Fedora, Alma, Rocky, or openSUSE)
- Install Pelican on Debian or Ubuntu
- Install Pelican on Alpine Linux
- Install Pelican as a standalone executable
MacOS
Windows
Cross-Platform Package Manager
Install OSDF or Server Package
Pelican has two special RPM packages: pelican-osdf-compat (for running Pelican in the Open Science Data Federation) and pelican-server (which installs the pelican-server binary needed to run federation services such as an Origin or Cache).
The pelican-server RPM requires the pelican RPM to be installed first. You may get the following error message if you only install the special package:
Problem: conflicting requests
- nothing provides pelican needed by pelican-osdf-compat-7.8.5-1.aarch64 from @commandlineTo fix the issue, install the Pelican package first by following the preceding instructions.
Are you planning to contribute to the OSDF? Check out the OSDF documentation for system administrators here: osg-htc.org/docs/data/osdf/overview/ .
Verify Pelican Is Installed
If you installed Pelican as a standalone executable, or if you installed Pelican on MacOS or Windows operating systems, you need to add Pelican to your
PATHenvironment variable before proceeding. See instructions for your operating system under the os-specific installation instructions section
-
Run the following command after you installed Pelican
-
Linux and macOS:
which pelican -
Windows:
where pelican
If this command outputs a filepath, Pelican is installed correctly. If no output is returned, revisit instructions for your operating system.
-
-
If you installed the
pelican-serverRPM or a server Docker image, verify the server binary is also available:-
Linux and macOS:
which pelican-server -
Windows:
where pelican-server
-
-
Test the Client’s functionality by running an object get command that downloads a test file from Open Science Data Federation (OSDF) to your current directory
$ pelican object get pelican://osg-htc.org/pelicanplatform/test/hello-world.txt . hello-world.txt 27.00b / 27.00b [=============================================================================================] Done!
Server Prerequisites
If you plan to run a Pelican server (Origin, Cache, Director, or Registry), the following prerequisites apply to all server types.
Enable Time Synchronization
Pelican servers use tokens for authorization, and these tokens contain time-sensitive claims (such as iat, the “issued at” time).
If your server’s clock is significantly out of sync with the federation’s other services, tokens may be rejected and your server may fail to join the federation.
Ensure that Network Time Protocol (NTP) is enabled and actively synchronizing your server’s clock. If your site has a firewall, make sure outgoing UDP traffic on port 123 (NTP) is permitted.
To check whether your system clock is synchronized, run:
timedatectl statusLook for System clock synchronized: yes and NTP service: active in the output.
If NTP is not active, you can enable it with:
timedatectl set-ntp trueIf your system uses chrony, you can also check synchronization status with:
chronyc trackingIf your system uses ntpd, you can check synchronization status with:
ntpq -p