Skip to content

Commit 370fed7

Browse files
add AVM Post Deployment Guide with detailed setup instructions
1 parent eb6be87 commit 370fed7

1 file changed

Lines changed: 187 additions & 0 deletions

File tree

docs/AVMPostDeploymentGuide

Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
# AVM Post Deployment Guide
2+
3+
This document provides guidance on post-deployment steps after deploying the Document Knowledge Mining Solution Accelerator from the [AVM (Azure Verified Modules) repository](https://github.com/Azure/bicep-registry-modules/tree/main/avm/ptn/sa/document-knowledge-mining).
4+
5+
## Overview
6+
7+
After deploying the infrastructure using AVM, you'll need to complete the application layer setup, which includes:
8+
- Configuring Kubernetes infrastructure
9+
- Building and deploying container images
10+
- Setting up certificates and ingress controllers
11+
- Configuring application settings
12+
13+
## Prerequisites
14+
15+
Before starting the post-deployment process, ensure you have the following:
16+
17+
### Required Software
18+
19+
1. **[PowerShell](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell?view=powershell-7.4)** <small>(v7.0+ recommended, v5.1+ minimum)</small> - Available for Windows, macOS, and Linux
20+
21+
2. **[Azure CLI](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli)** <small>(v2.50+)</small> - Command-line tool for managing Azure resources
22+
23+
3. **kubectl** - Kubernetes command-line tool
24+
Install using Azure CLI:
25+
```powershell
26+
az aks install-cli
27+
```
28+
29+
4. **aks-preview extension** - Azure CLI extension for AKS preview features
30+
```powershell
31+
az extension add --name aks-preview
32+
```
33+
34+
5. **[Helm](https://helm.sh/docs/intro/install/)** <small>(v3.0+)</small> - Package manager for Kubernetes
35+
36+
6. **[Docker Desktop](https://docs.docker.com/get-docker/)** - Container platform for building and publishing images
37+
> ⚠️ **Important**: Ensure Docker Desktop is running before executing the deployment script
38+
39+
### Azure Requirements
40+
41+
7. **Azure Access** - One of the following roles on the subscription:
42+
- `Owner`
43+
- `User Access Administrator`
44+
45+
8. **Microsoft.Compute Registration** - Verify this resource provider is registered:
46+
1. Navigate to [Azure Portal](https://portal.azure.com)
47+
2. Go to your **Azure subscription**
48+
3. Select **Settings** → **Resource Providers**
49+
4. Search for **Microsoft.Compute** and ensure it's **Registered**
50+
51+
<img src="./images/deployment/Subscription_ResourceProvider.png" alt="Resource Provider Registration" width="900">
52+
53+
9. **Deployed Infrastructure** - A successful Document Knowledge Mining Accelerator deployment from the [AVM repository](https://github.com/Azure/bicep-registry-modules/tree/main/avm/ptn/sa/document-knowledge-mining)
54+
55+
## Post-Deployment Steps
56+
57+
### Step 1: Clone the Repository
58+
59+
First, clone this repository to access the post-deployment scripts:
60+
61+
```powershell
62+
git clone https://github.com/microsoft/Document-Knowledge-Mining-Solution-Accelerator.git
63+
```
64+
```powershell
65+
cd Document-Knowledge-Mining-Solution-Accelerator
66+
```
67+
68+
### Step 2: Run the Post-Deployment Script
69+
70+
The post-deployment process is automated through a single PowerShell script that completes the following tasks in approximately 20-30 minutes:
71+
72+
#### What the Script Does:
73+
1. **Configure Kubernetes Infrastructure** - Set up AKS cluster settings and networking
74+
2. **Update Configuration Files** - Generate FQDN, container image paths, and certificate settings
75+
3. **Deploy Kubernetes Components** - Install Cert Manager, Ingress Controller, and application pods
76+
4. **Build and Push Container Images** - Compile and publish application containers to Azure Container Registry
77+
5. **Provide Access Information** - Display the final application URL and next steps
78+
79+
#### Execute the Script:
80+
81+
1. Navigate to the deployment directory:
82+
```powershell
83+
cd .\Deployment\
84+
```
85+
86+
2. Run the post-deployment script with your resource group name:
87+
```powershell
88+
.\resourcedeployment.ps1 -ResourceGroupName "<your-resource-group-name>"
89+
```
90+
91+
> **Note**: Replace `<your-resource-group-name>` with the actual name of the resource group containing your AVM-deployed resources.
92+
93+
3. **If you encounter execution policy issues**, use this alternative command:
94+
```powershell
95+
powershell.exe -ExecutionPolicy Bypass -File ".\resourcedeployment.ps1" -ResourceGroupName "<your-resource-group-name>"
96+
```
97+
98+
### Step 3: Provide Required Information
99+
100+
During script execution, you'll be prompted for:
101+
102+
#### Email Address for SSL Certificates
103+
<img src="./images/deployment/Deployment_Input_Param_01.png" width="900" alt="Input Parameters">
104+
105+
- **Purpose**: Used for issuing SSL certificates through [Let's Encrypt](https://letsencrypt.org/)
106+
- **Requirement**: Must be a valid email address
107+
108+
#### Azure Authentication
109+
<img src="./images/deployment/Deployment_Login_02.png" width="900" alt="Azure Login">
110+
111+
- You'll be prompted to authenticate with Azure
112+
- Select the appropriate Azure account
113+
- Ensure you have the required permissions on the target subscription
114+
115+
### Step 4: Deployment Completion
116+
117+
Upon successful completion, you'll see a success message with important information:
118+
119+
<img src="./images/deployment/Deployment_Screen02.png" alt="Deployment Success" width="900">
120+
121+
**🎉 Congratulations!** Your deployment is complete.
122+
123+
**Important**: Save the application URL displayed in the console - you'll need it for data upload and accessing the application.
124+
125+
## Next Steps
126+
127+
### 1. Configure Azure OpenAI Rate Limits
128+
129+
> **⚠️ Critical**: The default deployment creates models with minimal TPM (Tokens Per Minute) limits. You **must** increase these limits for proper performance.
130+
131+
#### Recommended TPM Thresholds
132+
133+
| Model Name | Recommended TPM | Minimum TPM |
134+
|------------------------|----------------|-------------|
135+
| GPT-4o-mini | 100K TPM | 10K TPM |
136+
| text-embedding-3-large | 200K TPM | 50K TPM |
137+
138+
> **⚠️ Warning**: Insufficient quota will cause failures during document upload and processing. Ensure adequate capacity before proceeding.
139+
140+
#### How to Update TPM Limits:
141+
142+
1. **Navigate to Azure AI Foundry**:
143+
- Go to [Azure AI Foundry](https://ai.azure.com/)
144+
- Select your project
145+
- Go to **Deployments** section
146+
147+
2. **Update Each Model**:
148+
149+
<img src="./images/deployment/Control_Model_TPM000.png" alt="Select Model" width="700">
150+
151+
- Select each deployed model
152+
- Click **Edit deployment**
153+
- Increase the **Tokens per Minute Rate Limit**
154+
155+
<img src="./images/deployment/Control_Model_TPM001.png" alt="Set TPM Limit" width="700">
156+
157+
3. **Apply Changes**: Save the configuration for each model
158+
159+
### 2. Upload and Process Sample Documents
160+
161+
After configuring the TPM limits, upload sample documents:
162+
163+
1. **Navigate to the deployment directory** (if not already there):
164+
```powershell
165+
cd .\Deployment\
166+
```
167+
168+
2. **Execute the upload script** with the URL from the deployment output:
169+
```powershell
170+
.\uploadfiles.ps1 -EndpointUrl https://kmgs<your-dns-name>.<datacenter>.cloudapp.azure.com
171+
```
172+
173+
3. **Alternative execution** (if you encounter policy issues):
174+
```powershell
175+
powershell.exe -ExecutionPolicy Bypass -File ".\uploadfiles.ps1" -EndpointUrl https://kmgs<your-dns-name>.<datacenter>.cloudapp.azure.com
176+
```
177+
178+
### 3. Access Your Application
179+
180+
Once document upload is complete, you can:
181+
- **Access the web application** at the URL provided in the deployment output
182+
- **Start exploring** the knowledge mining capabilities
183+
- **Upload additional documents** through the web interface
184+
185+
---
186+
187+
> **📋 Note**: This guide is specifically for post-deployment steps after using the AVM template. For complete deployment from scratch, see the main [Deployment Guide](./DeploymentGuide.md).

0 commit comments

Comments
 (0)