Sdílet prostřednictvím


Sestavování a nasazování kanálů pro data a strojové učení pomocí Flyte ve službě Azure Kubernetes Service (AKS)

V tomto článku se dozvíte, jak používat Flyte ve službě Azure Kubernetes Service (AKS). Flyte je opensourcový orchestrátor pracovních postupů, který sjednocuje zásobníky strojového učení, přípravy dat a analýzy dat, které vám pomůžou vytvářet robustní a spolehlivé aplikace. Pokud používáte Flyte jako nástroj pro automatizaci pracovních postupů nativní pro Kubernetes, můžete se zaměřit na experimentování a poskytovat obchodní hodnotu, aniž byste zvýšili rozsah infrastruktury a správy prostředků. Mějte na paměti, že Společnost Flyte není oficiálně podporovaná společností Microsoft, proto ji používejte podle vlastního uvážení.

Další informace naleznete v tématu Úvod do Flyte.

Důležité

Opensourcový software je zmíněn v dokumentaci a ukázkách AKS. Software, který nasadíte, je vyloučený ze smluv o úrovni služeb AKS, omezené záruky a podpora Azure. Při používání opensourcových technologií společně s AKS se obraťte na možnosti podpory, které jsou k dispozici v příslušných komunitách a správci projektů, a vytvořte plán.

Například úložiště Ray GitHub popisuje několik platforem, které se liší v době odezvy , účelu a úrovni podpory.

Microsoft zodpovídá za vytváření opensourcových balíčků, které nasazujeme v AKS. Tato odpovědnost zahrnuje úplné vlastnictví sestavení, skenování, podepisování, ověřování a opravy hotfix spolu s kontrolou binárních souborů v imagích kontejneru. Další informace najdete v tématu Správa ohrožení zabezpečení pro AKS a AKS podporují pokrytí.

Případy použití Flyte

Flyte lze použít pro různé případy použití, včetně:

  • Doručujte modely pro zjednodušené výpočty zisku a ztráty.
  • Zpracování petabajtů dat za účelem efektivního provádění 3D mapování nových oblastí
  • Rychle se vrátit zpět k předchozím verzím a minimalizovat dopad chyb v kanálech.

Další informace naleznete v tématu Core Flyte případy použití.

Požadavky

  • Předplatné Azure. Pokud ještě nemáte předplatné Azure, můžete si vytvořit bezplatný účet.
    • Pokud máte více předplatných, ujistěte se, že jste pomocí az account set --subscription <subscription-id> příkazu vybrali tu správnou.
  • Nainstalované a nakonfigurované Rozhraní příkazového řádku Azure. Pomocí příkazu zkontrolujte svoji verzi az --version . Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace rozhraní příkazového řádku Azure CLI.
  • Nainstalované a aktualizované rozhraní příkazového řádku Helm. Pomocí příkazu zkontrolujte svoji verzi helm version . Pokud potřebujete nainstalovat nebo upgradovat, přečtěte si téma Instalace Nástroje Helm.
  • Rozhraní příkazového kubectl řádku se nainstalovalo a aktualizovalo. Nainstalujte ho az aks install-cli místně pomocí příkazu nebo pomocí příkazu Install kubectl.
  • Místní vývojové prostředí Dockeru. Další informace najdete v tématu Získání Dockeru.
  • flytekit a flytectl nainstalováno. Další informace naleznete v tématu Flyte instalace.

Poznámka:

Pokud používáte Azure Cloud Shell, azure CLI, Helm a kubectl jsou už nainstalované.

Nastavení proměnných prostředí

  • Nastavte proměnné prostředí pro použití v celém článku. Zástupné hodnoty nahraďte vlastními hodnotami.

    export RESOURCE_GROUP="<resource-group-name>"
    export LOCATION="<location>"
    export CLUSTER_NAME="<cluster-name>"
    export DNS_NAME_PREFIX="<dns-name-prefix>"
    

Vytvoření clusteru AKS

  1. Pomocí příkazu vytvořte skupinu prostředků Azure pro cluster az group create AKS.

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  2. Vytvořte cluster AKS pomocí az aks create příkazu s parametrem --enable-azure-rbac, --enable-managed-identity--enable-aad, a --dns-name-prefix parametry.

    az aks create --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --enable-azure-rbac --enable-managed-identity --enable-aad --dns-name-prefix $DNS_NAME_PREFIX  --generate-ssh-keys
    

Připojení ke clusteru AKS

  • Nakonfigurujte kubectl připojení ke clusteru AKS pomocí az aks get-credentials příkazu.

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    

Přidání úložiště Flyte Helm

  • Přidejte úložiště Flyte Helm pomocí helm repo add příkazu.

    helm repo add flyteorg https://flyteorg.github.io/flyte
    

Vyhledání grafů Flyte Helm

  1. Pomocí příkazu vyhledejte grafy helm search repo Flyte Helm.

    helm search repo flyteorg
    

    Následující příklad výstupu ukazuje některé z dostupných grafů Flyte Helm:

    NAME                    CHART VERSION   APP VERSION     DESCRIPTION
    flyteorg/flyte          v1.12.0                         A Helm chart for Flyte Sandbox
    flyteorg/flyte-binary   v1.12.0         1.16.0          Chart for basic single Flyte executable deployment
    flyteorg/flyte-core     v1.12.0                         A Helm chart for Flyte core
    flyteorg/flyte-deps     v1.12.0                         A Helm chart for Flyte dependencies
    flyteorg/flyte-sandbox  0.1.0           1.16.1          A Helm chart for the Flyte local sandbox
    flyteorg/flyteagent     v0.1.10                         A Helm chart for Flyte Agent
    
  2. Aktualizujte úložiště pomocí helm repo update příkazu.

    helm repo update
    

Nasazení flyteového grafu v AKS

V této části nasadíte flyte-binary Helm chart, abyste mohli začít vytvářet a nasazovat kanály dat a strojového učení pomocí Flyte v AKS. Flyte-binary chart je základní nasazení s jedním spustitelným souborem Flyte.

  1. Pomocí příkazu vytvořte obor názvů pro nasazení kubectl create namespace Flyte.

    kubectl create namespace <namespace-name>
    
  2. Nainstalujte chart Flyte Helm pomocí helm install příkazu. V tomto příkladu flyte-binary použijeme graf.

    helm install flyte-binary flyteorg/flyte-core --namespace <namespace-name>
    
  3. Pomocí příkazu ověřte, že je spuštěné kubectl get services nasazení Flyte.

    kubectl get services --namespace <namespace-name> --output wide
    

    Následující zhuštěný ukázkový výstup ukazuje nasazení Flyte:

    NAME                            TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)          AGE
    flyteorg-flyte-binary-grpc      ClusterIP      xx.x.xx.xxx    <none>          81/TCP           1m
    flyteorg-flyte-binary-http      ClusterIP      xx.x.xx.xxx    <none>          80/TCP           1m
    flyteorg-flyte-binary-webhook   ClusterIP      xx.x.xx.xxx    <none>          80/TCP           1m
    

Další kroky

V tomto článku jste zjistili, jak nainstalovat Flyte v AKS pomocí chartu Helm. Projekt Flyte také udržuje referenční implementaci pro AKS , která automaticky nakonfiguruje všechny závislosti a nasadí cluster Flyte na produkční úrovni.

Pokud chcete začít sestavovat a nasazovat kanály dat a strojového učení, projděte si následující články: