Preinstallation Preparation#

This topic provides guidance for preparing your environment before installing JupyterHub for your Team Notebooks.

Installation requirements#

Before you install JupyterHub onto your server, make sure that it meets all the following requirements:

Software requirements#

The installer is a self-extracting binary that contains all of the necessary components to run JupyterHub services. Anaconda Notebooks has the following software and network requirements:

  • Any Linux variant

Note

Amazon Linux does not include libxcrypt-compat, which is required by nginx services.

  • Use of a fully-qualified domain name (FQDN) or hostname

  • DNS record and TLS/SSL certifications

Hardware requirements#

Because all users share the same pool of resources on the server, hardware requirements for running JupyterHub vary depending on the number of users accessing the server at any one time. Use the following formulas to determine your hardware requirements:

  • Recommended RAM = (maximum active users x maximum memory per user) + 1GB

  • Recommended CPUs = (maximum active users x maximum CPU usage per user) + 20%

  • Recommended disk storage = (Total users x maximum disk usage per user) + 2 GB

DNS and TLS/SSL certificate requirements#

TLS/SSL requirements#

Team Notebooks requires TLS/SSL certificates to provide transport layer security for the cluster. It is required to have your TLS/SSL certs prior to installation.

You can purchase certificates commercially, or use Let’s Encrypt.

DNS requirements#

DNS is required in conjunction with an SSL/TLS certificate for securing the connection using HTTPS and must be configured prior to installation. HTTPS provides encryption, integrity protection, and protection from impersonation and man-in-the-middle attacks.

Security requirements#

It is important to protect all services running on the node from outside access. The exceptions are as shown below:

  • :443 nginx - for allowing HTTPS traffic

  • :22 ssh - optional; to SSH into your instance

For security, you’ll need to configure the firewall rules on your node to allow access only to these ports.

System validation checks#

Once your environment is prepared, run the following commands to verify it is ready for installation of Anaconda Notebooks.

To verify what type of processor your system is running and the number of CPUs present, run the command:

cat /proc/cpuinfo

To verify the amount of system memory is sufficient, run the command:

cat /proc/meminfo

To verify there is a sufficient amount of disk space for the installation, run the command:

df -h

To verify the kernel release version and processor type, run the command:

uname -a

To verify your operating system release version, run the command:

cat /etc/os-release

After verifying all requirements have been met, proceed with Installing Team Notebooks.