Delen via


Problemen met bare-metalcomputers oplossen met behulp van de az networkcloud baremetalmachine run-data-extract opdracht

Er kunnen situaties zijn waarin een gebruiker problemen met een on-premises bare-metalcomputer moet onderzoeken en oplossen. Azure Operator Nexus biedt een voorgeschreven set opdrachten voor gegevensextract via az networkcloud baremetalmachine run-data-extract. Met deze opdrachten kunnen gebruikers diagnostische gegevens ophalen van een bare-metalcomputer.

De opdracht produceert een uitvoerbestand met de resultaten van het gegevensextract. De gegevens worden standaard verzonden naar het clusterbeheeropslagaccount. Er is ook een preview-methode waar gebruikers de clusterresource kunnen configureren met een opslagaccount en identiteit die toegang heeft tot het opslagaccount om de uitvoer te ontvangen.

Vereisten

  • In dit artikel wordt ervan uitgegaan dat de Azure-opdrachtregelinterface en de networkcloud opdrachtregelinterface-extensie zijn geïnstalleerd. Zie CLI-extensies installeren voor meer informatie.
  • De doel bare-metalmachine is ingeschakeld en klaar.
  • De syntaxis voor deze opdrachten is gebaseerd op de versie 0.3.0+ van de az networkcloud CLI.
  • Haal de naam van de beheerde clusterresourcegroep (cluster_MRG) op die u hebt gemaakt voor de clusterresource.

Opdrachtuitvoer verzenden naar een door de gebruiker opgegeven opslagaccount

Zie azure Operator Nexus Cluster-ondersteuning voor beheerde identiteiten en door de gebruiker geleverde resources

Voor toegang tot de uitvoer hebben gebruikers de juiste toegang nodig tot de opslagblob. Zie Een Azure-rol toewijzen voor toegang tot blobgegevens voor informatie over het toewijzen van rollen aan opslagaccounts.

De CommandOutputSettings van het cluster wissen

Als u het cluster wilt wijzigen van een door de gebruiker toegewezen identiteit in een door het systeem toegewezen identiteit, moet commandOutputSettings eerst worden gewist met behulp van de opdracht in de volgende sectie en vervolgens instellen met behulp van deze opdracht.

De CommandOutputSettings kunnen worden gewist en de uitvoer van run-data-extract terugsturen naar de opslag van de clusterbeheerder. Het wordt echter niet aanbevolen omdat het minder veilig is en de optie wordt verwijderd in een toekomstige release.

CommandOutputSettings moet echter worden gewist als u overschakelt van een door de gebruiker toegewezen identiteit naar een door het systeem toegewezen identiteit.

Gebruik deze opdracht om de CommandOutputSettings te wissen:

az rest --method patch \
  --url  "https://management.azure.com/subscriptions/<subscription>/resourceGroups/<cluster-resource-group>/providers/Microsoft.NetworkCloud/clusters/<cluster-name>?api-version=2024-08-01-preview" \
  --body '{"properties": {"commandOutputSettings":null}}'

AFGESCHAFTE METHODE: Toegang tot het opslagaccount van Clusterbeheer controleren

Belangrijk

Het Cluster Manager-opslagaccount is uiterlijk in april 2025 verwijderd. Als u deze methode momenteel gebruikt voor opdrachtuitvoer, kunt u overwegen om te converteren naar het gebruik van een door de gebruiker opgegeven opslagaccount.

Als u de opslagmethode Clusterbeheer gebruikt, controleert u of u toegang hebt tot het opslagaccount van Clusterbeheer:

  1. Navigeer vanuit Azure Portal naar het opslagaccount van Clusterbeheer.
  2. Selecteer in de details van het opslagaccount de optie Opslagbrowser in het navigatiemenu aan de linkerkant.
  3. Selecteer in de details van de opslagbrowser de optie Blob-containers.
  4. Als u een 403 This request is not authorized to perform this operation. tijdje toegang krijgt tot het opslagaccount, moeten de firewallinstellingen van het opslagaccount worden bijgewerkt om het openbare IP-adres op te nemen.
  5. Vraag toegang aan door een ondersteuningsticket te maken via Portal op de Cluster Manager-resource. Geef het openbare IP-adres op waarvoor toegang is vereist.

