이 문서에서는 GKE 연결 클러스터가 Cloud Logging과 통합되는 방법과 로그에 액세스하는 방법을 설명합니다.
개요
GKE 연결 클러스터는 워크로드 및 워커 노드에서 실행되는 시스템 구성요소에 Cloud Logging을 지원합니다.
GKE 연결 클러스터에는 워커 노드에서 실행되는 Fluentbit 기반 로깅 에이전트가 Daemonset로 포함되어 있습니다. 로깅 에이전트가 수집한 데이터는 Cloud Logging 문서의 설명대로 다른 측정항목 및 로그 데이터처럼 관리 및 삭제할 수 있습니다.
시작하기 전에
GKE 연결 클러스터의 기본 요건을 충족하세요.
Cloud Logging 및 Cloud Monitoring을 승인하여 Google Cloud Observability에 대한 권한을 설정합니다.
수집되는 데이터
다음 정보 중 일부 또는 전부를 캡처하도록 GKE 연결 클러스터를 구성할 수 있습니다.
- 워크로드 로그
로깅 사용 설정
클러스터를 연결할 때 로깅 모드를 지정하지 않으면 GKE 연결 클러스터가 기본적으로 시스템 로깅을 사용 설정합니다. 워크로드 로깅의 경우 클러스터는 Kubernetes 버전 1.23 이상이어야 합니다.
클러스터를 연결할 때 워크로드 로깅을 사용 설정하려면 안내에 따라 AKS 클러스터를 연결하고 선택적 --logging
플래그를 gcloud container attached clusters register
명령어에 포함합니다.
gcloud container attached clusters register CLUSTER_NAME ... --logging=LOGGING_FLAG
이미 연결된 클러스터에서 워크로드 로깅을 사용 설정하려면 안내에 따라 AKS 클러스터를 업데이트하고 선택적 --logging
플래그를 gcloud container attached clusters update
명령어에 포함합니다.
gcloud container attached clusters update CLUSTER_NAME ... --logging=LOGGING_FLAG
LOGGING_FLAG를 사용 설정하려는 로깅 종류를 나타내는 플래그로 바꿉니다.
NONE
: 로깅을 사용 중지합니다.SYSTEM
: 특정 네임스페이스에서 실행되는 시스템 워크로드의 로깅을 사용 설정합니다.SYSTEM,WORKLOAD
: 클러스터의 워커 노드에서 시스템 및 워크로드 활동 모두의 로깅을 사용 설정합니다.
로그 액세스
Cloud Logging에서 GKE 연결 클러스터 로그에 액세스하는 방법에는 여러 가지가 있습니다.
로그 탐색기 – 로깅 필터를 사용하여 클러스터, 노드, 네임스페이스, 포드 또는 컨테이너 로그와 같은 Kubernetes 리소스를 선택하면 로그 탐색기에서 직접 로그를 볼 수 있습니다.
Google Cloud CLI –
gcloud logging read
명령어를 사용하여 적절한 클러스터, 노드, 포드, 컨테이너 로그를 선택합니다.
로그 이해
Cloud Logging의 로그는 로그 항목의 모음이며 각 로그 항목은 특정 유형의 로깅 리소스에 적용됩니다.
리소스 유형
다음은 GKE 연결 클러스터와 관련된 리소스 유형입니다.
리소스 유형 | 표시 이름 |
---|---|
k8s_container |
워크로드 컨테이너 로그 |
GKE 연결 클러스터가 클러스터 로그를 작성할 때 각 로그 항목에 리소스 유형이 포함됩니다. 로그가 어디에 나타나는지 이해하면 필요할 때 로그를 쉽게 찾을 수 있습니다.
시스템 앱 로그
시스템 앱 로그는 k8s_container
리소스 유형에 속합니다. 여기에는 GKE 연결 클러스터가 워커 노드에 설치한 포드의 로그가 포함됩니다.
특히 다음 네임스페이스에서 실행되는 컨테이너가 포함됩니다.
gke-connect
gke-system
gmp-system
asm-user-auth
cnrm-system
config-management-system
gatekeeper-system
gmp-public
istio-system
knative-serving
Cloud Logging 사용자 인터페이스에서 로그 찾기
Cloud Logging 사용자 인터페이스의 로그 탐색기를 사용하여 로그를 볼 수 있습니다.
로그 탐색기
쿼리 빌더를 사용하면 쿼리 매개변수를 수동으로 추가하여 쿼리를 빌드할 수 있습니다. 예를 들어 시스템 워크로드의 로그를 탐색하려면 k8s_container
리소스 유형을 선택하거나 검색하는 것으로 시작한 다음 위치와 클러스터 이름을 선택할 수 있습니다. 그런 다음 컨테이너 또는 포드 이름을 필터링하여 검색을 세분화할 수 있습니다.
로그 탐색기는 로그 필드 탐색기를 사용하여 검색 쿼리를 작성할 수 있는 추가적인 방법을 제공합니다. 해당 로그 필드의 로그 항목 수를 내림차순으로 정렬하여 보여줍니다. 로그 필드 탐색기를 사용하면 리소스에 대한 Kubernetes 값을 쉽게 선택할 수 있기 때문에 GKE 연결 클러스터 로그에 특히 유용합니다. 예를 들어 특정 클러스터, 네임스페이스, 포드 이름 및 컨테이너 이름에 대한 로그를 선택할 수 있습니다.
자세한 내용은 로그 탐색기 사용을 참조하세요.
샘플 쿼리
이 섹션에는 로그 탐색기에서 만들 수 있는 샘플 쿼리가 포함되어 있습니다.
예시 1: Google Cloud 클러스터 CLUSTER_NAME의 gke-connect-agent
컨테이너 로그를 가져옵니다.
resource.type="k8s_container"
resource.labels.cluster_name="attachedClusters/CLUSTER_NAME"
resource.labels.container_name="gke-connect-agent"