DevOps 그게 머고?

DevOps-엔지니어-김종석

한 주간 마크애니 소식을 전합니다.

위클리 마크애니

2023년 새해에 활기차게 돌아온 마크입니다 😎

올해는 계묘년, 흑토끼의 해라고 하는데요.

깊은 지혜와 영리함이라는 의미를 지닌 ‘검은토끼’의 해라서 그런지 마크애니 임직원 여러분들도 새로운 시굴과 직무에 많은 관심을 보이시더라고요!

그래서 이번 1월에는 최근 핫하게 떠오르는 데브옵스(DevOps)에 대한 사내 교육을 진행했답니다!

이번 교육은 원격근무하시는 분들도 계셔서 온•오프라인으로 진행했으며 60명 이상의 임직원분들이 교육에 참가해 주셨답니다 😉

마크애니 사내교육-DevOps
© 마크애니

마크애니는 코로나 전까지 한 달에 한 번 사내 직무교육을 진행했어요.

임직원 중 본인 직무지식과 기술 동향을 나누고 싶은 분이 자발적으로 교육을 제안하면 해당 교육에 관심 있는 분들이 자유롭게 교육에 참가하는 방식이죠.

코로나로 인해 사내 교육이 잠정 중단돼 많은 분들이 아쉬워하셨는데요 😥

올해, SRE팀 김종석 프로님이 첫 스타트를 끊어주신 덕분에 사내 직무교육이 부활했답니다 🎉

DevOps-SRE팀 김종석 프로님
© 마크애니

김종석 프로님은 DevOps엔지니어로 근무하고 계시는데요. 마크애니 개발 환경에 DevOps 문화가 잘 정착됐으면 하는 바람으로 강의를 직접 제안하셨어요. DevOps에 대해 잘 모르시는 임직원분들을 위해 DevOps 개념부터 적용 이점, 적용 사례, 적용 방법, 사내 DevOps 도입 방향에 대해 설명해 주셨답니다! 

그럼 교육 내용을 살-짝 살펴볼까요?

 
DevOps 개념
© 마크애니

DevOps는 개발과 운영의 합성어로 팀 간 협업 및 커뮤니케이션 개선과 프로세스 자동화를 통해 솔루션을 더 빠르고 안정적으로 제공하는 문화예요. 

하나의 서비스를 만들기 위해서는 개발팀과 운영팀은 꼭 필요한데요.

개발팀은 사용자 요구에 맞춰 새로운 기능을 빠르게 제공하고

운영팀은 변화를 최소화해 서비스를 안정화시키고자 하죠.

각 팀이 서비스를 두고 원하는 방향이 다르기 때문에 각종 이슈가 발생하는데요.

회사에 DevOps 문화가 정착되어 있다면 해결할 수 있어요. 

What is DevOps?

DevOps는 개발팀과 운영팀이 잘 협업할 수 있도록 커뮤니케이션 메커니즘을 구축하고

빌드, 테스트, 배포 등을 자동화해 고객 요구에 빠르게 대응할 수 있도록 하고

규모에 따라 운영 환경과 개발 프로세스를 관리해 자동화와 일관성을 지원해 복잡한 시스템을 안정적이고 효율적으로 관리할 수 있죠. 

DevOps를 실천하는 방식은 여러 개인데요. 보통 CICD1방식을 활용해요.

1 CICD: CI(지속적 통합, Continuos Intergration), CD(지속적 배포, Continous Deployment)

CI는 자동으로 단위별 코드 변경사항을 빌드하고 기능을 테스트할 수 있도록 해주고

CD는 서비스 개발부터 각종 테스트와 솔루션 배포까지 자동화 시키고 서비스 장애 발생 시 모니터링을 통해 빠르게 복구할 수 있도록 지원하는 방식이에요. 

그럼 이 DevOps 문화를 잘 정착시킨 곳은 어디가 있을까요?

바로 페이스북(FaceBook)이에요. 

