Documentação da Infraestrutura Azure — Putz Studio & IA II
Documento de referência consolidado da arquitetura provisionada na assinatura da Microsoft Azure (Microsoft for Startups Founders Hub).
📌 Visão Geral da Conta & Assinatura
- Assinatura:
Azure Subs Aleśsio(ID:80282d30-7d5a-4770-b073-667279f91b69) - Tenant:
Diretório Padrão(ID:995149e0-bcfa-44de-8b19-374d9bb4cf46) - Conta de Administrador:
alessio@alessiojr.com - Grupo de Recursos Principal:
GrupoRecursos - Regiões Utilizadas:
Central US(Postgres, Storage, Key Vault) eEast US 2(App Service, Static Web App, Foundry)
🏗️ Catálogo de Serviços Ativos
| Serviço | Nome do Recurso | Tipo / SKU | Localização | Custo / Plano | Finalidade |
|---|---|---|---|---|---|
| Banco Relacional & Vetorial | putzpg |
PostgreSQL Flexible Server (Standard_B2s, 32GB) |
centralus |
Créditos Startups | Banco relacional com extensão pgvector (0.8.2) para RAG e TipTennis. |
| Cofre de Segredos | putz-kv |
Azure Key Vault (standard) |
centralus |
Praticamente R$ 0,00 | Guarda senhas, connection strings e chaves de API com controle RBAC. |
| Storage de Arquivos | putzalessio |
Azure Storage Account (Standard_LRS, StorageV2) |
centralus |
Centavos (~$0,02/mês) | Armazena PDFs, datasets do LeetCode, embeddings brutos e backups .sql. |
| Container de Blobs | rag-documentos |
Blob Container (dentro de putzalessio) |
centralus |
Incluso no Storage | Repositório de documentos para ingestão do pipeline RAG. |
| API Backend | putz-api-alessio |
Azure App Service (LinuxFree, Python 3.12) |
eastus2 |
100% Gratuito (F1) | API backend FastAPI/Flask para orquestrar RAG e inferências. |
| Plano App Service | putz-plan-free |
App Service Plan (F1 Free, Linux) |
eastus2 |
100% Gratuito | Hospedagem de computação gratuita (60 min CPU/dia). |
| Frontend Web | putz-web |
Azure Static Web Apps (Free) |
eastus2 |
100% Gratuito | Frontend web com CDN global, SSL automático e CI/CD. |
| IA & LLMs | AlessioFoundry |
Cognitive Services / Azure AI Foundry | eastus |
Pay-as-you-go | Acesso aos modelos de chat e embeddings (OpenAI/Foundry). |
| Observabilidade | Workspaces e App Insights | Log Analytics & Application Insights | eastus2 |
Free Tier (5GB/mês) | Métricas, logs de erros e telemetria de aplicações. |
🗄️ 1. Banco de Dados PostgreSQL (putzpg)
- Host:
putzpg.postgres.database.azure.com - Porta:
5432 - Versão: PostgreSQL 18.6
- SSL: Obrigatório (
sslmode=require) - Firewall: Regra
AllowAllIPsativa (0.0.0.0a255.255.255.255) para permitir conexões de qualquer máquina.
Contas e Bancos Criados:
A) Administrador do Servidor
- Usuário:
putzpg - Senha:
Senha@Magica - Banco Padrão:
postgres - URI:
postgresql://putzpg:Senha%40Magica@putzpg.postgres.database.azure.com:5432/postgres?sslmode=require
B) Aplicação TipTennis
- Usuário:
tiptennis - Senha:
Super@Senha - Banco Dedicado:
tiptennis(com ownership e permissões totais no schemapublic) - URI:
postgresql://tiptennis:Super%40Senha@putzpg.postgres.database.azure.com:5432/tiptennis?sslmode=require
Extensão Vetorial (pgvector):
A extensão vector está autorizada na Azure (azure.extensions = vector) e instalada nos bancos postgres e tiptennis.
-- Verificar versão ativa do pgvector:
SELECT extname, extversion FROM pg_extension WHERE extname = 'vector';
-- Resultado esperado: vector | 0.8.2🔐 2. Azure Key Vault (putz-kv)
- Vault URI:
https://putz-kv.vault.azure.net/ - Acesso pelo Navegador: Disponível exclusivamente pelo Portal Azure (pesquise por
putz-kv). - Segredos Gravados:
postgres-conn-string:postgresql://putzpg:Senha%40Magica@putzpg.postgres.database.azure.com:5432/postgres?sslmode=requiretiptennis-conn-string:postgresql://tiptennis:Super%40Senha@putzpg.postgres.database.azure.com:5432/tiptennis?sslmode=require
Ler Segredo via Azure CLI:
az keyvault secret show --vault-name putz-kv --name "postgres-conn-string" --query value -o tsvLer Segredo no Python:
from azure.identity import DefaultAzureCredential
from azure.keyvault.secrets import SecretClient
credential = DefaultAzureCredential()
client = SecretClient(vault_url="https://putz-kv.vault.azure.net/", credential=credential)
db_url = client.get_secret("postgres-conn-string").value📦 3. Azure Blob Storage (putzalessio)
- Storage Account:
putzalessio - Endpoint Primário (Blob):
https://putzalessio.blob.core.windows.net/ - Container RAG:
rag-documentos
Upload de Arquivo via Azure CLI:
az storage blob upload \
--account-name putzalessio \
--container-name rag-documentos \
--name "aula_07.pdf" \
--file "livros/aula_07.pdf" \
--auth-mode login🌐 4. Aplicações Web & Hospedagem
A) Frontend Web (Static Web App)
- Recurso:
putz-web - URL Pública: https://mango-water-044155c0f.6.azurestaticapps.net
- Plano: Free ($0,00/mês com SSL grátis).
- Para publicar: Conecte o repositório GitHub/GitLab ou faça deploy direto com a CLI
swa(Static Web Apps CLI).
B) Backend API (App Service)
- Recurso:
putz-api-alessio - URL Pública: https://putz-api-alessio.azurewebsites.net
- Runtime: Linux Python 3.12
- Plano: F1 Free ($0,00/mês).
💡 Conformidade com o Microsoft for Startups
Com esta configuração, sua conta possui 6 pilares da nuvem Microsoft ativos simultaneamente: 1. Dados: Azure PostgreSQL + pgvector 2. IA: Azure AI Foundry 3. Armazenamento: Azure Blob Storage 4. Segurança: Azure Key Vault 5. Backend: Azure App Service 6. Frontend: Azure Static Web Apps
Essa arquitetura atende às exigências de diversidade técnica do programa e prepara o terreno para a solicitação de novas rodadas de créditos da Microsoft.