Day 87
- 실전 프로젝트
오늘은 엘라스틱 서치의 한글 형태소 분석기인 Nori를 다운받아서 어떻게 분해되는지 살펴봤다. 확실이 일반 분석기보다는 더 세밀하게 조절이 가능했고 여러 설정도 조정이 가능했다. 영어를 이상하게 쪼개면 어떡하나 걱정했었는데 영어도 그럭저럭 잘 분석해준다. Nori를 사용하면 한글과 영어는 큰 무리없이 사용이 가능할 듯싶다.
그리고 로컬에 설치한 ELK를 EC2로 옮기는 작업을 했는데 트러블 슈팅이 조금 있었다. 해결한 부분도 있지만 한 30분전에 또 문제가 생겨서 그 부분은 해결하지 못했다. 우선 로컬에서 logstash를 작업할 떄 파일에 문제가 있으면 자동으로 꺼지는 현상이 있었다. 문제가 생기면 컨테이너 파일에 접근해서 수정해야 하는데 exec 명령어는 실행중인 컨테이너에서만 가능하다. 이런 경우 로컬에서는 도커 데스크탑으로 파일을 수정했는데 EC2는 Host OS가 리눅스여서 그런 GUI가 없었다. 그래서 방법을 찾아보다가 겨우 하나 찾았다.
# 컨테이너 파일 복사하기
docker cp <컨테이너 이름>:<파일 경로> .
# 수정한 파일 다시 컨테이너에 붙여넣기
docker cp <수정 파일> <컨테이너 이름>:<파일 경로>
위 방법으로 컨테이너에서 수정이 필요한 파일을 호스트로 복사해와서 수정 후 붙여넣는 방식으로 문제를 해결할 수 있었다.
이전부터 logstash에서 계속해서 발생하던 오류인 Connection refused가 이번에도 발생했다. 그런데 logstash.conf의 파일 입력이 무리없이 실행되고 kibana를 통해서 데이터가 입력된 것도 확인이 되었다. 즉, 파일 전송에는 문제가 없고 엘라스틱 서치와 연결이 되어있다는 말인데 다른 곳에서 주기적으로 연결을 하려고 하는데 설정을 하지 않아서 거부된다고 추측했다. 그래서 다시 로그를 보니 Xpack.monitoring과 관련된 연결 오류였다. 다시 logstash의 yml파일을 열어서 이것저것 변경하다가 문득 xpack.monitoring.hosts 값을 주석처리한 것을 발견했다. ELK를 처음 구축할 당시 저 부분에서 계속해서 오류가 나서 일단 주석처리해두었는데 그게 지금까지 남아있던 것이다. 그래서 주석을 해제하고 엘라스틱 서치의 주소를 넣고 logstash를 재가동하니 오류가 말끔하게 사라졌다.
마지막으로 RDS와 연결하기 위해서 EC2에 mysql connector를 넣으려고 Filezilla를 사용했는데 계속해서 연결오류라면서 파일입력을 거부하였다. 그러다가 갑자기 ssh로 서버에 접근자체가 막히는 문제가 발생했다. 키페어로 접근해도 계속해서 접근을 거부해서 여러 방법을찾아봤는데 방법이 복잡해서 일단은 내일하기로 했다. 머리아프다.
'항해99 > TIL | WIL' 카테고리의 다른 글
| 2023.04.07 (89일) (0) | 2023.04.08 |
|---|---|
| 2023.04.06 (88일) (0) | 2023.04.07 |
| 2023.04.04 (86일) (0) | 2023.04.05 |
| 2023.04.03 (85일) (0) | 2023.04.04 |
| 2023.04.02 (84일) (0) | 2023.04.02 |