트래픽 흐름 분석

Flow Analyzer를 사용하면 다음 태스크를 수행할 수 있습니다.

  • VPC 흐름 로그에서 단순 쿼리 빌드 및 실행
  • VPC 흐름 로그에서 쿼리에 대한 SQL 필터 빌드(WHERE 문 사용)
  • 선택한 필드를 사용하여 결과 구성 및 총 트래픽 및 집계 패킷을 사용하여 쿼리 결과 정렬
  • 선택한 시간 간격으로 트래픽 보기
  • 나머지 트래픽과 비교할 때 시간별 최상위 5개 트래픽 흐름을 그래픽 형식으로 보기
  • 테이블 형식으로 선택한 기간 동안 집계된 최상위 트래픽이 있는 리소스 보기
  • 쿼리 결과에서 특정 소스와 대상 쌍 사이의 트래픽 세부정보 보기
  • VPC 흐름 로그에서 사용 가능한 남은 필드를 사용하여 쿼리 결과 드릴다운

시작하기 전에

  1. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  2. 서브넷을 만들 때 VPC 흐름 로그를 사용 설정하거나 기존 서브넷에 대해 VPC 흐름 로그를 사용 설정합니다.

필수 역할 및 권한

Flow Analyzer가 사용자를 대신해서 데이터 읽기를 수행하므로 사용자에게 로그가 포함된 버킷 읽기에 필요한 권한이 있는지 확인합니다. 또한 로그 애널리틱스를 사용하도록 버킷을 업그레이드해야 합니다.

  • 사용자가 버킷에서 로그를 읽을 수 있도록 로그 탐색기 페이지를 사용합니다. 로그 애널리틱스 페이지를 사용하여 다음 역할 중 하나를 부여합니다.

    • _Default 버킷에서 _Default 보기에 액세스하려면 로그 뷰어 역할(roles/logging.viewer)을 부여합니다.
    • 데이터 액세스 로그를 포함하여 _Default 로그 버킷에서 모든 로그에 액세스하려면 비공개 로그 뷰어 역할(roles/logging.privateLogViewer)을 부여합니다.

    자세한 내용은 Logging 역할을 참조하세요.

  • 사용자가 사용자 정의 버킷에 저장된 로그를 읽을 수 있게 하려면 로그 뷰 접근자 역할(roles/logging.viewAccessor)을 부여하세요. 단, 특정 로그 뷰에 대한 승인을 제한할 수 있습니다. 자세한 내용은 로그 뷰에 대한 액세스 제어를 참조하세요.

  • 또는 다음 권한을 부여하는 커스텀 역할을 만듭니다.

    • logging.buckets.get
    • logging.buckets.list
    • logging.logEntries.list
    • logging.logs.list
    • resourcemanager.projects.get

쿼리 빌드 및 실행

쿼리를 빌드하고 실행하려면 다음을 수행합니다.

콘솔

  1. Google Cloud 콘솔에서 Flow Analyzer 페이지로 이동합니다.

    Flow Analyzer로 이동

  2. 로그 버킷을 선택합니다. _Default 로그 버킷을 사용하려는 경우에는 이 단계를 건너뛸 수 있습니다.

  3. 트래픽 집계 메뉴에서 다음 옵션 중 하나를 선택합니다.

    • 소스 - 대상: 소스에서 대상으로 트래픽을 집계합니다.
    • 클라이언트 - 서버: 낮은 포트 번호의 리소스와 서비스 정의를 고려하거나 GKE 서비스 속성을 서버로 고려해서 양방향으로 트래픽을 집계합니다.

    자세한 내용은 트래픽 집계를 참조하세요.

  4. 쿼리 기간을 설정하려면 시간 범위 선택기를 사용합니다. 기본 시간 범위는 1시간이지만 사전 설정된 시간 옵션 중에서 선택할 수 있습니다. 커스텀 시작 및 종료 시간을 지정하거나 특정 시간의 시간 범위를 선택할 수 있습니다.

  5. 차트에서 선택한 기간 다시 실행을 클릭합니다.

  6. 소스 및 대상 또는 클라이언트 및 서버 필드의 필드 목록 중에서 필드를 선택합니다.

  7. 키를 선택한 필드로 사용해서 선택한 키-값 쌍과 일치하는 하나 이상의 필터 표현식을 필터 흐름에 추가합니다.

    동일한 필드에 대해 여러 필터를 선택하면 OR 연산자가 사용됩니다. 여러 필드에 대해 필터를 선택하면 AND 연산자가 사용됩니다. 예를 들어 2개의 IP 주소 값으로 1.2.3.410.20.10.30을 선택하고 2개의 Country 값으로 USFrance를 선택하면 쿼리에 다음 필터 논리가 적용됩니다.

    (IP=1.2.3.4 OR IP=10.20.10.30) AND (Country=US OR Country=France)

  8. 필드를 사용하여 흐름을 구성합니다. 흐름 세부정보를 구성하는 필드를 선택합니다.

  9. 새 쿼리 실행을 클릭합니다.

    최고 데이터 흐름 차트와 모든 데이터 흐름 테이블이 업데이트됩니다.

  10. 표시 옵션을 사용하여 쿼리 결과를 맞춤설정합니다. 사용 가능한 여러 표시 옵션에 대한 자세한 내용은 표시 옵션을 참조하세요. 커스텀 옵션을 선택하려면 표시 옵션 맞춤설정을 참조하세요.

  11. 표시 옵션 변경이 완료되었으면 확인을 클릭합니다.

  12. 재실행을 클릭하여 선택한 표시 옵션으로 쿼리를 다시 실행합니다.