페이스북은 2011년 20개 이상의 새로운 서비스와 개발자 도구를 발표했는데요. 다양한 서비스 출시 후 사용자가 급격히 증가하자 엄청난 트래픽이 발생해 시스템 장애로 이어졌어요. 그래서 새로운 기능에 대한 사용자 반응을 제대로 얻지 못했죠. 

그래서 페이스북은 새로운 기능에 대한 사용자 반응을 효과적으로 얻기 위해 아래 4가지 DevOps 원칙을 적용했어요.

DevOps 4원칙
© 마크애니

이를 통해 페이스북은 새로운 기능을 안정적으로 배포하고 사용자 방문 추이와 접속 현황을 미리 예측할 수 있게 됐죠.

구글 데브옵스
© 마크애니

도라에 따르면 성과가 낮은 팀보다 DevOps를 실행하는 팀이 208배 더 자주, 106배 더 빨리 서비스 릴리즈가 가능하다고 해요. CI를 사용하는 팀이 사용하지 않는 팀보다 성과가 3.8배 더 높았고요.

서비스를 빠르고 원활하게 개발하기 위해서는 DevOps가 필요하죠.

그럼 사내에 DevOps 문화를 잘 정착시키기 위해서는 어떻게 해야 할까요?

김종석 프로님은 아래 4가지가 융합적으로 운영되어야 한다고 제안했어요.

DevOps 문화 4원칙
© 마크애니

그래서 마크애니는 SRE(사이트 신뢰성 엔지니어링, Site Reliability Engineering) 팀은 사내에 데브옵스 문화를 정착시키고자 하고 있죠. 

SRE 팀은 서비스 개발 버전 관리, 배포 자동화 등 전반적인 프로세스를 개선해 개발 효율성을 높이고

서비스 개발과 설치방법•트러블 슈팅•시스템 구조도 등 전반적인 시스템을 문서화하는 작업을 해요.

마크애니 솔루션 중 DevOps가 처음 적용된 솔루션은 바로 인공지능 기반 선별관제 솔루션 ‘스마트 아이(Smart EYE)’에요.

처음에는 DevOps를 적용하는 솔루션이기에 간단한 작업 이력 관리부터 시작했어요. 1000개까지 기록되던 로그를 10만 개로 늘려 작업 이력을 관리했고 CICD를 통해 배포 패키지 생성을 기존 35분에서 10분으로 줄였죠. 패키지 설치는 기존 11분에서 7분으로 35%나 줄었고요.

이 외에도 도커 컨테이너 상태 확인, 서비스 버전 관리, 설치 테스트 자동화, 모니터링 등 다양한 부분의 개선 작업을 진행했어요.

마크애니는 앞으로도 다양한 솔루션 개발에 DevOps를 적용할 계획이랍니다!

DevOps를 처음 접하는 분들도 금방 알 수 있는 설명이죠? 😎

DevOps
© 마크애니

약 35분간 진행된 교육 후 Q&A가 진행됐어요. DevOps를 도입하면서 힘들었던 부분이나 스마트 아이 외 마크애니 솔루션에 DevOps를 적용할 수 있는 방안 등 교육에 참여한 임직원분들은 정말 적극적으로 질문해 주셨답니다 ☺️

교육 후 DevOps에 대해 더욱 자세한 이야기를 듣기 위해 김종석 프로님을 잠깐 만나봤어요.

데브옵스 엔지니어 김종석 프로
© 마크애니

*️⃣: 안녕하세요. 종석님! 오늘 교육을 진행하시게 된 계기가 어떻게 되시나요?

김종석: DevOps에 대해 공부하면서 가장 중요하다고 생각한 것은 ‘문화’였어요. 개발과 운영이 원활하게 이뤄지도록 하는 DevOps 문화를 사내에 정착시키면 좋겠다고 생각했죠. 하지만 사내에는 ‘DevOps’에 대해 낯설어 하시는 분들이 많았죠. 그래서 사내에 한번 제대로 DevOps 알려보자! 하는 마음으로 교육을 제안했어요. (웃음)

