예약프로그램을 만들면서 생긴 issue들 중 기억에 남기고 싶은 것들을 정리해야 겠다는 생각이 들어서 작성하게 되었다.


1. action 'action-8-builtin:omfile' suspended (module 'builtin:omfile'), retry 0. 
there should be messages before this one giving the reason for suspension. 
[v8.2001.0 try https://www.rsyslog.com/e/2007 ]

 

action-숫자로 된 노란색 경고문구가 발생했고 배포 사이트가 잘 뜨지 않았다. 문구는 putty에서 journal -r로 확인했는데 url 입력하고 발생한 문제였다. 실행자체에 문제가 있는 것으로 보고 검색을 했더니 rsyslog의 설치와 버전 차이로 발생한다는 것을 알게 됐다.

 

이번 프로젝트에서 Ubuntu를 사용하고 있기에 아래 명령어를 입력해서 rsyslog를 설치했고 경고문구는 다시 발생하지 않았다!

sudo add-apt-repository ppa:adiscon/v8-stable
sudo apt-get update
sudo apt-get install rsyslog


도움을 받은 사이트
https://ubuntuforums.org/showthread.php?t=2395258

https://www.rsyslog.com/ubuntu-repository/


2. HibernateException :
Access to DialectResolutionInfo cannot be nulll when 'hibernate.dialect' not set

 

MariaDB 연결을 하지 못해 발생한 오류이다. application.properties 설정이 잘못 되어 있던 경우에 발생했다. 이번 경우에는 배포시에도 spring.datasource.url을 개발환경인 localhost로 해서 배포했기 때문에 발생했다.

 

배포시에는 DB url 설정이 배포 환경의 RDS 엔드포인트와 연결될 수 있도록 해야 한다는 점에 유의하자. (이번 프로젝트는 AWS RDS MariaDB를 사용했기 때문)

 


3. Target Groups의 unhealthy 이슈

 

ALB로 https 연결 배포는 완료되서 잘 구동되는데 AWS Target Group에서는 unhealty 상태로 떴다.

 

AWS에서는 부하 분산기로서 ALB의 역할을 요청 수준에서 마이크로서비스 및 컨테이너를 비롯한 애플리케이션 아키텍처를 대상으로 하는 고급 라우팅 및 가시성 기능을 제공한다라고 정의했다. 즉 인터넷 요청과 서버와의 통신을 중간에 확인하는 위치에 있다.

 

healty check 여부와 상관없이 트래픽을 Target group으로 보내기 때문에 unhealty여도 프로젝트는 잘 실행되는 것을 볼 수 있었다.

 

그래도 찝찝해서 ACM 다시 발급받고 Route53에 호스팅 영역 설정을 다시 했더니 문제가 해결됐다. 아마 ACM에서 검증 용도로 사용한 레코드 설정에 문제가 있었던 것 같다.

 


도움을 받은 사이트

https://kim-dragon.tistory.com/121

 


4. error: kex_exchange_identification: banner line contains invalid characters
error: kex_exchange_identification: Connection closed by remote host

 

intelliJ에서 RDS 연결은 확실히 된다는 것을 확인하고 나서 Putty에서 만난 에러이다. 여기서 key_exchange_identification는 클라이언트와 서버 간 소켓 연결의 중단으로 발생한 에러이다. 

 

stackoverflow에 따르면 sshd 대신 https에 연결할 때 ssh 에러가 발생한다는 것을 알게 되었고, 포트 설정 변경으로 해결했다.

 

 

도움을 받은 사이트
https://stackoverflow.com/questions/66685456/cannot-ssh-my-ubuntu-server-kex-exchange-identification-banner-line-contains

 


5.  java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException

 

이전 프로젝트를 할 때도 본 문제였다.

IntelliJ에서 File > Invalidate Cashes에서 첫 번째 옵션인 Clear file system cache and Local History를 실행했다.

새로 배포를 진행했으나 문제는 동일했다. 알고보니, webapps 파일에 일전에 배포했던 디렉토리가 제대로 삭제되지 않아서 발생한 문제였는데 Filezila를 이용해도 삭제되지 않아 직접 putty로 삭제해주었다.

rm -r ./디렉토리명

 

댓글