CommunityRédaction et éditiongithub.com

microsoft/azure-kusto-irql-graph

Applique les fonctions du graphe IRQL aux résultats de requêtes KQL ou IRQL pour une visualisation dans Kusto Explorer. Génère des mappings Lift_To_Graph et compose les appels Graph_Render_View, Graph_Fold_By_Property, Extract_Node_*, Enrich_Node_* et Enrich_Graph_*.

Qu'est-ce que azure-kusto-irql-graph ?

Cette compétence spécialisée transforme les résultats tabulaires de requêtes KQL ou IRQL en graphes visuels interactifs dans Kusto Explorer. Elle utilise la famille de fonctions 'IRQL graph' (Lift_To_Graph, Graph_Render_View, Graph_Fold_By_Property) pour créer, plier, extraire et enrichir des nœuds et arêtes à partir de n'importe quelle requête existante, sans nécessiter de modifications substantielles de la requête source. La compétence gère le mapping JSON complet (types de nœuds, arêtes, propriétés, icônes) et l'intégration avec les fonctions d'extraction et d'enrichissement déployées sur la base de données cible (ex: ValdyTimes, JoJosHospital). Elle n'est pas un traducteur généraliste langage-naturel-vers-KQL/IRQL : elle nécessite une requête fonctionnelle en entrée et se concentre uniquement sur la couche de visualisation graphe. Pour les opérateurs natifs de graphe (make-graph, graph-match, plus court chemin), il faut utiliser la compétence 'azure-kusto-graph' séparée.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/microsoft/agent-skills/tree/main/.github/plugins/azure-kusto-graph-skills/skills/azure-kusto-irql-graph

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Fonctions du Graphe IRQL — Des Résultats de Requête à la Visualisation

Applique la famille de fonctions du graphe IRQL à des résultats tabulaires. Étant donné une requête KQL ou IRQL et la description du graphe par l'utilisateur, génère un mapping Lift_To_Graph et compose uniquement les fonctions de graphe stockées nécessaires pour visualiser, plier, extraire ou enrichir le graphe dans Kusto Explorer. La requête source n'a pas besoin d'utiliser IRQL.

Portée et Aiguillage

RequêteUtilisation
Transformer des lignes KQL/IRQL fournies en un graphe visuel décoré d'icônesCette compétence : Lift_To_Graph + Graph_Render_View
Plier des nœuds ou appliquer Extract_Node_*, Enrich_Node_* ou Enrich_Graph_*Cette compétence
Utiliser make-graph, graph-match, les plus courts chemins, les composants connexes, les modèles de graphe ou les instantanésazure-kusto-graph
Rédiger une investigation KQL/IRQL non triviale à partir du langage naturelUne compétence de génération de requête Kusto ou IRQL, puis cette compétence

Si une requête mélange visualisation et analyse de graphe native, utilisez cette compétence pour la partie levée/rendu et azure-kusto-graph pour la sémantique des opérateurs. Ne remplacez pas les fonctions de levée de graphe par un graphe construit manuellement arêtes d'abord, sauf si l'utilisateur demande des opérateurs de graphe natifs.

Contrat d'Entrée

  • Entrée préférée : une requête KQL/IRQL fonctionnelle qui produit des résultats tabulaires, plus une description en langage naturel des nœuds, arêtes, étiquettes, icônes, extractions, enrichissements ou pliages souhaités.
  • Cette compétence n'est pas un convertisseur langage-naturel-vers-KQL ou NL-vers-IRQL. Elle transforme des résultats de requête existants en visualisations de graphe. Pour une conversion générale NL-vers-KQL ou NL-vers-IRQL, utilisez une compétence dédiée de génération de requête (disponible séparément).
  • Préservez les récupérations, jointures, filtres et agrégations de la requête fournie. Ajoutez uniquement les projections ou ID synthétiques requis par le mapping du graphe.
  • Une requête source basique en langage naturel n'est prise en charge que lorsqu'elle correspond directement à une table connue ou à un sélecteur IRQL Get_* avec des colonnes évidentes et des filtres simples. Indiquez la source supposée et n'inventez pas de jointures, de schéma ou de logique d'investigation.
  • Pour une construction de requête non triviale, utilisez d'abord une compétence séparée de génération de requête Kusto/IRQL, puis appliquez cette compétence à sa sortie.
  • Si aucune requête ou schéma de sortie n'est disponible et que la source n'est pas triviale, demandez la requête KQL ou ses colonnes de résultat avant de générer un mapping.

