davidmirror-ops / flyte-the-hard-way

Prepare requirements and deploy Flyte using Helm
Creative Commons Zero v1.0 Universal
56 stars 12 forks source link

Flyte The Hard Way

This tutorial walks you through setting up Flyte in a semi-automated way. It includes all the manual steps you need to prepare the infrastructure before adjusting and installing a Helm chart.
For a fast way to experience Flyte, try Union Serverless, a platform managed by Flyte's creators.

The steps described taken in this tutorial are not the only prescribed way to prepare the infrastructure or deploy Flyte. Feel free to contribute improvements or adapt it to your organization's policies and best practices.

This guides takes inspiration from Kubernetes The Hard Way

Target audience

This tutorial is intended for platform/infrastructure engineers who plan to support a Flyte environment for production or testing.

Introduction

Flyte is a flexible and robust platform to develop and deploy machine learning workloads in a cloud-native environment. It facilitates interaction with the underlying Kubernetes infrastructure for users who are not entirely familiar with it.

To make Flyte work (especially for deployment), you’ll need to prepare the infrastructure layer.

While the official documentation covers the general process to deploy the single binary version, this tutorial aims to supplement docs with guidance to prepare the for a successful installation of Flyte.

Flyte on AWS

This tutorial will deploy Flyte single binary to an EKS environment, progressively adding features to reach a production-ready setup.

For the purposes of this basic tutorial, I adhered to the following principles:

Part I: Simple deployment without SSL, Ingress or authentication

Part III: Securing the stack with authentication

Flyte on local Kubernetes

In the following tutorials, you'll deploy the flyte-binary chart to different Kubernetes distributions running on-premises.

microk8s on VMs or bare-metal

Part I: Single node without Ingress

Part II: Multiple worker nodes and Ingress (coming soon)

Part III: Auth (coming soon)


microk8s on Raspberry Pi

Part I: Simple deployment with no Ingress or auth