Azure Nodes에 대한 시작 스크립트 사용
Azure 노드가 시작될 때(프로비전됨) 집합에서 자동으로 실행되는 시작 스크립트를 구성할 수 있습니다. 시작 스크립트를 사용하여 노드 그룹이 특정 작업을 실행하도록 올바르게 구성되었는지 확인할 수 있습니다. 또한 서비스 중단으로 인해 노드를 사용할 수 없게 되고 역할 인스턴스를 Azure에서 다시 프로비전해야 하는 경우 노드가 알려진 상태로 복원됩니다. 예를 들어 시작 스크립트를 사용하여 애플리케이션 또는 드라이버를 설치하거나, 공유 폴더를 구성하거나, 특정 애플리케이션에 대한 방화벽 포트를 열 수 있습니다. 시작 스크립트를 사용하여 특정 노드 템플릿을 사용하여 배포된 Azure 노드 집합 내에서 노드의 하위 집합을 다르게 구성할 수도 있습니다.
이 항목에서는 다음을 수행합니다.
메모
- Azure 시작 스크립트는 서비스 팩 2가 포함된 HPC Pack 2008 R2부터 지원됩니다.
- 시작 스크립트를 완료하는 데 15분 이상 걸리는 경우 Azure Fabric 컨트롤러로 인해 역할 인스턴스의 프로비저닝이 실패할 수 있습니다.
시작 스크립트를 구성하고 사용하는 일반적인 단계
다음은 Azure 노드에 대한 시작 스크립트를 구성하고 사용하는 일반적인 단계입니다.
환경 변수를 사용하여 노드를 구분하고 다른 구성을 설정하는 구성 스크립트(예: startup.bat)를 만듭니다. 자세한 내용은 이 항목의 나머지 섹션을 참조하세요.
hpcpack 명령을 사용하여 스크립트를 패키징하고 Azure 노드 배포에 사용되는 Azure Storage 계정에 업로드합니다.
중요하다
시작 스크립트를 패키징하고 업로드할 때
/relativePath
매개 변수를 지정하지 마세요. 시작 스크립트는 Azure 노드의 루트 디렉터리에서만 실행해야 합니다.Azure 노드 템플릿을 만들거나 편집하여 시작 스크립트를 지정합니다.
Azure 노드를 시작(프로비전)합니다.
시작 스크립트는 Azure 노드에 자동으로 배포되고 노드에서 실행됩니다. 스크립트를 실행할 때 문제가 발생하면 오류 로그를 검토할 수 있습니다. 자세한 내용은 Microsoft HPC 팩사용하여 Azure Nodes 배포 문제 해결
참조하세요.
스크립트 이름
Azure에 업로드하는 패키지의 이름과 실행되는 스크립트의 이름(노드 템플릿에 지정됨) 간에 적합성을 확인해야 합니다. 다음 표의 명명 규칙만 허용됩니다.
스크립트 이름 | 패키지 이름 |
---|---|
file.extension |
file.extension.zip -또는- 파일.zip(예: startup.zip) |
환경 변수
Azure 노드에서 자동으로 설정되는 다음 표의 환경 변수를 사용하여 시작 스크립트를 구성할 수 있습니다.
환경 변수 | 묘사 |
---|---|
HPC_NODE_NAME | Microsoft HPC Pack에서 자동으로 구성된 Azure 노드의 이름입니다(예: azureCN-0014 |
HPC_NODE_GROUPS | 노드가 속한 노드 그룹의 쉼표로 구분된 목록입니다. 노드의 여러 하위 집합에 대해 스크립트의 동작을 특수화할 수 있습니다. 참고: HPC_NODE_GROUPS Azure 노드가 처음 시작될 때만 설정됩니다. 변수가 업데이트되고 노드가 다시 프로비전되면 변수가 동적으로 업데이트되지 않습니다. |
본보기
다음 예제는 포트31337 서버 그룹
@echo off
echo %HPC_NODE_GROUPS% | findstr /C: "Port31337 Server Group"
if %errorlevel% == 0 (
echo Creating firewall exception
netsh advfirewall firewall add rule name="MyRule" dir=in protocol=tcp localport=31337 action=allow enable=yes
)
로그 파일
시작 스크립트를 실행할 때 문제가 발생하면 스크립트에 대한 로그 파일을 검토합니다. 시작 스크립트에 대한 로그는 다음 표에 나와 있습니다. 로그 파일은 각 Azure 작업자 노드의 %CCP_HOME% 폴더에 있습니다.
로그 파일 | 묘사 |
---|---|
HpcStartupCommand.log | 종료 코드 및 출력 스트림 |
HpcStartupCommand.err | 오류 스트림 |
참고 항목
Microsoft HPC 팩 대한 Azure 노드 템플릿 구성