Install Kubeflow Fairing
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
-
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.
-
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
- If you receive the
docker: command not found
message, install Docker. - If you receive the
Error response from daemon: Bad response from Docker engine
message, restart your docker daemon. - If you are using Linux and you use sudo to access Docker, follow these steps to add your user to the docker group. Note, the docker group grants privileges equivalent to the root user. To learn more about how this affects security in your system, see the guide to the Docker daemon attack surface.
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.
-
In the Jupyter notebooks user interface, click File > New > Terminal in the menu to start a new terminal session in your notebook environment.
-
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
-
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
- If you receive the
docker: command not found
message, install Docker. - If you receive the
Error response from daemon: Bad response from Docker engine
message, restart your docker daemon. - If you are using Linux and you use sudo to access Docker, follow these steps to add your user to the docker group. Note, the docker group grants privileges equivalent to the root user. To learn more about how this affects security in your system, see the guide to the Docker daemon attack surface.
- If you receive the
Install Kubeflow Fairing
-
In the Jupyter notebooks user interface, click File > New > Terminal in the menu to start a new terminal session in your notebook environment.
-
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
- Configure your Kubeflow Fairing development environment with access to run training jobs remotely.
- Follow the samples and tutorials to learn more about how to run training jobs remotely with Kubeflow Fairing.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.