Skip to content

Latest commit

 

History

History
144 lines (100 loc) · 5.13 KB

getting-started-linux.rst

File metadata and controls

144 lines (100 loc) · 5.13 KB

Getting Started on Linux

This guide walks through installing a locally accessible FoundationDB server that is suitable for development on Linux.

To install an externally accessible FoundationDB cluster on one or more machines, see :doc:`building-cluster`.

First steps

  • Validate your system meets the :ref:`system-requirements`.
  • Download the FoundationDB packages for your system from :doc:`downloads`.
  • Before upgrading from a previous version of FoundationDB, see :ref:`upgrading-foundationdb`.

Installing or upgrading FoundationDB packages

Warning

|upgrade-client-server-warning|

To install on Ubuntu use the dpkg command:

user@host$ sudo dpkg -i |package-deb-clients| \
|package-deb-server|

To install on RHEL/CentOS 6 use the rpm command:

user@host$ sudo rpm -Uvh |package-rpm-clients| \
|package-rpm-server|

To install on RHEL/CentOS 7 use the rpm command:

user@host$ sudo rpm -Uvh |package-rpm-clients| \
|package-rpm-server|

|simple-installation-mode-warnings|

|networking-clarification|

Installing multiple client versions

The regular foundationdb-clients RPM installs files in shared system paths and is intended for a normal install or upgrade. Do not install two regular client RPMs with rpm -ivh; they own the same files and RPM will report file conflicts.

For multi-version client support, use the separately named CPack versioned client RPMs. Their names have the form foundationdb<version>-clients-1.versioned.<architecture>.rpm and their files are installed below /usr/lib/foundationdb-<version>/. Non-release builds may include build-time and prerelease text in the package name and directory. Install each versioned package with rpm -ivh so the packages can remain installed simultaneously. If a release does not publish its versioned RPM, build the clients-versioned component from source with CPack (run cpack -G RPM from the configured build directory).

The active client is selected through the fdbclients alternatives group. Use update-alternatives --display fdbclients to inspect it and update-alternatives --config fdbclients to select a version. The selected alternative applies consistently to the client tools, library, headers, pkg-config metadata, and CMake package metadata.

Testing your FoundationDB installation

To verify that the local FoundationDB database is operational, open the command line interface (fdbcli) and use the status command.

user@host$ fdbcli
Using cluster file `/etc/foundationdb/fdb.cluster'.

The database is available.

Welcome to the fdbcli. For help, type `help'.
fdb> status

Configuration:
  Redundancy mode        - single
  Storage engine         - memory
  Coordinators           - 1

Cluster:
  FoundationDB processes - 1
  Machines               - 1
  Memory availability    - 4.1 GB per process on machine with least available
  Fault Tolerance        - 0 machines
  Server time            - Thu Mar 15 14:41:34 2018

Data:
  Replication health     - Healthy
  Moving data            - 0.000 GB
  Sum of key-value sizes - 8 MB
  Disk space used        - 103 MB

Operating space:
  Storage server         - 1.0 GB free on most full server
  Transaction log        - 1.0 GB free on most full server

Workload:
  Read rate              - 2 Hz
  Write rate             - 0 Hz
  Transactions started   - 2 Hz
  Transactions committed - 0 Hz
  Conflict rate          - 0 Hz

Backup and DR:
  Running backups        - 0
  Running DRs            - 0

Client time: Thu Mar 15 14:41:34 2018

If these steps were successful you have installed and validated FoundationDB. You can now start using the database!

Note

If the database is not operational the status command will provide diagnostic information to help you resolve the issue.

Managing the FoundationDB service

  • See :ref:`administration-running-foundationdb`.
  • See :ref:`administration-removing`.

Next steps

  • Install the APIs for :doc:`Ruby <api-ruby>`, :doc:`Python <api-python>`, Java or Go if you intend to use those languages. The :doc:`C <api-c>` API was installed along with the foundationdb-clients package above.
  • See :doc:`tutorials` for samples of developing applications with FoundationDB.
  • See :doc:`developer-guide` for information of interest to developers, including common design patterns and performance considerations.
  • See :doc:`administration` for detailed administration information.
  • See :doc:`known-limitations` of the system.
  • See :doc:`building-cluster` for step-by-step instructions on converting your local single-machine cluster to an externally visible cluster of one or more machines.