기억
예전에 돌아보면, Git 자체를 사용하는 데 도움을 주는 자료들이 많지 않았습니다.
레거시 프로젝트에 참여해보면 아직도 SVN을 사용하는 곳이 많고, Git을 불편해하거나 심지어 혐오하는 사람들도 많았습니다.
그런 분들이 주도하는 프로젝트는 대개 오래된 업무 방식을 유지하려는 경향이 있어서, 개발보다는 비즈니스 로직 수정 위주의 작업에 집중하는 경우가 많았고, 그분들 입장에서는 SVN이 최적의 선택이라는 결론을 내리곤 했습니다.
게다가 아직도 이런 상황은 현재 진행형입니다. Git은 러닝커브가 있고, 사용자 친화적이지 않은 부분이 많아 쉽게 접근하기 어렵다는 이유가 그 배경일 것입니다.
회사에서 코드 리뷰 시스템을 도입한 후에는 상황이 더 복잡해졌습니다. Gerrit을 운영해봤지만, 소규모로 프로젝트를 운영하다 보니 제대로 활용하지 못했고, 엔터프라이즈 수준으로 운영하는 팀의 도움을 받아서야 비로소 기능과 체계를 제대로 잡을 수 있었습니다.
몇 년 전에는 개인 프로젝트를 위해 GitHub를 사용하다가, GitHub가 프라이빗 레포지토리를 무료로 지원하지 않던 시절에 Bitbucket을 사용한 적이 있었습니다. Bitbucket은 무료로 프라이빗 레포지토리를 제공하던 덕분에 그때 꽤 유용하게 썼습니다.
다시 한 번 Bitbucket을 살펴볼 일이 생겨서 사이트를 방문해보았습니다:
Bitbucket | Git solution for teams using Jira
Bitbucket Cloud is a Git-based code and CI/CD tool optimized for teams using Jira.
bitbucket.org
들어가 보니 여전히 "Get it Free"라고 하며, 무제한 무료 프라이빗 레포지토리와 서드파티 툴과 연계한 CI/CD를 강조하고 있더군요. 특히 Jira와 Trello와의 인테그레이션에 강점이 있어 더 높은 생산성을 기대할 수 있을 것 같습니다. 자체적인 파이프라인을 통해 CI/CD 솔루션을 통합하고, 더 빠른 피드백을 제공할 수 있다는 점도 인상적입니다.
온프레미스 환경에서 호스팅할 경우 Bamboo 등과 통합하면 더 강력한 CI/CD 환경을 구축할 수 있다고 하네요.
"Bamboo가 뭐지?" 궁금해서 찾아봤더니,
https://www.atlassian.com/ko/software/bamboo
Bamboo: 지속적 통합 및 배포 | Atlassian
CI/CD와 관련된 어려움을 겪고 있습니까? Bamboo는 통합 및 배포를 간소화하고 더 원활한 DevOps 워크플로를 위해 빌드 및 릴리스를 자동화합니다. 지금 사용해 보세요!
www.atlassian.com
역시 예상대로 Atlassian 제품이었고, 많은 분들이 'Bamboo'라고 언급하는 것 같더군요. 대나무가 아니라 젠킨스와 유사한 역할을 하는 CI/CD 툴입니다. Atlassian의 다른 제품들처럼 온프레미스 환경에서 라이선스를 구매해 구축하기에 적합하게 만들어진 것 같습니다.
그리고 현재
과거 Bitbucket과 Bamboo를 활용한 CI/CD 환경을 경험했던 것처럼, Atlassian의 CI/CD 솔루션은 상당한 발전을 이뤘습니다. 현재는 Atlassian이 제공하는 여러 솔루션들이 더 깊게 통합되고, DevOps의 핵심적인 역할을 하는 모습입니다.
1. Bitbucket Pipelines: 통합된 CI/CD 솔루션
Bitbucket은 이제 단순한 소스 코드 저장소를 넘어서, Bitbucket Pipelines라는 자체적인 CI/CD 기능을 강력하게 제공합니다. Bitbucket Pipelines는 GitLab CI/CD나 GitHub Actions와 유사하게 코드가 푸시되면 자동으로 테스트, 빌드, 배포하는 과정을 처리합니다.
주요 특징:
- 클라우드 기반으로 동작하며, 별도의 서버 설정 없이도 쉽게 파이프라인을 구성할 수 있습니다.
- YAML 기반 설정 파일로 파이프라인을 정의해 Git에 추가만 하면, 자동으로 빌드와 배포가 이루어집니다.
- Jira와 완벽하게 통합되어, 이슈 관리와 코드 배포가 연결됩니다. 이를 통해 어떤 이슈가 어떤 배포에 연결됐는지, 배포 과정에서 발생한 문제가 무엇인지 손쉽게 추적할 수 있습니다.
- AWS, Google Cloud, Microsoft Azure 등 주요 클라우드 플랫폼과의 연동이 강화되어 클라우드 환경에서도 유연하게 CI/CD 파이프라인을 운영할 수 있습니다.
- 서드파티 툴과의 연계도 훨씬 원활해졌으며, 특히 Slack과 Microsoft Teams와의 알림 시스템이 개선되어 실시간으로 팀에 배포 현황을 공유할 수 있습니다.
2. Bamboo: 여전히 강력한 온프레미스 CI/CD
Bamboo는 여전히 온프레미스 CI/CD 솔루션의 선두주자 중 하나로, 엔터프라이즈 환경에서 중요한 역할을 하고 있습니다. Atlassian의 클라우드 중심 전략이 강화되는 와중에도, 자체 서버에서 모든 CI/CD 프로세스를 제어할 수 있는 옵션을 원하는 기업들은 Bamboo를 선택하는 경우가 많습니다.
Bamboo의 주요 특징:
- 멀티 스테이지 배포: 개발, 테스트, 스테이징, 프로덕션으로 이어지는 다단계 배포를 쉽게 구성할 수 있으며, 각 단계에서 자동화된 테스트와 배포가 가능합니다.
- Jira와의 완벽한 연동: 배포와 이슈 관리를 완벽하게 연동하여, 어떤 코드가 어떤 이슈를 해결하는지 쉽게 추적할 수 있습니다. 특히 Jira 티켓이 완료될 때 자동으로 배포가 이루어지는 방식이 유용합니다.
- 확장 가능한 아키텍처: 엔터프라이즈급 프로젝트에서 사용하기 위해 고안된 Bamboo는 수많은 빌드 에이전트를 통해 확장 가능합니다. 필요한 경우 더 많은 에이전트를 추가하여 동시에 다수의 파이프라인을 처리할 수 있습니다.
- 지원되는 기술 스택: 최신 도커, 쿠버네티스, AWS, Azure 등의 클라우드 기술도 완벽하게 지원하며, 자체 서버에 배포되는 환경에서도 무리 없이 연동됩니다.
3. Atlassian의 CI/CD 에코시스템
Atlassian의 CI/CD 체계는 Bitbucket Pipelines, Bamboo, Jira, 그리고 다른 Atlassian 도구들 간의 긴밀한 연동을 통해 더욱 효율적이고 체계적인 DevOps 환경을 구축할 수 있도록 돕고 있습니다. 클라우드 기반이든 온프레미스 기반이든, Atlassian은 개발, 테스트, 배포의 전체 주기를 지원하는 완전한 DevOps 플랫폼을 제공하고 있습니다.
지금의 Atlassian CI/CD 솔루션을 정리하면:
- Bitbucket Pipelines는 클라우드 중심의 빠르고 쉬운 CI/CD 솔루션.
- Bamboo는 온프레미스에서 깊이 있는 배포 관리를 할 수 있는 강력한 툴.
- Jira와의 완벽한 통합을 통해 개발자와 운영자가 같은 페이지에서 협업할 수 있는 구조를 제공합니다.

'IT > CICD' 카테고리의 다른 글
Github Actions vs GitLab CI/CD (1) | 2024.09.19 |
---|