안녕하세요. Culture Migration Team의 꽃미남 은서진입니다.
아틀라시안 플래티넘 파트너, 오픈소스컨설팅 입니다.
이번 포스팅에서는 아틀라시안 솔루션을 이용한 DevOps에 대해서 전해드리고자 합니다.
| DevOps with Atlassian: A guide to cloud features
Atlassian 솔루션을 이용해 개발자가 코드 품질을 지키며 더욱 빠르게 제공할 수 있는 방법
| Introduction
협업이 증가하면 개발자들에게는 비용이 발생할 수 있습니다.
개발자들은 혁신적인 솔루션을 코딩하고 구축하는 것에 집중하기 보다, 여러 도구를 통합하고 작업 상태를 업데이트하고 다른 팀과 작업내역을 공유하면서 하루 중 많은 시간을 보낼 수 있습니다.
최근 아틀라시안이 실시한 DevOps Trends Survey에 따르면 개발자의 80% 이상이 툴의 단절, 수동 프로세스, 그리고 끊임없이 변화하는 협업 프로세스가 방해가 되고 있다고 말합니다.
개발자는 DevOps를 위한 Atlassian의 새로운 기능, 자동화 및 통합을 통해 시간을 단축하고 코드를 더 빨리 제공 할 수 있습니다.
팀은 IT 보안사고에 대해서 적은 컨텍스트 전환, 적은 회의 및 ping 감소로 잇점을 누릴 수 있습니다.
자사 제품 및 타사 툴 전반에 걸친 자동화를 통해 개발, IT운영, 비즈니스 팀을 연결함으로써 개발자들이 그들의 코드에 집중할 수 있도록 도와줍니다. Atlassian은 Jira를 중심으로 DevOps의 모든 업무를 통일하고 협업의 과부하를 줄입니다.
Atlassian 도구가 개발자의 생산성 향상에 어떤 도움이되는지 알아보십시오.
| PLAN
코드 컨텍스트에서 바로 프로젝트 계획 및 추적
DevOps 툴 체인은 단일 크기 접근 방식(one-size-fits-all approach)이 아닙니다.
DevOps는 서로 다른 애플리케이션과 팀에 걸친 툴박스로서, 개발자는 어떤 툴을 사용해야 하는지, 몇개의 툴을 사용하여야 하는지에 대해 가장 잘 알고 있습니다. 그러나 이러한 유연성과 함께 작업의 조정에 대한 필요성이 중요해집니다.
Atlassian의 DevOps 조사 결과, 점점 더 많은 수의 DevOps 팀들이 프로젝트 상태를 이해하기 위해 5개 이상의 도구가 필요하다고 말하고 있는 것으로 나타났습니다. 이러한 도구에서 밀접하게 작업하지 않는 IT 운영 및 비즈니스 팀은 무슨 일이 언제 발생하는지 알아야합니다. 이때 필요한것이 Jira입니다. 지라는 팀과 도구에 걸쳐 작업을 자동으로 통합합니다.
Jira Software Cloud와 Bitbucket Cloud, GitHub 및 GitLab 간의 통합을 통해 이슈 트래킹 및 코드를 작성하면 자동으로 프로젝트 업데이트가 수행되도록 할 수 있습니다. 그리고 Bitbucket, GitHub 또는 GitLab에서의 당신의 작업이 자동으로 업데이트 되므로 프로젝트 관리자는 업데이트를 위해 코딩 흐름을 중단 할 필요가 없습니다.
| 작업 대시보드
Bitbucket Cloud의 새로운 작업 대시 보드가 할당 된 Jira 이슈를 포함하도록 확장 되었으므로 도구 간에 이동하지 않고도 한 작업에서 다음 작업으로 빠르게 이동할 수 있습니다. 또한 각 레포지토리 내부에서는 “Jira issue” 탭 내에서 연결된 프로젝트와 이슈에 대한 새로운 팀 차원의 뷰를 곧 볼 수 있습니다.
| DevOps 자동화 트리거
Jira Software Cloud의 새로운 DevOps 자동화 트리거로 자동화 기능이 향상되었습니다.
클릭 몇 번만으로 연결된 코드 저장소에서 커밋 또는 꺼내기 요청 작업의 트리거를 통해 개발 활동과 작업을 동기화하는 자동화 규칙을 만들 수 있습니다.
기본적으로 관련 Jira 이슈의 상태를 자동으로 업데이트 할 수 있지만 이러한 새로운 자동화를 통해 QA 또는 코드 검토를 위해 Jira 이슈를 재 할당하거나 팀의 Slack 채널에 새 PR에 대한 메시지를 보내는 것과 같은 더 복잡한 규칙도 사용할 수 있습니다.
이러한 자동화 규칙은 Bitbucket Cloud, GitHub, GitLab 및 Jira Software Cloud와 통합되는 다른 코드 리포지토리와 함께 작동합니다.
| BUILD
하던 작업을 잃지 않고 코드 검토, 테스트 및 배포
모든 팀은 코드를 작성하고 검토할 수 있는 최고의 도구를 원합니다. Atlassian이 Bitbucket Cloud를 통해서 그 요구 사항을 충족시켜 줄 수 있습니다. 코드 작성 및 검토와 같이 매일 수행하는 가장 중요한 작업에서 개발자의 생산성을 극대화하십시오.
Bitbucket에서 작업하든 IDE에서 작업하든 관계없이 목표는 흐름을 유지하고 도구 사이의 불필요한 바운스를 줄이는 것입니다.
| 새로운 Pull Request 경험
Bitbucket Cloud의 새로운 Pull Request 경험은 코드 변경을 보다 쉽고 빠르게 검토 할 수있는 혁신적인 설계를 제공합니다.
통합 된 작업 목록, 통합 된 Jira 이슈 생성 및 활동 피드 필터와 같은 새로운 기능을 통해 개발자는 코드 검토를 더 빠르게 완료하고 여러 풀 요청을 한 번에 효율적으로 처리 할 수 있습니다.
| VS Code 통합
Atlassian VS Code 통합은 Jira Software Cloud의 작업 목록, 완벽한 코드 검토 경험 및 Bitbucket Pipelines의 CI/CD 추적을 통해 전체 개발 파이프 라인을 편집기로 가져옵니다.
| CI/CD
Ship fast without breaking things
DevOps 팀은 자동화 및 수동 점검의 “shifting-left”을 통해 CI / CD 프로세스로 파이프 라인을 가속화하려고합니다. 이를 지원하기 위해 Bitbucket Cloud 코드 검토 환경은 이제 코드 스캔 및 품질 보고서와 통합되므로 검토자는 프로덕션으로 전달되기 전에 잠재적인 문제에 대해 경고를 받습니다.
또한 Jira Service Desk Cloud에서 CI/CD 파이프 라인을 손쉽게 변경 승인과 연결하는 새로운 자동 변경 관리 기능을 사용해 볼 수 있습니다.
| Code Insights
Bitbucket Cloud의 Code Insights를 사용하면 코드 검토 프로세스에 대한 테스트 및 분석이 가능하며, 테스트 자동화를위한 Mabl과 자동화 된 모니터링을위한 Sentry를 포함하여 최고의 DevOps 스캐닝을 할 수 있습니다.
Snyk가 Sev-1 보안 사고로 전환되기 전에 중요한 보안 취약점을 조기에 검색하고 강조 할 수 있으므로 Atlassian의 새로운 Snyk와 DevSecOps 통합이 특히 중요합니다.
이러한 모든 통합은 개방형 API를 기반으로하기 때문에 자체 도구에 대한 추가 코드 보고서를 사용하여 Bitbucket Cloud를 확장 할 수 있습니다.
| 자동화된 변경 관리
Jira Service Desk Cloud 및 Bitbucket Pipelines(현재 초기 액세스 상태)를 통한 자동 변경 관리는 CI/CD 프로세스를 일시 중지하고 Jira Service Desk에서 변경 요청을 만든 다음 승인되면 배포를 트리거합니다.
- Jira Service Desk Cloud의 Risk Assessment Engine은 변경 리스크를 신속하게 파악하여 리스크가 낮은 변경 사항을 자동으로 승인하고 배포합니다.
- Jira Service Desk Cloud의 변경 관리 뷰는 팀이 검토하고 필요한 경우 수동으로 승인 할 수있는 변경 가능한 변경 요청에서 모든 정보를 한꺼번에 모아 위험이 높은 변경에 대한 승인 프로세스를 간소화합니다.
- 자동 변경 관리는 Bitbucket Pipelines, Jenkins, Circle CI 및 Octopus Deploy를 지원합니다
| OPERATE & MONITOR
긴급한 인시던트를 진단하고, 사고를 더 빠르게 해결하기
사건이 발생하면 신속한 해결의 핵심은 문제의 원인을 신속하게 파악하는 것입니다. 그리고 팀이 DevOps를 채택하고 구축 프로세스를 자동화함에 따라 변경 관련 실패가 점점 더 일반화되고 있습니다.
최근의 코드 변경으로 인해 문제가 발생했는지 여부를 알고, 즉시 적절한 개발자로부터 도움을 받을 수 있다면 좋지 않을까요?
오늘날 대부분의 팀은 Git 히스토리 및 Jira 티켓을 통해 트롤링하는 추적 작업이 필요합니다.
Opsgenie는 Jira Software Cloud와 Bitbucket Cloud에 새롭게 심층적으로 통합되어 팀이 이 모든 과정을 단축할 수 있도록 지원하며, 첫 번째 응답자에게 최근 배포된 Jira 티켓과 관련 Jira 티켓에 대한 감사 추적 정보를 제공합니다.
| Opsgenie 및 Bitbucket Cloud 통합
Opsgenie와 Bitbucket Cloud의 통합은 모든 경고를 중앙 집중화하고 노이즈를 걸러냄으로써 올바른 문제가 해결되고, 적절한 사람이 경고를 받으며 올바른 조치가 취해지도록 합니다.
| Incident Investigation Dashboard
Incident Investigation Dashboard를 통해 팀은 사고 직전에 발생한 배포를보고 잠재적 원인으로 추가한 다음, 변경을 한 개발자에게 연락하여 롤백하고 사고를 해결할 수 있습니다.
| COMMUNICATION & COLLABORATION
DevOps는 도구 및 사례 / 문화에 관한 것입니다.
성공적인 DevOps 구현은 도구 연결로 끝나지 않습니다. 대부분의 DevOps 실무자들은 DevOps를 성공적으로 구현하는 데 사람과 문화를 가장 중요한 요소로 꼽습니다.
이러한 균형을 맞추기 위해 Atlassian은 DevOps best practice를 배우고 공유 할 수있는 새로운 리소스 허브를 만들었습니다.
- DevOps Community
- DevOps Confluence templates(DevOps 의식을 개선하고 장기적인 목표를 설정하기 위한)
- DevOps Guides(Jira와 같은 도구를 CI/CD와 같은 모범 사례와 연결하는 방법에 대해)
일상적인 커뮤니케이션을 위해 새로운 Slack 통합 및 Statuspage 통합은 내부 및 외부 커뮤니케이션 모두에서 DevOps 모범 사례를 채택하는 데 도움이 될 수 있습니다.
원문 PDF : DevOps with Atlassian
Atlassian 솔루션에 대해 궁금한 점이 있으시다면 언제든지 오픈소스컨설팅 아틀라시안팀에게 문의해 주세요.
감사합니다.