소중한 자원이 낭비되지 않도록, 클라우드 FinOps에 포커스
- 2022-12-27
- 작성자 김명식
전 세계적으로 클라우드 사용이 증가하면서 클라우드에 대한 기대와 가치가 상승하고 있습니다. 여기에 COVID-19 이후로 더욱 활성화된 온라인 시장의 클라우드 서비스 기업과 클라우드 기반의 비즈니스 기업들은 비약적인 성장을 이뤄냈습니다. 이제 일반 기업들에게도 클라우드 사용은 선택이 아닌 필수사항이 되어가고 있습니다. 기업의 클라우드 적용 시 어려운 점과 비용 절감 방안에 대해 살펴보겠습니다.
지금은 클라우드 시대
전 세계적으로 클라우드 사용이 증가하면서 클라우드에 대한 기대와 가치가 상승하고 있습니다. 여기에 COVID-19 이후로 더욱 활성화된 온라인 시장의 클라우드서비스 기업과 클라우드 기반의 비즈니스 기업들은 비약적인 성장을 이뤄냈습니다. 이제 일반 기업들에게도 클라우드 사용은 선택이 아닌 필수사항이 되어가고 있습니다.
기업들에게 보다 효과적이고 유연한 사업 기반을 제공하는 클라우드 서비스이지만, 클라우드 전환이라는 대대적인 변화에 직면한 기업 입장에서는 클라우드에 대한 고민 역시 증가하고 있는 것이 현실입니다. 기존 On-Premise 환경에서 클라우드로 전환을 했지만 TCO가 오히려 더 상승했다는 부정적인 요소가 보고되기도 하고, 클라우드 전환 이후 다시 On-Premise로 복귀하는 사례도 나오고 있습니다. 이런 상황에서는 클라우드를 무조건 좋기만 한 만병통치약이라고 말하기 어려울 것입니다.
클라우드 적용의 어려움
다양한 Survey를 통해 확인된 바와 같이 클라우드를 적용한 기업들의 대표적인 어려움으로는 제공자 별로 상이한 서비스, 복잡한 가격 체계, 계획과는 무관하게 부과되는 사용 비용, 그리고 효과적인 운영을 위한 일원화된 도구의 부재 등이 있습니다.
또한, 기업들은 단순한 Lift & Shift 방식의 클라우드 적용이 아닌 On-Premise 및 클라우드 환경에 개별 구축된 시스템 간의 원활한 연동과 프로세스 통합 관점에서 Cloud Native 기반의 Refactoring을 고려한 Application Modernization까지 고려해야 한다는 압박을 받기도 합니다. 무엇보다 기업 내 업무 프로세스의 변화 없이 새로운 시스템과 새로운 기술 환경만을 도입한 뒤 기존 방식 그대로의 운영을 고수하는데에서 발생하는 비효율은 해결이 쉽지 않은 클라우드 적용상의 문제라고 할 수 있습니다. 단순하게 관련 전문가를 아웃소싱하여 단기간 내에 적용하는 프로젝트성 과제로는 기업의 문화와 프로세스를 변화시키기 어렵기 때문입니다.
예를 들면, 비용을 관리하는 재무부서에서 기존의 서버/스토리지 등 HW를 투자하는 기준으로 클라우드 자원에 대한 투자 검토를 진행하는 것을 꼽을 수 있습니다. 투자 검토가 완료된 클라우드 자원에 대해서는 매몰 비용으로 간주하고, 재무부서 입장에서 더 이상의 관리를 하지 않는 것이 일반적인 모습이기 때문입니다.
이른바 수십년간 안정적으로 잘 운영되고 있던 기업의 업무 프로세스가 클라우드 활용에 있어서는 큰 장벽이 될 수 있습니다. 단계별로 Silo화 된 업무는 본인 담당의 단계를 벗어난 문제에 대해서는 파악과 조치가 어렵습니다. 기업의 자산이 아니라 잠시 빌려 사용하는 서비스이다 보니 정보 전략 담당자 입장에서도 현재 얼마나 많은 자원을 얼마나 효과적으로 사용하고 있는지 확인하고 적극적으로 관리하기 어렵습니다. 그렇다면 클라우드를 통해 낭비되는 비용은 과연 얼마나 될까요? Accenture에 따르면 일반적인 기업의 평균 낭비 비용은 클라우드 전체 지출의 약 30%에 이른다고 합니다. 또한, Gartner에서는 작년 한 해에 $26.6 billion의 금액이 클라우드를 통해 낭비되었다고 밝혔습니다. 그러나 클라우드 비용은 앞으로도 더욱 증가하게 될 것입니다. 따라서 평균 30%를 차지하는 낭비 비용 역시 증가할 수 밖에 없는 것이 현실입니다.
클라우드 비용 절감
앞서 언급했던 것과 같이 불필요한 비용이 클라우드 사용을 통해 지출되고 있지만, 그것은 클라우드 자체의 문제라기 보다는 클라우드를 제대로 사용하지 못하는 사용자 관점의 문제로 보는 것이 보다 적절할 것 같습니다. Gartner에 따르면 클라우드 비용 낭비의 근본적인 원인은 전통적인 인프라 관리의 오랜 습관으로 인한 클라우드 자원 유휴 상태의 방치라고 언급한 바 있습니다. 클라우드에서 제공하는 정보를 활용하여 불필요한 비용은 얼마든지 절감할 수 있기 때문입니다. 클라우드에서 제공된 정보를 활용한 비용 절감은 크게 자원 최적화와 비용 최적화의 2가지 방법을 꼽을 수 있습니다.
먼저, 자원 최적화 방법은 사용한 만큼 비용을 지불하는 클라우드 게임 룰에 휘둘리기보다 상황에 따라 필요한 만큼의 자원을 적절하게 사용하는 방법입니다. 사용하지 않는 불필요 자원을 삭제하고, 요구량 대비 과스펙의 자원을 적정 규모로 전환(Rightsizing)하며, 미사용 시간에는 개발 및 스테이징 자원을 꺼두는 방식을 예로 들 수 있습니다. 반면, 비용 최적화의 방법은 동일 자원 사용량을 기준으로 서비스 제공자로부터 보다 많은 할인을 받을 수 있도록 하는 것 입니다. 어차피 사용할 자원이라면 클라우드 서비스 업체에서 제공하는 장기 예약 상품들을 활용하는 것으로 AWS Reserved Instance, AWS Savings Plans 및 Azure Reservations 등이 대표적인 사례입니다. 1년 또는 3년 약정 기한에 따라 할인율이 상이하며, 사용자를 Lock-in 시킬 목적으로 설계한 만큼 약정 기간과 자원 사용 계획을 고려하여 비용 최적화 전략을 수립/적용하는 것이 필요합니다. 이러한 클라우드 비용 절감 활동은 과제 레벨에서 독자적으로 실행 할 수도 있지만, 가능하면 전사적 관점에서 수행하는 것이 보다 효과적인 결과를 얻을 수 있습니다. 한편 전사적 관점에서 조직적으로 클라우드 비용 절감을 실행하기 위해서는 이를 위한 보다 고도화된 방법론과 실행 도구가 요구됩니다. 전사적 관점의 클라우드 비용 절감 그리고 효과적인 클라우드 활용을 위해 Cloud FinOps라는 개념은 만들어지게 됩니다.
Cloud FinOps
FinOps의 개념은 Finance(재무담당)부터 Operations(운영담당)까지 기업 내 다양한 계층의 참여자들이 전사적으로 클라우드 비용 효율화에 참여하는 것을 원칙으로 하며 실제 다양한 Best Practice를 기반으로 정리된 개념입니다. Cloud FinOps는 정보의 공유에서 시작됩니다. ‘Prius 효과’를 예로 들어보겠습니다. 높은 연비를 자랑하는 자동차 Prius에는 커다란 중앙 계기판이 있습니다. 계기판은 운전자가 어떻게 운전을 할 때 연비가 절감되는지에 대한 정보를 지속적으로 보여줍니다.
즉, 제공된 적절한 정보는 운전자에게 더욱 적극적으로 연비 개선을 위한 노력을 하도록 유도합니다. 그러므로 FinOps의 첫번째 단계는 다양한 역할자들과 정보를 공유함으로써 자원과 비용의 최적화를 검토, 절약을 실행하도록 하는 것입니다.
이는 얼마의 비용이 사용되었는지, 예산을 초과하지는 않았는지, 비용 증가의 원인이 무엇인지, 자원의 낭비는 없는지 등의 사용 패턴을 분석하여 적합한 요금 할인 상품 추천과 더불어 선구매 자원이 누락 없이 잘 사용되고 있는지까지의 정보들을 필요한 역할자 별로 잘 전달하는 것만으로도 큰 의미를 갖습니다. 하지만 정보 공유와 최적화 검토 활동이 FinOps의 주요 목적은 아닙니다.
Cloud FinOps의 핵심은 운영과 실행입니다. 아무리 양질의 정보가 공유되고, 클라우드 효율화와 최적화를 위한 분석이 이루어진다 해도 실행이 되지 않으면 아무런 변화도 결과도 없게 됩니다. 정보를 제공하고, 자원과 비용의 최적화를 위한 추천 정보를 제공한다고 해도, 실제 실행으로 실천되는 것은 또 다른 차원의 일이기 때문입니다. 그렇다면 Cloud FinOps 실행을 위한 핵심 성공요소는 무엇일까요?
실제 필드에서 적용하고 검증된 Best Practice를 정리하여 발간한 “Cloud FinOps”(O’REILLY, 저자: J.R. Storment/Mike Fuller)에서는 효과적인 클라우드 적용을 위한 신문화 정착과 자동화 등 다양한 혁신의 키워드를 언급하지만, 1) 메트릭 기반 목표 관리와 해당 목표를 달성하기 위한 2) 프로세스 수립/실행을 지속적으로 강조하고 있습니다.
1) FinOps 메트릭 적용
FinOps가 실행으로 전이되기 위해서는 실용적이고 구체적인 장치가 필요합니다. 운동이 건강에 좋다는 것은 누구나 알고 있지만, 운동을 실행하기 어려운 것과 비슷합니다. 현재 자신의 건강 상태가 항목별 점수로 표시되어 배우자(관리자)와 자신에게 지속적으로 전달된다면, 그것은 운동을 시작하는데 있어 훌륭한 모멘텀이 될 것입니다. 작업과 행동이 데이터를 주도하기보다는 데이터가 작업과 행동을 주도하도록 하는 것이 실행에 있어서 보다 현실적인 것과 같습니다.
FinOps 메트릭을 통해 클라우드의 자원과 비용에 대한 FinOps 수준을 정량적으로 파악하고, 어떤 조직에 어떤 과제, 어떤 부분이 부족한지를 직관적으로 판단할 수 있도록 구체적인 정보를 제공하는 것으로 업무 실행 계획의 구체화가 가능해집니다. 조직 레벨에서 과제 레벨로 단계적인 데이터와 정보를 제공함으로써 개선 작업과 실행을 주도할 수 있게 됩니다. FinOps 메트릭을 적용할 때에는 적용대상 조직에서 클라우드가 활용되는 수준에 따라 적절한 목표를 설정할 필요가 있습니다.
현실과 너무 동떨어져 있는 다른 세상의 목표와 수준을 설정하면 실행 의지와 개선에 대한 성취감을 얻기 어렵기 때문입니다.
Cloud FinOps에서는 이와 같은 단계별 접근방식으로 클라우드 활용수준을 Crawl – Walk – Run의 3단계로 구분합니다. 하지만 조직의 FinOps 수준에 대해 굳이 ‘우리 과제는 Crawl 단계이기 때문에’, ‘우리 회사는 Walk 단계이기 때문에’ 등의 구분에 얽매일 필요는 없습니다. 조직의 상황과 수준을 고려하여 FinOps 전략을 설정하고 실행하는 관점에서 해당 정보를 활용하면 됩니다. 한편 FinOps 목표 설정 시에 좀 더 상세한 수준으로 기업의 상황과 전략을 반영하여 표준정책을 수립하는 것이 필요합니다.
기업의 업무 환경과 수준에 최적화된 전사 FinOps 메트릭을 설정/관리할 수 있도록 표준 정책을 설정하고 관리하는 것은 목표관리에 있어 매우 중요한 단계입니다. FinOps 정책 수립 시 현재는 어떤 수준에 해당하는지, 내가 설정한 목표가 어느 시점에 달성 가능하게 될지 등을 고려하여 목표를 수립하는 것이 필요합니다. 무리한 목표 설정은 대부분 좌절로 전이될 리스크가 크고, 현재 수준을 반영하여 적절한 FinOps 목표를 설정해야만 적절한 자극이 되고 실행으로 전이가 용이해지기 때문입니다.
사례1. 삼성SDS Cloud in One - FinOps 정책 설정기능
사례2. 삼성SDS Cloud in One - FinOps 정책 시뮬레이션 기능
2) FinOps 프로세스 적용
FinOps 메트릭을 통해 자원과 비용에 대한 개선 항목이 파악되어도 즉각적인 FinOps 실행을 위해서는 해당 개선 활동을 위해 사전에 정의된 업무 프로세스와 각 프로세스 단계별 담당자가 설정될 필요가 있습니다. 특히, 특정 업무를 수행하기 위해 다양한 관련자들과 커뮤니케이션 하는 과정이 길어질수록 해당 프로세스는 제대로 수행되기 어렵습니다. 예를 들어 Rule 기반 또는 인공지능에 의해 Rightsizing 추천된 자원을 그대로 자동화 처리하여 실행시키기에는 현실적으로 다양한 예외 상황들이 존재합니다.
이를 검토하고 확정하는데 적절한 담당자를 확인할 수 없다면 검토와 의사결정이 신속하게 이루어질 수 없고, 해당 검토가 정체되거나 누락되는 것을 피하기 어렵게 됩니다.
FinOps 실행 프로세스에는 오너가 있어야 합니다. 오너는 누가, 무엇을, 언제, 어떻게 수행하는지에 대해 명확하게 정의합니다. 프로세스가 성숙해지기 위해서는 해당 프로세스에 할당된 책임이 명확해야 하고, 주기적으로 각 프로세스가 제대로 잘 운영되는지를 지속적으로 점검할 필요가 있습니다.
구체적으로는 과제별로 자원 최적화 활동을 수행하는 담당자들과 업무 플로우를 설정 관리하는 것이 필요합니다. 과제 오너에 의해 설정된 Workflow 단계별 담당자들이 시스템과 연계하여 필요한 검토 및 의사 결정을 수행하고, 해당 과정상에 지연이나 누락이 발생하고 있는지를 효과적으로 관리할 수 있도록 한다면 더욱 효과적으로 프로세스가 실행될 것입니다. 지금까지 기업에 있어 필수 환경이 되어가고 있는 클라우드를 보다 효과적으로 활용할 수 있게 하기 위한 방법론으로 FinOps의 기본 개념과 기업의 기존 업무 프로세스 환경에서 효과적인 클라우드 거버넌스 및 FinOps 실행을 위한 핵심 성공 요소에 대해 간략하게 설명드렸습니다.
기업들이 메트릭 기반 FinOps 수준 관리와 그 목표를 달성하기 위한 프로세스 수립/적용의 2가지 핵심 성공 요소를 활용하여 클라우드 비용을 절감시키고 효과적인 클라우드의 활용이 이루어지기를 기대합니다.
사례3. 삼성SDS Cloud in One - FinOps 프로세스 설정 기능
- 김명식 프로 / 삼성SDS
- AI 등 다양한 신기술에 대한 연구기획 경력을 기반으로 효과적인 Cloud FinOps 도입/적용을 위한 SDS FinOps 플랫폼을 기획하고 있습니다.