블로그로 돌아가기

VM 내에서 데이터 사용량을 모니터링하기 위해 vnStat 및 iftop을 사용하는 방법

VM 내에서 데이터 사용량을 모니터링하기 위해 vnStat 및 iftop을 사용하는 방법

클라우드 컴퓨팅 세대에서 가상 머신(VM)은 매우 흔해진 반면, 물리 머신의 사용은 점차 감소하기 시작했습니다. 이 포스트에서는 VM의 데이터 소비를 모니터링하는 데 사용할 수 있는 도구인 ‘vnStat’와 ‘iftop’을 소개합니다.

먼저, 다음과 같은 리소스를 가진 머신을 생성합니다:
20 GHz CPU
16 GB RAM
20 GB SSD
다음에서 제공하는 Ubuntu 18.04 이미지로 디스크를 마운트하고 있습니다: CloudSigma’s 라이브러리.

Ubuntu 18.04 : VirtIO 드라이버가 사전 설치된 64비트, superuser, Python 2.7.15, Pip 18.0, OpenSSL 1.1.0i, Cloud-init 및 2018-09-30까지의 최신 업데이트.

다음으로, 머신의 모든 기존 저장소와 패키지를 업데이트합니다.

이제 시스템이 최신 상태로 업데이트되었으므로, 도구인 ‘vnStat’와 ‘iftop’으로 넘어가겠습니다.

VNSTAT

개발자 humdi에 따르면, vnStat은 선택한 인터페이스의 네트워크 트래픽 로그를 유지하는 Linux 및 BSD용 콘솔 기반 네트워크 트래픽 모니터입니다. 커널에서 제공하는 네트워크 인터페이스 통계를 정보 소스로 사용합니다. 이는 vnStat이 실제로 트래픽을 스니핑하지 않음을 의미하며, 시스템 리소스 사용량도 적게 유지되도록 보장합니다.

vnStat의 몇 가지 기능은 다음과 같습니다:

  1. 시스템이 재부팅되어도 데이터는 계속 유지됩니다.
  2. 동시에 여러 인터페이스를 모니터링할 수 있습니다.
  3. 일별, 주별 등 여러 출력 옵션이 있습니다.
  4. 사용자가 데이터 보존 정책을 구성할 수 있습니다.
  5. 청구 주기에 따라 월을 구성할 수 있습니다.
  6. 도구 자체가 매우 가볍고 리소스 사용량이 최소화됩니다.
  7. 트래픽에 관계없이 CPU 사용량은 동일하게 유지됩니다.
설치

다음 명령어를 사용하여 vnStat을 설치합니다:

네트워크 인터페이스를 자동으로 감지해야 합니다. 감지하지 못하는 경우, 다음 명령어로 인터페이스를 확인할 수 있습니다:

제 경우에는 두 개의 인터페이스가 보입니다:

루프백 인터페이스는 무시해도 됩니다. 모니터링하려는 인터페이스는 ‘ens3’입니다. 다음 명령어를 사용하여 vnStat에서 이를 업데이트할 수 있습니다:

사용 가이드

사용 가이드는 다음 명령어를 사용하여 볼 수 있습니다: vnStat –help

사용법은 다음과 같이 설명됩니다:

With the help of these commands, we can get the metrics of data usage.

For monitoring it easily and intuitively, we can install vnStat dashboard. Following are the steps to install the dashboard:

Install the following required dependencies:

After installation of the required dependencies, we will fetch the dashboard from github repository, unzip it and place it in our web server directory.

Next, we need to edit the configuration.

The following lines would need a change. I am marking the required changes in bold.

모니터링을 더 쉽게 하기 위해 인터페이스 이름을 지정할 수 있습니다. 모니터링할 인터페이스가 여러 개 있을 수 있습니다. 여기에 추가할 수 있습니다.

변경 사항을 적용한 후, <<IP-ADDRESS>>/vnstat을(를) 여십시오.

이제 데이터를 깔끔한 방식으로 볼 수 있습니다.

diagram

network traffic

IFTOP

iftop은 지정된 인터페이스 또는 지정되지 않은 경우 외부 인터페이스처럼 보이는 첫 번째 인터페이스에서 네트워크 트래픽을 수신 대기합니다. 호스트 쌍별 현재 대역폭 사용량 표를 표시합니다. 인터페이스의 모든 네트워크 트래픽을 모니터링하려면 충분한 권한을 가지고 iftop을 실행해야 합니다.

설치

다음 명령어를 사용하여 Iftop을 설치할 수 있습니다:

사용 가이드

사용 가이드는 다음 명령어를 사용하여 볼 수 있습니다: iftop -h

사용법은 다음과 같이 설명됩니다:

작동하려면 root 권한이 필요합니다. 제 사용자 cloudsigma는 sudoer 사용자이므로 단순히 sudo를 사용하고 있습니다. ‘sudo su’ 명령을 사용한 다음 모든 명령을 root 사용자로 실행할 수도 있습니다.

다음 명령은 인터페이스 ‘ens3’의 모든 연결과 데이터 트랜잭션을 표시합니다:

특정 시간 동안의 데이터 트래픽을 캡처하는 것이 요구 사항인 경우 더 간단한 방법:

위 명령은 향후 30초 동안의 데이터 트래픽 트랜잭션을 요약하고, 시간이 완료되면 모든 데이터 사용량과 전송 속도를 나열하는 표를 제공합니다.

iftop은 실시간 전송 속도를 제공하지만, 데이터를 저장하거나 패턴을 직관적으로 시각화하여 볼 수 있는 대시보드가 없습니다. 따라서 실시간 데이터 전송 속도를 확인하려면 iftop을 권장합니다. 더 오랜 기간 동안 데이터 트래픽을 모니터링하려면 vnStat.

이 가이드를 유용하게 활용하여 VM 내에서 데이터 소비를 모니터링하기 위해 vnStat 및 iftop을 사용하는 기본 방법을 적용해 보시기 바랍니다.

author

Akshay Nagpal

작성자 · CloudSigma

Preslav Dobrev는 CloudSigma의 크리에이티브 디자이너로서, 전통적이고 혁신적인 마케팅 채널을 활용하여 일관된 비즈니스 정체성을 구축하는 데 중점을 두고 있습니다. 그는 영향력 있는 브랜드 내러티브를 창출하기 위해 예술적 비전과 전략적 마케팅을 결합하는 데 능숙합니다.

댓글

아직 댓글이 없습니다. 첫 번째로 작성해 보세요.