Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Implementeer Azure SRE Agent programmatisch met behulp van sjablonen uit de opslagplaats microsoft/sre-agent.
Tip
- Vier implementatie-back-ends: Bicep, Terraform, PowerShell en Azure Developer CLI
- Vooraf gedefinieerde sjablonen voor veelvoorkomende scenario's (Azure Monitor, PagerDuty, Dynatrace)
-
Eén opdracht om van nul naar een actieve agent te gaan:
./bin/deploy.sh my-agent/ - Dag-2-bewerkingen: agents exporteren, klonen, diffen en verifiëren met behulp van dezelfde CLI-hulpprogramma's
Overview
De opslagplaats microsoft/sre-agent biedt IaC-sjablonen die gereed zijn voor productie voor het implementeren van Azure SRE-agent. Gebruik deze sjablonen om:
- Implementaties automatiseren in CI/CD-pijplijnen
- Configuratie van agent voor versiebeheer in Git
- Agents repliceren tussen omgevingen (van dev naar staging naar prod)
- Setup standaardiseren met behulp van vooraf gedefinieerde recepten
Prerequisites
| Tool | Vereist voor | Install |
|---|---|---|
| Azure CLI 2.x+ | Alle backends | Installeren |
| jq | Alle backends |
brew install jq of apt install jq |
| Terraform 1.5+ | Alleen Terraform | Installeren |
| PowerShell 7+ | Alleen PowerShell | Installeren |
| Azure Developer CLI (Command Line Interface voor ontwikkelaars in Azure) | alleen azd | Installeren |
Azure machtigingen: Eigenaar van het abonnement of Inzender + Beheerder voor gebruikerstoegang.
Vereisten controleren:
git clone https://github.com/microsoft/sre-agent.git
cd sre-agent/sreagent-templates
bash bin/check-prerequisites.sh
Snel starten
# 1. Generate config from a recipe
./bin/new-agent.sh --recipe azmon-lawappinsights --non-interactive \
--set agentName=my-agent \
--set resourceGroup=rg-my-agent \
--set location=eastus2 \
--set targetRGs=rg-my-workload \
-o my-agent/
# 2. Deploy (~3 minutes)
./bin/deploy.sh my-agent/
Na de implementatie drukt de CLI de portal-URL en het eindpunt van het gegevensvlak af:
Agent (portal): https://sre.azure.com/#/agent/{sub}/{rg}/my-agent
Data plane: https://my-agent.eastus2.azuresre.ai
Een bestaande agent klonen
./bin/clone-agent.sh \
--from-agent prod-agent --from-rg rg-prod \
--set agentName=staging-agent --set resourceGroup=rg-staging \
-o staging-agent/
Hiermee exporteert u de configuratie van de bronagent en implementeert u deze naar een nieuwe naam en resourcegroep. Dit is nuttig om in verschillende omgevingen te repliceren.
Recepten
Vooraf gedefinieerde uitgangspunten voor veelvoorkomende scenario's zoals Azure Monitor waarschuwingsreactie, PagerDuty-incidentbeheer en Dynatrace-integratie. Microsoft voegt regelmatig nieuwe recepten toe.
Blader door beschikbare recepten in de opslagplaats met sjablonen.
# List available recipes
ls recipes/
# Generate config from a recipe
./bin/new-agent.sh --recipe azmon-lawappinsights \
--set agentName=prod-agent \
--set resourceGroup=rg-prod-agent \
--set location=swedencentral \
-o prod-agent/
Back-ends implementeren
De sjablonen ondersteunen vier implementatieback-ends. Elke map gebruikt dezelfde configuratiemap: kies de map die bij uw omgeving past:
| Backend | Command | Gebruik wanneer |
|---|---|---|
| Bicep | ./bin/deploy.sh my-agent/ |
Standaard : gebruikt az deployment sub create |
| Terraform | ./bin/deploy-tf.sh my-agent/ |
Door Terraform beheerde infrastructuur |
| PowerShell | .\bin\ps\Deploy-Agent.ps1 -InputPath .\my-agent\ |
Windows/PowerShell 7-omgevingen |
| AZURE Developer CLI | cd my-agent/ && azd up |
op azd gebaseerde werkstromen |
Alle backends ondersteunen --what-if / --dry-run voor validatie zonder uitrol. Zie de README van de repository voor een volledige naslag van opdrachten, opties en vereisten.
Structuur van de configmap
Wanneer u new-agent.sh uitvoert, wordt er een configuratiemap aangemaakt:
my-agent/
├── agent.json # Agent identity, model, settings
├── connectors.json # Data sources (App Insights, Log Analytics, MCP endpoints)
├── connectors.secrets.env # Secrets — auto-gitignored
├── roles.yaml # RBAC role assignments
├── config/
│ ├── skills/ # Skill instructions (YAML + markdown)
│ ├── subagents/ # Subagent definitions (YAML + markdown instructions)
│ ├── hooks/ # Safety guardrails (YAML)
│ ├── common-prompts/ # Shared prompt instructions
│ └── repos/ # Code repository connections
├── automations/
│ ├── scheduled-tasks/ # Recurring automated tasks
│ ├── incident-filters/ # Incident routing rules
│ └── incident-platforms/ # Incident platform connections
└── data/
├── knowledge/ # Upload docs, runbooks, reference material
└── synthesized-knowledge/ # Agent's learned context
Bewerk deze bestanden om uw agent aan te passen voordat u deze implementeert.
Wat wordt geïmplementeerd
Implementatie vindt plaats in twee fasen.
Fase 1: ARM (infrastructuur)
| Hulpbron | Purpose |
|---|---|
| Resourcegroep | Container voor alle bronnen |
| User-Assigned Beheerde Identiteit | De Azure-identiteit van de agent |
| Log Analytics-werkruimte | Logboekregistratie en diagnostische gegevens |
| Application Insights | Telemetrie |
SRE-agent (Microsoft.App/agents) |
De agent zelf |
| RBAC-roltoewijzingen | Lezer, Bewakingslezer, Log Analytics Reader, SRE-agentbeheerder |
| Connectoren, vaardigheden, subagenten, hulpmiddelen | Agentconfiguratie via ARM-subbronnen |
Fase 2: Gegevensvlak (configuratie die ARM nog niet kan verwerken)
| Hulpbron | Reden voor data plane |
|---|---|
| Codeopslagplaatsen | Git-verificatie vereisen (PAT/OAuth) |
| Haken | Nog niet weergegeven als ARM-subbronnen tijdens de implementatie |
| HTTP-triggers | Gegenereerde serverzijde met unieke URL's |
| Kennisbestanden | Binair bestand uploaden |
| Invoegtoepassingsconfiguraties | Api voor alleen gegevensvlak |
Note
Het script apply-extras.sh verwerkt fase 2 automatisch nadat de Bicep/Terraform-implementatie is voltooid. Als het token voor het gegevensvlak niet beschikbaar is (bijvoorbeeld in een beperkte CI/CD-omgeving), wordt afgedrukt wat is overgeslagen, zodat u het kunt voltooien vanaf een computer met toegang.
Sleutelparameters
Wanneer u een configuratie genereert met behulp van new-agent.sh --set, voert u waarden zoals agentName, resourceGroup, locationen targetRGs. Het proces vertaalt deze waarden in implementatieparameters voor Bicep of Terraform.
Zie de README van de repository voor de volledige lijst met parameters, featuretoggles en hun standaardwaarden.
Dag 2-activiteiten
De sjablonen bevatten scripts voor doorlopend beheer:
| Operatie | Wat het doet |
|---|---|
| Export | Een configuratiemap maken van een actieve agent, handig voor back-up of migratie |
| Kloon | Een bronagent exporteren en implementeren in een nieuwe naam en resourcegroep |
| Diff | Uw lokale configuratie vergelijken met de liveagent |
| Verify | Voer een 22-puntencontrole uit bij de live agent (connectors, vaardigheden, subagenten, hooks) |
Zie de README-opslagplaats voor opdrachten en gebruik.