Skip to main content

Azure Marketplace Deployment

Deploy Alactic AGI directly from Azure Marketplace with automated resource creation and configuration. This guide provides detailed steps and troubleshooting for marketplace deployments.

Deployment Overview

Azure Marketplace deployment creates and configures all required resources automatically:

  • Azure OpenAI Service with model deployments
  • Azure Cosmos DB for document storage
  • Azure Key Vault for credential management
  • Azure Storage Account for file storage
  • Virtual Machine with Ubuntu 22.04
  • Network infrastructure (VNet, NSG, Public IP)
  • Managed Identity for secure access

Total Time: 15-20 minutes from start to fully functional application

Before You Begin

Ensure you have:

  • Active Azure subscription
  • Azure OpenAI Service access approved
  • Selected target region that supports all services
  • Contributor permissions on subscription or resource group
  • Budget approved (~$72-$295/month depending on plan)

See Prerequisites for detailed requirements.

Step-by-Step Deployment

Step 1: Access Azure Marketplace

Option A: Direct Link

  1. Visit Azure Marketplace
  2. Search for "Alactic AGI"
  3. Click the offering card

Option B: Azure Portal

  1. Sign in to portal.azure.com
  2. Click "+ Create a resource"
  3. Type "Alactic AGI" in search
  4. Select from results

Step 2: Review Offering Details

Before clicking "Create," review:

  • Plan options and pricing
  • Publisher information (Alactic Inc.)
  • Support contact details
  • Terms of use and privacy policy

Click "Create" to begin configuration.

Step 3: Configure Basics

Subscription Selection

Subscription: [Select your subscription]

Choose the subscription where Azure OpenAI is approved.

Resource Group

Resource group: [Create new] alactic-agi-prod

Best Practice: Use dedicated resource group for easier management and cost tracking.

Region Selection

Region: East US

Recommended Regions:

  • East US: Best overall availability
  • West Europe: European data residency
  • UK South: UK data residency
  • Australia East: APAC deployments

See Regional Availability Guide for complete list.

Plan Selection

Plan: [Free / Pro / Pro+ / Enterprise]
PlanURL LimitPDF LimitModel AccessMonthly Cost
Free5020GPT-4o mini~$72 + tokens
Pro200100GPT-4o + mini~$147 + tokens
Pro+1,000500GPT-4o + mini~$295 + tokens
EnterpriseUnlimitedUnlimitedAll modelsCustom

Application Name Prefix

Name prefix: alactic-prod

Used to name all resources (e.g., alactic-prod-vm, alactic-prod-cosmos).

SSH Authentication

Option 1: Generate New Key Pair (Recommended)

Key pair name: alactic-agi-ssh-key

Private key will be downloaded automatically after deployment.

Option 2: Use Existing SSH Public Key Paste your existing public key:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC... user@host

Step 4: Configure Model Deployments

OpenAI Chat Model Deployment Name

Chat model name: alactic-chat

This will be created automatically in Azure OpenAI Service.

Recommended Names:

  • alactic-gpt4o (Pro+ / Enterprise)
  • alactic-gpt4o-mini (Free / Pro)
  • alactic-chat (generic)

OpenAI Embedding Model Deployment Name

Embedding model name: alactic-embedding

Used for vector search functionality.

Model Version Selection

  • GPT-4o: gpt-4o (latest)
  • GPT-4o mini: gpt-4o-mini (latest)
  • Embedding: text-embedding-3-large

Models are deployed with auto-update enabled by default.

Step 5: Configure Networking (Optional)

Virtual Network

Create new VNet: Yes
Address space: 10.0.0.0/16
Subnet: 10.0.0.0/24

Public IP Configuration

Type: Static
SKU: Standard
DNS name: alactic-prod-eastus

Network Security Group Rules Automatically configured:

  • Port 3000: HTTP (web interface)
  • Port 22: SSH (management)

