목록개발 관련 지식 (32)
코딩하는 문과생

[서론] CI/CD 중요도가 날로 갈수록 중요해지고 있다. 팀에서도 젠킨스를 사용하여 빌드 및 배포중이었고, 좀 더 나은 방식을 고민하다가 CI/CD 와 관련된 온라인 강의를 수강하였다. 해당 강의는 로컬에서 도커컨테이너와 쿠버네티스를 이용하여 CI/CD를 구축하고, 마지막 부분에서는 AWS에 Jenkins와 Ansible, Docker 등 서비스를 올려 배포를 진행한다. 강의를 마무리하는 단계에서 마지막 내용만 간략하게 정리해보고자 한다. 아키텍처는 다음과 같다. 1. GIT에 커밋하면 Jenkins가 자동으로 빌드하여 war 파일을 만든다. 2-1. 바로 tomcat-server(tomcat 9 버전 설치)에 war 파일을 배포하여 서비스 운영 2-2. war + tomcat9를 도커 이미지로 만든 ..
[서론]본인이 속한 팀에서는 배치서버를 사용하여 대용량 데이터의 집계를 하거나 타 시스템과 데이터를 주고 받는다. 그러나 최근 들어 9시, 10시, 11시 등 정각에 특정 프로세스의 CPU 100% 점유가 5분 이상 지속되는 등 특정 시간에 일부 배치가 몰려 있어 각 업무별 배치의 스케줄링 조정이 필요했다. [본론]대처방안은 아래와 같다.1. 서버 추가 및 장비 업그레이드본인 팀에는 배치서버가 2개 있다. 1번기가 Main이며, 2번기는 failover를 위해 항시 대기중인 서버이다. 다만 1번기의 프로세스들의 cpu점유율이 너무 높아 cpu 코어를 업그레이드 하거나 신규 서버를 추가하는 방안이 고려되긴 했지만, 결국 물리적 장비를 추가 또는 업그레이드하는 건 비용적 측면을 고려해야 한다는 점에서 기각..

참고: Nginx는 무중단 배포를 위해 존재하는 프록시 서버이다. [문제] 예제 프로젝트를 완성하고 나서... 갑자기 프로젝트가 실행되지 않는다... 여기서 한 1시간 반정도 헤맸다... [해결] 1. 해당 명령어를 이용해 jar파일 확인을 해보니, 잘 배포되어 있다. $ ps -ef | grep java 2. AWS내 보안 그룹도 확인해보니 80포트는 모든 주소에서 접근이 가능하도록 설정되어있었다. 3. 그러다가 설마하고 nginx 를 재구동시켰는데... nginx가 데몬으로 실행되지 않아서 웹에서 접근 불가했던 것