Link Search Menu Expand Document

Pre-Install Checks

deployment ama marketplace azure

On this page

  1. CluedIn AMA - Pre-Install Checks
    1. Identify the user carrying out installation
    2. Permission to purchase from the Azure Market Place
    3. Check Azure registrations
    4. Check vCPU quotas
    5. Helper Script

CluedIn AMA - Pre-Install Checks

Before beginning the installation, a few checks and permissions need to happen to ensure a smooth installation experience.

Identify the user carrying out installation

The user who is triggering the installation must have all the correct permissions assigned to them or their user group.

CluedIn will be installed into an Azure Resource Group. The installation user would ideally be at least aContributor to that group or ideally the Owner of that resource group.

Permission to purchase from the Azure Market Place

The other permission required is the ability to purchase paid-for applications from the Azure Marketplace.

marketplace-enable.png

By default, this is usually set to Off - Meaning it prevents users from deploying any software from Azure Marketplace.

This must be set to Free/BYOL SKUs Only in order to complete the purchase registration on the marketplace.

More information is available here: https://docs.microsoft.com/en-us/marketplace/azure-purchasing-invoicing#purchase-policy-management

Note: At present (Jan 2023) the Microsoft document above is showing the wrong screenshots for the Marketplace interface.

Check Azure registrations

The final set of permissions is around resource provider registrations and quotas.

Resource Provider registrations allow you to create certain resource types in Azure. The CluedIn installation creates various resource types, so we need to check that the installation user has the proper authority to create them.

The list of resource provider registrations for CluedIn are as follows:

  • Microsoft.Cache
  • Microsoft.Capacity
  • Microsoft.Compute
  • Microsoft.ContainerService
  • Microsoft.EventHub
  • Microsoft.KeyVault
  • Microsoft.ManagedIdentity
  • Microsoft.Network
  • Microsoft.OperationalInsights
  • Microsoft.OperationsManagement
  • Microsoft.Resources
  • Microsoft.Storage
  • Microsoft.Sql

You can locate the Resource Provider section in the Subscription configuration on the Azure portal.

img.png

img_1.png

Some may take a few minutes to register.

Check vCPU quotas

There are three common VM family types that CluedIn will create as part of the AKS (Kubernetes) node pools.

The subscription must have enough spare vCPU quota to provision the different nodes.

If the quota is not available then the installation will fail.

Common

  • System Pool - (1 x Standard_DS2_v2) - At least 2 vCPUs in the Standard DSv2 Family vCPUs quota

  • General Pool (2 x Standard_D8s_v4) and Data Pool - (3 x Standard_D8s_v4) - At least 40 vCPUs in the Standard DSv4 Family vCPUs quota

The D8s_v4 machines can be found as part of the D-Series v4 set of compute resources.

The next set is based on your license type:

Essential

  • At least 8 vCPUs in the StandardFSv2Family quota

Professional

  • At least 16 vCPUs in the StandardFSv2Family quota

Elite

  • At least 32 vCPUs in the StandardFSv2Family quota

If you are looking to enable auto-scaling on the processing node, you will need to ensure a higher quota on the FSv2 family. This will also depend on your license type.

Helper Script

CluedIn have created a PowerShell script that can check the current user’s provider registrations.

It requires the Azure CLI (az) to be installed on the system running it.

Installation instructions can be found here: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli

param(
    [Parameter(Mandatory)]
    [string]$SubscriptionId,
    [switch]$Register,
    [switch]$Wait
)

$ErrorActionPreference = 'Stop'

if(!(Get-Command az)) {
    Write-Error "You must install the azure CLI to continue"
}

# Login
function GetCurrentSubscription { az account show --query 'id' -o tsv }
$currentSubscription = GetCurrentSubscription
if(!$currentSubscription) { az login -o none }

if($currentSubscription -ne $SubscriptionId){
    az account set --subscription $SubscriptionId
    $currentSubscription = GetCurrentSubscription
    if($currentSubscription -ne $SubscriptionId){
        Write-Error "Could not login to subscription ${SubscriptionId}"
    }
}

function FetchProviders {
    $requiredProviders = @(
        "Microsoft.Cache",
        "Microsoft.Capacity",
        "Microsoft.Compute",
        "Microsoft.ContainerService",
        "Microsoft.EventHub",
        "Microsoft.KeyVault",
        "Microsoft.ManagedIdentity",
        "Microsoft.Network",
        "Microsoft.OperationalInsights",
        "Microsoft.OperationsManagement",
        "Microsoft.Resources",
        "Microsoft.Storage",
        "Microsoft.Sql"
    )

    az provider list --query '[].{ Name: namespace, Registered: registrationState}' |
        ConvertFrom-Json |
        ForEach-Object {
            $required = $requiredProviders -contains $_.Name
            Add-Member -InputObject $_ -NotePropertyName Required -NotePropertyValue $required -PassThru
        } |
        Sort-Object Required,Name,Registered
}

$providers = FetchProviders

if($Register) {
    $toRegister = $providers.Where({ $_.Required -and $_.Registered -ne 'Registered'})
    if($toRegister) {
        Write-Host "Registering missing providers"
        $toRegister | ForEach-Object {
            az provider register --namespace $_.Name --accept-terms --wait
        }

        $providers = FetchProviders
    } else {
        Write-Host "All required providers registered" -ForegroundColor Green
    }
}

$providers

The CluedIn installer will also attempt to check most of these permissions, so if you see errors such as ..

img.png

.. please re-check the permissions assigned to that user before proceeding.