Een opdracht uitvoeren om gegevens uit te pakken

Met de opdracht voor het extraheren van gegevens worden een of meer vooraf gedefinieerde scripts uitgevoerd om gegevens uit een bare-metalcomputer te extraheren.

Waarschuwing

Microsoft biedt geen Operator Nexus API-aanroepen die verwachten dat gebruikersnaam en/of wachtwoord zonder opmaak moeten worden opgegeven. Let op: verzonden waarden worden geregistreerd en worden beschouwd als blootgestelde geheimen, die moeten worden gedraaid en ingetrokken. De gedocumenteerde methode van Microsoft voor het veilig gebruik van geheimen is om ze op te slaan in een Azure Key Vault. Als u specifieke vragen of problemen hebt, dient u een aanvraag in via Azure Portal.

De huidige lijst met ondersteunde opdrachten is

De syntaxis van de opdracht is:

az networkcloud baremetalmachine run-data-extract --name "<machine-name>"  \
  --resource-group "<cluster_MRG>" \
  --subscription "<subscription>" \
  --commands '[{"arguments":["<arg1>","<arg2>"],"command":"<command1>"}]'  \
  --limit-time-seconds "<timeout>"

Geef meerdere opdrachten op met json-indeling in --commands de optie. Elk command geeft opdracht en argumenten op. Geef voor een opdracht met meerdere argumenten een lijst op voor de arguments parameter. Zie Azure CLI Shorthand voor instructies over het bouwen van de --commands structuur.

Deze opdrachten kunnen lang worden uitgevoerd, zodat de aanbeveling moet worden ingesteld --limit-time-seconds op ten minste 600 seconden (10 minuten). De Debug optie of het uitvoeren van meerdere extracten kan langer duren dan 10 minuten.

In het antwoord wordt de bewerking asynchroon uitgevoerd en wordt een HTTP-statuscode van 202 geretourneerd. Zie de sectie Uitvoer weergeven voor meer informatie over het bijhouden van de voltooiing van de opdracht en het weergeven van het uitvoerbestand.

Gegevensverzameling hardwareondersteuning

In dit voorbeeld wordt de hardware-support-data-collection opdracht uitgevoerd en worden deze opgehaald SysInfo en TTYLog logboeken opgehaald van de Dell-server. Het script voert een racadm supportassist collect opdracht uit op de aangewezen bare-metalcomputer. Het resulterende tar.gz bestand bevat de uitvoer van het gezipte extract-opdrachtbestand in hardware-support-data-<timestamp>.zip.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "cluster_MRG" \
  --subscription "subscription" \
  --commands '[{"arguments":["SysInfo", "TTYLog"],"command":"hardware-support-data-collection"}]' \
  --limit-time-seconds 600

hardware-support-data-collection Uitvoer

====Action Command Output====
Executing hardware-support-data-collection command
Getting following hardware support logs: SysInfo,TTYLog
Job JID_814372800396 is running, waiting for it to complete ...
Job JID_814372800396 Completed.
---------------------------- JOB -------------------------
[Job ID=JID_814372800396]
Job Name=SupportAssist Collection
Status=Completed
Scheduled Start Time=[Not Applicable]
Expiration Time=[Not Applicable]
Actual Start Time=[Thu, 13 Apr 2023 20:54:40]
Actual Completion Time=[Thu, 13 Apr 2023 20:59:51]
Message=[SRV088: The SupportAssist Collection Operation is completed successfully.]
Percent Complete=[100]
----------------------------------------------------------
Deleting Job JID_814372800396
Collection successfully exported to /hostfs/tmp/runcommand/hardware-support-data-2023-04-13T21:00:01.zip

================================
Script execution result can be found in storage account:
https://cm2p9bctvhxnst.blob.core.windows.net/bmm-run-command-output/dd84df50-7b02-4d10-a2be-46782cbf4eef-action-bmmdataextcmd.tar.gz?se=2023-04-14T01%3A00%3A15Zandsig=ZJcsNoBzvOkUNL0IQ3XGtbJSaZxYqmtd%2BM6rmxDFqXE%3Dandsp=randspr=httpsandsr=bandst=2023-04-13T21%3A00%3A15Zandsv=2019-12-12

Voorbeeldlijst met verzamelde hardwareondersteuningsbestanden