Advanced Networking (Enterprise Only)

  • Private endpoints
  • VPN connectivity
  • ExpressRoute integration
  • Custom DNS

Step 6: Configure Tags (Optional)

Add tags for organization:

Environment: Production
Department: IT
CostCenter: CC-12345
Owner: admin@company.com

Recommended Tags:

  • Environment: Production/Staging/Development
  • Application: Alactic-AGI
  • ManagedBy: Terraform/Manual/Marketplace
  • CostCenter: Your cost center code

Step 7: Review + Create

Review Configuration Summary:

  1. Subscription and resource group
  2. Region and plan selection
  3. Resource names and tags
  4. Estimated monthly cost
  5. Terms and conditions

Cost Estimation Example (Pro Plan):

Virtual Machine (D2s_v3):     $140.00/month
Cosmos DB (Serverless): $5.00/month
Storage (5GB): $2.00/month
Public IP: $4.00/month
Azure OpenAI (variable): Estimated $20-50/month
----------------------------------------------
Total Estimated: $171-197/month

Accept Terms

  • I agree to the terms and conditions
  • I understand the pricing

Click "Create"

If you generated a new SSH key, download it immediately - you cannot retrieve it later.

Monitoring Deployment Progress

Deployment Timeline

Minute 0-2: Resource Creation

  • Resource group created
  • Managed identity created
  • Key Vault created

Minute 2-5: Data Services

  • Cosmos DB account provisioned
  • Storage account created
  • Azure OpenAI service deployed

Minute 5-8: Networking

  • Virtual network created
  • Network security group configured
  • Public IP address assigned

Minute 8-12: Compute

  • Virtual machine provisioned
  • OS disk attached
  • Managed identity assigned

Minute 12-20: Software Installation

  • Custom script extension runs
  • Python 3.11 installed
  • Node.js 18 installed
  • Application downloaded and configured
  • Services started

Viewing Progress

Azure Portal:

  1. Go to "Deployments" in your resource group
  2. Click on the deployment in progress
  3. View "Deployment details" tab
  4. See individual resource status

Status Indicators:

  • Creating: Resource provisioning in progress
  • Succeeded: Resource created successfully
  • Failed: Error occurred (see error details)

Common Progress Delays

Azure OpenAI Provisioning (3-5 minutes) Creating model deployments takes additional time. This is normal.

VM Extension (8-15 minutes) Software installation via custom script extension is the longest step.

Cosmos DB Initialization (2-3 minutes) Serverless Cosmos DB initialization can be slow on first deployment.

Post-Deployment Steps

Step 1: Retrieve Deployment Outputs

  1. Go to "Deployments" in resource group
  2. Click completed deployment
  3. Click "Outputs" tab
  4. Copy these values:

applicationURL

http://alactic-prod-vm.eastus.cloudapp.azure.com:3000

deploymentAccessKey

ak-7f8e9d0c1b2a3f4e5d6c7b8a9f0e1d2c3b4a5f6e

sshCommand

ssh -i /path/to/key.pem alacticadmin@alactic-prod-vm.eastus.cloudapp.azure.com

Step 2: Access Application

  1. Open applicationURL in browser
  2. Enter deploymentAccessKey at access gate
  3. Click "Verify Access"
  4. You're logged in!

Step 3: Verify Services

SSH into VM and check service status:

ssh -i your-key.pem alacticadmin@your-vm-fqdn

# Check all services
sudo systemctl status alactic-backend
sudo systemctl status alactic-frontend
sudo systemctl status nginx

# All should show "active (running)"

Step 4: Test Functionality

Upload a Test PDF:

  1. Click "Upload PDF"
  2. Select a document
  3. Click "Extract Content"
  4. Verify results

Process a Test URL:

  1. Click "Process URLs"
  2. Enter: https://en.wikipedia.org/wiki/Artificial_intelligence
  3. Click "Process"
  4. Verify extraction

