YARN은 REST API를 이용하여 스케줄러의 클러스터 사용량을 확인할 수 있습니다. 이 API를 이용하여 현재 클러스터가 어느정도의 메모리를 사용하고 있는지를 사용량(퍼센트)으로 확인하는 스크립트를 알아보겠습니다.
클러스터의 메모리 사용량 지표는 다음과 같습니다.
- totalMB: 전체 메모리
- reservedMB: 사용 예약된 메모리
- availableMB: 사용 대기중인 메모리
- allocatedMB: 사용중인 메모리
- totalMB + reservedMB = availableMB + allocatedMB
이 스크립트를 크론탭으로 2분마다 실행합니다.
*/2 * * * * /rm_usage.py >> /data/data_`date -u +\%Y\%m\%d`.csv |
결과가 다음과 같이 저장됩니다.
$ tail data_20190805.csv 2019-08-05 08:14:02,1486080,0,1057632,428448,28.83 2019-08-05 08:16:01,1486080,0,1439424,46656,3.14 2019-08-05 08:18:01,1486080,0,1483104,2976,0.20 2019-08-05 08:20:01,1486080,0,1448160,37920,2.55 2019-08-05 08:22:01,1486080,0,1323456,162624,10.94 2019-08-05 08:24:01,1486080,0,1294528,191552,12.89 |
이 결과를 보면 현재 클러스터가 어느정도 사용중인지 확인할 수 있습니다.
이를 보고 클러스터의 증설이나 감소를 결정할 수 있습니다.
반응형