Archive:  TSR20240227164024_FM56PK3.pl.zip
   creating: tsr/hardware/
   creating: tsr/hardware/spd/
   creating: tsr/hardware/sysinfo/
   creating: tsr/hardware/sysinfo/inventory/
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_CIM_BIOSAttribute.xml
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_CIM_Sensor.xml
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_DCIM_View.xml
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_DCIM_SoftwareIdentity.xml
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_CIM_Capabilities.xml
  inflating: tsr/hardware/sysinfo/inventory/sysinfo_CIM_StatisticalData.xml
   creating: tsr/hardware/sysinfo/lcfiles/
  inflating: tsr/hardware/sysinfo/lcfiles/lclog_0.xml.gz
  inflating: tsr/hardware/sysinfo/lcfiles/curr_lclog.xml
   creating: tsr/hardware/psu/
   creating: tsr/hardware/idracstateinfo/
  inflating: tsr/hardware/idracstateinfo/avc.log
 extracting: tsr/hardware/idracstateinfo/avc.log.persistent.1
[..snip..]

MDE-agentgegevens verzamelen

Gegevens worden verzameld met de mde-agent-information opdracht en opgemaakt als JSON naar /hostfs/tmp/runcommand/mde-agent-information.json. Het JSON-bestand bevindt zich in het zip-bestand voor het extraheren van gegevens in het opslagaccount. Het script voert een reeks mdatp opdrachten uit op de aangewezen bare-metalcomputer.

In dit voorbeeld wordt de mde-agent-information opdracht zonder argumenten uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "cluster_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"mde-agent-information"}]' \
  --limit-time-seconds 600

mde-agent-information Uitvoer

====Action Command Output====
Executing mde-agent-information command
MDE agent is running, proceeding with data extract
Getting MDE agent information for bareMetalMachine
Writing to /hostfs/tmp/runcommand

================================
Script execution result can be found in storage account:
 https://cmzhnh6bdsfsdwpbst.blob.core.windows.net/bmm-run-command-output/f5962f18-2228-450b-8cf7-cb8344fdss63b0-action-bmmdataextcmd.tar.gz?se=2023-07-26T19%3A07%3A22Z&sig=X9K3VoNWRFP78OKqFjvYoxubp65BbNTq%2BGnlHclI9Og%3D&sp=r&spr=https&sr=b&st=2023-07-26T15%3A07%3A22Z&sv=2019-12-12

Voorbeeld van JSON-object dat is verzameld

{
  "diagnosticInformation": {
      "realTimeProtectionStats": $real_time_protection_stats,
      "eventProviderStats": $event_provider_stats
      },
  "mdeDefinitions": $mde_definitions,
  "generalHealth": $general_health,
  "mdeConfiguration": $mde_config,
  "scanList": $scan_list,
  "threatInformation": {
      "list": $threat_info_list,
      "quarantineList": $threat_info_quarantine_list
    }
}

Diagnostische gegevens over MDE-ondersteuning verzamelen

Gegevens die van de mde-support-diagnostics opdracht worden verzameld, maken gebruik van het hulpprogramma MDE Client Analyzer om informatie uit mdatp opdrachten en relevante logboekbestanden te bundelen. Het opslagaccountbestand tgz bevat een bestand met de zip naam mde-support-diagnostics-<hostname>.zip. De zip moet samen met eventuele ondersteuningsaanvragen worden verzonden om ervoor te zorgen dat de ondersteunende teams de logboeken kunnen gebruiken voor probleemoplossing en analyse van hoofdoorzaak, indien nodig.

In dit voorbeeld wordt de mde-support-diagnostics opdracht zonder argumenten uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "cluster_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"mde-support-diagnostics"}]' \
  --limit-time-seconds 600

mde-support-diagnostics Uitvoer