Troubleshooting Marketplace Deployment

Deployment Fails at Resource Creation

Error: QuotaExceeded

Code: QuotaExceeded
Message: Operation could not be completed as it results in exceeding approved quota

Solution:

  1. Check VM quota in subscription
  2. Request quota increase
  3. Or choose different VM size
  4. Or deploy to different region

Error: ResourceNotFound - Azure OpenAI

Code: ResourceNotFound
Message: The subscription does not have access to Azure OpenAI Service

Solution:

  1. Verify Azure OpenAI access is approved
  2. Wait 24-48 hours after approval
  3. Or apply for access at aka.ms/oai/access

Deployment Succeeds but Application Not Accessible

Symptom: Cannot reach application URL

Checklist:

  1. Wait 20 minutes for full installation
  2. Verify NSG allows port 3000
  3. Check VM is running
  4. SSH and check service status
  5. Review logs: sudo journalctl -u alactic-backend

Custom Script Extension Fails

Symptom: Deployment completes but services not running

Check Extension Status:

az vm extension list \
--resource-group your-rg \
--vm-name your-vm \
--output table

View Extension Logs:

ssh -i key.pem alacticadmin@vm
cat /var/log/azure/custom-script/handler.log

Common Causes:

  • Package repository unavailable
  • Insufficient disk space
  • Network connectivity issues
  • Invalid deployment script URL

Solution: Re-run extension manually:

az vm extension set \
--resource-group your-rg \
--vm-name your-vm \
--name CustomScript \
--publisher Microsoft.Azure.Extensions \
--settings '{"fileUris":["script-url"]}'

Model Deployment Not Found

Symptom: "Model deployment not found" error

Verify Models:

  1. Go to Azure OpenAI resource in portal
  2. Click "Model deployments"
  3. Verify models exist with correct names

If Missing: Create manually:

az cognitiveservices account deployment create \
--resource-group your-rg \
--name your-openai-account \
--deployment-name alactic-chat \
--model-name gpt-4o \
--model-version "latest" \
--sku-capacity 10 \
--sku-name "Standard"

Deployment Validation Checklist

After deployment, verify:

Azure Resources

  • Resource group contains all expected resources
  • All resources show "Succeeded" status
  • No deployment errors in activity log
  • Tags applied correctly

Networking

  • Public IP is static and assigned
  • DNS name resolves correctly
  • NSG rules allow ports 3000 and 22
  • VM can reach internet

Services

  • alactic-backend is active and running
  • alactic-frontend is active and running
  • nginx is active and running
  • No errors in service logs

Application

  • Application URL is accessible
  • Access key authentication works
  • Settings page shows correct plan
  • Can upload and process test PDF
  • Can scrape and process test URL

Azure OpenAI

  • Chat model deployment exists
  • Embedding model deployment exists
  • Models are active and ready
  • Test API call succeeds

Cosmos DB

  • Database created (alactic_v3)
  • Container created (extracted_content)
  • Connection from VM works
  • Can write test document

Post-Deployment Configuration

Set Up Monitoring

Enable Azure Monitor:

az monitor diagnostic-settings create \
--name alactic-diagnostics \
--resource /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Compute/virtualMachines/{vm} \
--logs '[{"category":"AuditLogs","enabled":true}]' \
--metrics '[{"category":"AllMetrics","enabled":true}]' \
--workspace /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.OperationalInsights/workspaces/{workspace}

Configure Cost Alerts

  1. Go to "Cost Management + Billing"
  2. Create budget for resource group
  3. Set threshold alerts (80%, 100%)
  4. Add email recipients

Set Up Backup (Optional)

VM Backup:

az backup protection enable-for-vm \
--resource-group your-rg \
--vault-name your-backup-vault \
--vm your-vm \
--policy-name DefaultPolicy

Cosmos DB Backup: Automatic continuous backups are enabled by default (7 days retention).

Next Steps