소개
이 튜토리얼은 DigitalOcean Kubernetes (DOKS) 클러스터의 로그를 DigitalOcean Managed OpenSearch 인스턴스로 수집하고 转发하는 方法을 AxoSyslog, 확장性 있는 안전 데이터 처리기로 사용하는 것을 보여줍니다. 이 가이드를 따라가면 Kubernetes 응용 프로그램의 로그를 捕获하고 분석하는 강健하는 로깅 시스템을 설정하는 方法을 배울 수 있습니다. 이를 통해 인프라스트럭트URE를 모니터링, 문제 해결하고 보호하는 것이 더 쉽게 될 것입니다.
이 튜토리얼에서는 AxoSyslog를 사용하여 Kubernetes 클러스터의 로그를 OpenSearch로 转发할 것입니다.
사전 요구 사항
시작하기 전에 다음과 같은 사전 요구 사항을 확인하십시오.
- 디지털오cean 雲 계정이 필요합니다. 이를 사용하여 Kubernetes 및 OpenSearch 자원을 생성하고 관리합니다.
- 디지털오cean 명령行 인터페이스(CLI) 도구
doctl
를 로컬 컴퓨터에 설치하고 構정해야 합니다. - 디지털오cean Kubernetes(DOKS) クラスタ가 실행중입니다.
- Kubernetes パッケージ マネージャ Helm을 설치하여 Kubernetes 应用程序을 관리해야 합니다.
- Kubernetes, Helm, 디지털오cean의 관리 서비스에 대한 熟悉さが 필요합니다.
사용 사례
이 프로젝트는 센ralized logging solution을 사용하여 Kubernetes クラ스터에서 실행되는 여러 응용 프로그램의 log를 모니터링하고 분석하는 것이 좋은 사례이며, 소수의 응용 프로그램을 관리하는 것과 대규모의 인프라스트럱ructure를 관리하는 것 사이에서도 적용할 수 있습니다. 지정된 OpenSearch cluster로 log를 수집하고 转发하면 다음과 같은 이점을 얻을 수 있습니다.
- 안전 모니터링: 실시간 로그 분석을 통해 안전 사고를 감지하고 대응합니다.
- 문제 해결: Kubernetes 应用程序에 대한 자세한 로그 액세스로 빠르게 문제를 识別하고 해결합니다.
- 规范遵守: 산업 규정에 따라 이벤트 로그를 보유합니다.
AxoSyslog을 DigitalOcean Managed OpenSearch와 인tegrating하여, 로그를 효율적으로 처리하고 저장할 수 있습니다. 이를 통해 가치 있는 정보를 抽出하고 시스템 健康과 안전을 유지하는 것이 더 容易하게 될 것입니다.
Step 1 – OpenSearch クラスタ 만들기
이 단계에서는 로그 시스템의 기본 组成部分, OpenSearch クラス터를 설정합니다. OpenSearch는 Kubernetes クラス터에서 수집한 모든 로그의 대상이 됩니다. 다음 명령어를 실행하여 선택한 지역에 새 OpenSearch 인스턴스를 만듭니다.
lon1
를 您的 desired region으로 대체하십시오. 사용 가능한 size slugs 목록을 보려면 我们的 API 참조 문서를 방문하십시오.
的第2步 – 生成一些随机日志
在将日志转发给OpenSearch之前,您需要一些日志来进行操作。如果您还没有在Kubernetes集群中生成日志的应用程序,本步骤将向您展示如何部署一个日志生成器。这个日志生成器将产生一个稳定的样本日志流,可以用来测试和演示您的日志流水线。
首先,添加日志生成器的Helm图表仓库并安装日志生成器:
然后,使用Helm安装日志生成器:
您可以通过查看它产生的日志来验证日志生成器是否正常工作:
第3步 – 准备AxoSyslog Collector的安装
在这个步骤中,您将配置AxoSyslog Collector,它负责从您的Kubernetes集群中收集日志并将它们转发给OpenSearch。这包括为您OpenSearch集群提供正确的连接详细信息(主机名、用户名和密码)。
我们将使用helm
来安装AxoSyslog Collector并传递自定义值。
AxoSyslog 수집기를 OpenSearch 데이터베이스에 대한 올바른 주소, 사용자 및 비밀번호로 구성하려면 다음 단계를 따르십시오:
자동화된 스크립트
구성을 간소화하려면 필요한 OpenSearch 연결 세부정보를 가져오고 AxoSyslog 구성 파일을 업데이트하는 자동화된 스크립트를 사용할 수 있습니다.
다음 스크립트를 update_axoflow_demo.sh
로 저장하십시오:
스크립트를 실행하기 전에 실행 권한이 있는지 확인하십시오:
이 스크립트는 doctl
을 사용하여 DigitalOcean 계정에서 필요한 정보를 가져오고 axoflow-demo.yaml
파일을 적절히 업데이트합니다.
수동으로 axoflow-demo.yaml
업데이트하는 단계
수동으로 AxoSyslog 수집기를 구성하려면 다음 단계를 따르십시오:
다음 명령을 실행하여 opensearch-doks
의 데이터베이스 ID를 추출하십시오:
호스트 이름, 사용자 이름, 그리고 암호를 가져오기 위해 다음 명령을 각각 실행하십시오.
이제 axoflow-demo.yaml
파일을 수동으로 更新해야 합니다.
텍스트 에디터에서 axoflow-demo.yaml
파일을 열고 추출한 값으로 관련 필드를 대체하십시오.
阶段 4 – AxoSyslog-collector 설치
이제 configurations가 완료되었으면, 다음 단계는 Kubernetes クラス터에 AxoSyslog Collector를 배포하는 것입니다. 이렇게 하면 OpenSearch로 로그를 수집하고 转发할 수 있습니다.
AxoSyslog Helm 저장소를 추가하고 사용자 정의 configurations 파일을 사용하여 AxoSyslog Collector를 설치하십시오.
로그가 correct OpenSearch 포트로 보내られ는지 확인하려면 AxoSyslog Collector의 configurations을 更新하기 위해 configmap
를 更新하십시오.
결국, 현재의 팬들을 지웁니다. 이를 기반으로 更新한 configurations을 적용합니다.
결론
DigitalOcean KubernetesからOpenSearchにAxoSyslogを使用してログポートルを設定することは、ログを集中管理するだけでなく、アプリケーションの監視、分析、およびセキュリティを強化する。このガイドで提供された手順を利用して、このソリューションを迅速にデプロイでき、Kubernetes環境の深い視点を得ることができ、インフラスの強固さと合规性を保証することができます。
Source:
https://www.digitalocean.com/community/tutorials/collect-and-forward-kubernetes-logs-to-opensearch