====Action Command Output====
Executing mde-support-diagnostics command
[2024-01-23 16:07:37.588][INFO] XMDEClientAnalyzer Version: 1.3.2
[2024-01-23 16:07:38.367][INFO] Top Command output: [/tmp/top_output_2024_01_23_16_07_37mel0nue0.txt]
[2024-01-23 16:07:38.367][INFO] Top Command Summary: [/tmp/top_summary_2024_01_23_16_07_370zh7dkqn.txt]
[2024-01-23 16:07:38.367][INFO] Top Command Outliers: [/tmp/top_outlier_2024_01_23_16_07_37aypcfidh.txt]
[2024-01-23 16:07:38.368][INFO] [MDE Diagnostic]
[2024-01-23 16:07:38.368][INFO]   Collecting MDE Diagnostic
[2024-01-23 16:07:38.613][WARNING] mde is not running
[2024-01-23 16:07:41.343][INFO] [SLEEP] [3sec] waiting for agent to create diagnostic package
[2024-01-23 16:07:44.347][INFO] diagnostic package path: /var/opt/microsoft/mdatp/wdavdiag/5b1edef9-3b2a-45c1-a45d-9e7e4b6b869e.zip
[2024-01-23 16:07:44.347][INFO] Successfully created MDE diagnostic zip
[2024-01-23 16:07:44.348][INFO]   Adding mde_diagnostic.zip to report directory
[2024-01-23 16:07:44.348][INFO]   Collecting MDE Health
[...snip...]
================================
Script execution result can be found in storage account:
 https://cmmj627vvrzkst.blob.core.windows.net/bmm-run-command-output/7c5557b9-b6b6-a4a4-97ea-752c38918ded-action-bmmdataextcmd.tar.gz?se=2024-01-23T20%3A11%3A32Z&sig=9h20XlZO87J7fCr0S1234xcyu%2Fl%2BVuaDh1BE0J6Yfl8%3D&sp=r&spr=https&sr=b&st=2024-01-23T16%3A11%3A32Z&sv=2019-12-12

Nadat u het uitvoerresultaatbestand hebt gedownload, kunnen de ondersteuningsbestanden worden uitgepakt voor analyse.

Voorbeeld van een lijst met gegevens die worden verzameld door de MDE Client Analyzer

Archive:  mde-support-diagnostics-rack1compute02.zip
  inflating: mde_diagnostic.zip
  inflating: process_information.txt
  inflating: auditd_info.txt
  inflating: auditd_log_analysis.txt
  inflating: auditd_logs.zip
  inflating: ebpf_kernel_config.txt
  inflating: ebpf_enabled_func.txt
  inflating: ebpf_syscalls.zip
  inflating: ebpf_raw_syscalls.zip
  inflating: messagess.zip
  inflating: conflicting_processes_information.txt
[...snip...]

Status van hardwarepakket

Gegevens worden verzameld met de hardware-rollup-status opdracht en opgemaakt als JSON naar /hostfs/tmp/runcommand/rollupStatus.json. Het JSON-bestand bevindt zich in het zip-bestand voor het extraheren van gegevens in het opslagaccount. De verzamelde gegevens tonen de status van de computersubsystemen.

In dit voorbeeld wordt de hardware-rollup-status opdracht zonder argumenten uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "clusete_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"hardware-rollup-status"}]' \
  --limit-time-seconds 600

hardware-rollup-status Uitvoer

====Action Command Output====
Executing hardware-rollup-status command
Getting rollup status logs for b37dev03a1c002
Writing to /hostfs/tmp/runcommand

================================
Script execution result can be found in storage account:
https://cmkfjft8twwpst.blob.core.windows.net/bmm-run-command-output/20b217b5-ea38-4394-9db1-21a0d392eff0-action-bmmdataextcmd.tar.gz?se=2023-09-19T18%3A47%3A17Z&sig=ZJcsNoBzvOkUNL0IQ3XGtbJSaZxYqmtd%3D&sp=r&spr=https&sr=b&st=2023-09-19T14%3A47%3A17Z&sv=2019-12-12

Voorbeeld van JSON verzameld

