[아마존/라이트세일] 서버 트래픽 사용량 알아내는 방법

프로그래밍/서버2020. 2. 19. 14:43

cafe24에서는 손쉽게 트래픽을 얼마나 사용했는지 알 수 있습니다.

그런데 aws lightsail에서는.. 의외로 그런 것이 제공되지 않는 것 같습니다.

 

 

aws lightsail에서 보면.. cafe24에 비해 상당히 많은 트래픽을 제공합니다.

한달에 5달러 사는 라이트세일을 사용해도 한달에 2TB(테라 바이트)의 트래픽을 사용할 수 있습니다.

 

https://forums.aws.amazon.com/thread.jspa?threadID=250386

에 누군가가 올린 트래픽에 대한 질문이 있습니다.

 

aws 직원이.. 2017년에 한 답변이긴 하지만.. 아직도 유효?한 답변 같습니다.

평균 발신/수신 네트워크 트래픽을 보라고 하네요;;

 

그런데 이 수치는.. 좀 보기에 불편합니다. 하루 수치 뿐만 아니라 누적된 수치가 안나오니까요 ㅜㅜ

 

putty에서 awscli를 설치하면.. 이런 데이터들에 대해 더 쉽게 접근할 수 있습니다.

 

먼저 aws cli를 설치해야 합니다. 아래의 명령어를 이용해 awscli를 설치하면.. 옛날 버전이 깔리니 주의합시다. ㅡ.ㅡ;;

 

sudo apt install awscli

sudo apt install awscli

 

aws --version
aws-cli/1.11.13 Python/3.5.2 Linux/4.4.0-1079-aws botocore/1.4.70

 

1.11.13버전이 깔리네요.. 이 버전에선 aws lightsail 관련 명령어가 없는듯 합니다..

 

진짜 설치법은 아래에 있습니다.

 

1. aws cli 다운받기

sudo curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

sudo curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

 

2. 압축 풀기

unzip awscliv2.zip

sudo unzip awscliv2.zip

 

3. 설치하기

 sudo ./aws/install

sudo ./aws/install

 

4. 버전 확인

aws --version

aws --version 

aws-cli/2.0.0 Python/3.7.3 Linux/4.4.0-1079-aws botocore/2.0.0dev4

 

드디어 2.0.0 버전을 설치했습니다.

 

 

이제 아래의 명령어로.. 대충 데이터를 구하려고 해봤습니다.

aws lightsail get-instance-metric-data --instance-name My_Instance_Name --metric-name NetworkOut --period 2700000 --start-time 1488326400 --end-time 1490100240 --unit Bytes --statistics Sum

 

그런데 에러가 발생하네요;;

An error occurred (AccessDeniedException) when calling the GetInstanceMetricData operation: User: arn:aws:sts::011110361111:assumed-role/AmazonLightsailInstanceRole/i-0b7c322abca17a955 is not authorized to perform: lightsail:GetInstanceMetricData on resource: arn:aws:lightsail:us-east-2:044334333327:*

 

위와 같은 에러가 발생했습니다.

 

 

보니까 인증 관련 추가 작업이 필요하네요..

 

$aws configure

AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json

위와 같은 형식으로.. 설정 먼저 해야 합니다.

 

https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html#cli-quick-configuration

위의 글을 참고하면 됩니다.

 

AWS Access Key와 AWS Secret Access Key를 구하는 것은 어렵지 않습니다..

IAM에서 user 1명 만들고.. key 만들면 되네요.

Default regison name은 그냥 us-east-2로 하셔도 되고..

Default output format도 역시 json으로 하는게 무난하지 싶습니다.

 

이렇게 설정하니까 아까 발생하던 에러가 사라졌습니다. ㅜ.ㅜ

 

aws lightsail get-instance-metric-data --instance-name WordPress-512MB-Ohio-1 --metric-name NetworkOut --period 2628000 --start-time 1546304400 --end-time 1893456000 --unit Bytes --statistics Sum

 

위에서 빨간색으로 입력하신 부분은 원하는 값으로 바꿔야 합니다.

starttime의 단위는 epochtime인데 1546304400 

GMT: 2019년 January 1일 Tuesday AM 1:00:00 을 의미하니.. 변경 안하셔도 되긴 합니다.

 

이 시작일로부터 2030년까지 기간의 값을.. 대략 한달 단위로 뽑아내는 명령어입니다.

(--unit을 Megabytes로 변경하면 이상하게.. 값이 제대로 안나오네요;;)

 

결과값이.. 정렬되서 나오는 것 같지는 않습니다.. 흠

최근 2020년 1월 31일?부터 현재까지 트래픽을 보면..

43755435500 bytes라고 하네요.

 

이는 약.. 42,729,917 KB입니다.

이는 약.. 41,728 MB입니다.

이는 약.. 40.8 GB입니다.

 

하루에.. 약 2GB의 트래픽을 서버에서 발신했다는 말 같습니다..

흠..

 

그런데 aws lightsail 홈페이지에서 발신 네트워크 트래픽을 보면..

시간당 약 1MB정도 씁니다. 사실 단위가 너무 애매해서.. 시간당 1MB를 쓰는게 맞는지도 의심이 가네요..

 

일단 한 시간당 1MB가 맞다면.. 하루 해봤자 24MB입니다. 20일 하면.. 약 500MB로 0.5GB인데

 

aws cli에서 구한 값과는 너무 차이가 나네요.

 

 

 

무엇이 맞는 것인지 추후에 좀 더 조사하겠습니다.

 

참고

https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html

작성자

Posted by 드리머즈

관련 글

댓글 영역