azcmagent connect
Azure에서 서버의 메타데이터 표현을 만들고 Azure 연결된 컴퓨터 에이전트를 연결하여 서버를 Azure Arc에 연결합니다. 이 명령에는 Azure의 서버를 나타내려는 테넌트, 구독 및 리소스 그룹에 대한 정보와 해당 위치에 Azure Arc 지원 서버 리소스를 만들 수 있는 권한이 있는 유효한 자격 증명이 필요합니다.
사용
azcmagent connect [authentication] --subscription-id [subscription] --resource-group [resourcegroup] --location [region] [flags]
예제
기본 로그인 방법(대화형 브라우저 또는 디바이스 코드)을 사용하여 서버를 연결합니다.
azcmagent connect --subscription-id "Production" --resource-group "HybridServers" --location "eastus"
azcmagent connect --subscription-id "Production" --resource-group "HybridServers" --location "eastus" --use-device-code
서비스 주체를 사용하여 서버를 연결합니다.
azcmagent connect --subscription-id "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" --resource-group "HybridServers" --location "australiaeast" --service-principal-id "ID" --service-principal-secret "SECRET" --tenant-id "TENANT"
프라이빗 엔드포인트 및 디바이스 코드 로그인 방법을 사용하여 서버를 연결합니다.
azcmagent connect --subscription-id "Production" --resource-group "HybridServers" --location "koreacentral" --use-device-code --private-link-scope "/subscriptions/.../Microsoft.HybridCompute/privateLinkScopes/ScopeName"
인증 옵션
Azure 연결된 컴퓨터 에이전트에 인증 자격 증명을 제공하는 네 가지 방법이 있습니다. 하나의 인증 옵션을 선택하고 사용 구문의 섹션을 권장 플래그로 바꿉 [authentication]
니다.
대화형 브라우저 로그인(Windows 전용)
이 옵션은 데스크톱 환경이 있는 Windows 운영 체제의 기본값입니다. 로그인 페이지가 기본 웹 브라우저에서 열립니다. 조직에서 신뢰할 수 있는 컴퓨터에서 로그인해야 하는 조건부 액세스 정책을 구성한 경우 이 옵션이 필요할 수 있습니다.
대화형 브라우저 로그인을 사용하는 데 플래그가 필요하지 않습니다.
디바이스 코드 로그인
이 옵션은 다른 디바이스의 웹 브라우저에서 로그인하는 데 사용할 수 있는 코드를 생성합니다. Windows Server 코어 버전 및 모든 Linux 배포판의 기본 옵션입니다. 연결 명령을 실행하면 5분 이내에 인터넷에 연결된 디바이스에서 지정된 로그인 URL을 열고 로그인 절차를 완료해야 합니다.
디바이스 코드로 인증하려면 플래그를 --use-device-code
사용합니다. 로그인하는 계정과 서버를 등록하는 구독이 동일한 테넌트에 없는 경우 구독 --tenant-id [tenant]
에 대한 테넌트 ID도 제공해야 합니다.
비밀을 사용하는 서비스 주체
서비스 주체를 사용하면 비대화형으로 인증할 수 있으며 여러 서버에서 동일한 스크립트가 실행되는 대규모 배포에 자주 사용됩니다. 콘솔 로그에 비밀을 노출하지 않도록 구성 파일(참조 --config
)을 통해 서비스 주체 정보를 제공하는 것이 좋습니다. 또한 서비스 주체는 Arc 온보딩 전용이어야 하며, 도난당한 자격 증명의 영향을 제한하기 위해 가능한 한 적은 권한이 있어야 합니다.
비밀을 사용하여 서비스 주체로 인증하려면 서비스 주체의 애플리케이션 ID, 비밀 및 테넌트 ID를 제공합니다. --service-principal-id [appid] --service-principal-secret [secret] --tenant-id [tenantid]
인증서가 있는 서비스 주체
인증서 기반 인증은 서비스 주체를 사용하여 인증하는 보다 안전한 방법입니다. 에이전트는 PCKS #12(.)를 모두 허용합니다. PFX) 파일 및 ASCII로 인코딩된 파일(예: . PEM) - 프라이빗 키와 퍼블릭 키를 모두 포함합니다. 로컬 디스크에서 인증서를 사용할 수 있어야 하며 명령을 실행하는 azcmagent
사용자는 파일에 대한 읽기 액세스 권한이 필요합니다. 암호로 보호된 PFX 파일은 지원되지 않습니다.
인증서를 사용하여 서비스 주체로 인증하려면 서비스 주체의 애플리케이션 ID, 테넌트 ID 및 인증서 파일 경로를 제공합니다. --service-principal-id [appId] --service-principal-cert [pathToPEMorPFXfile] --tenant-id [tenantid]
자세한 내용은 인증서 기반 인증을 사용하여 RBAC에 대한 서비스 주체 만들기를 참조하세요.
액세스 토큰
액세스 토큰은 비대화형 인증에도 사용할 수 있지만 수명이 짧으며 일반적으로 짧은 기간 동안 여러 서버를 온보딩하는 자동화 솔루션에서 사용됩니다. Get-AzAccessToken 또는 다른 Microsoft Entra 클라이언트를 사용하여 액세스 토큰 을 가져올 수 있습니다.
액세스 토큰으로 인증하려면 플래그를 --access-token [token]
사용합니다. 로그인하는 계정과 서버를 등록하는 구독이 동일한 테넌트에 없는 경우 구독 --tenant-id [tenant]
에 대한 테넌트 ID도 제공해야 합니다.
플래그
--access-token
Azure에서 Azure Arc 지원 서버 리소스를 만드는 데 사용되는 Microsoft Entra 액세스 토큰을 지정합니다. 자세한 내용은 인증 옵션을 참조하세요.
--automanage-profile
Azure에 연결되면 서버에 적용할 Azure Automanage 모범 사례 프로필의 리소스 ID입니다.
샘플 값: /providers/Microsoft.Automanage/bestPractices/AzureBestPracticesProduction
--cloud
Azure 클라우드 인스턴스를 지정합니다. 플래그와 함께 --location
사용해야 합니다. 컴퓨터가 이미 Azure Arc에 연결된 경우 기본값은 에이전트가 이미 연결된 클라우드입니다. 그렇지 않으면 기본값은 "AzureCloud"입니다.
지원되는 값:
- AzureCloud(공용 지역)
- AzureUSGovernment(Azure 미국 정부 지역)
- AzureChinaCloud(21Vianet 지역에서 운영하는 Microsoft Azure)
--correlation-id
서버를 Azure Arc에 연결하는 데 사용되는 메커니즘을 식별합니다. 예를 들어 Azure Portal에서 생성된 스크립트에는 Microsoft에서 해당 환경의 사용량을 추적하는 데 도움이 되는 GUID가 포함됩니다. 이 플래그는 선택 사항이며 환경을 개선하기 위해 원격 분석 목적으로만 사용됩니다.
--ignore-network-check
필요한 엔드포인트에 대한 네트워크 확인이 실패하더라도 에이전트가 온보딩을 계속하도록 지시합니다. 네트워크 확인 결과가 올바르지 않은 경우에만 이 옵션을 사용해야 합니다. 대부분의 경우 실패한 네트워크 검사는 Azure Connected Machine 에이전트가 서버에서 제대로 작동하지 않음을 나타냅니다.
-l
, --location
연결을 확인할 Azure 지역입니다. 컴퓨터가 이미 Azure Arc에 연결된 경우 현재 지역이 기본값으로 선택됩니다.
샘플 값: westeurope
--private-link-scope
서버와 연결할 Azure Arc 프라이빗 링크 범위의 리소스 ID를 지정합니다. 프라이빗 엔드포인트를 사용하여 서버를 Azure에 연결하는 경우 이 플래그가 필요합니다.
-g
, --resource-group
Azure Arc 지원 서버 리소스를 만들려는 Azure 리소스 그룹의 이름입니다.
샘플 값: HybridServers
-n
, --resource-name
Azure Arc 지원 서버 리소스의 이름입니다. 기본적으로 리소스 이름은 다음과 같습니다.
- 서버가 AWS에 있는 경우 AWS 인스턴스 ID
- 다른 모든 컴퓨터의 호스트 이름
이름 충돌을 방지하기 위해 선택한 이름으로 기본 이름을 재정의할 수 있습니다. 선택한 후에는 에이전트의 연결을 끊고 다시 연결하지 않고는 Azure 리소스의 이름을 변경할 수 없습니다.
AWS 서버가 인스턴스 ID 대신 호스트 이름을 사용하도록 강제하려면 셸이 $(hostname)
현재 호스트 이름을 평가하고 새 리소스 이름으로 전달하도록 전달합니다.
샘플 값: FileServer01
-i
, --service-principal-id
Azure에서 Azure Arc 지원 서버 리소스를 만드는 데 사용되는 서비스 주체의 애플리케이션 ID를 지정합니다. 및 플래그와 함께 --tenant-id
--service-principal-secret
--service-principal-cert
사용해야 합니다. 자세한 내용은 인증 옵션을 참조하세요.
--service-principal-cert
서비스 주체 인증서 파일의 경로를 지정합니다. 및 --tenant-id
플래그와 함께 --service-principal-id
사용해야 합니다. 인증서는 프라이빗 키를 포함해야 하며 PKCS #12(에 있을 수 있습니다. PFX) 또는 ASCII로 인코딩된 텍스트(. PEM, . CRT) 형식입니다. 암호로 보호된 PFX 파일은 지원되지 않습니다. 자세한 내용은 인증 옵션을 참조하세요.
-p
, --service-principal-secret
서비스 주체 암호를 지정합니다. 및 --tenant-id
플래그와 함께 --service-principal-id
사용해야 합니다. 콘솔 로그에 비밀이 노출되는 것을 방지하기 위해 Microsoft는 구성 파일에 서비스 주체 암호를 제공하는 것이 좋습니다. 자세한 내용은 인증 옵션을 참조하세요.
-s
, --subscription-id
Azure Arc 지원 서버 리소스를 만들려는 구독 이름 또는 ID입니다.
샘플 값: Production, aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
--tags
Azure Arc 지원 서버 리소스에 적용할 태그의 쉼표로 구분된 목록입니다. 각 태그는 TagName=TagValue 형식으로 지정해야 합니다. 태그 이름 또는 값에 공백이 포함된 경우 이름 또는 값 주위에 작은따옴표를 사용합니다.
샘플 값: Datacenter=NY3,Application=SharePoint,Owner='Shared Infrastructure Services'
-t
, --tenant-id
Azure Arc 지원 서버 리소스를 만들려는 구독의 테넌트 ID입니다. 이 플래그는 서비스 주체를 사용하여 인증할 때 필요합니다. 다른 모든 인증 방법의 경우 Azure로 인증하는 데 사용되는 계정의 홈 테넌트도 리소스에 사용됩니다. 계정 및 구독에 대한 테넌트(게스트 계정, Lighthouse)가 다른 경우 테넌트 ID를 지정하여 구독이 있는 테넌트 위치를 명확히 해야 합니다.
--use-device-code
Azure에서 에이전트를 인증하기 위해 다른 컴퓨터의 웹 브라우저에 입력할 수 있는 Microsoft Entra 디바이스 로그인 코드를 생성합니다. 자세한 내용은 인증 옵션을 참조하세요.
--user-tenant-id
서버를 Azure에 연결하는 데 사용되는 계정의 테넌트 ID입니다. 이 필드는 온보딩 계정의 테넌트가 Azure Arc 지원 서버 리소스에 대해 원하는 테넌트와 동일하지 않은 경우에 필요합니다.
모든 명령에 사용할 수 있는 공통 플래그
--config
명령에 대한 입력이 포함된 JSON 또는 YAML 파일의 경로를 가져옵니다. 구성 파일에는 키가 사용 가능한 명령줄 옵션과 일치하는 일련의 키-값 쌍이 포함되어야 합니다. 예를 들어 플래그를 --verbose
전달하려면 구성 파일은 다음과 같습니다.
{
"verbose": true
}
명령 호출과 구성 파일 모두에서 명령줄 옵션이 발견되면 명령줄에 지정된 값이 우선합니다.
-h
, --help
구문 및 명령줄 옵션을 포함하여 현재 명령에 대한 도움말을 확인합니다.
-j
, --json
JSON 형식으로 명령 결과를 출력합니다.
--log-stderr
오류 및 자세한 정보를 표준 오류(stderr) 스트림으로 리디렉션합니다. 기본적으로 모든 출력은 표준 출력(stdout) 스트림으로 전송됩니다.
--no-color
ANSI 색을 지원하지 않는 터미널에 색 출력을 사용하지 않도록 설정합니다.
-v
, --verbose
명령이 실행되는 동안 자세한 로깅 정보를 표시합니다. 명령을 실행할 때 발생하는 문제를 해결하는 데 유용합니다.