{
	"@odata.context" : "/redfish/v1/$metadata#DellRollupStatusCollection.DellRollupStatusCollection",
	"@odata.id" : "/redfish/v1/Systems/System.Embedded.1/Oem/Dell/DellRollupStatus",
	"@odata.type" : "#DellRollupStatusCollection.DellRollupStatusCollection",
	"Description" : "A collection of DellRollupStatus resource",
	"Members" :
	[
		{
			"@odata.context" : "/redfish/v1/$metadata#DellRollupStatus.DellRollupStatus",
			"@odata.id" : "/redfish/v1/Systems/System.Embedded.1/Oem/Dell/DellRollupStatus/iDRAC.Embedded.1_0x23_SubSystem.1_0x23_Current",
			"@odata.type" : "#DellRollupStatus.v1_0_0.DellRollupStatus",
			"CollectionName" : "CurrentRollupStatus",
			"Description" : "Represents the subcomponent roll-up statuses.",
			"Id" : "iDRAC.Embedded.1_0x23_SubSystem.1_0x23_Current",
			"InstanceID" : "iDRAC.Embedded.1#SubSystem.1#Current",
			"Name" : "DellRollupStatus",
			"RollupStatus" : "Ok",
			"SubSystem" : "Current"
		},
		{
			"@odata.context" : "/redfish/v1/$metadata#DellRollupStatus.DellRollupStatus",
			"@odata.id" : "/redfish/v1/Systems/System.Embedded.1/Oem/Dell/DellRollupStatus/iDRAC.Embedded.1_0x23_SubSystem.1_0x23_Voltage",
			"@odata.type" : "#DellRollupStatus.v1_0_0.DellRollupStatus",
			"CollectionName" : "VoltageRollupStatus",
			"Description" : "Represents the subcomponent roll-up statuses.",
			"Id" : "iDRAC.Embedded.1_0x23_SubSystem.1_0x23_Voltage",
			"InstanceID" : "iDRAC.Embedded.1#SubSystem.1#Voltage",
			"Name" : "DellRollupStatus",
			"RollupStatus" : "Ok",
			"SubSystem" : "Voltage"
		},
[..snip..]

Cluster CVE-rapport genereren

Gegevens over beveiligingsproblemen worden verzameld met de cluster-cve-report opdracht en opgemaakt als JSON naar {year}-{month}-{day}-nexus-cluster-vulnerability-report.json. Het JSON-bestand bevindt zich in het zip-bestand voor het extraheren van gegevens in het opslagaccount. De verzamelde gegevens omvatten beveiligingsgegevens per containerinstallatiekopie in het cluster.

In dit voorbeeld wordt de cluster-cve-report opdracht zonder argumenten uitgevoerd.

Notitie

De doelcomputer moet een besturingsvlakknooppunt zijn of de actie wordt niet uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "cluster_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"cluster-cve-report"}]' \
  --limit-time-seconds 600

cluster-cve-report Uitvoer

====Action Command Output====
Nexus cluster vulnerability report saved.


================================
Script execution result can be found in storage account:
https://cmkfjft8twwpst.blob.core.windows.net/bmm-run-command-output/20b217b5-ea38-4394-9db1-21a0d392eff0-action-bmmdataextcmd.tar.gz?se=2023-09-19T18%3A47%3A17Z&sig=ZJcsNoBzvOkUNL0IQ3XGtbJSaZxYqmtd%3D&sp=r&spr=https&sr=b&st=2023-09-19T14%3A47%3A17Z&sv=2019-12-12

CVE-rapportschema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Vulnerability Report",
  "type": "object",
  "properties": {
    "metadata": {
      "type": "object",
      "properties": {
        "dateRetrieved": {
          "type": "string",
          "format": "date-time",
          "description": "The date and time when the data was retrieved."
        },
        "platform": {
          "type": "string",
          "description": "The name of the platform."
        },
        "resource": {
          "type": "string",
          "description": "The name of the resource."
        },
        "clusterId": {
          "type": "string",
          "description": "The resource ID of the cluster."
        },
        "runtimeVersion": {
          "type": "string",
          "description": "The version of the runtime."
        },
        "managementVersion": {
          "type": "string",
          "description": "The version of the management software."
        },
        "vulnerabilitySummary": {
          "type": "object",
          "properties": {
            "uniqueVulnerabilities": {
              "type": "object",
              "properties": {
                "critical": { "type": "integer" },
                "high": { "type": "integer" },
                "medium": { "type": "integer" },
                "low": { "type": "integer" },
                "unknown": { "type": "integer" }
              },
              "required": ["critical", "high", "medium", "low", "unknown"]
            },
            "totalVulnerabilities": {
              "type": "object",
              "properties": {
                "critical": { "type": "integer" },
                "high": { "type": "integer" },
                "medium": { "type": "integer" },
                "low": { "type": "integer" },
                "unknown": { "type": "integer" }
              },
              "required": ["critical", "high", "medium", "low", "unknown"]
            }
          },
          "required": ["uniqueVulnerabilities", "totalVulnerabilities"]
        }
      },
      "required": [
        "dateRetrieved",
        "platform",
        "resource",
        "clusterId",
        "runtimeVersion",
        "managementVersion",
        "vulnerabilitySummary"
      ]
    },
    "containers": {
      "type": "object",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "namespace": {
              "type": "array",
              "description": "The namespaces where the container image is in-use.",
              "items": { "type": "string" }
            },
            "digest": {
              "type": "string",
              "description": "The digest of the container image."
            },
            "observedCount": {
              "type": "integer",
              "description": "The number of times the container image has been observed."
            },
            "os": {
              "type": "object",
              "properties": {
                "family": {
                  "type": "string",
                  "description": "The family of the operating system."
                }
              },
              "required": ["family"]
            },
            "vulnerabilities": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "title": { "type": "string" },
                  "vulnerabilityID": { "type": "string" },
                  "fixedVersion": { "type": "string" },
                  "installedVersion": { "type": "string" },
                  "referenceLink": { "type": "string", "format": "uri" },
                  "publishedDate": { "type": "string", "format": "date-time" },
                  "dataSource": { "type": "string" },
                  "score": { "type": "number" },
                  "severity": { "type": "string" },
                  "severitySource": { "type": "string" },
                  "resource": { "type": "string" },
                  "target": { "type": "string" },
                  "packageType": { "type": "string" },
                  "exploitAvailable": { "type": "boolean" }
                },
                "required": [
                  "title",
                  "vulnerabilityID",
                  "fixedVersion",
                  "installedVersion",
                  "referenceLink",
                  "publishedDate",
                  "dataSource",
                  "score",
                  "severity",
                  "severitySource",
                  "resource",
                  "target",
                  "packageType",
                  "exploitAvailable"
                ]
              }
            }
          },
          "required": ["namespace", "digest", "os", "observedCount", "vulnerabilities"]
        }
      }
    }
  },
  "required": ["metadata", "containers"]
}

