수동 스크립팅과 프로비저닝 프로세스를 사용하고 계신가요?
하시코프의 인프라 라이프사이클 관리(Infrastructure Lifecycle Management)를 위한 5가지 모범 사례를 활용하여 프로비저닝 속도를 높이는 방법을 소개해드립니다.
☑️ 인프라 프로비저닝을 위한 DevEX와 보안을 개선하는 5가지 방법
경쟁업체가 매일같이 고객을 빼앗으려고 노력하는 경쟁적인 비즈니스 환경에서 속도는 모든 것을 좌우합니다. 제품에 소프트웨어가 포함되어 있다면, 애플리케이션 개발자가 고부가가치 프로젝트에 더 많은 시간을 할애하고, 지루한 수동 작업을 없애고, 개발 및 배포 프로세스를 최대한 자동화할 수 있도록 하는 데 집중해야 합니다. 즉, 시스템 관리자, 데브옵스 엔지니어, 또는 플랫폼 팀은 대부분의 수동 인프라 프로비저닝 및 검토 워크플로를 중단하고 개발자에게 개발자 경험(DevEx)이 뛰어난 플랫폼에서 자체 인프라(즉, 서버, 데이터베이스, 로드 밸런서, 캐시, 방화벽 설정, 대기, 모니터링, 서브넷 구성, 라우팅 규칙)를 프로비저닝할 수 있는 권한을 제공해야 합니다.
소프트웨어 제공 속도를 높이기 위해 지금 바로 실행할 수 있는 다섯 가지 인프라 프로비저닝 전략을 소개합니다.
1. IaC를 통한 프로비저닝 자동화
인프라를 수동으로 구축하고 관리하는 것은 종종 승인 절차가 길고, 수동으로 리소스를 추적해야 하는 등 느리고, 지루하며, 오류가 발생하기 쉬운 작업입니다. 그렇다면 왜 일부 회사들은 이러한 전통적인 시스템 관리 방법을 계속 사용하는 것일까요?
일반적으로 다음과 같은 두 가지 이유 중 하나에 해당합니다. 개발자와 시스템 관리자/DevOps 엔지니어는 미래의 프로세스 안정성에 대해 걱정하지 않고, 현재 가장 적합한 벤더 콘솔이나 일회성 스크립트를 사용합니다. 이것은 일반적으로 조직의 표준이 느슨하게 정의되어 있을 때 발생합니다. 조직이 엄격하게 통제되고, 인프라 관리에 대한 엄격한 기존 프로세스를 따르며, 여러 단계의 승인 및 감독이 필요합니다. 인프라 프로비저닝을 자동화함으로써, 조직은 속도와 통제력을 모두 달성할 수 있습니다.
IaC를 사용하면 인프라의 코드화, 표준화, 복제, 재사용, 저장 및 중앙 집중화, 감사, 버전 관리를 할 수 있습니다. 인프라를 코드로 정의함으로써 팀은 인프라 배포를 더 쉽게 자동화하고, 이해하고, 수정하고, 제어할 수 있습니다. 즉, 훨씬 더 빠르게 움직일 수 있습니다. 얼마나 더 빠를까요?
이탈리아의 선도적인 통신 회사인 보다폰(Vodafone)은 인프라 자동화를 통해 비용을 절감하고 경쟁력을 강화한 회사 중 하나입니다. 보다폰의 자동화 센터장인 에마누엘레 디 사베리오(Emanuele Di Saverio)에 따르면, 레거시 프로비저닝 프로세스에 대한 의존은 그들의 사업을 심각하게 제한했다고 합니다. Vodafone Italy의 DevOps 플랫폼 설계자인 Massimiliano Romano는 “모든 것이 클라우드 기반이기 때문에 서비스 수요와 우리가 충족해야 하는 다양한 규정 준수 표준을 따라잡을 수 있는 유일한 방법은 인프라 개발에 대한 중앙 집중식 접근 방식을 느슨하게 하고 더 빠르고 자율적인 모델을 채택하는 것뿐이라는 것을 깨달았습니다.”라고 덧붙였습니다. Vodafone은 IaC를 사용하여 인프라 제공의 95%를 자동화하고, 릴리스 주기를 3배로 단축했으며, 인프라 설정 시간을 3개월에서 1주로 단축했습니다. 그리고 모든 규정 준수 요건을 충족하면서 이 모든 것을 해냈습니다.
2. 골든 구성 구축 및 재사용
클라우드에서 빠르게 움직이는 과정에서 종종 발생하는 피해 중 하나는 일관성입니다. 팀이 사일로 방식으로 작업하고 가장 편리한 방법을 사용하여 인프라를 수동으로 프로비저닝할 때, 그 결과는 관리하기 어렵고, 종종 자원을 낭비하며, 잠재적으로 보안 취약점을 유발할 수 있는 비표준적이고 다루기 힘든 클라우드 환경입니다.
IaC를 채택하는 것이 이 문제를 해결하는 첫 번째 단계입니다. IaC가 없으면 모든 인프라 구성을 정의하는 단일 언어를 가질 수 없습니다. 다음 단계는 단일 인프라 언어를 사용하여 다양한 팀이 공유할 수 있는 템플릿을 만드는 것입니다. 이러한 템플릿이 없으면 팀은 동일한 문제에 대한 솔루션을 재발명(reinventing the wheel)하여 시간을 낭비하고 보안 표준을 충족하지 못하거나 리소스를 보호하기 위해 수동 개입이 필요한 인프라 구성을 만드는 경우가 많습니다.
템플릿은 조직이 같은 문제를 해결하기 위해 반복적으로 노력하는 것을 방지하는 데 도움이 됩니다. 템플릿을 많이 만들수록 개발자와 기타 인프라 사용자는 표준 인프라 프로비저닝 템플릿을 사용할 수 있다는 것을 알게 됩니다. 이 템플릿에는 골든 이미지, 골든 모듈, 골든 자동 정책 점검이 포함되어 있으며, 사용자는 라이브러리에서 골든 이미지를 선택하여 사용할 수 있습니다. 이러한 것들은 이미 골든 구성에 포함되어 있으며, 누군가 그것을 사용하기 전에 모든 관련 이해관계자의 승인을 받습니다.
이러한 구성 요소를 구축하는 작업은 플랫폼 팀이 담당하며, 플랫폼 팀은 보안, 비용, 규정 준수 관련 이해관계자들과 협력하여 구성을 설계합니다. 그런 다음 코드를 테스트하고 검증한 후, 개발자가 쉽게 액세스하고 재사용할 수 있는 중앙 라이브러리에 배포합니다. 골든 구성은 인프라 제공에 대한 추측을 배제합니다. 개발자의 작업 흐름을 가속화할 뿐 아니라, 경영진이 비즈니스가 안전하고 규정을 준수하고 있다는 확신을 가질 수 있도록 해줍니다.
라틴아메리카의 선도적인 전자 결제 제공업체인 Cielo S.A.는 표준 구성을 사용하여 인프라 제공 시간을 90% 단축함으로써 출시 속도를 5배 향상시키는 동시에 보안 및 규정 준수 목표를 달성했습니다. Neto는 재사용 가능한 모듈을 갖춘 IaC 솔루션을 사용함으로써 목표를 달성하고 회사의 입지를 더욱 공고히 할 수 있었다고 덧붙였습니다. “Terraform 덕분에 평균 인프라 제공 시간이 1개월에서 15분 미만으로 줄어들었고, 변경 요청 시간도 최대 50%까지 단축되었습니다."라고 그는 말했습니다. ”그 결과, 신제품과 신기능을 출시하는 데 걸리는 시간이 이전보다 5배나 빨라져, 파트너와 고객의 변화하는 요구를 충족하고 점점 늘어나는 경쟁자들보다 앞서 나갈 수 있게 되었습니다.”
3. 정책을 코드로 활용
조직 전체에 걸쳐 보안, 규정 준수, 비용, 운영 정책을 일관되게 적용하는 것은 어려운 일입니다. 조직은 티켓 대기열이나 수동 검토와 같은 수동 프로세스에 의존하여 감독을 제공하고 보안 허점이 발생하지 않도록 하는 경향이 있습니다. 이로 인해 인프라 제공 속도가 크게 느려집니다.
이러한 문제를 해결하기 위해 많은 조직이 자동화된 정책 코드(policy as code) 검사를 사용합니다. 정책 코드는 IaC가 중요한 것과 같은 방식으로 중요합니다. 이를 통해 조직은 규정 준수 및 보안 이해관계자가 이해하고 감사하며 기여할 수 있는 단일 언어로 자동화된 프로비저닝 점검을 유연하게 생성, 검토 및 버전 관리할 수 있습니다. 이해관계자의 도움을 받아 플랫폼 팀은 표준(golden) 정책 템플릿 라이브러리를 구축하고 중앙 라이브러리에 저장한 다음, 다양한 프로비저닝 워크플로 또는 모든 프로비저닝 실행에서 실행되도록 고정할 수 있습니다. 이렇게 하면 적절한 보호 장치가 없는 환경이 프로비저닝되지 않도록 할 수 있고, 앞서 언급한 수동 검토 및 승인 병목 현상을 제거하여 프로비저닝 대기 시간을 몇 시간, 며칠, 또는 몇 주 단축할 수 있습니다.
Trimble은 필수 글로벌 산업을 위한 위치 파악, 모델링, 연결 및 데이터 분석 소프트웨어 제공업체로, 수동 규정 준수 확인으로 인해 회사의 빠른 움직임이 정말로 방해받았습니다. Weigand는 보안에 관한 질문이 마찰의 일부를 차지한다고 설명했습니다. “모든 것을 수동으로 처리하는 것은 오류 위험을 증가시키고 엄격한 보안 및 규정 준수 표준을 유지하는 우리의 능력을 시험에 들게 했습니다.”라고 그는 말했습니다. Trimble은 인프라 프로비저닝을 자동화하고 정책을 코드로 사용함으로써 인프라 개발을 3일에서 1시간으로 단축하고 회사가 특정 정책을 기반으로 배포를 제어할 수 있게 함으로써 개발자가 개발 주기 초기에 규정 준수, 보안 및 거버넌스 문제를 훨씬 더 일찍 파악할 수 있도록 했습니다.
4. 셀프 서비스 인프라 활성화
개발자가 스스로 할 수 있는 일이 많을수록 새로운 기능과 제품을 시장에 더 빨리 출시할 수 있습니다. 그러나 앞서 언급한 바와 같이, 티켓팅 시스템과 기타 수동 프로세스는 개발자의 속도를 늦추고, 게이트키퍼를 기다리게 하고, 생산성을 저해합니다.
셀프 서비스는 이 문제를 해결하고, 조직이 더 큰 혁신을 위해 클라우드 인프라를 빠르고 효율적으로 확장할 수 있도록 합니다. 셀프 서비스는 개발자에게 앞서 설명한 황금 경로 밖으로 나가지 못하도록 하면서도 자유와 자율성을 부여합니다. 일반적으로 이 경로에서 황금 구성을 시작하는 것은 개발자가 버전 관리 또는 명령줄 인터페이스를 통해 수동 작업을 해야 하는 모듈 또는 이미지입니다. 이를 사용하려면 개발자가 툴에 대한 지식이 필요하며, 완전히 “푸시 버튼” 방식의 프로세스는 아닙니다.
플랫폼 팀은 노코드 프로비저닝을 통해 셀프서비스를 강화함으로써 개발자의 효율성을 더욱 향상시킬 수 있습니다. 이것은 말 그대로 개발자가 코드를 입력하거나 기본 시스템이나 도구를 이해할 필요 없이, 강화된 노코드 IaC 모듈을 사용하여 앱을 위한 인프라를 프로비저닝할 수 있다는 의미입니다. 모듈을 선택하기만 하면 됩니다.
인프라 프로비저닝과 관리에 진정한 의미의 버튼 하나로 가능한 셀프 서비스 경험을 제공하기 위해, 플랫폼은 결국 내부 개발자 플랫폼(IDP) 레이어와 인터페이스를 설정하는 방향으로 나아가야 합니다. 그래야 개발자들이 런타임에 많은 도구를 실행할 필요 없이 하나의 포털에서 코드 없는 모듈 메뉴를 클릭하고 다양한 워크플로를 실행할 수 있습니다.
이것을 가장 잘 이해하고 있는 곳은 남아프리카 공화국에서 네 곳의 대형 은행 중 하나인 네드뱅크 그룹(Nedbank Group)입니다. 네드뱅크는 IaC와 셀프서비스 기능을 통해 앱 팀에 인프라를 제공하는 데 걸리는 시간을 99% 단축했습니다. 네드뱅크의 클라우드 운영 책임자인 프레디 암바니(Freddy Ambani)에 따르면, “저희의 목표는 모든 개발자가 가능한 한 생산적으로 일할 수 있도록 모든 클라우드 서비스의 사용을 위한 하이퍼 자동화를 가능하게 하는 것입니다. 이를 통해 출시 기간을 단축할 수 있을 것입니다.”
IaC 솔루션을 사용하고 셀프서비스 기능을 활용함으로써 NedBank는 목표를 달성할 수 있었습니다. “몇 달이 걸리던 인프라 조달이 이제 단 몇 분 만에 이루어지고 있으며, 우리는 25% 낮은 자원 비용으로 프로젝트를 완료할 수 있습니다.”라고 Ambani는 말했습니다.
5. 인프라를 자동으로 삭제
클라우드 자원에 돈을 낭비하는 것은 쉽습니다. 사실, 통제 불능의 클라우드 지출은 많은 비즈니스 리더들이 가장 우려하는 문제 중 하나입니다. 조직이 빠르게 확장될 때, 자동화된 프로세스가 없다면 더 이상 사용되지 않는 클라우드 인스턴스는 종종 잊혀지고, 필요한 기능을 수행하지 않고 계속 실행되면서 돈을 낭비하게 됩니다.
인프라 삭제를 자동화함으로써, 조직은 수명 종료 날짜 또는 사전 정의된 비활성 기간을 설정하고, 이를 사용하여 수동 추적, 감사 또는 개입 없이 클라우드 인프라를 제거할 수 있습니다. 프로비저닝 가속화와 직접적인 관련은 없지만, 자동 삭제는 수동 프로세스에 대한 의존성을 제거하여 시간과 자원을 절약할 수 있게 해 주며, 건전한 인프라 수명 주기 관리(ILM, Infrastructure Lifecycle Management)의 중요한 단계입니다.
인프라 라이프사이클 관리(Infrastructure Lifecycle Management)에 대한 모범 사례를 활용하고 자동화에 집중하면 규정 준수나 보안에 영향을 미치지 않으면서 프로비저닝 병목 현상을 제거하고 개발자 워크플로우를 가속화하며 조직이 시장에 더 빨리 진출할 수 있도록 지원할 수 있습니다.
▶ 하시코프 인프라 수명주기 관리(HashiCorp Infrastructure Lifecycle Managment) : 자세히보기
HashiCorp의 Infrastructure Lifecycle Management 제품군은 클라우드 비용을 최적화하고 운영 효율을 높이도록 설계되었습니다. Terraform, Packer, Waypoint, Nomad를 통해 코드 기반의 자동화된 워크플로우로 인프라를 일관되게 구축, 배포, 관리하며, 가시성과 정책 준수를 강화해 불필요한 리소스를 제거하고 생산성을 향상시킵니다.
클라우드네트웍스는 전담팀을 통해 테라폼, 볼트를 포함한 하시코프 제품군의 구축 및 기술지원 서비스를 제공합니다. 하시코프에 대한 문의사항은 공식 파트너사인 클라우드네트웍스로 연락 부탁드립니다.