이 항목에서는 Fluent Bit 패키지에 대한 참조 정보를 제공합니다.
Fluent Bit 정보
Fluent Bit(https://fluentbit.io/)는 빠르고 가벼운 로그 프로세서 및 전달자이며, 다양한 소스에서 애플리케이션 데이터와 로그를 수집하고 통합하여 여러 대상으로 보내는 데 사용할 수 있습니다.
Fluent Bit를 TKG 클러스터의 로그에 대한 로그 전달자로 사용할 수 있습니다. 로그 저장 및 분석을 위해 로깅 관리 서버를 배포해야 합니다. 지원되는 로깅 서버에는 Syslog, HTTP, Elastic Search, Kafka 및 Splunk가 포함됩니다.
TKG 클러스터에 Fluent Bit 패키지를 설치하려면 다음 항목을 참조하십시오.
- vSphere 8.x TKr: Fluent Bit 설치
- vSphere 7.x TKr:
Fluent Bit 구성 요소
Fluent Bit 패키지는 표에 나열된 컨테이너를 클러스터에 설치합니다. 패키지는 패키지 저장소에 지정된 공용 레지스트리에서 컨테이너를 가져옵니다.
컨테이너 | 리소스 유형 | 복제 | 설명 |
---|---|---|---|
Fluent Bit | DaemonSet | 6 | 로그 수집기, 집계기, 전달자 |
Fluent Bit 데이터 값
다음
fluent-bit-data-values.yaml
예는 Syslog 서버에 사용할 수 있습니다.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "syslog" syslog: host: "<SYSLOG_HOST>" port: "<SYSLOG_PORT>" mode: "<SYSLOG_MODE>" format: "<SYSLOG_FORMAT>"
다음 fluent-bit-data-values.yaml
예는 HTTP 끝점에 사용할 수 있습니다.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "http" http: host: "<HTTP_HOST>" port: "<HTTP_PORT>" uri: "<URI>" header_key_value: "<HEADER_KEY_VALUE>" format: "json"
다음
fluent-bit-data-values.yaml
예는 Elastic Search에 사용할 수 있습니다.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "elasticsearch" elasticsearch: host: "<ELASTIC_SEARCH_HOST>" port: "<ELASTIC_SEARCH_PORT>"
다음
fluent-bit-data-values.yaml
예는 Kafka에 사용할 수 있습니다.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "kafka" kafka: broker_service_name: "<BROKER_SERVICE_NAME>" topic_name: "<TOPIC_NAME>"
다음
fluent-bit-data-values.yaml
예는 Splunk에 사용할 수 있습니다.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "splunk" splunk: host: "<SPLUNK_HOST>" port: "<SPLUNK_PORT>" token: "<SPLUNK_TOKEN>"
Fluent Bit 구성
구성 값은
fluent-bit-data-values.yaml
에 설정되어 있습니다. 다음 표에는 사용 가능한 매개 변수와 그에 대한 설명이 나와 있습니다.
매개 변수 | 설명 | 유형 | 기본값 |
---|---|---|---|
logging.namespace | Fluent Bit가 배포될 네임스페이스 | 문자열 | tanzu-system-logging |
logging.service_account_name | Fluent Bit 서비스 계정의 이름 | 문자열 | fluent-bit |
logging.cluster_role_name | Fluent Bit에 대한 get, watch 및 list 권한을 부여하는 클러스터 역할의 이름 | 문자열 | fluent-bit-read |
logging.image.name | Fluent Bit 이미지의 이름 | 문자열 | fluent-bit |
logging.image.tag | Fluent Bit 이미지 태그. 버전을 업그레이드하는 경우 이 값을 업데이트해야 할 수 있습니다. | 문자열 | v1.6.9_vmware.1 |
logging.image.repository | Fluent Bit 이미지가 있는 저장소의 위치입니다. 기본값은 공용 VMware 레지스트리입니다. 비공개 저장소(예: 에어갭 환경)를 사용하는 경우 이 값을 변경합니다. | 문자열 | projects.registry.vmware.com/tkg |
logging.image.pullPolicy | Fluent Bit 이미지 Pull 정책 | 문자열 | IfNotPresent |
logging.update_strategy | DaemonSet 업데이트 시 사용할 업데이트 전략 | 문자열 | RollingUpdate |
tkg.cluster_name | Tanzu Kubernetes 클러스터의 이름 | 문자열 | Null(필수 매개 변수) |
tkg.instance_name | 하나의 배포에서 모든 Tanzu Kubernetes 클러스터 및 감독자 클러스터가 공유하는 TKG 인스턴스의 사용자 정의 이름. 설치와 관련된 모든 이름을 사용할 수 있습니다. | 문자열 | Null(필수 매개 변수)
참고: 이 필드는 필수이지만 임의의 필드입니다. 로그에 나타나는 이름입니다.
|
fluent_bit.log_level | Fluent Bit에 사용할 로그 수준 | 문자열 | 정보 |
fluent_bit.output_plugin | Fluent-Bit가 수집한 정보를 플러시해야 하는 백엔드 설정 | 문자열 | Null(필수 매개 변수) |
fluent_bit.elasticsearch.host | 대상 Elasticsearch 인스턴스의 IP 주소 또는 호스트 이름 | 문자열 | Null(output_plugin이 elastic search인 경우 매개 변수) |
fluent_bit.elasticsearch.port | 대상 Elasticsearch 인스턴스의 TCP 포트 | 정수 | Null(output_plugin이 elastic search인 경우 매개 변수) |
fluent_bit.elasticsearch.buffer_size | Elasticsearch 서비스의 응답을 읽는 데 사용되는 버퍼 크기를 지정. False인 경우 제한 없음으로 설정 | 문자열 | False |
fluent_bit.elasticsearch.tls | Elasticsearch에 대한 TLS의 기본 설정 지정 | 문자열 | 꺼짐 |
fluent_bit.kafka.broker_service_name | Kafka 브로커의 여러 목록 중 하나(예: 192.168.1.3:9092) | 문자열 | Null(output_plugin이 kafka인 경우 필수 매개 변수) |
fluent_bit.kafka.topic_name | Fluent Bit가 Kafka에 메시지를 보내는 데 사용할 단일 항목 또는 (,)로 구분된 항목의 목록 | 문자열 | Null(output_plugin이 kafka인 경우 필수 매개 변수) |
fluent_bit.splunk.host | 대상 Splunk 서버의 IP 주소 또는 호스트 이름 | 문자열 | Null(output_plugin이 splunk인 경우 필수 매개 변수) |
fluent_bit.splunk.port | 대상 Splunk 서버의 TCP 포트 | 정수 | Null(output_plugin이 splunk인 경우 필수 매개 변수) |
fluent_bit.splunk.token | HTTP 이벤트 수집기 인터페이스에 대한 인증 토큰 지정 | 문자열 | Null(output_plugin이 splunk인 경우 필수 매개 변수) |
fluent_bit.http.host | 대상 HTTP 서버의 IP 주소 또는 호스트 이름 | 문자열 | Null(output_plugin이 http인 경우 필수 매개 변수) |
fluent_bit.http.port | 대상 HTTP 서버의 TCP 포트 | 정수 | Null(output_plugin이 http인 경우 필수 매개 변수) |
fluent_bit.http.mode | 대상 웹 서버에 대한 HTTP URI 지정 | 문자열 | Null(output_plugin이 http인 경우 필수 매개 변수) |
fluent_bit.http.header_key_value | HTTP 헤더 키/값 쌍. 여러 헤더를 설정할 수 있음 | 문자열 | Null(output_plugin이 http인 경우 필수 매개 변수) |
fluent_bit.http.format | HTTP 요청 본문에 사용할 데이터 형식 지정 | 문자열 | Null(output_plugin이 http인 경우 필수 매개 변수) |
fluent_bit.syslog.host | 원격 Syslog 서버의 도메인 또는 IP 주소 | 문자열 | Null(output_plugin이 syslog인 경우 필수 매개 변수) |
fluent_bit.syslog.port | 원격 Syslog 서버의 TCP 또는 UDP 포트 | 정수 | Null(output_plugin이 syslog인 경우 필수 매개 변수) |
fluent_bit.syslog.mode | TCP, UDP 및 TLS 중에 전송 유형 지정 | 문자열 | Null(output_plugin이 syslog인 경우 필수 매개 변수) |
fluent_bit.syslog.format | HTTP 요청 본문에 사용할 데이터 형식 지정 | 문자열 | Null(output_plugin이 syslog인 경우 필수 매개 변수) |
host_path.volume_1 | 볼륨 1에 대한, 호스트 노드의 파일 시스템에서 포드로의 디렉토리 경로 | 문자열 | /var/log |
host_path.volume_2 | 볼륨 2에 대한, 호스트 노드의 파일 시스템에서 포드로의 디렉토리 경로 | 문자열 | /var/lib/docker/containers |
host_path.volume_3 | 볼륨 3에 대한, 호스트 노드의 파일 시스템에서 포드로의 디렉토리 경로 | 문자열 | /run/log |
systemd.path | Systemd 저널 디렉토리의 경로 | 문자열 | /var/log/journal |