수행할 작업
- Azure CLI로 Azure 네트워킹(VNet, 서브넷, NSG) 및 컴퓨팅 리소스 생성
- Azure Bastion에서만 VM에 SSH로 연결할 수 있도록 NSG 규칙 적용
- Azure Bastion을 통한 SSH 액세스 사용(VM에 공용 IP 없음)
- 설치 프로그램 스크립트로 OpenClaw 설치
- Gateway 확인
필요한 항목
- 컴퓨팅 및 네트워크 리소스를 생성할 권한이 있는 Azure 구독
- 설치된 Azure CLI(Azure CLI 설치 단계 참조)
- SSH 키 쌍(필요한 경우 이 가이드에서 생성 방법을 설명)
- 약 20~30분
배포 구성
1
Azure CLI에 로그인
ssh 확장이 필요합니다.2
필수 리소스 공급자 등록(한 번만)
Registered로 표시될 때까지 기다립니다.3
배포 변수 설정
/26이어야 합니다.4
SSH 키 선택
기존 공개 키가 있다면 사용합니다.없다면 생성합니다.
5
VM 크기 및 OS 디스크 크기 선택
- 사용량이 적다면 작은 크기로 시작하고 나중에 확장합니다.
- 자동화 작업이 많거나, 채널이 더 많거나, 모델/도구 워크로드가 더 크다면 vCPU/RAM/디스크를 더 많이 사용합니다.
- 해당 지역이나 구독 할당량에서 특정 크기를 사용할 수 없다면 가장 비슷한 가용 SKU를 선택합니다.
Azure 리소스 배포
1
리소스 그룹 생성
2
네트워크 보안 그룹 생성
Bastion 서브넷에서만 VM에 SSH로 연결할 수 있도록 NSG를 생성하고 규칙을 추가합니다.규칙은 우선순위가 낮은 번호부터 평가됩니다. Bastion 트래픽은 우선순위 100에서 허용되고, 그 외 모든 SSH는 110과 120에서 차단됩니다.
3
가상 네트워크 및 서브넷 생성
VM 서브넷(NSG 연결됨)이 포함된 VNet을 생성한 다음 Bastion 서브넷을 추가합니다.
4
VM 생성
VM에는 공용 IP가 할당되지 않습니다. SSH 액세스는 Azure Bastion을 통해서만 이루어집니다.
--public-ip-address ""는 공용 IP가 할당되지 않도록 합니다. 서브넷 수준 NSG가 이미 보안을 처리하므로 --nsg ""는 NIC별 NSG 생성을 건너뜁니다.latest 대신 특정 Ubuntu 이미지 버전을 고정하려면 먼저 사용 가능한 버전을 나열합니다.5
Azure Bastion 생성
Azure Bastion은 VM에 공용 IP를 노출하지 않고 관리형 SSH 액세스를 제공합니다. CLI 기반 Bastion 프로비저닝은 일반적으로 510분이 걸리지만 일부 지역에서는 최대 1530분이 걸릴 수 있습니다.
az network bastion ssh를 사용하려면 터널링이 활성화된 Standard SKU가 필요합니다.OpenClaw 설치
1
Azure Bastion을 통해 VM에 SSH로 연결
2
OpenClaw 설치(VM 셸에서)
3
Gateway 확인
온보딩이 완료된 후 다음을 실행합니다.조직에 이미 GitHub Copilot 라이선스가 있다면 별도의 모델 API 키 대신 온보딩 중에 GitHub Copilot 공급자를 선택할 수 있습니다. GitHub Copilot 공급자를 참조하세요.
비용 고려 사항
대략적인 월간 비용입니다. 요금은 지역마다 다르고 시간이 지나면서 변경되므로 Azure Pricing Calculator에서 현재 가격을 확인하세요.- Azure Bastion Standard SKU: 월 약 140달러
- VM(
Standard_B2as_v2): 월 약 55달러
-
사용하지 않을 때 VM의 할당을 해제합니다. 그러면 컴퓨팅 요금 청구가 중지됩니다(디스크 요금은 계속 부과됨). 할당이 해제된 동안에는 Gateway에 연결할 수 없습니다.
- Bastion이 필요하지 않을 때 삭제하고 SSH 액세스가 다시 필요할 때 재생성합니다. Bastion은 비용에서 가장 큰 비중을 차지하며 프로비저닝에는 몇 분이 걸립니다.
-
포털 기반 SSH만 필요하고 CLI 터널링(
az network bastion ssh)이 필요하지 않다면 Basic Bastion SKU(월 약 38달러)를 사용합니다.
정리
이 가이드에서 생성한 모든 리소스를 삭제합니다.다음 단계
- 메시징 채널 설정: 채널
- 로컬 장치를 Node로 페어링: Node
- Gateway 구성: Gateway 구성
- GitHub Copilot 모델 공급자를 사용한 Azure 배포에 대한 자세한 내용: GitHub Copilot을 사용하여 Azure에 OpenClaw 배포