Déclencheurs d'Activation

Utilisez cette compétence lorsque l'utilisateur :

  • Fournit des résultats KQL/IRQL et demande une visualisation ou un mapping de graphe IRQL
  • Mentionne Lift_To_Graph, Graph_Render_View ou Graph_Fold_By_Property
  • Demande des mappings de nœuds/arêtes décorés d'icônes dans Kusto Explorer
  • Souhaite plier/contracter des nœuds par une propriété partagée
  • Demande une extraction ou un enrichissement de graphe via Extract_Node_*, Enrich_Node_* ou Enrich_Graph_*

N'activez pas cette compétence uniquement pour graph-match, les chemins/composants de graphe, les graphes persistants ou la construction générique make-graph ; ceux-ci relèvent de azure-kusto-graph.

N'est pas un convertisseur langage-naturel-vers-KQL/IRQL. L'entrée doit généralement être une requête KQL ou IRQL fonctionnelle dont les résultats ont besoin d'une visualisation en graphe. Les requêtes sources basiques en NL ne fonctionnent que pour les cas triviaux à table/sélecteur unique. Pour une conversion générale NL-vers-KQL ou NL-vers-IRQL, utilisez une compétence dédiée de génération de requête (disponible séparément).

Environnement

  • Cluster : https://kc7001.eastus.kusto.windows.net
  • Bases de données : ValdyTimes, JoJosHospital (fonctions de graphe pré-déployées)
  • Rendu : Application bureau Kusto Explorer (fenêtre de visualisation make-graph)
  • Outil : kusto_query (via Azure MCP Server)

Vérification Préalable des Fonctions

Lift_To_Graph et Graph_Render_View sont des fonctions stockées, pas des opérateurs Kusto intégrés. Avant de générer ou d'exécuter un pipeline de levée sur une base de données cible, vérifiez ce qui est déployé :

.show functions
| where Name in~ ("Lift_To_Graph", "Graph_Render_View", "Graph_Fold_By_Property")
| project Name
  • Lift_To_Graph et Graph_Render_View sont requis.
  • Graph_Fold_By_Property est requis uniquement lorsqu'un pliage est demandé.
  • Vérifiez toute fonction Extract_Node_*, Enrich_Node_* ou Enrich_Graph_* avant de l'utiliser ; omettez l'enrichissement optionnel lorsqu'il n'est pas disponible, sauf si l'utilisateur souhaite son déploiement.
  • Si une fonction requise est manquante et que vous avez l'autorisation de modifier la base de données, demandez la confirmation de l'utilisateur avant de la déployer. Utilisez ensuite les définitions .create-or-alter function dans references/DEPLOY_IRQL_FUNCTIONS.md. Exécutez le bloc .create-or-alter pertinent, puis relancez la vérification préalable pour confirmer.
  • Si vous n'avez pas les autorisations de modification, indiquez à l'utilisateur quelles fonctions manquent et orientez-le vers references/DEPLOY_IRQL_FUNCTIONS.md pour un déploiement manuel.

Famille de Fonctions du Graphe IRQL

Lift_To_Graph(T, mappingJson)

Transforme tout résultat tabulaire KQL en une table unifiée nœuds + arêtes.

Entrée : Toute table T + une chaîne JSON de mapping. Sortie : Lignes avec EntityType = "node" ou "edge", prêtes pour make-graph.

Graph_Render_View(T)

Prend la sortie de Lift_To_Graph, sépare les nœuds/arêtes et appelle make-graph pour ouvrir la fenêtre de graphe de Kusto Explorer.

Graph_Fold_By_Property(T, NodeType, PropertyName)

Contracte les nœuds d'un type donné partageant une valeur de propriété en un seul nœud. Reconnecte automatiquement les arêtes.

Fonctions d'Extraction et d'Enrichissement du Graphe

Ce sont des fonctions stockées supplémentaires qui doivent déjà être déployées sur la base de données cible. Elles ne sont pas incluses dans references/DEPLOY_IRQL_FUNCTIONS.md. Utilisez .show functions pour vérifier la disponibilité avant de les inclure dans un pipeline.