Details van CVE-gegevens

De CVE-gegevens worden elke 24 uur per containerinstallatiekopieën vernieuwd of wanneer er een wijziging is in de Kubernetes-resource die verwijst naar de installatiekopieën.

Helm-releases verzamelen

Helm-releasegegevens worden verzameld met de collect-helm-releases opdracht en opgemaakt als json naar {year}-{month}-{day}-helm-releases.json. Het JSON-bestand bevindt zich in het zip-bestand voor het extraheren van gegevens in het opslagaccount. De verzamelde gegevens bevatten alle helm-releasegegevens van het cluster, die bestaan uit de standaardgegevens die worden geretourneerd bij het uitvoeren van de opdracht helm list.

In dit voorbeeld wordt de collect-helm-releases opdracht zonder argumenten uitgevoerd.

Notitie

De doelcomputer moet een besturingsvlakknooppunt zijn of de actie wordt niet uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "cluster_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"collect-helm-releases"}]' \
  --limit-time-seconds 600

collect-helm-releases Uitvoer

====Action Command Output====
Helm releases report saved.


================================
Script execution result can be found in storage account:
https://cmcr5xp3mbn7st.blob.core.windows.net/bmm-run-command-output/a29dcbdb-5524-4172-8b55-88e0e5ec93ff-action-bmmdataextcmd.tar.gz?se=2024-10-30T02%3A09%3A54Z&sig=v6cjiIDBP9viEijs%2B%2BwJDrHIAbLEmuiVmCEEDHEi%2FEc%3D&sp=r&spr=https&sr=b&st=2024-10-29T22%3A09%3A54Z&sv=2023-11-03

Helm-releaseschema

