2.5. 벡터 정보
vector는 로깅 하위 시스템에 대한 Fluentd의 대안으로 제공되는 로그 수집기입니다.
지원되는 출력은 다음과 같습니다.
-
elasticsearch. 외부 Elasticsearch 인스턴스입니다.elasticsearch출력은 TLS 연결을 사용할 수 있습니다. -
kafka. Kafka 브로커.kafka출력은 비보안 또는 TLS 연결을 사용할 수 있습니다. -
loki. 수평으로 확장 가능한 고가용성 다중 테넌트 로그 집계 시스템입니다.
2.5.1. 벡터 활성화
벡터는 기본적으로 활성화되어 있지 않습니다. 다음 단계를 사용하여 AWS 클러스터의 Red Hat OpenShift Service에서 벡터를 활성화합니다.
사전 요구 사항
- AWS의 Red Hat OpenShift Service: 4.13
- logging subsystem for Red Hat OpenShift: 5.4
절차
openshift-logging프로젝트에서ClusterLogging사용자 정의 리소스(CR)를 편집합니다.$ oc -n openshift-logging edit ClusterLogging instance
-
ClusterLogging사용자 정의 리소스(CR)에logging.openshift.io/preview-vector-collector: enabled주석을 추가합니다. -
ClusterLogging사용자 정의 리소스(CR)에벡터를 컬렉션 유형으로 추가합니다.
apiVersion: "logging.openshift.io/v1"
kind: "ClusterLogging"
metadata:
name: "instance"
namespace: "openshift-logging"
annotations:
logging.openshift.io/preview-vector-collector: enabled
spec:
collection:
logs:
type: "vector"
vector: {}추가 리소스
2.5.2. 수집기 기능
표 2.1. 로그 소스
| 기능 | fluentd | vector |
|---|---|---|
| 앱 컨테이너 로그 | ✓ | ✓ |
| 앱별 라우팅 | ✓ | ✓ |
| 네임스페이스별 앱별 라우팅 | ✓ | ✓ |
| 인프라 컨테이너 로그 | ✓ | ✓ |
| 인프라 저널 로그 | ✓ | ✓ |
| kube API 감사 로그 | ✓ | ✓ |
| OpenShift API 감사 로그 | ✓ | ✓ |
| OVN(Open Virtual Network) 감사 로그 | ✓ | ✓ |
표 2.2. 출력
| 기능 | fluentd | vector |
|---|---|---|
| Elasticsearch v5-v7 | ✓ | ✓ |
| fluent forward | ✓ | |
| Syslog RFC3164 | ✓ | Cryostat (로깅 5.7 이상) |
| Syslog RFC5424 | ✓ | Cryostat (로깅 5.7 이상) |
| Kafka | ✓ | ✓ |
| all aller | ✓ | ✓ |
| Loki | ✓ | ✓ |
| HTTP | ✓ | Cryostat (로깅 5.7 이상) |
표 2.3. 권한 부여 및 인증
| 기능 | fluentd | vector |
|---|---|---|
| Elasticsearch 인증서 | ✓ | ✓ |
| Elasticsearch 사용자 이름 / 암호 | ✓ | ✓ |
| CloudEvent 키 | ✓ | ✓ |
| Cloudwatch STS | ✓ | ✓ |
| Kafka 인증서 | ✓ | ✓ |
| Kafka 사용자 이름 / 암호 | ✓ | ✓ |
| Kafka SASL | ✓ | ✓ |
| CloudEvent 전달자 토큰 | ✓ | ✓ |
표 2.4. Normalizations 및 iPXEs
| 기능 | fluentd | vector |
|---|---|---|
| viaq 데이터 모델 - 앱 | ✓ | ✓ |
| viaq 데이터 모델 - 인프라 | ✓ | ✓ |
| viaq 데이터 모델 - infra(journal) | ✓ | ✓ |
| viaq 데이터 모델 - Linux 감사 | ✓ | ✓ |
| viaq 데이터 모델 - kube-apiserver 감사 | ✓ | ✓ |
| viaq 데이터 모델 - OpenShift API 감사 | ✓ | ✓ |
| viaq 데이터 모델 - OVN | ✓ | ✓ |
| loglevel Normalization | ✓ | ✓ |
| JSON 구문 분석 | ✓ | ✓ |
| 구조화된 인덱스 | ✓ | ✓ |
| 다중 라인 오류 탐지 | ✓ | ✓ |
| 멀티컨테이너 / 분할 인덱스 | ✓ | ✓ |
| 플랫 라벨 | ✓ | ✓ |
| CLF 정적 레이블 | ✓ | ✓ |
표 2.5. 튜닝
| 기능 | fluentd | vector |
|---|---|---|
| Fluent Readlinelimit | ✓ | |
| Fluentd 버퍼 | ✓ | |
| - chunklimitsize | ✓ | |
| - totalLimitSize | ✓ | |
| - overflowaction | ✓ | |
| - flushthreadcount | ✓ | |
| - flushmode | ✓ | |
| - flushinterval | ✓ | |
| - retryWait | ✓ | |
| - retrytype | ✓ | |
| - retrymaxinterval | ✓ | |
| - retrytimeout | ✓ |
표 2.6. 가시성
| 기능 | fluentd | vector |
|---|---|---|
| 메트릭 | ✓ | ✓ |
| 대시보드 | ✓ | ✓ |
| 경고 | ✓ |
표 2.7. 기타
| 기능 | fluentd | vector |
|---|---|---|
| 글로벌 프록시 지원 | ✓ | ✓ |
| x86 지원 | ✓ | ✓ |
| ARM 지원 | ✓ | ✓ |
| IPv6 지원 | ✓ | ✓ |
| 로그 이벤트 버퍼링 | ✓ | |
| 연결이 끊긴 클러스터 | ✓ | ✓ |