docs(devops): add comprehensive Azure resource inventory
Added AZURE_RESOURCE_INVENTORY.md with complete Azure infrastructure documentation: - Subscription details and resource groups - Full resource tree with all 13 Azure resources - Cosmos DB databases (mindlyst, lysnrai, mywisprai) with all containers - Storage, Key Vault, OpenAI, Speech Services, Notification Hubs - Environment variables and resource IDs - Geographic distribution and cost optimization notes - Azure CLI quick commands Co-Authored-By: Warp <agent@warp.dev>
This commit is contained in:
parent
dcf6914419
commit
598a84513a
342
docs/devops/AZURE_RESOURCE_INVENTORY.md
Normal file
342
docs/devops/AZURE_RESOURCE_INVENTORY.md
Normal file
@ -0,0 +1,342 @@
|
||||
# Azure Resource Inventory
|
||||
|
||||
> **Last Updated:** 2026-02-15
|
||||
> **Purpose:** Complete inventory of Azure resources for ByteLyst AI products
|
||||
|
||||
---
|
||||
|
||||
## 📋 Subscription Details
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Subscription Name** | Azure subscription 1 |
|
||||
| **Subscription ID** | `0e0ceaea-2677-4097-9401-1102707db826` |
|
||||
| **Tenant** | eScube |
|
||||
| **Tenant Domain** | saravanakumardblive.onmicrosoft.com |
|
||||
| **Tenant ID** | `ab33246e-c9c9-4cb9-9a87-3616bb4920f0` |
|
||||
| **Account** | saravanakumardb@live.com |
|
||||
| **Environment** | AzureCloud |
|
||||
| **State** | Enabled |
|
||||
|
||||
---
|
||||
|
||||
## 🗂️ Resource Groups
|
||||
|
||||
| Resource Group | Location | Status | Managed By | Type |
|
||||
|---------------|----------|---------|------------|------|
|
||||
| **rg-mywisprai** | East US | Succeeded | - | Primary resource group |
|
||||
| **ai_bytelyst-appinsights_533a81a0-d1e6-4b01-935a-67dd49a218da_managed** | East US | Succeeded | Application Insights | Auto-managed |
|
||||
|
||||
---
|
||||
|
||||
## 📊 Complete Resource Tree
|
||||
|
||||
### Subscription: Azure subscription 1 (`0e0ceaea-2677-4097-9401-1102707db826`)
|
||||
|
||||
#### Resource Group: `rg-mywisprai` (East US)
|
||||
|
||||
##### 🗄️ **Cosmos DB** - Database Account
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | cosmos-mywisprai |
|
||||
| **Type** | Microsoft.DocumentDb/databaseAccounts |
|
||||
| **Location** | West US 2 |
|
||||
| **Kind** | GlobalDocumentDB (SQL API) |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-09 |
|
||||
| **Workload Type** | Development/Testing |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.DocumentDb/databaseAccounts/cosmos-mywisprai` |
|
||||
|
||||
**📦 Databases & Containers:**
|
||||
|
||||
| Database | Containers | Purpose |
|
||||
|----------|-----------|---------|
|
||||
| **mindlyst** | • streaks<br>• users<br>• brain_insights<br>• brain_templates<br>• daily_briefs<br>• memory_items<br>• notification_log<br>• brains<br>• actions<br>• entities<br>• share_cards<br>• reflections | MindLyst product data |
|
||||
| **lysnrai** | • subscriptions<br>• notification_prefs<br>• licenses<br>• tracker_votes<br>• feature_flags<br>• payments<br>• tracker_items<br>• audit_log<br>• invitation_codes<br>• devices<br>• usage_daily<br>• tracker_comments<br>• referrals<br>• plans<br>• users | LysnrAI product + platform services |
|
||||
| **mywisprai** | • licenses<br>• api_tokens<br>• transcripts<br>• audit_log<br>• subscriptions<br>• usage_daily<br>• users<br>• settings<br>• payments<br>• devices | MyWisprAI product data |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
COSMOS_ENDPOINT=https://cosmos-mywisprai.documents.azure.com:443/
|
||||
COSMOS_DATABASE=lysnrai # or mindlyst/mywisprai depending on product
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
##### 💾 **Storage Account** - Blob Storage
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | bytelystblobs |
|
||||
| **Type** | Microsoft.Storage/storageAccounts |
|
||||
| **Location** | West US 2 (Primary) |
|
||||
| **Secondary Location** | West Central US |
|
||||
| **Kind** | StorageV2 |
|
||||
| **SKU** | Standard_RAGRS (Geo-redundant) |
|
||||
| **Access Tier** | Cool |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-12 |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.Storage/storageAccounts/bytelystblobs` |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
AZURE_BLOB_ACCOUNT_NAME=bytelystblobs
|
||||
AZURE_BLOB_CONNECTION_STRING=<from-portal>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
##### 🔐 **Key Vault**
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | kv-mywisprai |
|
||||
| **Type** | Microsoft.KeyVault/vaults |
|
||||
| **Location** | East US |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-07 |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.KeyVault/vaults/kv-mywisprai` |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
AZURE_KEY_VAULT_URI=https://kv-mywisprai.vault.azure.net/
|
||||
```
|
||||
|
||||
**📝 Usage in Code:**
|
||||
- See: `packages/config/src/keyvault.ts`
|
||||
- See: `scripts/seed-keyvault.sh`
|
||||
|
||||
---
|
||||
|
||||
##### 🧠 **Azure OpenAI Service**
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | mywisprai-openai-sweden |
|
||||
| **Type** | Microsoft.CognitiveServices/accounts |
|
||||
| **Kind** | OpenAI |
|
||||
| **Location** | Sweden Central |
|
||||
| **SKU** | S0 (Standard) |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-07 |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.CognitiveServices/accounts/mywisprai-openai-sweden` |
|
||||
|
||||
**🚀 Model Deployments:**
|
||||
|
||||
| Deployment Name | Model | Version | Capacity |
|
||||
|----------------|-------|---------|----------|
|
||||
| gpt-4o-mini | gpt-4o-mini | 2024-07-18 | 1 TPM |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
AZURE_OPENAI_ENDPOINT=https://mywisprai-openai-sweden.openai.azure.com/
|
||||
AZURE_OPENAI_API_KEY=<from-keyvault-or-portal>
|
||||
AZURE_OPENAI_DEPLOYMENT_NAME=gpt-4o-mini
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
##### 🎤 **Speech Services**
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | mywisprai-speech |
|
||||
| **Type** | Microsoft.CognitiveServices/accounts |
|
||||
| **Kind** | SpeechServices |
|
||||
| **Location** | East US |
|
||||
| **SKU** | F0 (Free Tier) |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-07 |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.CognitiveServices/accounts/mywisprai-speech` |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
AZURE_SPEECH_KEY=<from-portal>
|
||||
AZURE_SPEECH_REGION=eastus
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
##### 🔔 **Notification Hubs** - Push Notification Service
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Namespace** | lysnnai |
|
||||
| **Type** | Microsoft.NotificationHubs/namespaces |
|
||||
| **Location** | East US |
|
||||
| **SKU** | Free |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-12 |
|
||||
| **Namespace ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.NotificationHubs/namespaces/lysnnai` |
|
||||
|
||||
**📱 Notification Hubs:**
|
||||
|
||||
| Hub Name | Purpose | Created |
|
||||
|----------|---------|---------|
|
||||
| **notificationhub** | General notifications | 2026-02-12 |
|
||||
| **mindlyst-hub** | MindLyst product notifications | 2026-02-13 |
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
AZURE_NH_CONNECTION_STRING=<from-portal>
|
||||
AZURE_NH_HUB_NAME=mindlyst-hub # or notificationhub
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
##### 📊 **Application Insights** - Monitoring & Telemetry
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Name** | bytelyst-appinsights |
|
||||
| **Type** | Microsoft.Insights/components |
|
||||
| **Kind** | web |
|
||||
| **Location** | East US |
|
||||
| **Status** | Succeeded |
|
||||
| **Created** | 2026-02-13 |
|
||||
| **Resource ID** | `/subscriptions/0e0ceaea-2677-4097-9401-1102707db826/resourceGroups/rg-mywisprai/providers/Microsoft.Insights/components/bytelyst-appinsights` |
|
||||
|
||||
**🔔 Action Groups:**
|
||||
- **Application Insights Smart Detection** (Global)
|
||||
|
||||
**🔑 Key Environment Variables:**
|
||||
```bash
|
||||
APPLICATIONINSIGHTS_CONNECTION_STRING=<from-portal>
|
||||
APPINSIGHTS_INSTRUMENTATIONKEY=<from-portal>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📦 Resource Summary by Type
|
||||
|
||||
| Resource Type | Count | Names |
|
||||
|--------------|-------|-------|
|
||||
| **Cosmos DB Accounts** | 1 | cosmos-mywisprai |
|
||||
| **Cosmos DB Databases** | 3 | mindlyst, lysnrai, mywisprai |
|
||||
| **Storage Accounts** | 1 | bytelystblobs |
|
||||
| **Key Vaults** | 1 | kv-mywisprai |
|
||||
| **Cognitive Services (OpenAI)** | 1 | mywisprai-openai-sweden |
|
||||
| **Cognitive Services (Speech)** | 1 | mywisprai-speech |
|
||||
| **Notification Hub Namespaces** | 1 | lysnnai |
|
||||
| **Notification Hubs** | 2 | notificationhub, mindlyst-hub |
|
||||
| **Application Insights** | 1 | bytelyst-appinsights |
|
||||
| **Action Groups** | 1 | Application Insights Smart Detection |
|
||||
|
||||
**Total Resources:** 13 (excluding auto-managed resource groups)
|
||||
|
||||
---
|
||||
|
||||
## 🔑 Critical Environment Variables Summary
|
||||
|
||||
### Required Across All Services:
|
||||
```bash
|
||||
# Cosmos DB
|
||||
COSMOS_ENDPOINT=https://cosmos-mywisprai.documents.azure.com:443/
|
||||
COSMOS_KEY=<from-portal>
|
||||
COSMOS_DATABASE=lysnrai # or mindlyst/mywisprai
|
||||
|
||||
# Key Vault
|
||||
AZURE_KEY_VAULT_URI=https://kv-mywisprai.vault.azure.net/
|
||||
|
||||
# Blob Storage
|
||||
AZURE_BLOB_ACCOUNT_NAME=bytelystblobs
|
||||
AZURE_BLOB_ACCOUNT_KEY=<from-portal>
|
||||
AZURE_BLOB_CONNECTION_STRING=<from-portal>
|
||||
|
||||
# OpenAI
|
||||
AZURE_OPENAI_ENDPOINT=https://mywisprai-openai-sweden.openai.azure.com/
|
||||
AZURE_OPENAI_API_KEY=<from-keyvault>
|
||||
AZURE_OPENAI_DEPLOYMENT_NAME=gpt-4o-mini
|
||||
|
||||
# Speech Services (LysnrAI)
|
||||
AZURE_SPEECH_KEY=<from-portal>
|
||||
AZURE_SPEECH_REGION=eastus
|
||||
|
||||
# Notification Hubs (Mobile apps)
|
||||
AZURE_NH_CONNECTION_STRING=<from-portal>
|
||||
AZURE_NH_HUB_NAME=mindlyst-hub
|
||||
|
||||
# Application Insights (Monitoring)
|
||||
APPLICATIONINSIGHTS_CONNECTION_STRING=<from-portal>
|
||||
APPINSIGHTS_INSTRUMENTATIONKEY=<from-portal>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📍 Geographic Distribution
|
||||
|
||||
| Region | Resources |
|
||||
|--------|-----------|
|
||||
| **East US** | Speech Services, Key Vault, Notification Hubs, Application Insights |
|
||||
| **West US 2** | Cosmos DB (primary), Blob Storage (primary) |
|
||||
| **Sweden Central** | Azure OpenAI |
|
||||
| **West Central US** | Blob Storage (secondary/geo-redundant) |
|
||||
| **Global** | Action Groups |
|
||||
|
||||
---
|
||||
|
||||
## 💰 Cost Optimization Notes
|
||||
|
||||
### Free Tier Resources:
|
||||
- ✅ Speech Services (F0)
|
||||
- ✅ Notification Hubs (Free)
|
||||
|
||||
### Paid Resources:
|
||||
- 💵 Cosmos DB (Development/Testing workload)
|
||||
- 💵 Blob Storage (Standard_RAGRS, Cool tier)
|
||||
- 💵 Azure OpenAI (S0 - pay per use)
|
||||
- 💵 Application Insights (pay per GB ingested)
|
||||
|
||||
### Recommendations:
|
||||
1. Monitor Cosmos DB RU consumption (Development/Testing mode has limits)
|
||||
2. Blob Storage is on Cool tier (good for infrequent access)
|
||||
3. Geo-redundant storage (RAGRS) adds cost but provides disaster recovery
|
||||
4. Consider moving to managed identities instead of connection strings
|
||||
|
||||
---
|
||||
|
||||
## 🔗 Related Documentation
|
||||
|
||||
| Document | Location |
|
||||
|----------|----------|
|
||||
| Azure Portal Setup | `docs/devops/AZURE_PORTAL_SETUP.md` |
|
||||
| Key Vault & Secrets Rotation | `docs/devops/AZURE_KEY_VAULT_AND_SECRETS_ROTATION.md` |
|
||||
| Cosmos DB Usage | `packages/cosmos/README.md` |
|
||||
| Blob Storage Usage | `packages/blob/README.md` |
|
||||
| Environment Variables Template | `.env.example` |
|
||||
| Key Vault Integration | `packages/config/src/keyvault.ts` |
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Commands
|
||||
|
||||
### List all resources:
|
||||
```bash
|
||||
az resource list --output table
|
||||
```
|
||||
|
||||
### Get Cosmos DB connection string:
|
||||
```bash
|
||||
az cosmosdb keys list --name cosmos-mywisprai --resource-group rg-mywisprai --type connection-strings
|
||||
```
|
||||
|
||||
### Get Storage Account keys:
|
||||
```bash
|
||||
az storage account keys list --account-name bytelystblobs --resource-group rg-mywisprai
|
||||
```
|
||||
|
||||
### Get Key Vault secrets:
|
||||
```bash
|
||||
az keyvault secret list --vault-name kv-mywisprai --output table
|
||||
```
|
||||
|
||||
### Get OpenAI endpoint and keys:
|
||||
```bash
|
||||
az cognitiveservices account show --name mywisprai-openai-sweden --resource-group rg-mywisprai
|
||||
az cognitiveservices account keys list --name mywisprai-openai-sweden --resource-group rg-mywisprai
|
||||
```
|
||||
|
||||
### List OpenAI deployments:
|
||||
```bash
|
||||
az cognitiveservices account deployment list --name mywisprai-openai-sweden --resource-group rg-mywisprai --output table
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Generated by:** Azure CLI automation
|
||||
**Maintained by:** ByteLyst DevOps Team
|
||||
**Update Frequency:** After any infrastructure changes
|
||||
Loading…
Reference in New Issue
Block a user