{
  "$schema": "http://json-schema.org/schema#",
  "type": "object",
  "properties": {
    "metadata": {
      "type": "object",
      "properties": {
        "dateRetrieved": {
          "type": "string"
        },
        "platform": {
          "type": "string"
        },
        "resource": {
          "type": "string"
        },
        "clusterId": {
          "type": "string"
        },
        "runtimeVersion": {
          "type": "string"
        },
        "managementVersion": {
          "type": "string"
        }
      },
      "required": [
        "clusterId",
        "dateRetrieved",
        "managementVersion",
        "platform",
        "resource",
        "runtimeVersion"
      ]
    },
    "helmReleases": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "namespace": {
            "type": "string"
          },
          "revision": {
            "type": "string"
          },
          "updated": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "chart": {
            "type": "string"
          },
          "app_version": {
            "type": "string"
          }
        },
        "required": [
          "app_version",
          "chart",
          "name",
          "namespace",
          "revision",
          "status",
          "updated"
        ]
      }
    }
  },
  "required": [
    "helmReleases",
    "metadata"
  ]
}

Systemctl-statusuitvoer verzamelen

De servicestatus wordt verzameld met de platform-services-status opdracht. De uitvoer heeft de indeling tekst zonder opmaak en retourneert een overzicht van de status van de services op de host en de systemctl status voor elke gevonden service.

In dit voorbeeld wordt de platform-services-status opdracht zonder argumenten uitgevoerd.

az networkcloud baremetalmachine run-data-extract --name "bareMetalMachineName" \
  --resource-group "clusete_MRG" \
  --subscription "subscription" \
  --commands '[{"command":"platform-services-status"}]' \
  --limit-time-seconds 600
  --output-directory "/path/to/local/directory"

platform-services-status Uitvoer

====Action Command Output====
UNIT                                                                                          LOAD      ACTIVE   SUB     DESCRIPTION
aods-infra-vf-config.service                                                                  not-found inactive dead    aods-infra-vf-config.service
aods-pnic-config-infra.service                                                                not-found inactive dead    aods-pnic-config-infra.service
aods-pnic-config-workload.service                                                             not-found inactive dead    aods-pnic-config-workload.service
arc-unenroll-file-semaphore.service                                                           loaded    active   exited  Arc-unenrollment upon shutdown service
atop-rotate.service                                                                           loaded    inactive dead    Restart atop daemon to rotate logs
atop.service                                                                                  loaded    active   running Atop advanced performance monitor
atopacct.service                                                                              loaded    active   running Atop process accounting daemon
audit.service                                                                                 loaded    inactive dead    Audit service
auditd.service                                                                                loaded    active   running Security Auditing Service
azurelinux-sysinfo.service                                                                    loaded    inactive dead    Azure Linux Sysinfo Service
blk-availability.service                                                                      loaded    inactive dead    Availability of block devices
[..snip..]


-------
● arc-unenroll-file-semaphore.service - Arc-unenrollment upon shutdown service
     Loaded: loaded (/etc/systemd/system/arc-unenroll-file-semaphore.service; enabled; vendor preset: enabled)
     Active: active (exited) since Tue 2024-11-12 06:33:40 UTC; 11h ago
   Main PID: 11663 (code=exited, status=0/SUCCESS)
        CPU: 5ms

Nov 12 06:33:39 rack1compute01 systemd[1]: Starting Arc-unenrollment upon shutdown service...
Nov 12 06:33:40 rack1compute01 systemd[1]: Finished Arc-unenrollment upon shutdown service.


-------
○ atop-rotate.service - Restart atop daemon to rotate logs
     Loaded: loaded (/usr/lib/systemd/system/atop-rotate.service; static)
     Active: inactive (dead)
TriggeredBy: ● atop-rotate.timer
[..snip..]

De uitvoer weergeven

De opdracht biedt een koppeling (als u clusterbeheeropslag gebruikt) of een andere opdracht (als u door de gebruiker opgegeven opslag gebruikt) om de volledige uitvoer te downloaden. Het bestand tar.gz bevat ook de uitvoer van het gezipte extract-opdrachtbestand. Download het uitvoerbestand van de opslagblob naar een lokale map door het mappad op te geven in het optionele argument --output-directory.

Waarschuwing

Als u het --output-directory argument gebruikt, worden alle bestanden in de lokale map overschreven die dezelfde naam hebben als de nieuwe bestanden die worden gemaakt.

Notitie

Opslagaccount kan worden vergrendeld, wat resulteert in 403 This request is not authorized to perform this operation. netwerk- of firewallbeperkingen. Raadpleeg de clusterbeheeropslag of de door de gebruiker beheerde opslagsecties voor procedures voor het controleren van de toegang.