collectd를 사용하여 사용자 지정 지표 검색 - Amazon CloudWatch

collectd를 사용하여 사용자 지정 지표 검색

Linux 서버에서만 지원되는 collectd 프로토콜과 함께 CloudWatch 에이전트를 사용하여 애플리케이션 또는 서비스에서 추가 지표를 검색할 수 있습니다. collectd 는 매우 다양한 애플리케이션에 대한 시스템 통계를 수집할 수 있는 플러그 인이 포함된 인기 있는 오픈 소스 솔루션입니다. CloudWatch 에이전트가 이미 수집할 수 있는 시스템 지표를 collectd의 추가 지표와 결합하면 시스템 및 애플리케이션을 효과적으로 모니터링하고 분석하며 관련 문제를 해결할 수 있습니다. collectd에 대한 자세한 내용은 collectd - 시스템 통계 수집 데몬을 참조하세요.

collectd 소프트웨어를 사용하여 지표를 CloudWatch 에이전트에 전송합니다. collectd 지표의 경우 CloudWatch 에이전트가 서버 역할을 하며 collectd 플러그 인은 클라이언트 역할을 합니다.

collectd 소프트웨어는 모든 서버에 자동으로 설치되지 않습니다. Amazon Linux 2를 실행하는 서버에서 다음 단계에 따라 collectd를 설치합니다.

sudo amazon-linux-extras install collectd

다른 시스템에 collectd를 설치하는 방법에 대한 자세한 내용은 collectd 다운로드 페이지를 참조하세요.

이러한 사용자 지정 지표를 수집하려면 에이전트 구성 파일의 metrics_collected 섹션에 "collectd": {} 줄을 추가합니다. 이 줄을 수동으로 추가할 수 있습니다. 마법사를 사용하여 이 구성 파일을 생성하는 경우, 사용자를 위해 이루어집니다. 자세한 내용은 CloudWatch 에이전트 구성 파일 생성 단원을 참조하십시오.

추가 선택적 파라미터도 사용 가능합니다. collectd를 사용하고 있고 /etc/collectd/auth_filecollectd_auth_file로 사용하지 않는 경우 이러한 선택 사항을 일부 설정해야 합니다.

  • service_address: CloudWatch 에이전트가 수신 대기해야 하는 서비스 주소입니다. 형식은 "udp://ip:port입니다. 기본값은 udp://127.0.0.1:25826입니다.

  • name_prefix: 각 collectd 지표의 이름 시작 부분에 부착하는 접두사. 기본값은 collectd_입니다. 최대 길이는 255자입니다.

  • collectd_security_level: 네트워크 구성의 보안 수준을 설정합니다. 기본값은 encrypt입니다.

    encrypt는 암호화된 데이터만 수락하도록 지정합니다. sign은 서명되고 암호화된 데이터만 수락하도록 지정합니다. none은 모든 데이터를 수락하도록 지정합니다. collectd_auth_file에 값을 지정하는 경우 가능하면 암호화된 데이터가 복호화됩니다.

    자세한 내용은 collectd Wiki의 클라이언트 설정가능한 상호작용을 참조하세요.

  • collectd_auth_file 사용자 이름이 비밀번호에 매핑되는 파일을 설정합니다. 이 비밀번호는 서명을 확인하고 암호화된 네트워크 패킷을 복호화하는 데 사용합니다. 제공된 경우 서명된 데이터를 확인하고 암호화된 패킷을 복호화합니다. 그렇지 않은 경우 서명을 확인하지 않아도 서명된 데이터가 수락 완료되어 암호화된 데이터를 복호화할 수 없습니다.

    기본값은 /etc/collectd/auth_file입니다.

    collectd_security_levelnone으로 설정된 경우 이것은 선택 사항입니다. collectd_security_levelencrypt 또는 sign으로 설정한 경우 collectd_auth_file을 지정해야 합니다.

    auth 파일 형식은 각 줄에 사용자 이름 다음에 콜론이 나오고 스페이스 다음에 비밀번호가 나옵니다. 예:

    user1: user1_password

    user2: user2_password

  • collectd_typesdb: 데이터 세트 설명을 포함하는 1개 이상의 파일 목록. 이 목록은 목록에 항목이 1개만 있어도 괄호로 묶어야 합니다. 이 목록의 각 항목은 큰따옴표로 묶어야 합니다. 여러 항목이 있는 경우 각각 쉼표로 구분하세요. Linux 서버에서 기본값은 ["/usr/share/collectd/types.db"]입니다. macOs 컴퓨터에서 기본값은 collectd의 버전에 따라 다릅니다. 예: ["/usr/local/Cellar/collectd/5.12.0/share/collectd/types.db"]

    자세한 내용은 https://www.collectd.org/documentation/manpages/types.db.html 단원을 참조하십시오.

  • metrics_aggregation_interval: CloudWatch가 지표를 단일 데이터 요소로 집계하는 빈도(초)입니다. 기본값은 60초입니다. 범위는 0 ~ 172,000입니다. 이것을 0에 설정하면 collectd 지표를 집계할 수 없습니다.

다음은 에이전트 구성 파일의 collectd 섹션의 예입니다.

{ "metrics":{ "metrics_collected":{ "collectd":{ "name_prefix":"My_collectd_metrics_", "metrics_aggregation_interval":120 } } } }

CloudWatch 에이전트가 가져온 collectd 지표 보기

수집된 지표를 CloudWatch로 가져온 후 이러한 지표를 시계열 그래프로 보고, 해당 지표를 감시하여 지표가 지정된 임곗값을 위반하는 경우 이를 알릴 수 있는 경보를 생성할 수 있습니다. 다음 절차에서는 collectd 지표를 시계열 그래프로 보는 방법을 보여 줍니다. 경보 설정에 대한 자세한 내용은 Amazon CloudWatch 경보 사용 단원을 참조하세요.

CloudWatch 콘솔에서 collectd 지표를 보려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 지표를 선택합니다.

  3. 에이전트가 수집한 지표의 네임스페이스를 선택합니다. 기본적으로 이 네임스페이스는 CWAgent이지만, CloudWatch 에이전트 구성 파일에서 다른 네임스페이스를 지정했을 수 있습니다.

  4. 지표 측정기준(예: 인스턴스별 지표)을 선택합니다.

  5. 모든 지표 탭에 네임스페이스의 해당 측정기준에 대한 모든 지표가 표시됩니다. 다음을 수행할 수 있습니다.

    1. 측정치를 그래프로 표시하려면 측정치 옆에 있는 확인란을 선택합니다. 모든 지표를 선택하려면 테이블의 머리글 행에 있는 확인란을 선택합니다.

    2. 테이블을 정렬하려면 열 머리글을 사용합니다.

    3. 리소스로 필터링하려면 리소스 ID를 선택한 후 검색에 추가를 선택합니다.

    4. 지표로 필터링하려면 지표 이름을 선택한 후 검색에 추가를 선택합니다.

  6. (선택 사항) 이 그래프를 CloudWatch 대시보드에 추가하려면 [작업(Actions)], [대시보드에 추가(Add to dashboard)]를 선택합니다.