*️⃣: 의미가 깊네요. 종석님 교육을 들으면서 개발과 운영을 다 아우를 수 있어야 하는 DevOps가 쉽지 않은 직무라고 느꼈는데요. DevOps엔지니어를 하시게 된 계기가 있으신가요?

김종석: 전 시스템 엔지니어로 일을 시작했어요. 시스템 구축과 운영, 모니터링, 트러블슈팅 등을 했죠. 이때 직접 시스템을 개발해보면 재밌겠다고 생각했고요. 그래서 스터디 그룹에 들어가 개발 공부를 하고 2019년부터 개발업무도 담당했어요. 일을 하면서 시스템 엔지니어와 개발자 두 직군 모두 하나의 서비스를 가지고 일을 하지만 추구하는 방향이 달라 소통에 문제가 어렵다는 걸 알게 됐고요. 시스템 엔지니어는 시스템이 안정적으로 운영되길 바라고, 개발자는 사용자 요구를 반영해 계속 최신화하죠. 그래서 시스템 운영 경험과 개발 지식을 동시에 활용해 두 직무 사이의 괴리를 없앨 수 있는 DevOps가 눈에 들어왔어요. 더 많은 것을 배워 경험을 키워나가고 싶었고요. 그래서 데브옵스 엔지니어로 전향하게 됐죠.

*️⃣: 앞으로 DevOps엔지니어 전망은 어떻게 보시나요?

김종석: 원활한 개발 환경과 운영 시스템을 만들기 위해서는 DevOps 엔지니어가 꼭 필요하다고 생각해요. 웹을 기반으로 한 서비스 이용자가 많이 늘어났기 때문에 기업은 대용량 트래픽을 감당하고 안정적으로 서비스를 운영해야 하죠. 또 사용자가 서비스에 다양한 기능을 요구하고 있고 이를 빠르게 적용하기 위해서는 DevOps 엔지니어가 필요해요. 그래서 전망은 밝다고 판단해요.

*️⃣: IT업계에 자동화, 컨테이너화 전략이 중심이 되면서 DevOps 엔지니어가 대세 직무로 주목받고 있어요. DevOps 엔지니어를 꿈꾸는 분들께 한 말씀 부탁드려요.

김종석: DevOps는 공부할 것이 정말 많아요. 개발과 운영 사이에서 소통이 원활하게 이뤄지도록 해야 하고 개발부터 릴리즈까지 자동화할 수 있어야해요. 그래서 전체적인 서비스 구조와 서비스에 활용되는 도구에 대한 이해도가 높아야하죠. 이해도를 높이기 위해서는 개발, 운영, 리눅스, 네트워크, 자동화 등 다양한 기술을 경험해 보는 것이 중요해요. 첫 시작이 물론 쉽진 않지만 개발과 운영에 대한 다양한 경험은 DevOps 직무에 많은 도움이 돼요. 그러니 개발과 운영을 경험해보고 DevOps 엔지니어에 도전해보시길 바래요!

마크애니는 앞으로 사내 교육제도를 살려 임직원분들이 제안하는 다양한 직무 교육을 진행할 계획인데요.

서로가 하는 일이 무엇인지, 어떤 역할을 하는지를 이해할 수 있는 시간을 가져 마크애니 사내에 존재하는 다양한 직무의 이해도를 높이려고 해요.

다음 포스팅에서는 더 재미있고 유익한 마크애니 소식과 함께 돌아오겠습니다!

즐거운 한 주 보내시길 바라요 🖐️

Edit, Photo 김미소

 
 

관련기사 더보기

日 킨키대학, 마크애니 기업탐방 프로그램 진행
Healthcare Security Symposium 2023 마크애니 현장스케치
지식 블로그 리스트 보기