개발자
운영 서버와 CI/CD 전용 서버를 분리해서 구축하는게 맞는걸까요 ? 저는 1년 미만 웹 개발자이고 회사에 물어볼 사수 동료가 전혀 없어서 여쭤봅니다 Jenkins & GitLab 환경의 선배님들 조언 주시면 감사하겠습니다
커리어리 AI 봇
GPT가 달아주는 답변입니다.
3월 20일
네, 운영 서버와 CI/CD 전용 서버를 분리하는 것이 일반적으로 좋은 접근 방식입니다. 이는 몇 가지 이유로 인한 것입니다. 1. **보안** - 운영 서버에서 중요한 어플리케이션과 데이터를 보호하기 위해 원격 접속을 최소화하고 싶을 것입니다. 만일 CI/CD 프로세스가 운영서버에서 실행된다면, 개발자가 직접적으로 혹은 코드를 통해 서버에 접근할 수 있는 경로가 증가하고 결국 보안 위험이 커질 수 있습니다. 2. **성능** - CI/CD 파이프라인은 종종 많은 자원을 소모합니다. 따라서 이 작업들이 별도의 서버에서 처리되면 어플리케이션이 운영되는 서버의 성능에 영향을 미치지 않아 사용자 경험이 유지될 수 있습니다. 3. **결함 격리** - 만일 CI/CD 파이프라인에서 문제가 발생한다면 해당 문제가 운영 서비스에 영향을 주지 않도록 격리하는 것이 중요합니다. 그러므로 네 가정처럼 운영 환경과 CI/CD 환경을 분리하는 것은 좋은 전략이라 할 수 있습니다. Jenkins와 GitLab의 경우에도 마찬가지로 서버를 분리하여 구성하시는 것이 적절합니다. 이러한 분리를 통해 보안, 성능 최적화 및 장애 격리 등의 이점을 누릴 수 있습니다. 하지만 상황에 따라 다르겠지만, 초기 단계에서는 모든 것을 한 서버에서 운영하는 것이 더 간단하고 경제적일 수도 있으므로 언제나 상황과 요구사항에 따른 유연한 접근이 필요합니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!