Install Kubeflow Fairing

Setting up your Kubeflow Fairing development environment

You can use Kubeflow Fairing to build, train, and deploy machine learning (ML) models in a hybrid cloud environment directly from Python code or a Jupyter notebook. This guide describes how to install Kubeflow Fairing in your development environment for local development, or development in a hosted notebook.

Using Kubeflow Fairing with Kubeflow notebooks

Kubeflow notebook servers that are built from one of the standard Jupyter Docker images include Kubeflow Fairing and come preconfigured for using Kubeflow Fairing to run training jobs on your Kubeflow cluster.

If you use a Kubeflow notebook server that was built from a custom Jupyter Docker image as your development environment, follow the instruction on setting up Kubeflow Fairing in a hosted notebook environment.

Set up Kubeflow Fairing for local development

Follow these instructions to set up Kubeflow Fairing for local development. This guide has been tested on Linux and Mac OS X. Currently, this guide has not been tested on Windows.

Set up Python

  1. You need Python 3.6 or later to use Kubeflow Fairing. To check if you have Python 3.6 or later installed, run the following command:

    python3 -V

    The response should be something like this:

    Python 3.6.5
    

    If you do not have Python 3.6 or later, you can download Python from the Python Software Foundation.

  2. Use virtualenv to create a virtual environment to install Kubeflow Fairing in. To check if you have virtualenv installed, run the following command:

    which virtualenv

    The response should be something like this:

    /usr/bin/virtualenv

    If you do not have virtualenv, use pip3 to install virtualenv.

    pip3 install virtualenv

    Create a new virtual environment, and activate it.

    virtualenv venv --python=python3
    source venv/bin/activate

Install Kubeflow Fairing

Run the following command to install Kubeflow Fairing in your virtual environment.

pip install fairing

After the install is complete, the fairing python package is available. Run the following command to verify that Kubeflow Fairing is installed:

pip show fairing

The response should be something like this:

Name: fairing
Version: 0.5.2
Summary: Python SDK for building, training, and deploying ML models
Home-page: https://github.com/kubeflow/fairing
Author: Kubeflow Authors
Author-email: None
License: UNKNOWN
Location: <path-to-kubeflow-fairing>
Requires: google-auth, six, setuptools, httplib2, cloudpickle, requests,
future, kubernetes, google-cloud-storage, notebook, tornado, numpy,
google-api-python-client, docker, oauth2client

Docker setup

Kubeflow Fairing uses Docker to package your code. Run the following command to verify if Docker is installed and running:

docker ps

Configure Kubeflow Fairing

To configure Kubeflow Fairing with access to an environment that you would like to use for training and deployment, follow the instructions in the guide to configuring Kubeflow Fairing.

Set up Kubeflow Fairing in a hosted Jupyter notebook

Follow these instructions to set up Kubeflow Fairing in a hosted Jupyter notebook.

If you are using a Kubeflow notebook server that was built from one of the standard Jupyter Docker images, your notebooks environment has been preconfigured for training and deploying ML models with Kubeflow Fairing and no additional installation steps are required.

Prerequisites

Check the following prerequisites to verify that Kubeflow Fairing is compatible with your hosted notebook environment.

  1. In the Jupyter notebooks user interface, click File > New > Terminal in the menu to start a new terminal session in your notebook environment.
  2. You need Python 3.6 or later to use Kubeflow Fairing. To check if you have Python 3.6 or later installed, run the following command in your terminal session:

    python3 -V

    The response should be something like this:

    Python 3.6.5
    
  3. Kubeflow Fairing uses Docker to package your code. Run the following command in your terminal session to verify if Docker is installed and running in your notebook environment:

    docker ps

Install Kubeflow Fairing

  1. In the Jupyter notebooks user interface, click File > New > Terminal in the menu to start a new terminal session in your notebook environment.
  2. Run the following command to install Kubeflow Fairing.

    pip3 install fairing

    After successful installation, the fairing python package should be available. Run the following command to verify that Kubeflow Fairing is installed:

    pip3 show fairing

    The response should be something like this:

    Name: fairing
    Version: 0.5.2
    Summary: Python SDK for building, training, and deploying ML models
    Home-page: https://github.com/kubeflow/fairing
    Author: Kubeflow Authors
    Author-email: None
    License: UNKNOWN
    Location: <path-to-kubeflow-fairing>
    Requires: google-auth, six, setuptools, httplib2, cloudpickle, requests,
    future, kubernetes, google-cloud-storage, notebook, tornado, numpy,
    google-api-python-client, docker, oauth2client
    

Configure Kubeflow Fairing

To configure Kubeflow Fairing with access to the environment you would like to use for training and deployment, follow the instructions in the guide to configuring Kubeflow Fairing.

Next steps