FonctionOpérationPropriété Clé
Extract_Node_Email_Sender_Domain(T, displayName)Ajoute Domain aux props du nœudEmailSender
Extract_Node_Employee_Firstname(T, displayName)Ajoute Firstname aux props du nœudName
Extract_Node_Event_Network_Domain(T, displayName)Ajoute DomainName aux props du nœudUrl
Enrich_Node_Ip_Employee(T, displayName)Ajoute des infos employé aux nœuds IPClientIp
Enrich_Node_Username_Employee(T, displayName)Ajoute des infos employé aux nœuds utilisateurUsername
Enrich_Node_Event_Authentication_Username(T, displayName)Ajoute le contexte d'authentificationUsername
Enrich_Node_Ip_Domain(T, displayName)Ajoute les domaines DNSClientIp
Enrich_Node_Ip_Event_NetworkOutbound(T, displayName)Ajoute les événements sortantsClientIp
Enrich_Graph_Ip_Employee(T, mappingJson)Étend le graphe avec des nœuds employéClientIp
Enrich_Graph_Username_Employee(T, mappingJson)Étend le graphe avec des nœuds employéUsername
Enrich_Graph_Event_Authentication_Username(T, mappingJson)Étend avec des nœuds d'authentificationUsername

Schéma du JSON de Mapping

Le JSON de mapping comporte deux tableaux : node_types et edges.

node_types[]

ChampRequisDescription
typeOuiÉtiquette du type de nœud (ex. "User", "Host", "IP")
idOuiPréfixe pour l'ID du nœud ; généralement identique au type
keyOuiNom de la colonne dont la valeur devient l'identité du nœud
propsOuiTableau des colonnes à transporter comme propriétés du nœud
defaultsNonObjet des valeurs de repli pour les propriétés nulles/vides
defIconNonURL de l'icône par défaut pour ce type de nœud
displayNameNonColonne à utiliser pour l'étiquette d'affichage (par défaut : id)
colorNonColonne dont provient la couleur
sizeNonColonne dont provient la taille

edges[]

ChampRequisDescription
typeOuiÉtiquette du type d'arête (ex. "AuthenticatesTo", "SentEmail")
sourceOui{"id": "<préfixe>", "type": "<TypeDeNoeud>"}
targetOui{"id": "<préfixe>", "type": "<TypeDeNoeud>"}
propsNonTableau des colonnes à transporter comme propriétés de l'arête
displayNameNonColonne pour l'étiquette de l'arête
colorNonColonne pour la couleur de l'arête

Répertoire d'Icônes

Utilisez les icônes de https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/ :

  • IP : Public-IP-Addresses-(Classic).svg
  • Hôte/VM : Virtual-Machine.svg
  • Utilisateur : Users.svg
  • Email : Mailbox.svg (ou azure-cds/command-1070-Mail.svg)
  • Processus : App-Services.svg
  • Fichier : Storage-Accounts.svg
  • Alerte : Activity-Log.svg
  • Domaine : DNS-Zones.svg

Règles de Génération du Mapping

Compte tenu des colonnes de la requête fournie et de la description du graphe par l'utilisateur, générez le JSON de mapping en :

  1. Identifier les entités -> chaque nom distinct devient un node_type
  2. Identifier les relations -> chaque verbe/préposition devient une edge
  3. Mapper aux colonnes -> utilisez les colonnes réelles produites par la requête fournie ; ne supposez jamais de colonnes indisponibles
  4. Définir la direction -> la source est l'acteur, la cible est l'élément subissant l'action
  5. Ajouter des propriétés -> incluez les colonnes pertinentes pour l'investigation (horodatages, résultats, hachages)
  6. Attribuer des icônes -> choisissez dans l'ensemble d'icônes ci-dessus en fonction du type d'entité

Référence des Colonnes (Schéma unifié IRQL)