SQL 쿼리 빌드 및 실행

SQL 필터 옵션을 사용하여 Flow Analyzer에서 쿼리를 빌드하고 실행하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 Flow Analyzer 페이지로 이동합니다.

    Flow Analyzer로 이동

  2. 로그 버킷을 선택합니다. _Default 로그 버킷을 사용하려는 경우에는 이 단계를 건너뛸 수 있습니다.

  3. 쿼리 시간 범위를 설정하려면 시간 범위 선택기를 사용하거나 선택한 기간 다시 실행을 선택합니다.

  4. 트래픽 집계 메뉴에서 다음 옵션 중 하나를 선택합니다.

    • 소스 - 대상: 소스에서 대상으로 트래픽을 집계합니다.
    • 클라이언트 - 서버: 낮은 포트 번호의 리소스와 서비스 정의를 서버로 고려해서 양방향으로 트래픽을 집계합니다.

      자세한 내용은 트래픽 집계를 참조하세요.

  5. SQL 필터를 클릭합니다.

  6. BigQuery SQL 문법을 사용하여 SQL 필터 쿼리를 입력합니다.

  7. 필터 표현식 구문 및 예시를 보려면 필터 표현식 문법 및 예시를 클릭합니다.

  8. 필드를 사용하여 흐름을 구성합니다. 흐름 세부정보를 구성하는 필드를 선택합니다.

  9. 새 쿼리 실행을 클릭합니다.

    최고 데이터 흐름 차트와 모든 데이터 흐름 테이블이 업데이트됩니다.

  10. 표시 옵션을 사용하여 쿼리 결과를 맞춤설정합니다. 사용 가능한 여러 표시 옵션에 대한 자세한 내용은 표시 옵션을 참조하세요. 커스텀 옵션을 선택하려면 표시 옵션 맞춤설정을 참조하세요.

  11. 표시 옵션 변경이 완료되었으면 확인을 클릭합니다.

  12. 선택한 표시 옵션으로 쿼리를 다시 실행하려면 재실행을 클릭합니다.

표시 옵션 맞춤설정

트래픽 흐름의 특정 세부정보를 보기 위해 표시 옵션을 맞춤설정할 수 있습니다. 사용 가능한 여러 표시 옵션에 대한 자세한 내용은 표시 옵션을 참조하세요.

