분산 된 grep을 구현하려고합니다. 다른 시스템의 로그 파일에 어떻게 액세스합니까? 나는 네트워크를 사용해야한다는 것을 알고 있지만 ssh, telnet 또는 다른 것을 사용하는지 모르겠습니다. 내 컴퓨터에서 연결하려는 컴퓨터에 대해 알아야 할 정보는 무엇입니까? 나는 다른 리눅스 머신에 연결하고 로그 파일을 읽고 그것을 머신으로 파이프 할 수 있기를 원한다.분산 된 grep 구현
답변
시스템에는 로그 데이터 (SERVER)를 생성하는 많은 Linux 시스템과 사용자가 조작하는 하나의 시스템 (CLIENT)이 있습니다. 권리?
문제 1) 액세스 할 파일. 일반적으로 소프트웨어는 로그 데이터를 언제든지 로그 파일에 쓸 수 있어야하기 때문에 로그 데이터를 생성하는 소프트웨어가 로그 파일을 잠급니다. 다른 소프트웨어에서 로그 파일에 액세스하려면 잠금 해제 된 로그 데이터 파일을 준비해야합니다. 소프트웨어 설치 또는 소프트웨어 (프로그램) 자체의 일부 수정.
문제 2) 로그 파일을 제공하는 프로그램. SERVER에서 로그 데이터를 얻으려면 각 서버가 일부 서버 프로그램을 실행해야합니다. 원격 쉘 액세스의 경우 rshd (원격 쉘 데몬)가 필요합니다. (ssh는 rsh와 보안 통신의 조합입니다). FTP 액세스의 경우 ftpd (파일 전송 프로토콜 데몬)가 필요합니다. 필요한 소프트웨어는 CLIENT가 SERVER에 액세스하는 방법에 따라 다릅니다.
3) 배포 된 grep. 'distributed grep'이라는 단어를 사용합니다. 그 말이 무슨 뜻이야? '분산 된 grep'에 배포되는 내용은 무엇입니까? 많은 시나리오가 내 마음에 들었습니다. a) 로그 파일은 SERVER에 배포됩니다. 모든 로그 데이터는 CLIENT에 수집되고 grep 프로그램은 CLIENT에서 수집 된 로그 데이터에 대해 작동합니다. b) 로그 파일은 SERVER에 배포됩니다. Grep 기능은 각 서버에서도 구현됩니다. CLIENT가 각 SERVER에게 grep의 resule을 얻는 데 필요한 데이터 요청을 기록하고 결과를 CLIENT에 수집합니다. 등 귀하의 계획은 무엇입니까?
문제 4) SERVER에 대한 액세스. 보안 통신의 필요성은 기계와 네트워크의 위치에 따라 다릅니다. 모든 컴퓨터가 회의실/집에 있고 컴퓨터 간 네트워크가 인터넷에 연결되어 있지 않으면 보안 통신이 필요하지 않습니다. 로그의 데이터가 일급 비밀 인 경우 네트워크에서 데이터를 보내기 전에 데이터를 암호화해야 할 수 있습니다. 로그 데이터가 중요한 이유는 무엇입니까?
개발 초기 단계에서 위에서 설명한 내용을 확인해야합니다. 내 충고입니다.
- 1. 파일을 사용하여 분산 된 잠금 구현
- 2. 분산 시스템/데이터베이스 구현
- 3. 분산 큐 구현
- 4. 분산 트랜잭션과 그 구현
- 5. 분산 데이터베이스 구현
- 6. 분산 주제 구현, 메시지 수명
- 7. P2P 또는 분산 시스템 구현
- 8. 내부 분산 시간 서버 구현
- 9. Java의 분산 아키텍처에서 웹 크롤러 구현
- 10. grep 복사 된 내용
- 11. 분산 REST 큐의 사용 가능한 구현
- 12. 고성능 분산 파일 시스템/데이터베이스 구현
- 13. 평면에 분산 된 점에서 분산 분산을 선택하십시오.
- 14. 모바일 에이전트는 분산 시스템을위한 적절한 구현 메커니즘입니까?
- 15. 분산 된 서비스는 분산 된 개체보다 어떻게 더 나은가요?
- 16. hadoop에 분산 된 대안
- 17. jenkins의 분산 된 작업
- 18. 분산 된 3D 렌더링
- 19. 균등하게 분산 된 난수
- 20. 분산 된 캐시 플랫폼
- 21. 분산 된 DB입니까?
- 22. 코코아의 분산 된 개체
- 23. 분산 된 TensorFlow
- 24. grep '
- 25. Perl을 사용하여 다른 노드 머신에 분산 된 로그 파일에서 grep 정보를 얻는 방법
- 26. 분산 된 클러스터에서 파이썬 코드 실행
- 27. GREP :
- 28. 분산 된 구성 요소에 안전하게 이야기하십시오.
- 29. 분산 된 EHCache에서 직렬화 피하기
- 30. 분산 된 컴퓨터를 통한 VisualSVN?
모두 사용 사례에 따라 다르지만이 질문은 현재 너무 광범위합니다. –
'rsyslogd'를 설정하여 로그를 중앙 서버로 보낼 수 있습니다. –