EntitéColonne CléPropriétés Disponibles
UtilisateurUsernameUsername, Name, Role, Email
HôteHostnameHostname
IPClientIpClientIp
Message EmailSubjectEnvTime, Subject, Verdict, Url
ExpéditeurEmailSenderEmailSender, Domain
DestinataireEmailRecipientEmailRecipient
ProcessusProcessNameEnvTime, ProcessName, ProcessCommandLine, ProcessHash
FichierFilenameEnvTime, Filename, Path, Sha256
DomaineDomainNameDomainName
Événement Auth(ID synthétique)EnvTime, UserAgent, Result, Description

Sélection des Fonctions

  1. Commencez par le pipeline tabulaire KQL/IRQL fourni.
  2. Utilisez Lift_To_Graph(mapping) pour créer les entités du graphe.
  3. Ajoutez Extract_Node_*, Enrich_Node_* ou Enrich_Graph_* uniquement lorsqu'ils sont demandés et compatibles avec les clés mappées.
  4. Ajoutez Graph_Fold_By_Property() uniquement lorsqu'un regroupement/pli est demandé.
  5. Terminez la sortie visuelle par Graph_Render_View().
  6. Vérifiez au préalable les fonctions stockées exactes sélectionnées pour le pipeline.

Modèle de Pipeline

// 1. Préservez la requête KQL ou IRQL fournie
<requête d'entrée>
// 2. Levez vers le graphe
| invoke Lift_To_Graph(<mapping_json>)
// 3. Extrayez ou enrichissez optionnellement les entités du graphe
| invoke <Extract_Node_* | Enrich_Node_* | Enrich_Graph_*>()
// 4. Pliez optionnellement les nœuds si demandé
| invoke Graph_Fold_By_Property("<TypeDeNoeud>", "<NomDePropriété>")
// 5. Rendu
| invoke Graph_Render_View()

Exemples

Pour des prompts supplémentaires et des exemples détaillés, consultez references/EXAMPLES.md.

Graphe d'authentification : IP -> AuthEvent -> Utilisateur -> Hôte

Requête d'entrée : Get_Event_Authentication_All | where Result == "Failed Login" | take 200

Demande de graphe : "Afficher les IP, les événements d'authentification, les utilisateurs et les hôtes ; plier les événements par résultat."

let auth_mapping = '{"node_types":[{"type":"SrcIp","id":"SrcIp","key":"ClientIp","props":["ClientIp"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Public-IP-Addresses-(Classic).svg"},{"type":"Host","id":"Host","key":"Hostname","props":["Hostname"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Virtual-Machine.svg"},{"type":"User","id":"User","key":"Username","props":["Username"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Users.svg"},{"type":"AuthEvent","id":"AuthEvent","key":"AuthEventId","props":["AuthEventId","EnvTime","UserAgent","Result","Description"],"defaults":{"Result":"unknown"},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Activity-Log.svg"}],"edges":[{"type":"RequestsAuth","source":{"id":"SrcIp","type":"SrcIp"},"target":{"id":"AuthEvent","type":"AuthEvent"},"props":["EnvTime"]},{"type":"TargetsUser","source":{"id":"AuthEvent","type":"AuthEvent"},"target":{"id":"User","type":"User"},"props":["EnvTime"]},{"type":"AgainstHost","source":{"id":"AuthEvent","type":"AuthEvent"},"target":{"id":"Host","type":"Host"},"props":["EnvTime"]}]}';
Get_Event_Authentication_All
| extend AuthEventId = strcat(Username, "_", Hostname, "_", EnvTime)
| where Result == "Failed Login"
| take 200
| invoke Lift_To_Graph(auth_mapping)
| invoke Graph_Fold_By_Property("AuthEvent", "Result")
| invoke Graph_Render_View()

Graphe d'email : Expéditeur -> Message -> Destinataire

Requête d'entrée : Get_Email_All | take 400

Demande de graphe : "Visualiser le flux expéditeur-à-message-à-destinataire et plier les messages par verdict."

let mail_mapping = '{"node_types":[{"type":"EmailMessage","id":"Message","key":"Subject","props":["EnvTime","Subject","Verdict"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Media-File.svg"},{"type":"Sender","id":"Email","key":"EmailSender","props":["EmailSender"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-cds/command-1070-Mail.svg"},{"type":"Recipient","id":"Email","key":"EmailRecipient","props":["EmailRecipient"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-cds/command-1070-Mail.svg"}],"edges":[{"type":"SentBy","source":{"id":"Message","type":"EmailMessage"},"target":{"id":"Email","type":"Sender"},"props":["EnvTime","Verdict"]},{"type":"DeliveredTo","source":{"id":"Message","type":"EmailMessage"},"target":{"id":"Email","type":"Recipient"},"props":["EnvTime","Verdict"]}]}';
Get_Email_All
| take 400
| invoke Lift_To_Graph(mail_mapping)
| invoke Graph_Fold_By_Property("EmailMessage", "Verdict")
| invoke Graph_Render_View()