콘솔

  1. 쿼리를 빌드합니다.
    1. 로그 버킷을 선택합니다. _Default 로그 버킷을 사용하려는 경우에는 이 단계를 건너뛸 수 있습니다.
    2. 쿼리 시간 범위를 설정하려면 시간 범위 선택기를 사용하거나 선택한 기간 다시 실행을 선택합니다.
    3. 필터를 선택합니다.
    4. 필드를 선택하여 결과를 정리합니다.
  2. 쿼리를 실행합니다.
  3. 측정항목 유형으로 전송된 바이트 또는 전송된 패킷을 선택합니다.
  4. 측정항목 집계 옵션을 선택합니다.

    전송된 바이트를 측정항목으로 선택한 경우 다음 옵션 중 하나를 선택합니다.

    1. 총 트래픽: 선택한 기간의 총 트래픽입니다. 기본적으로 사용 설정됩니다.
    2. 평균 트래픽 속도: 선택한 기간의 평균 트래픽 속도입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    3. 트래픽 속도 중앙값: 선택한 기간 동안의 트래픽 속도 중앙값입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    4. P95 트래픽 속도: 선택한 기간 동안의 95번째 백분위수 트래픽 속도입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    5. 최대 트래픽 속도: 선택한 기간 동안의 최대 트래픽 속도입니다.

    전송된 패킷을 측정항목으로 선택한 경우 다음 옵션 중 하나를 선택합니다.

    1. 집계 패킷: 선택한 기간 동안의 집계된 패킷 수입니다. 기본적으로 사용 설정됩니다.
    2. 평균 패킷 속도: 선택한 기간 동안의 평균 패킷 속도입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    3. 패킷 속도 중앙값: 선택한 기간 동안의 패킷 속도 중앙값입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    4. P95 패킷 속도: 선택한 기간 동안의 95번째 백분위수 패킷 속도입니다. 트래픽이 관찰된 정렬 기간 동안에만 계산됩니다.
    5. 최대 패킷 속도: 선택한 기간 동안의 최대 패킷 속도입니다.

    여러 측정항목 집계 옵션에 대한 자세한 내용은 측정항목 집계를 참조하세요.

  5. 정렬 기간을 선택합니다. 정렬 기간에 대한 자세한 내용은 정렬 기간을 참조하세요.

  6. 샘플링 포인트를 선택합니다.

    • 소스 엔드포인트: 흐름의 소스 엔드포인트에서 보고된 전송된 바이트 또는 전송된 패킷 수
    • 대상 엔드포인트: 흐름의 대상 엔드포인트에서 보고된 전송된 바이트 또는 전송된 패킷 수
    • 소스 및 대상 엔드포인트 합계: 흐름의 양쪽 엔드포인트에서 보고된 전송된 바이트 또는 전송된 패킷의 합계
    • 소스 및 대상 엔드포인트 평균: 소스 및 대상 세부정보가 모두 VPC 흐름 로그에 제공되는 경우 흐름의 양쪽 엔드포인트에서 보고된 전송된 바이트 또는 전송된 패킷의 평균

    자세한 내용은 샘플링 포인트를 참조하세요.

흐름 세부정보 보기

데이터 흐름 테이블에서 선택한 흐름의 흐름 세부정보를 보려면 다음을 수행합니다.

콘솔

  1. 쿼리를 빌드합니다.
    1. 로그 버킷을 선택합니다. _Default 로그 버킷을 사용하려는 경우에는 이 단계를 건너뛸 수 있습니다.
    2. 쿼리 시간 범위를 설정하려면 시간 범위 선택기를 사용하거나 선택한 기간 다시 실행을 선택합니다.
    3. 필터를 선택합니다.
    4. 필드를 선택하여 결과를 정리합니다.
  2. 쿼리를 실행합니다.
  3. 모든 데이터 흐름 테이블에서 모든 흐름에 대해 세부정보 표시를 클릭합니다.

    표시되는 흐름 세부정보에 선택한 필터와 일치하는 모든 리소스 및 이러한 리소스의 트래픽이 표시됩니다.

트래픽 흐름 드릴다운

선택한 리소스의 트래픽을 추가로 세분화할 수 있습니다. Flow Analyzer를 사용하면 VPC 흐름 로그에 있는 남은 필드를 사용하여 쿼리 결과로 드릴다운할 수 있습니다. 자세한 내용은 흐름 세부정보 분류 또는 드릴다운을 참조하세요.

더 많은 필드를 사용하여 트래픽 흐름을 드릴다운하려면 다음을 수행합니다.

콘솔

  1. 쿼리를 빌드합니다.
    1. 로그 버킷을 선택합니다. _Default 로그 버킷을 사용하려는 경우에는 이 단계를 건너뛸 수 있습니다.
    2. 쿼리 시간 범위를 설정하려면 시간 범위 선택기를 사용하거나 선택한 기간 다시 실행을 선택합니다.
    3. 필터를 선택합니다.
    4. 필드를 선택하여 결과를 정리합니다.
  2. 쿼리를 실행합니다.
  3. 모든 데이터 흐름 테이블에서 모든 흐름에 대해 세부정보 표시를 클릭합니다.

    표시되는 흐름 세부정보에 선택한 필터와 일치하는 모든 리소스 및 이러한 리소스의 트래픽이 표시됩니다.

  4. 드릴다운 기준 목록에서 드릴다운을 수행할 필드를 선택합니다.

  5. 이전 트래픽과 비교하려면 과거와 비교 전환 버튼을 클릭합니다. 이 기능을 사용하면 6개의 선이 표시됩니다. 3개의 실선은 드릴다운에서 상위 3개의 트래픽 흐름을 나타내며 3개의 파선은 과거 트래픽을 나타내는 해당 색상으로 표시됩니다.

다음 단계