반응형

인프라 5

[Infra] 와이어샤크로 tcpdump 파일 분석하여 AWS ALB idle timeout 설정하기

SRE 분야에 대해 공부하던 중, timeout 원인을 찾는 과정에서 네트워크 레이어부터 분석하는 경우가 많다는 것을 느꼈다. 실제로 내가 현재 진행하고 있는 사이드 프로젝트에서 모니터링 및 장애대응 업무를 주로 맡고 있기 때문에 해당 내용에 관심이 생기기 시작했다. 아직까지 규모가 작기 때문에 504 Gateway time-out이 뜬 경험은 거의 없어서 네트워크 패킷까지 뜯어볼 일은 없었다. 이번 기회에 한 번 뜯어보면 언젠가 도움이 되지 않을까 하여 뜯어보기로 결정했다. 참고) 해당 포스팅은 개인 학습기록이므로 틀린 내용이 존재할 수 있습니다. 틀린 내용을 혹시 발견하셨다면 댓글 부탁드립니다. ubuntu에서 tcpdump 캡처하는 방법 1. 우분투 서버에 접속한다. ssh -i {pem KEY} ..

Infra/Aws 2023.05.15

[Sonarqube][Error] Process exited with exit value [es]: 1 에러 해결

sonarqube(소나큐브)를 스프링부트 프로젝트와 연동해서 띄우려는데 아래 에러가 발생했다. Process exited with exit value [es]: 1 Process[es] is stopped SonarQube is stopped 해당 에러가 발생하는 이유는 여러가지가 있는 듯하다. 내가 겪고 이 에러를 해결할 수 있었던 방법을 모두 써보겠다. 아쉬운 점은 이 에러의 정확한 발생 경위 및 원인은 잘 모르겠다는 것이고, 해결 방법만 적어보려 한다. 1. 소나큐브와 JDK (Java) 버전 호환성 문제 소나큐브 9.6 버전 기준, JDK 8과 JDK 17은 호환되지 않는다. 공식문서에서 자신의 자바 버전이 소나큐브와 호환되는지 확인해보자. (공식문서 링크: https://docs.sonarqub..

Infra/CI | CD 2022.08.20

[CI] Github Actions로 빌드 및 테스트를 자동화해보자

CI(Continuous Integration)는 지속적인 통합을 의미하며, 개발자가 구현한 코드를 병합하여 자동으로 빌드 및 테스트를 진행한 후 문제가 없으면 배포를 진행하는 것을 의미한다. CI 툴 없이 Git Conflicts 만으로는 안전한 병합을 기대하기 어렵다. 그 이유는 아래 글을 참고하자. https://kth990303.tistory.com/363 [Git] git no conflict를 너무 믿지 말자 부제: CI/CD 툴 Jenkins, github actions의 중요성 부제 2: 작업 브랜치에 아무리 충돌날만한 게 없다고 생각되더라도 항상 최신 base branch를 반영해주자 너무나도 당연한 걸 간과해서 오늘 또 삽질을 했다 kth990303.tistory.com 이번 포스팅에선..

Infra/CI | CD 2022.08.19

[Sonarqube][Error] Process exited with exit value [es]: 137 해결

sonarqube(소나큐브)를 연동하여 띄우려 하던 도중 아래 에러가 발생했다. 2022.08.12 10:05:27 INFO app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /app/sonarqube/sonarqube-7.6/temp 2022.08.12 10:05:27 INFO app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001 2022.08.12 10:05:27 INFO app[][o.s.a.p.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/app/sona..

Infra/CI | CD 2022.08.19

[Infra] Spring + JPA 환경에 Flyway를 적용해보자

flyway는 DB 형상관리 오픈소스 툴이다. 즉, db schema가 변경이 발생할 때 flyway라는 툴로 관리를 할 수 있는 것이다. 이번 포스팅에서는 flyway 적용 방법에 대해 아주 간단히 알아볼 것이다. Flyway 사용 이유 배포 환경(prod)에서는 ddl-auto를 create, update, create-drop을 지양해야 한다. 배포된 db의 데이터들이 모두 증발될 수 있기 때문이다. 따라서, db schema 변경이 있을 때에 우리가 직접 배포 환경 db에 접속하여 schema를 작성해주어야 한다. 이는 매우 번거로우며 위험성 또한 높다. Flyway를 사용하면 이러한 번거로운 작업이 사라지게 된다. 변경된 스키마를 한눈에 확인할 수 있어 스키마 버전 관리에 용이해진다. flywa..

Infra/CI | CD 2022.08.08
반응형