az networkcloud baremetalmachine run-read-command
를 사용하여 BMM 문제 해결
사용자가 온-프레미스 BMM(운영 체제 미설치 컴퓨터)의 문제를 조사하고 해결해야 하는 상황이 있을 수 있습니다. Operator Nexus는 사용자가 큐레이팅된 읽기 전용 명령 목록을 실행하여 BMM에서 정보를 가져올 수 있도록 az networkcloud baremetalmachine run-read-command
를 제공합니다.
이 명령은 실행 읽기 명령 실행의 결과를 포함하는 출력 파일을 생성합니다. 기본적으로 데이터는 Cluster Manager 스토리지 계정으로 전송됩니다. 사용자가 출력을 수신하기 위해 스토리지 계정에 액세스할 수 있는 스토리지 계정 및 ID를 사용하여 클러스터 리소스를 구성할 수 있는 미리 보기 메서드도 있습니다.
필수 조건
- 적절한 Azure CLI 확장의 최신 버전을 설치합니다.
- 대상 BMM의
poweredState
가On
으로,readyState
가True
로 설정되어야 합니다. Cluster
리소스에 대해 만든 관리되는 리소스 그룹 이름(cluster_MRG) 가져오기
사용자 지정 스토리지 계정에 명령 출력 보내기
스토리지 리소스 만들기 및 구성
- 스토리지 계정을 만들거나 사용하려는 기존 스토리지 계정을 식별합니다. Azure Storage 계정 만들기를 참조 하세요.
- 스토리지 계정에 Blob Storage 컨테이너를 만듭니다. 컨테이너 만들기를 참조하세요.
- Run-data-extract 출력에 액세스해야 하는 사용자 및 관리 ID에 "Storage Blob 데이터 기여자" 역할을 할당합니다.
- Blob 데이터에 액세스하기 위한 Azure 역할 할당을 참조하세요. 또한 역할은 사용자 할당 관리 ID 또는 클러스터의 자체 시스템 할당 관리 ID에 할당되어야 합니다.
- 관리 ID에 대한 자세한 내용은 Azure 리소스에 대한 관리 ID를 참조하세요.
- 클러스터의 시스템 할당 ID를 사용하는 경우 액세스 권한을 부여하기 전에 시스템 할당 ID를 클러스터에 추가해야 합니다.
- 클러스터의 시스템 할당 ID에 역할을 할당할 때 "클러스터(운영자 Nexus)" 형식의 리소스를 선택해야 합니다.
스토리지 액세스에 사용자 할당 관리 ID를 사용하도록 클러스터 구성
이 명령을 사용하여 사용자 관리 스토리지 계정 및 사용자 할당 ID를 사용하여 클러스터를 만듭니다. 이 예제는 사용자 관리 스토리지를 추가하기 위해 관련 필드를 강조 표시하는 약어 명령입니다. 전체 클러스터 만들기 명령이 아닙니다.
az networkcloud cluster create --name "<cluster-name>" \
--resource-group "<cluster-resource-group>" \
...
--mi-user-assigned "<user-assigned-identity-resource-id>" \
--command-output-settings identity-type="UserAssignedIdentity" \
identity-resource-id="<user-assigned-identity-resource-id>" \
container-url="<container-url>" \
...
--subscription "<subscription>"
이 명령을 사용하여 사용자가 제공한 스토리지 계정 및 사용자 할당 ID에 대한 기존 클러스터를 구성합니다. 필요한 경우 업데이트 명령을 사용하여 스토리지 계정 위치 및 ID를 변경할 수도 있습니다.
az networkcloud cluster update --name "<cluster-name>" \
--resource-group "<cluster-resource-group>" \
--mi-user-assigned "<user-assigned-identity-resource-id>" \
--command-output-settings identity-type="UserAssignedIdentity" \
identity-resource-id="<user-assigned-identity-resource-id>" \
container-url="<container-url>" \
--subscription "<subscription>"
스토리지 액세스에 시스템 할당 관리 ID를 사용하도록 클러스터 구성
이 명령을 사용하여 사용자 관리 스토리지 계정 및 시스템 할당 ID를 사용하여 클러스터를 만듭니다. 이 예제는 사용자 관리 스토리지를 추가하기 위해 관련 필드를 강조 표시하는 약어 명령입니다. 전체 클러스터 만들기 명령이 아닙니다.
az networkcloud cluster create --name "<cluster-name>" \
--resource-group "<cluster-resource-group>" \
...
--mi-system-assigned true \
--command-output-settings identity-type="SystemAssignedIdentity" \
container-url="<container-url>" \
...
--subscription "<subscription>"
이 명령을 사용하여 사용자가 제공한 스토리지 계정에 대한 기존 클러스터를 구성하고 자체 시스템 할당 ID를 사용합니다. 업데이트 명령을 사용하여 스토리지 계정 위치를 변경할 수도 있습니다.
az networkcloud cluster update --name "<cluster-name>" \
--resource-group "<cluster-resource-group>" \
--mi-system-assigned true \
--command-output-settings identity-type="SystemAssignedIdentity" \
container-url="<container-url>" \
--subscription "<subscription>"
클러스터를 사용자 할당 ID에서 시스템 할당 ID로 변경하려면 먼저 다음 섹션의 명령을 사용하여 CommandOutputSettings를 지우고 이 명령을 사용하여 설정해야 합니다.
클러스터의 CommandOutputSettings 지우기
CommandOutputSettings를 지울 수 있으며 실행 데이터 추출 출력을 클러스터 관리자의 스토리지로 다시 전달합니다. 그러나 보안이 떨어지므로 권장되지 않으며 향후 릴리스에서 옵션이 제거될 예정입니다.
그러나 사용자 할당 ID에서 시스템 할당 ID로 전환하는 경우 CommandOutputSettings를 지워야 합니다.
이 명령을 사용하여 CommandOutputSettings를 지웁니다.
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}}'
관리 ID의 보안 주체 ID 보기
ID 리소스 ID는 ID 리소스에서 "JSON 보기"를 선택하여 찾을 수 있습니다. ID가 표시되는 패널의 맨 위에 있습니다. 컨테이너 URL은 컨테이너 리소스의 설정 -> 속성 탭에서 찾을 수 있습니다.
CLI를 사용하여 클러스터 내에서 ID 및 연결된 보안 주체 ID 데이터를 볼 수도 있습니다.
예시:
az networkcloud cluster show --ids /subscriptions/<Subscription ID>/resourceGroups/<Cluster Resource Group Name>/providers/Microsoft.NetworkCloud/clusters/<Cluster Name>
시스템 할당 ID 예제:
"identity": {
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"type": "SystemAssigned"
},
사용자 할당 ID 예제:
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"/subscriptions/<subscriptionID>/resourcegroups/<resourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<userAssignedIdentityName>": {
"clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
"principalId": "bbbbbbbb-cccc-dddd-2222-333333333333"
}
}
},
사용되지 않는 방법: Cluster Manager 스토리지 계정에 대한 액세스 확인
Important
Cluster Manager 스토리지 계정은 2025년 4월에 제거될 수 있습니다. 명령 출력에 현재 이 메서드를 사용하는 경우 사용자가 제공한 스토리지 계정을 사용하도록 변환하는 것이 좋습니다.
Cluster Manager 스토리지 메서드를 사용하는 경우 클러스터 관리자의 스토리지 계정에 액세스할 수 있는지 확인합니다.
- Azure Portal에서 클러스터 관리자의 스토리지 계정으로 이동합니다.
- 저장소 계정 세부정보의 왼쪽 탐색 메뉴에서 스토리지 브라우저를 선택합니다.
- 스토리지 브라우저 세부정보에서 BLOB 컨테이너를 선택합니다.
- 스토리지 계정에 액세스하는 동안
403 This request is not authorized to perform this operation.
이(가) 발생하는 경우 공용 IP 주소를 포함하도록 스토리지 계정의 방화벽 설정을 업데이트해야 합니다. - 클러스터 관리자 리소스에서 포털을 통해 지원 티켓을 만들어 액세스를 요청합니다. 액세스가 필요한 공용 IP 주소를 제공합니다.
run-read 명령 실행
run-read 명령을 사용하면 아무 것도 변경하지 않는 BMM에서 명령을 실행할 수 있습니다. 일부 명령에는 두 개 이상의 단어가 있거나 작동하려면 인수가 필요합니다. 이러한 명령은 상황을 변경할 수 있는 명령과 분리하기 위해 이렇게 만들어졌습니다. 예를 들어, run-read-command는 kubectl get
을 사용할 수 있지만 kubectl apply
는 사용할 수 없습니다. 이러한 명령을 사용하는 경우 모든 단어를 "명령" 필드에 배치해야 합니다. 예를 들어, {"command":"kubectl get","arguments":["nodes"]}
가 맞습니다. {"command":"kubectl","arguments":["get","nodes"]}
가 틀렸습니다.
또한 일부 명령은 nc-toolbox nc-toolbox-runread
로 시작하므로 표시된 대로 입력해야 합니다.
nc-toolbox-runread
는 운영 체제 미설치 호스트(예: ipmitool
racadm
및 )에 설치되지 않은 더 많은 도구를 포함하는 특수 컨테이너 이미지입니다.
일부 실행-읽기 명령에는 명령의 읽기 전용 기능을 적용하기 위해 특정 인수를 제공해야 합니다.
특정 인수가 필요한 실행-읽기 명령의 예는 허용된 Mellanox 명령 mstconfig
입니다. 이 명령에는 읽기 전용을 적용하기 위해 query
인수를 제공해야 합니다.
Warning
Microsoft는 일반 텍스트 사용자 이름 및/또는 암호가 제공될 것으로 예상되는 운영자 Nexus API 호출을 제공하거나 지원하지 않습니다. 전송된 모든 값은 기록되며 노출된 비밀로 간주되며, 이는 회전 및 해지되어야 합니다. 비밀을 안전하게 사용하기 위한 Microsoft 문서화된 방법은 비밀을 Azure Key Vault에 저장하는 것입니다. 특정 질문이나 문제가 있는 경우 Azure Portal을 통해 요청을 제출합니다.
이 목록에는 사용할 수 있는 명령이 나와 있습니다. *italics*
명령을 사용할 수 없습니다. 나머지는 사용할 arguments
수 있습니다.
arp
brctl show
dmidecode
fdisk -l
host
hostname
ifconfig -a
ifconfig -s
ip address show
ip link show
ip maddress show
ip route show
journalctl
kubectl api-resources
kubectl api-versions
kubectl describe
kubectl get
kubectl logs
mount
ping
ss
tcpdump
traceroute
uname
ulimit -a
uptime
nc-toolbox nc-toolbox-runread ipmitool channel authcap
nc-toolbox nc-toolbox-runread ipmitool channel info
nc-toolbox nc-toolbox-runread ipmitool chassis status
nc-toolbox nc-toolbox-runread ipmitool chassis power status
nc-toolbox nc-toolbox-runread ipmitool chassis restart cause
nc-toolbox nc-toolbox-runread ipmitool chassis poh
nc-toolbox nc-toolbox-runread ipmitool dcmi power get_limit
nc-toolbox nc-toolbox-runread ipmitool dcmi sensors
nc-toolbox nc-toolbox-runread ipmitool dcmi asset_tag
nc-toolbox nc-toolbox-runread ipmitool dcmi get_mc_id_string
nc-toolbox nc-toolbox-runread ipmitool dcmi thermalpolicy get
nc-toolbox nc-toolbox-runread ipmitool dcmi get_temp_reading
nc-toolbox nc-toolbox-runread ipmitool dcmi get_conf_param
nc-toolbox nc-toolbox-runread ipmitool delloem lcd info
nc-toolbox nc-toolbox-runread ipmitool delloem lcd status
nc-toolbox nc-toolbox-runread ipmitool delloem mac list
nc-toolbox nc-toolbox-runread ipmitool delloem mac get
nc-toolbox nc-toolbox-runread ipmitool delloem lan get
nc-toolbox nc-toolbox-runread ipmitool delloem powermonitor powerconsumption
nc-toolbox nc-toolbox-runread ipmitool delloem powermonitor powerconsumptionhistory
nc-toolbox nc-toolbox-runread ipmitool delloem powermonitor getpowerbudget
nc-toolbox nc-toolbox-runread ipmitool delloem vflash info card
nc-toolbox nc-toolbox-runread ipmitool echo
nc-toolbox nc-toolbox-runread ipmitool ekanalyzer print
nc-toolbox nc-toolbox-runread ipmitool ekanalyzer summary
nc-toolbox nc-toolbox-runread ipmitool fru print
nc-toolbox nc-toolbox-runread ipmitool fwum info
nc-toolbox nc-toolbox-runread ipmitool fwum status
nc-toolbox nc-toolbox-runread ipmitool fwum tracelog
nc-toolbox nc-toolbox-runread ipmitool gendev list
nc-toolbox nc-toolbox-runread ipmitool hpm rollbackstatus
nc-toolbox nc-toolbox-runread ipmitool hpm selftestresult
nc-toolbox nc-toolbox-runread ipmitool ime help
nc-toolbox nc-toolbox-runread ipmitool ime info
nc-toolbox nc-toolbox-runread ipmitool isol info
nc-toolbox nc-toolbox-runread ipmitool lan print
nc-toolbox nc-toolbox-runread ipmitool lan alert print
nc-toolbox nc-toolbox-runread ipmitool lan stats get
nc-toolbox nc-toolbox-runread ipmitool mc bootparam get
nc-toolbox nc-toolbox-runread ipmitool mc chassis poh
nc-toolbox nc-toolbox-runread ipmitool mc chassis policy list
nc-toolbox nc-toolbox-runread ipmitool mc chassis power status
nc-toolbox nc-toolbox-runread ipmitool mc chassis status
nc-toolbox nc-toolbox-runread ipmitool mc getenables
nc-toolbox nc-toolbox-runread ipmitool mc getsysinfo
nc-toolbox nc-toolbox-runread ipmitool mc guid
nc-toolbox nc-toolbox-runread ipmitool mc info
nc-toolbox nc-toolbox-runread ipmitool mc restart cause
nc-toolbox nc-toolbox-runread ipmitool mc watchdog get
nc-toolbox nc-toolbox-runread ipmitool bmc bootparam get
nc-toolbox nc-toolbox-runread ipmitool bmc chassis poh
nc-toolbox nc-toolbox-runread ipmitool bmc chassis policy list
nc-toolbox nc-toolbox-runread ipmitool bmc chassis power status
nc-toolbox nc-toolbox-runread ipmitool bmc chassis status
nc-toolbox nc-toolbox-runread ipmitool bmc getenables
nc-toolbox nc-toolbox-runread ipmitool bmc getsysinfo
nc-toolbox nc-toolbox-runread ipmitool bmc guid
nc-toolbox nc-toolbox-runread ipmitool bmc info
nc-toolbox nc-toolbox-runread ipmitool bmc restart cause
nc-toolbox nc-toolbox-runread ipmitool bmc watchdog get
nc-toolbox nc-toolbox-runread ipmitool nm alert get
nc-toolbox nc-toolbox-runread ipmitool nm capability
nc-toolbox nc-toolbox-runread ipmitool nm discover
nc-toolbox nc-toolbox-runread ipmitool nm policy get policy_id
nc-toolbox nc-toolbox-runread ipmitool nm policy limiting
nc-toolbox nc-toolbox-runread ipmitool nm statistics
nc-toolbox nc-toolbox-runread ipmitool nm suspend get
nc-toolbox nc-toolbox-runread ipmitool nm threshold get
nc-toolbox nc-toolbox-runread ipmitool pef
nc-toolbox nc-toolbox-runread ipmitool picmg addrinfo
nc-toolbox nc-toolbox-runread ipmitool picmg policy get
nc-toolbox nc-toolbox-runread ipmitool power status
nc-toolbox nc-toolbox-runread ipmitool sdr elist
nc-toolbox nc-toolbox-runread ipmitool sdr get
nc-toolbox nc-toolbox-runread ipmitool sdr info
nc-toolbox nc-toolbox-runread ipmitool sdr list
nc-toolbox nc-toolbox-runread ipmitool sdr type
nc-toolbox nc-toolbox-runread ipmitool sel elist
nc-toolbox nc-toolbox-runread ipmitool sel get
nc-toolbox nc-toolbox-runread ipmitool sel info
nc-toolbox nc-toolbox-runread ipmitool sel list
nc-toolbox nc-toolbox-runread ipmitool sel time get
nc-toolbox nc-toolbox-runread ipmitool sensor get
nc-toolbox nc-toolbox-runread ipmitool sensor list
nc-toolbox nc-toolbox-runread ipmitool session info
nc-toolbox nc-toolbox-runread ipmitool sol info
nc-toolbox nc-toolbox-runread ipmitool sol payload status
nc-toolbox nc-toolbox-runread ipmitool user list
nc-toolbox nc-toolbox-runread ipmitool user summary
nc-toolbox nc-toolbox-runread racadm arp
nc-toolbox nc-toolbox-runread racadm coredump
nc-toolbox nc-toolbox-runread racadm diagnostics
nc-toolbox nc-toolbox-runread racadm eventfilters get
nc-toolbox nc-toolbox-runread racadm fcstatistics
nc-toolbox nc-toolbox-runread racadm get
nc-toolbox nc-toolbox-runread racadm getconfig
nc-toolbox nc-toolbox-runread racadm gethostnetworkinterfaces
nc-toolbox nc-toolbox-runread racadm getled
nc-toolbox nc-toolbox-runread racadm getniccfg
nc-toolbox nc-toolbox-runread racadm getraclog
nc-toolbox nc-toolbox-runread racadm getractime
nc-toolbox nc-toolbox-runread racadm getsel
nc-toolbox nc-toolbox-runread racadm getsensorinfo
nc-toolbox nc-toolbox-runread racadm getssninfo
nc-toolbox nc-toolbox-runread racadm getsvctag
nc-toolbox nc-toolbox-runread racadm getsysinfo
nc-toolbox nc-toolbox-runread racadm gettracelog
nc-toolbox nc-toolbox-runread racadm getversion
nc-toolbox nc-toolbox-runread racadm hwinventory
nc-toolbox nc-toolbox-runread racadm ifconfig
nc-toolbox nc-toolbox-runread racadm inlettemphistory get
nc-toolbox nc-toolbox-runread racadm jobqueue view
nc-toolbox nc-toolbox-runread racadm lclog view
nc-toolbox nc-toolbox-runread racadm lclog viewconfigresult
nc-toolbox nc-toolbox-runread racadm license view
nc-toolbox nc-toolbox-runread racadm netstat
nc-toolbox nc-toolbox-runread racadm nicstatistics
nc-toolbox nc-toolbox-runread racadm ping
nc-toolbox nc-toolbox-runread racadm ping6
nc-toolbox nc-toolbox-runread racadm racdump
nc-toolbox nc-toolbox-runread racadm sslcertview
nc-toolbox nc-toolbox-runread racadm swinventory
nc-toolbox nc-toolbox-runread racadm systemconfig getbackupscheduler
nc-toolbox nc-toolbox-runread racadm systemperfstatistics
(PeakReset 인수는 허용되지 않음)nc-toolbox nc-toolbox-runread racadm techsupreport getupdatetime
nc-toolbox nc-toolbox-runread racadm traceroute
nc-toolbox nc-toolbox-runread racadm traceroute6
nc-toolbox nc-toolbox-runread racadm usercertview
nc-toolbox nc-toolbox-runread racadm vflashsd status
nc-toolbox nc-toolbox-runread racadm vflashpartition list
nc-toolbox nc-toolbox-runread racadm vflashpartition status -a
nc-toolbox nc-toolbox-runread mstregdump
nc-toolbox nc-toolbox-runread mstconfig
(인수 필요query
)nc-toolbox nc-toolbox-runread mstflint
(인수 필요query
)nc-toolbox nc-toolbox-runread mstlink
(인수 필요query
)nc-toolbox nc-toolbox-runread mstfwmanager
(인수 필요query
)nc-toolbox nc-toolbox-runread mlx_temp
명령 구문은 다음과 같습니다.
az networkcloud baremetalmachine run-read-command --name "<machine-name>"
--limit-time-seconds "<timeout>" \
--commands '[{"command":"<command1>"},{"command":"<command2>","arguments":["<arg1>","<arg2>"]}]' \
--resource-group "<cluster_MRG>" \
--subscription "<subscription>"
여러 명령을 json 형식으로 --commands
옵션에 제공할 수 있습니다.
여러 인수가 있는 명령의 경우 arguments
매개 변수에 목록으로 제공합니다. --commands
구조체를 구성하는 방법에 대한 지침은 Azure CLI 약어를 참조하세요.
이러한 명령은 오래 실행될 수 있으므로 --limit-time-seconds
를 최소 600초(10분)로 설정하는 것이 좋습니다. 여러 명령을 실행하는 데 10분 이상 걸릴 수 있습니다.
이 명령은 동기적으로 실행됩니다. 명령이 완료될 때까지 기다리지 않으려는 경우 --no-wait --debug
옵션을 지정합니다. 자세한 내용은 비동기 작업 추적 방법을 참조하세요.
선택적 인수 --output-directory
가 제공되면 출력 결과가 다운로드되어 로컬 디렉터리로 추출됩니다.
Warning
인수를 --output-directory
사용하면 생성되는 새 파일과 이름이 같은 로컬 디렉터리의 모든 파일을 덮어씁니다.
이 예제에서는 'kubectl get Pods'를 실행합니다.
az networkcloud baremetalmachine run-read-command --name "<bareMetalMachineName>" \
--limit-time-seconds 60 \
--commands "[{command:'kubectl get',arguments:[pods,-n,nc-system]}]" \
--resource-group "<cluster_MRG>" \
--subscription "<subscription>"
이 예제에서는 hostname
명령과 ping
명령을 실행합니다.
az networkcloud baremetalmachine run-read-command --name "<bareMetalMachineName>" \
--limit-time-seconds 60 \
--commands '[{"command":"hostname"},{"command":"ping","arguments":["198.51.102.1","-c","3"]}]' \
--resource-group "<cluster_MRG>" \
--subscription "<subscription>"
이 예에서는 racadm getsysinfo -c
명령을 실행합니다.
az networkcloud baremetalmachine run-read-command --name "<bareMetalMachineName>" \
--limit-time-seconds 60 \
--commands '[{"command":"nc-toolbox nc-toolbox-runread racadm getsysinfo","arguments":["-c"]}]' \
--resource-group "<cluster_MRG>" \
--subscription "<subscription>"
클러스터 관리자 스토리지 계정에서 az networkcloud baremetalmachine run-read-command
의 출력을 보는 방법
이 가이드는 az networkcloud baremetalmachine run-read-command
가 서버에서 실행될 때 클러스터 관리자 스토리지 계정에 생성된 출력 파일에 액세스하는 과정을 안내합니다. 파일 이름은 az rest
상태 출력에서 식별됩니다.
서버가 보관된 클러스터의 클러스터 관리자 관리되는 리소스 그룹을 연 다음 스토리지 계정을 선택합니다.
저장소 계정 세부정보의 왼쪽 탐색 메뉴에서 스토리지 브라우저를 선택합니다.
스토리지 브라우저 세부정보에서 BLOB 컨테이너를 선택합니다.
baremetal-run-command-output BLOB 컨테이너를 선택합니다.
네트워킹 또는 방화벽 제한으로 인해 스토리지 계정이 잠기고
403 This request is not authorized to perform this operation.
이 발생할 수 있습니다. 액세스를 확인하는 절차는 클러스터 관리자 스토리지 또는 고객 관리 스토리지 섹션을 참조하세요.run-read 명령에서 출력 파일을 선택합니다. 파일 이름은
az rest --method get
명령에서 식별할 수 있습니다. 또한 마지막으로 수정한 타임스탬프는 명령이 실행되었을 때와 일치합니다.개요 팝아웃에서 출력 파일을 관리 및 다운로드할 수 있습니다.
미리 보기: 명령 상태를 확인하고 사용자가 지정한 스토리지 계정의 출력을 봅니다.
샘플 출력이 표시됩니다. 편의를 위해 결과의 상위 4,000 문자를 화면에 출력하고 명령 실행 결과를 포함하는 스토리지 Blob에 대한 수명이 짧은 링크를 제공합니다. 링크를 사용하여 압축된 출력 파일(tar.gz)을 다운로드할 수 있습니다.
====Action Command Output====
+ hostname
rack1compute01
+ ping 198.51.102.1 -c 3
PING 198.51.102.1 (198.51.102.1) 56(84) bytes of data.
--- 198.51.102.1 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2049ms
================================
Script execution result can be found in storage account:
https://<storage_account_name>.blob.core.windows.net/bmm-run-command-output/a8e0a5fe-3279-46a8-b995-51f2f98a18dd-action-bmmrunreadcmd.tar.gz?se=2023-04-14T06%3A37%3A00Z&sig=XXX&sp=r&spr=https&sr=b&st=2023-04-14T02%3A37%3A00Z&sv=2019-12-12