안녕하세요!!!
오픈소스컨설팅 마케터 박현수입니다.
지난 4월 19일, Atlassian 솔루션을 활용한 DevOps 및 ITSM Best Practice라는 주제로 오픈소스컨설팅이 주최하고, 아틀라시안이 후원하는 “Atlassian meets DevOps and ITSM” 행사가 열렸습니다.
큰 행사의 직후였음에도 불구하고, 정말 많은 고객 분들이 참석해주셔서 저희도 깜짝 놀랐어요!
성원에 진심으로 감사드리고, 앞으로도 더욱 노력하는 오픈소스컨설팅이 되겠습니다. 지켜봐주세요~
(왼쪽부터 오픈소스컨설팅 한진규 이사, 카카오 이호정 셀장, 아틀라시안 Scott Davis SA, 통역사, 오픈소스컨설팅 최지웅 부사장)
음 다소 긴 제목이지만, 이번 세미나의 주제는 DevOps를 위한 Atlassian 사용 방법 정도로 풀어 이야기할 수 있겠네요.
이번 세미나에서 소개된 대부분의 내용은 기술보다는 운영자나 개발자의 마인드셋에 대해 강조하곤 했습니다. (DevOps의 시작은 역시 마음가짐이죠!)
이러한 내용은 오픈소스컨설팅의 CTO이자 정신적 지주를 맡고 계신 최지웅 부사장님의 키노트에서도 확인해볼 수 있었습니다.
“사실 기술이 문제가 아니예요”라는 부제를 달고, 올바른 DevOps 수행을 위한 인프라 스트럭처 전략 을 소개해주셨습니다.
Atlassian을 도입하기 전, 필수적인 고민
DevOps를 위한 도구로서 Atlassian을 도입하기 전, 하부 인프라 스트럭처에 대한 고민이 선행되어야 합니다.
IT 환경에서 중요한 것은 프로젝트에서 프로덕트로, 목표는 안정성에서 민첩성으로 점차 변화하고 있고 그러한 변화의 중심에 DevOps가 있다고 볼 수 있습니다.
Time to Value – Time to Market : 혁신을 위해서는 작은 단위로 빠르게 배워야 합니다. 너무 많은 기능을 한꺼번에 넣으려 하는 것은 욕심인거죠.
현재의 IT 최고의 인프라스트럭처는 보다 단순하게 연결되어야 하고, “새로운 기술”을 보다 빠른 주기로 제공하는 모델입니다.
조금 기술적인 관점에서 이야기하자면, 애플리케이션을 분할 / 규격화 / 캡슐화해서 Microservice 형태로 개발하여 다양한 운영 환경에 지속적 배포 (Continuous Deploy) 결국, 분산된 환경에 최적화해야 합니다.
스케일 형태로, 가용성을 위해 분산하는 클라우드 네이티브 환경을 구축하는거죠.
클라우드 네이티브는 클라우드 컴퓨팅 모델의 장점을 모두 활용하는 애플리케이션을 개발하고 실행하기 위한 접근 방식입니다.
장점은 분산을 통한 유연성을 가져올 수 있지만, 운영 관점에서는 단점도 분명합니다. 애플리케이션도 분산시켜야 하기 때문이죠. 분산은 곧 인스턴스 증가, 인스턴스 증가는 곧 소프트웨어 비용의 증가를 불러옵니다.
이러한 클라우드 네이티브의 단점을 타개하기 위해서는, 오픈소스를 도입하여 인프라를 만들어야 합니다.
인프라 스트럭처 단에서는 개발된 코드가 유연하게 물흐르듯 연결된 에코시스템을 구축하고, 조직에서는 프로세스가 잘 조화되도록 알맞은 시스템을 제공해야 합니다.
DevOps를 위한 최적의 인프라찾기
DevOps로 가기위해서는 Cloud로의 이동은 필연인 것으로 보입니다. 그 근간은 MSA(Microservices Architecture)이며, DevOps + Cloud까지의 조합이 매우 중요합니다.
일부조직에서는 이미 Dev + Ops + Sec + CI/CD 까지 연결하여, 컨테이너용 애플리케이션 빌드가 최종 목표인 방향으로 흘러가고 있습니다.
Trigger Build & Deploy 구성을 살펴보면, 컨테이너에 한데 모아놓고 개발 및 배포에 관한 부분들에 대한 관리가 가능한 것으로 보입니다.
ITS부터 개발, 검증, 빌드하여 컨테이너를 통해 운영까지 보내는 프로세스를 물흐르듯이 연결시키는 것이 중요합니다. 이러한 부분은 직접 쿠버네티스를 사용하거나, PaaS를 통해 구성해낼 수 있습니다.
엔터프라이즈 DevOps까지 확장하기
따라서, 이러한 애플리케이션 구동 환경이 특정 인프라 환경으로 제한되어서는 안됩니다. 결국 멀티 클라우드 에 대한 이야기까지 흘러오게 되는거죠.
프라이빗 및 퍼블릭 환경에서 다 똑같이 구성해야 합니다. (이 때문에 컨테이너에 대한 부분을 고민하지 않을 수가 없습니다)
재작년부터 고민이 되는 것은, 어떻게 하면 DC를 클라우드로 연결시키는 작업을 할 수 있을까에 대한 부분입니다. 일부 게임사들은 이미 컨테이너를 도입하고 있습니다.
하이브리드 및 멀티 클라우드로 갔을 때 배포 대상은 굉장히 다양합니다. 직접 배포할 수도 있고, 지난주 발표한 것처럼 Google의 Anthos라는 프로그램을 이용할 수도 있습니다.
엔터프라이즈 DevOps까지 확장을 하고자 한다면, 비전, 전략 및 하부 인프라, 오토 메이션, 성능 보안 등 고민할 부분이 상당히 많죠. 기존 인프라 및 각 컴포넌트까지 총체적으로 고민해야 합니다.
결국에는 사람!
결국 결론은 다시 마인드셋으로 흘러옵니다. 기술력보다는 이를 어떻게 조합하는지가 중요합니다.
따라서, 팀 조직 및 서비스 및 운영 그리고 결국에는 사람과의 커뮤니케이션 이 가장 중요하다는 것을 강조하는 키노트였습니다!
키노트 다음으로는 Atlassian의 솔루션 엔지니어 Scott Goh-Davis (이하, 스캇)의 “ITSM in and Agile World” 세션 이 이어졌습니다.
For TEAMS !
스캇은 오랜 경력동안 좋은 팀을 만나고 많은 경험 토대로, 그 경험을 공유하고 ITSM을 이룩하는 방법에 대해서 이야기해주었습니다.
ITSM과 관련해서는 1. 인스턴스 관리 2. 운영 관리 3. 몇가지 Metric에 대한 이야기를 했고, 마지막으로 ITSM 백서를 다운로드할 수 있는 링크 를 공유했습니다.
처음 스캇이 개발자로서 일하기 시작했을 때는, 운영에서 나오는 변경 사항을 그때그때 반영해야 했고 그것이 Final QA라고 주장했다고 합니다. 이런 상황은 30년이 지난 지금도 빈번하게 일어나고 있죠.
이를테면, 개발에 있어 Waterfall 방식을 고수하듯, 작은 변경 사항을 빠르게 반영하는 애자일 방법과는 다른 움직임도 아직 만연합니다.
하지만, 요새는 빠른 것뿐만 아니라 퀄리티를 함께 높이는 것이 중요해 DevOps를 넘어서 DevSecOps까지 나와있는 상황입니다.
DevOps와 ITSM이 많은 조직들이 적용하고자 하는 기조이긴 하지만, 개발쪽 변경사항이 더 빨리 자주 발생하면 Operation에서는 리스크라고 받아들일 수도 있습니다. 팀간 장벽이 한층 높아질 수도 있구요.
이러한 상황을 Atlassian은 팀과 문화와 일이 같은 방향으로 함께 움직인다는 미션을 통해 극복하고자 합니다. 각 팀에 맞는 방법과 문화를 개발한 후, 툴과 제품에 대해서 고려하는거죠.
Let’s PLAY!
사람과 문화 그리고 팀은 어떻게 개선할 수 있을까요? 대부분의 회사는 인사 고과를 받는데, 이러한 인사 고과에 대해서는 익숙하죠. 하지만, 팀에 대해서는 어떨까요?
아틀라시안이 지속적으로 고민하는 것은 팀워크를 어떻게 개선하는가입니다. 왜 팀마다 결과가 다를까요? 그러한 결과를 분석해보기 위해서, Atlassian은 Atlassian Team Playbook 을 만들었습니다. (링크를 통해 다운로드 받을 수 있어요!)
1. 팀의 현황을 어떻게 측정하는가? – 측정 후 개선 부분을 발견하는 첫단계입니다.
2. 어떻게 개선할 것인가? 개선 아이디어를 도출하고 난 후 실천하는 것을 Atlassian은 Play 라고 부릅니다.
아틀라시안은 이러한 팀플레이북을 매년 1-2번 수행하고 플레이를 통해 개선 및 실천해나가고 있습니다. 특정 아틀라시안 제품에 국한되어서만 사용되는 것은 아니고, 보편적으로 활용할 수 있다고 합니다.
Genius for managing incidents – Opsgenie
여러 팀이 가지고 있는 스킬을 어떻게 개선할 수 있을까요? ITSM 이나 애자일에 대해서도 어떻게 접근하고 실천할 수 있을까요?
모던 ITSM에 있어서 가장 이슈가 되는 것은 메이저한 인시던트에 대해서 어떻게 대처하는가 입니다. 인시던트 관리에서 가장 중요한 것은 평균 복구 시간이고, MTR에서 가장 중요한 것은 반응 (Respond)입니다.
모니터링을 대부분 간과하곤하는데, 중간에 대응 과정에서 Opsgenie라는 제품을 사용해볼 것을 추천드립니다. Opsgenie는 모든 알림을 하나하나 보고, 알람을 봐야하는 적임자에게 전달 및 알림(Alert)을 하는 중간의 허브역할을 수행합니다.
복구는 JSD와 Statuspage를 통해 복구 및 처리 개선을 할 수 있겠습니다. Operation 뿐만 아니라 End user까지 전달될 수 있도록 말이죠.
중간과정에 필요한 Monitoring에서는 Amazon CloudWatch나 Docker 등 고객이 원하는 프로그램을 사용할 수 있습니다.
Opsgenie 이용하면 MTTR을 획기적으로 줄일수 있습니다. 하지만 무엇보다 중요한 것은 인시턴트 발생 및 대처 이후의 Review 라고 스캇은 강조했습니다.
70%나 되는 비율로 인시던트 발생 이후의 대처를 형식적으로 리뷰하고 이 문서를 다른데 두거나 잊혀지고는 합니다. 하지만, 리뷰는 꼼꼼히, 반드시 놓쳐서는 안되는 중요한 과정입니다!
1.팀플레이북을 통해 시작해라
2. 전통적인 R&R에 대해 의문을 제기해라.
3. 자동화하라! (Automate with opsgenie)
4. 계속해서 실험하고 적용할 것
이후에는 오픈소스컨설팅 한진규 이사님과 카카오 이호정셀장님의 세션이 이어졌습니다.
한진규 이사님은 “DevOps 문화 구축하기” 를 주제로 Atlassian 제품을 활용한 DevOps구성도를 소개해주셨는데요,
아래 그림에서 보듯 Jira를 중심으로 Confluence, Jira Service Desk, Bitbucket 등 도구를 통해 DevOps를 쉽고 간편하게 구축할 수 있습니다.
아울러, 이전 세션들처럼 DevOps를 위해서 결국에는 “사람”과의 소통이 가장 중요하다고 강조하며, DevOps 시뮬레이션 을 소개했는데요.
DevOps 효과를 직접 경험하고 체득하면서 구성원 한 명 한 명이 DevOps의 실행자가 될 수 있도록 변화시키는 획기적인 시뮬레이션입니다. (위 링크를 통해 DevOps 시뮬레이션을 만나보세요!)
KaKao는 Atlassian을 오래 전부터 선구적으로 사용하여, 우리나라에서 DevOps 및 ITSM을 잘 실천하고 있는 회사로 유명하죠.
이호정 셀장님의 “Kakao meets Jira”에서는 말그대로 DevOps의 핵심 툴인 Jira와 kakao가 만난 이야기입니다.
이호정 셀장님이 귀한 시간을 내주셔서 카카오에서 Jira를 어떻게 사용하고 있는지 알아보고, ITSM을 달성하는 방법에 대해서 생생하게 전달받을 수 있었습니다.
특히, 카카오에서 사용 중인 주요 Add-on에 대해서 친절하게 공개해주셔서 많은 고객분들께 참고가 되셨을거라고 생각합니다.
아울러 카카오에서의 업무 요청 처리 예시 프로세스는 마케터인 저한테도 많은 도움이 되었네요 좋은 발표와 공유에 진심으로 감사드립니다!
모든 발표 내용은 여기 링크 에서 확인하실 수 있답니다.
세션이 다 끝나고 난 후에는 시원한 맥주와 함께 네트워킹 타임을 가졌답니다!
아틀라시안 본사 직원, 오픈소스컨설팅의 CTO, 실제로 아틀라시안을 도입하신 고객사 셀장님 등 다양한 연사자 분들과 함께 하는 자리여서 많은 분들과 함께 어우러질 수 있어 더욱 좋았습니다!
앞으로도 이런 행사 많이 준비해서 고객 여러분께 더욱 도움이 될 수 있는 오픈소스컨설팅이 되겠습니다.