Investigation de domaine suspect (de bout en bout)

Requête source basique : "Utiliser les événements réseau sortants pour ces domaines suspects et grapher les connexions IP-à-domaine enrichies avec les noms d'employés."

C'est le cas de repli limité : un sélecteur connu, un extracteur et un filtre direct.

let suspicious_domain_mapping = '{"node_types":[{"type":"IP","id":"IP","key":"ClientIp","props":["ClientIp"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Public-IP-Addresses-(Classic).svg"},{"type":"Domain","id":"Domain","key":"DomainName","props":["DomainName","Url"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/DNS-Zones.svg"},{"type":"Employee","id":"Employee","key":"Name","props":["Name","Email"],"defaults":{},"defIcon":"https://raw.githubusercontent.com/benc-uk/icon-collection/master/azure-icons/Users.svg"}],"edges":[{"type":"ConnectsTo","source":{"id":"IP","type":"IP"},"target":{"id":"Domain","type":"Domain"},"props":["EnvTime"]},{"type":"HasEmployee","source":{"id":"IP","type":"IP"},"target":{"id":"Employee","type":"Employee"},"props":["EnvTime"]}]}';
let suspicious_domains = pack_array("malicious.com", "phishing.net");
Get_Event_Network_Outbound
| where DomainName in (suspicious_domains)
| invoke Lift_To_Graph(suspicious_domain_mapping)
| invoke Enrich_Graph_Ip_Employee(suspicious_domain_mapping)
| invoke Graph_Render_View()

Dépannage

SymptômeAction
Lift_To_Graph échoue avec "Function not found"Exécutez la vérification préalable ; si manquante, déployez via DEPLOY_IRQL_FUNCTIONS.md
Le rendu du graphe est videVérifiez que la requête d'entrée produit des lignes ; le mapping a-t-il des correspondances de colonnes ?
Les icônes ne s'affichent pasVérifiez que les URL sont accessibles et que les noms de fichiers d'icônes correspondent au répertoire
Le pli ne contracte rienConfirmez que Graph_Fold_By_Property est déployé et que le PropertyName existe dans les props du type de nœud
Les fonctions d'enrichissement ne sont pas trouvéesUtilisez .show functions pour lister les fonctions disponibles ; n'utilisez que celles qui existent

Individual skills in this repo

This repo contains 12 individual skills — each has its own dedicated page.

microsoft/azure-ai-agents-persistent-dotnet

Azure AI Agents Persistent SDK for .NET. Low-level SDK for creating and managing AI agents with threads, messages, runs, and tools. Use for agent CRUD, conversation threads, streaming responses, function calling, file search, and code interpreter. Triggers: "PersistentAgentsClient", "persistent agents", "agent threads", "agent runs", "streaming agents", "function calling agents .NET".

microsoft/azure-ai-document-intelligence-dotnet

Azure AI Document Intelligence SDK for .NET. Extract text, tables, and structured data from documents using prebuilt and custom models. Use for invoice processing, receipt extraction, ID document analysis, and custom document models. Triggers: "Document Intelligence", "DocumentIntelligenceClient", "form recognizer", "invoice extraction", "receipt OCR", "document analysis .NET".

microsoft/azure-ai-openai-dotnet

Azure OpenAI SDK for .NET. Client library for Azure OpenAI and OpenAI services. Use for chat completions, embeddings, image generation, audio transcription, and assistants. Triggers: "Azure OpenAI", "AzureOpenAIClient", "ChatClient", "chat completions .NET", "GPT-4", "embeddings", "DALL-E", "Whisper", "OpenAI .NET".

microsoft/azure-ai-projects-dotnet

