2022. 1. 24. 12:49ใAmazon Web Service
AWS ๊ณต์ ๋ฌธ์ ๋งํฌ
https://docs.aws.amazon.com/dlami/latest/devguide/tutorial-gpu-monitoring-gpumon.html
๊ณต์ ๋ฌธ์๊ฐ ๋จ์ ๋ฒ์ญ์ด ๋์ด์๋ค๋ณด๋ ์ฐจ๋ผ๋ฆฌ ์์ด๋ก ๋ณด๋๊ฒ ๋ ์ดํดํ๊ธฐ ํธํ๋ค.
๊ทธ๋๋ ๊ณต์ ๋ฌธ์๋ณด๋ค ๋ธ๋ก๊ทธ์ ๋ ์์ธํ๊ฒ ์ ์ผ๋ฉด ์ข์ ๊ฒ ๊ฐ์์ ๊ธฐ๋ก์ ๋จ๊น๋๋ค.
1. IAM ๋ฉ๋ด์ ๋ค์ด๊ฐ์ '์ฌ์ฉ์' ์ถ๊ฐ(์ด๋ฏธ ์๋ค๋ฉด ์ฌ์ฉ์ ์ ํํด์ ํธ์ง๋ง ํ๋ฉด ๋จ)
2. Permission policies์์ '๊ถํ ์ถ๊ฐ'
์ฐ๋ฆฌ์๊ฒ ํ์ํ 'CloudWatchAgentServerPolicy'๋ฅผ ์ถ๊ฐํด์ค๋๋ค.
(์ ๋ ์ด๋ฏธ ์ถ๊ฐ๋์ด ์์ด์ 0๊ฒฐ๊ณผ ํ์๊ฐ ์ ์์ ๋๋ค)
๊ทธ๋ฌ๊ณ ๋์ ์ด์ ์๋ก์ด ์ ์ฑ ์ ์ง์ ๋ง๋ค์ด์ฃผ์ด์ผ ํฉ๋๋ค! ์ด์ ์ฌ๊ธฐ์๋ถํฐ๊ฐ ๊ณต์ ๋ฌธ์์ ๋์ค๋ ๋ด์ฉ์ ๋๋ค.
3. 2๋ฒ ์คํฌ๋ฆฐ์ท์ '๊ถํ ์ถ๊ฐ' ์์ '์ธ๋ผ์ธ ์ ์ฑ ์ถ๊ฐ'๋ฅผ ๋๋ฌ์ค์๋ค
๊ทธ๋ฆฌ๊ณ
์๋น์ค: CloudWatch
์์ : PutMetricData(์ด๊ฑด ์ง์ ๊ฒ์ํด์ผ ๋์ต๋๋ค)
๋ฅผ ์ ํํด ์ค ๋ค,
JSON ํญ์์ ๊ณต์๋ฌธ์๊ฐ ๋ณด์ฌ์ฃผ๋ JSON๊ณผ ๊ฐ์ ๋ด์ฉ๋ค์ด ์ ๋ค์ด๊ฐ๋์ง๋ ํ์ธํด๋ด ๋๋ค.(Allow, *.. ์ ๊ฐ์)
์ด์ ์ ์ฑ ๊ฒํ ๋ฅผ ์งํํฉ๋๋ค.
์ด๋ฆ์๋ ์ด ์ ์ฑ ์ ๋ํ ์ด๋ฆ์ ์จ์ค๊ฑด๋ฐ์, ์ ๋ ์ด ์ ์ฑ ์ด GPU ๋ชจ๋ํฐ๋ง์ ํ์ํ๊ธฐ ๋๋ฌธ์
'cloudwatch_for_GPU_usage'์ด๋ผ๊ณ ๋ถ์ฌ์ฃผ์์ต๋๋ค.
4. ์ด์ ์ธ์คํด์ค ์ฐ๊ฒฐํด์ ์ฝ์์ฐฝ ๋์ฐ๊ธฐ
EC2 ๋ฉ๋ด์์ ์ธ์คํด์ค ์ฐ๊ฒฐ์ ํตํด ssh ์ ์์ ํด๋ด ๋๋ค.
์ด๋ฏธ DeepLearning์ฉ (์ฐ๋ถํฌ/๋ฆฌ๋ ์ค) ec2 ๋ผ๋ฉด ssh ์ ์์ ํ๋ฉด ์ ์ํ ์ ์๋ ๊ฐ์ํ๊ฒฝ ๋ชฉ๋ก์ด ๋์ค๋๋ฐ ๋ณธ์ธ์ด ์ฌ์ฉํ์๋ ๊ฐ์ํ๊ฒฝ์ ๊ผญ activateํ๊ณ ์์ํฉ๋๋ค.
5. cd ~/tools/GPUCloudWatchMonitor ๋ก ์ด๋ํด์ gpumon.py ์๋์ง ํ์ธ
cd ~/tools/GPUCloudWatchMonitor
์ด ์์ README ํ์ผ๊ณผ gpumon.py๊ฐ ์์ด์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ํ์ฌ region์ด ๋ํดํธ๋ก ์ค์ ๋ us-east-1์ด ์๋๋ผ ์์ธ์ด๊ธฐ ๋๋ฌธ์
vi gpumon.py
๋ก ๋ค์ด๊ฐ์
EC2_REGION์ ๋ฐ๊พธ์ด์ค๋๋ค.
๋ฌผ๋ก ๋ณธ์ธ ์ธ์คํด์ค region์ด ์์ธ์ด ์๋๋ผ๋ฉด ๊ทธ ๋ฆฌ์ ์ ๋ง๊ฒ ๋ฐ๊พธ์ด ์ฃผ์๋ฉด ๋ฉ๋๋ค.
ํ๋จ์ myNameSpace๋ storage resolution๋ํ ๋ณ๊ฒฝํ์ค ์ ์์ต๋๋ค.
myNameSpace๋ ๋์ค์ cloudwatch์ ๋ํ๋๋ metrics์ ์ ์ฉ๋๋ ์ด๋ฆ์ธ ๊ฒ ๊ฐ์ต๋๋ค.
6. aws configure๋ก access key์ secret access key ์ ๋ ฅํ๊ธฐ
์ฐ์ access key์ secret access key๊ฐ ์๋์ง ํ์ธํด๋ด ์๋ค.
๋ค์ AWS ์ฝ์์์ IAM ํ์ด์ง๋ก ๋์์ต๋๋ค.
'๋ณด์ ์๊ฒฉ ์ฆ๋ช ' ํญ์ ๋ณด์๋ฉด ์ก์ธ์ค ํค๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
์ด๋ฏธ ๊ธฐ์กด์ ์ก์ธ์ค ํค๊ฐ ์๊ณ , ์ก์ธ์ค ํค๋ฅผ ์์ฑํ์ค๋ ์ ๊ณต๋๋ csv ํ์ผ(์ด ํ์ผ ์์ secret access key๊ฐ ๋ช ์๋์ด์์. ๋ค์ ๋ค์ด ๋ถ๊ฐ)๋ ์๋ค๋ฉด ์ด ๊ณผ์ ์ ์คํตํ์ ๋ ๋ฉ๋๋ค.
๋ง์ฝ ์๊ฑฐ๋, ์ ์ฅํ์ง ์์๊ฑฐ๋, ๊ธฐ์ต๋์ง ์์ผ์ ๋ค๋ฉด ์ก์ธ์ค ํค๋ฅผ ์๋ก ๋ง๋ค๋ฉด ๋ฉ๋๋ค.
์ก์ธ์ค ํค๋ฅผ ์๋ก ์์ฑํ๊ฒ ๋๋ฉด
csvํ์ผ์ ์ ์ฅํ ์ ์๋๋ฐ, ์ด ํ์ผ์ ์ด์ด๋ณด๋ฉด
access key์ secret access key๊ฐ ์ฃผ์ด์ง๋๋ค.
๊ทธ๋ผ ์ด์ ์ด ๊ฐ๋ค์ ์ ๋ ฅํด๋ด ์๋ค.
aws configure
๋ฅผ ์ ๋ ฅํ๋ฉด
์์ ๊ฐ์ด Access key, Secret Acess Key๋ฅผ ๋ฌผ์ด๋ณด๋ ์ ๋ ฅ ํด์ฃผ๋ฉด ๋ฉ๋๋ค.
๋ฆฌ์ ์ด๋ฆ์ด๋ ouput format์ ๊ทธ๋ฅ ๋น์นธ์ผ๋ก ๋๊ณ ์ํฐ ์น์๋ฉด ๋ฉ๋๋ค.
7. ์ด์ gpumon.py ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ!
python3 gpumon.py &
๋ฅผ ์ ๋ ฅํด ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋์๊ฐ ์ ์๊ฒ ํด์ค๋๋ค.
์๋ฌ๊ฐ ๋์ง ์๊ณ
์ด๋ฐ ๊ฒฐ๊ณผ๊ฐ ๋์๋ค๋ฉด ์ฑ๊ณต์ ๋๋ค.
8. CloudWatch > ์งํ > ๋ชจ๋ ์งํ > DeepLearningTrain ์ ํ
๊ทธ๋ผ ์ด์ GPU ์ฌ์ฉ๋, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋, ์จ๋ ๋ฑ์ ํ๋์ ๊ทธ๋ํ๋ก ํ์ธํ ์ ์์ต๋๋ค.
๋ ~!
'Amazon Web Service' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
AWS์ ๊ด๋ จํ ๋คํธ์ํฌ ๊ธฐ์ด ์ง์ (0) | 2022.06.26 |
---|---|
AWS ์์ํ๊ธฐ - ๊ธฐ๋ณธ ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถ (0) | 2022.04.03 |