2017-04-06 6 views
-2

여기 내 시나리오가 있습니다. HDI 클러스터를 만들고 ARM 템플릿을 사용하여 사용자 정의 응용 프로그램을 설치합니다.HDI 클러스터에서 작업자, 코어, 램의 수를 얻는 방법

셸 스크립트를 사용하여 내 응용 프로그램에 대해 구성해야하는 값은 다음과 같습니다. ARM 템플릿의 CustomScript 옵션을 사용하여 내 응용 프로그램 설치.

RAM 작업자 노드

헤드 노드 당 RAM

작업자 노드 당 코어 수

을 당 작업자 노드 당 코어

번호 작업자 노드의

번호

+0

스택 오버플로는 프로그래밍 및 개발 관련 질문 용 사이트입니다. 이 질문은 프로그래밍이나 개발에 관한 것이 아니기 때문에 주제와는 거리가 먼 것처럼 보입니다. 도움말 센터에서 [여기에서 내가 질문 할 수있는 항목은 무엇입니까?] (http://stackoverflow.com/help/on-topic)를 참조하십시오. 아마도 [Super User] (http://superuser.com/) 나 [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/)가 더 나은 곳이 될 것입니다. 또한 [Dev Ops에 관한 질문을 게시 할 곳은 무엇입니까?] (http://meta.stackexchange.com/q/134306) – jww

답변

0

을 사용할 수 있습니다.작업자 노드 수를 얻습니다. 작업자 노드

PASSWORD=<> 
CLUSTERNAME=<> 
#Worker nodes 
    curl -u admin:$PASSWORD -sS -G "https://$CLUSTERNAME.azurehdinsight.net/api/v1/clusters/$CLUSTERNAME/services/HDFS/components/DATANODE">worker.txt 
cat worker.txt |grep total_count|awk -F: '{print $2}'|sed 's/\,//g' 

RAM을 사용하면 VM의 최대 RAM을 의미합니까? 그렇다면 모든 작업자 노드 VM은 동일한 RAM을 가져야합니다. VM의 RAM과 코어는 VM 크기로 결정됩니다. 자세한 내용은 link을 참조하십시오. 당신이 스크립트로 그것을 달성하고자한다면.

Standard_DS1_v2 1 3.5 

Standard_DS2_v2 2 7 

와 같은 구성 파일을 작성하는 것이 좋습니다. awk를 사용하여 코어 및 MEM을 얻을 수 있지만 쉽습니다. 이러한 예입니다.

mem=`cat configure.txt|grep "Standard_DS1_v2"|awk '{print $3}` 
+0

@karan 나는 API를 사용하여 테스트합니다. 총 MEM 및 CPU 코어를 찾을 수 없습니다. 너는 또한 시험 할 수 있었다. –

+0

yarn-site.xml, hdfs-site.xml, core-site.xml과 같은 HDI 클러스터에있는 구성 파일을 사용하여 작업자 노드의 RAM 및 CPU 코어를 가져 오는 옵션이 있습니까? – karan

+0

찾을 수 없습니다. 검색을 시도 할 수 있습니다. 네가 그들을 찾을 수 없다면. 구성 파일을 만들 수 있습니다. –