Azure AI Projects SDK for .NET. High-level client for Azure AI Foundry projects including agents, connections, datasets, deployments, evaluations, and indexes. Use for AI Foundry project management, versioned agents, and orchestration. Triggers: "AI Projects", "AIProjectClient", "Foundry project", "versioned agents", "evaluations", "datasets", "connections", "deployments .NET".

microsoft/azure-ai-voicelive-dotnet

Azure AI Voice Live SDK for .NET. Build real-time voice AI applications with bidirectional WebSocket communication. Use for voice assistants, conversational AI, real-time speech-to-speech, and voice-enabled chatbots. Triggers: "voice live", "real-time voice", "VoiceLiveClient", "VoiceLiveSession", "voice assistant .NET", "bidirectional audio", "speech-to-speech".

microsoft/azure-eventgrid-dotnet

Azure Event Grid SDK for .NET. Client library for publishing and consuming events with Azure Event Grid. Use for event-driven architectures, pub/sub messaging, CloudEvents, and EventGridEvents. Triggers: "Event Grid", "EventGridPublisherClient", "CloudEvent", "EventGridEvent", "publish events .NET", "event-driven", "pub/sub".

microsoft/azure-eventhub-dotnet

Azure Event Hubs SDK for .NET. Use for high-throughput event streaming: sending events (EventHubProducerClient, EventHubBufferedProducerClient), receiving events (EventProcessorClient with checkpointing), partition management, and real-time data ingestion. Triggers: "Event Hubs", "event streaming", "EventHubProducerClient", "EventProcessorClient", "send events", "receive events", "checkpointing", "partition".

microsoft/azure-identity-dotnet

Azure Identity library for .NET. Authentication library for Azure SDK clients using Microsoft Entra ID. Use for DefaultAzureCredential, managed identity, service principals, and developer credentials. Triggers: "Azure Identity", "DefaultAzureCredential", "ManagedIdentityCredential", "ClientSecretCredential", "authentication .NET", "Azure auth", "credential chain".

microsoft/azure-kusto-graph

Build and query Kusto graphs from natural language. Covers transient graphs (make-graph), persistent graph models/snapshots, pattern matching (graph-match), shortest paths, connected components, and graph-to-table export. Generates the edges-first thinking: define edges, define node lookups, union, make-graph. WHEN: make-graph, graph-match, graph-shortest-paths, graph-to-table, graph-mark-components, persistent graph, graph model, graph snapshot, build a graph from data, find paths between nodes, pattern matching in graph, connected components, transient graph, Kusto graph, KQL graph.

microsoft/azure-kusto-irql

Compose IRQL (Incident Response Query Language) queries for Kusto cybersecurity investigations. Translates natural language hunting questions into composable IRQL pipelines using Get_*, Extract_*, and Enrich_* functions. WHEN: IRQL query, security hunt, threat hunting KQL, incident response query, compose hunting pipeline, failed logins, phishing investigation, lateral movement, process execution, file creation events.

microsoft/azure-local

Plan, deploy, operate, and troubleshoot Azure Local (formerly Azure Stack HCI): sizing and prerequisites, Arc registration, lifecycle updates, workloads (Azure Local VMs, AKS on Azure Local, images, disks, logical networks), SDN and network security, and failure triage — starting read-only and confirming before risky changes. WHEN: Azure Local, Azure Stack HCI, Arc resource bridge, custom location, Azure Local VM, Arc VM, AKS on Azure Local, AKS hybrid, SDN, Lifecycle Manager, Azure Local update, disconnected site.

microsoft/azure-local-multi-rack

Plan, deploy, operate, and troubleshoot multi-rack (rack scale) deployments of Azure Local — preintegrated racks scaling to hundreds of machines, built on Network Fabric Controller, Cluster Manager, SAN storage, and managed network fabric. Use for the Microsoft.NetworkCloud and Microsoft.ManagedNetworkFabric control plane. NOT for standard 1-16 node Azure Local, and NOT for rack-aware clusters (two racks as availability zones, up to 8 nodes, synchronous replication) — those are standard scale. WHEN: multi-rack, rack scale Azure Local, aggregation rack, compute rack, Network Fabric Controller, NFC, Cluster Manager, network fabric, isolation domain, az networkcloud, az networkfabric, multi-rack logical network, multi-rack Arc VM.

Skills associés