Skip to content

Latest commit

 

History

History
106 lines (81 loc) · 5.42 KB

deployment.md

File metadata and controls

106 lines (81 loc) · 5.42 KB

Deployment of AIO with Edge AI in-a-Box

Prerequisites

The following prerequisites are needed for a succesfull deployment of this accelator from your own PC.

  • An Azure subscription.

  • Install latest version of Azure CLI

  • Install Azure Developer CLI

  • Enable the Following Resource Providers on your Subscription:

    • Microsoft.AlertsManagement
    • Microsoft.Compute
    • Microsoft.ContainerInstance
    • Microsoft.ContainerService
    • Microsoft.DeviceRegistry
    • Microsoft.EventHub
    • Microsoft.ExtendedLocation
    • Microsoft.IoTOperations
    • Microsoft.IoTOperationsDataProcessor
    • Microsoft.IoTOperationsMQ
    • Microsoft.IoTOperationsOrchestrator
    • Microsoft.KeyVault
    • Microsoft.Kubernetes
    • Microsoft.KubernetesConfiguration
    • Microsoft.ManagedIdentity
    • Microsoft.Network
    • Microsoft.Relay

    (The template will enable all these Resource Providers but its always good to check pre and post deployment.)

  • Install latest version of Bicep

  • Be aware that the template will leverage the following Azure CLI Extensions:

  • Install latest PowerShell version (7.x): Check your current version with $PSVersionTable and then install the latest via "Winget install microsoft.azd"

  • Install VS Code on your machine

  • Ownerships rights on the Microsoft Azure subscription. Ensure that the user or service principal you are using to deploy the accelerator has access to the Graph API in the target tenant. This is necessary because you will need to:

    (Basically you need to deploy the template with a user that has high privelages)

Deployment Flow

Step 1. Clone the Edge-AIO-in-a-Box Repository

Step 2. Create Azure Resources (User Assigned Managed Identity, VNET, Key Vault, EventHub, Ubuntu VM, Azure ML Workspace, Container Registry, etc.)

Sample screenshot of the resources that will be deployed:

AIO with AI Resources

Step 2. SSH onto the Ubuntu VM and execute some kubectl commands to become familiar with the deployed pods and their configurations within the cluster. This hands-on approach will help you understand the operational environment and the resources running in your Kubernetes/AIO setup.

Step 3. Buld ML model into docker image and deploy to your K3s Cluster Endpoint via the Azure ML Extension

Step 4. Push model to Azure Container Registry

Step 5. Deploy model to the Edge via Azure ML Extension to your K3s/AIO Cluster

Deploy to Azure

  1. Clone this repository locally:

    git clone https://github.com/Azure-Samples/edge-aio-in-a-box
  2. Log into your Azure subscription (both are required):

    azd auth login --use-device-code --tenant-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
    az login --use-device-code --tenant xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
  3. Deploy resources:

    azd up

    You will be prompted for a subcription, region and additional parameters:

        adminPasswordOrKey - Pa$$W0rd:)7:)7
        adminUsername - ArcAdmin
        arcK8sClusterName - aioxclusterYOURINITIALS
        authenticationType - password
        location - eastus
        virtualMachineName - aiobxclustervmYOURINITIALS
        virtualMachineSize - Standard_D16s_v4

Be Aware