가상화와 유연한 라이선싱으로 CSG의 획기적인 현대화 가속

대부분의 기업은 온프레미스에서 클라우드로, 물리 환경에서 가상 환경으로 IT 운영을 전환하고 있습니다. 또한 코로나19의 확산으로 거의 모든 기업이 현대화 여정에 속도를 내고 있습니다.

통신 및 케이블 업계에 고객 참여 서비스를 제공해 온 35년 역사의 CSG도 마찬가지입니다. CSG는 북미 최대 규모의 케이블 사업자들이 고객 관계, 청구 및 운영을 더욱 효율적으로 관리할 수 있도록 디지털 솔루션을 제공합니다.

몇 년 전, CSG는 노후화된 프로세스의 한계에 더해 신규 애플리케이션 소유자들의 참여 부족까지 겹치면서 어려움을 겪고 있었습니다. CSG가 고객의 현대화를 지원하는 것처럼, 이제는 자체 운영 방식도 혁신해야 할 때였습니다.

CSG의 소프트웨어 엔지니어링 부문 부사장인 에리카 모리슨은 이전까지 소프트웨어 분야에서만 근무했음에도 불구하고, CSG의 운영 엔지니어링 팀이 DevOps 조직과 문화를 구축하도록 지원하는 임무를 맡았습니다.

“개발자가 갑자기 운영 환경에 투입되어 운영팀이 직면한 어려움을 눈앞에서 직접 마주하게 되면 큰 충격을 받게 됩니다.”라고 그녀는 말합니다. “덕분에 모든 운영팀이 하는 일에 더욱 감사하게 되었습니다.”

기존에는 운영 업무만 담당하던 팀에 개발 모범 사례를 도입함으로써 CSG는 이전에 사용하지 않았던 F5의 기능을 활용하고, 새로운 도구를 추가하며, 필요한 유연성을 제공하는 엔터프라이즈 라이선스 계약을 도입하는 등 다양한 과제를 해결할 수 있는 기반을 마련했습니다.

수많은 과제

당시 Erin Garrigan은 팀의 스크럼 마스터였습니다. 현재 관리자로 일하고 있는 그녀는 2016년 당시 CSG가 5년, 길게는 10년에 걸친 계획으로 구상했던 여러 이니셔티브를 회고합니다.

“기술적인 관점에서 보면 변경 작업과 관련된 수동 프로세스가 너무 많았고, 누가 어떤 작업을 하고 있는지 충분히 파악하기도 어려웠습니다.”라고 그녀는 말합니다. “여러 팀이 저희 장비에 접근할 수 있었지만, 이를 관리하는 데 필요한 강력한 통제 체계가 없었습니다.”

문제는 이뿐만이 아니었습니다. 인프라 전반이 불안정한 데다 전반적인 상태 모니터링 및 알림 기능도 부족해, 고객에게서 문제를 전해 듣기 전까지는 장치가 비정상 상태라는 사실을 팀에서 인지하지 못하는 경우가 많았습니다. 하드웨어 현대화 역시 중요한 과제였습니다.

“기술적인 관점에서 볼 때, 변경 작업과 관련된 수동 프로세스가 너무 많았고 누가 어떤 작업을 하는지 충분히 파악하기 어려웠습니다. 여러 팀이 저희 장비에 접근할 수 있었지만, 이를 관리하는 데 필요한 강력한 통제 체계가 마련되어 있지 않았습니다. ”

에리카 모리슨, CSG 소프트웨어 엔지니어링 부문 부사장

코드형 인프라를 통한 혁신

팀의 첫 번째이자 가장 큰 프로젝트는 F5 iApps를 사용해 모든 것을 소스 코드로 전환하는 것이었습니다. CSG의 프로세스가 수동으로 이루어져 왔기 때문에, 팀은 먼저 매일 밤 디바이스 구성을 내보내도록 하여 구성 내용을 파악할 수 있게 했습니다. 이후에는 소스 코드가 디바이스의 구성을 결정하는 새로운 패러다임으로 발전했습니다.

“1년 만에 수동 변경 작업과 코드형 인프라 개념을 바탕으로 100개가 넘는 iApp을 만들었습니다.”라고 Garrigan은 말합니다. “모든 수동 설정을 iApp으로 코드화하는 데는 엄청난 노력이 필요했지만, 몇 가지 도구를 개발해 시간을 두고 해결해 나갔습니다.”

이제 인프라가 코드로 정의됨에 따라 팀은 앱의 기능을 분리할 수 있게 되었습니다. 운영 엔지니어링 팀은 매일 여러 건의 변경 요청이 접수되는 동적인 서버 환경에서 수십 개의 애플리케이션 팀을 지원합니다. 셀프서비스 프로세스를 구현함으로써 CSG 애플리케이션 팀의 내부 사용자는 샌드박스 BIG-IP 디바이스에서 변경 사항을 구성하고 확인한 후, 검증 및 코드 검토를 위한 파이프라인으로 전달할 수 있게 되었습니다. 또한 이러한 사용자가 직접 변경 사항을 프로덕션 환경에 적용할 수 있는 별도의 도구도 개발했습니다.

“그 시점에 저희는 사실상 로드 밸런싱과 애플리케이션 딜리버리를 서비스 형태로 제공하고 있었습니다.” CSG의 소프트웨어 개발 이사인 필 토드(Phil Todd)는 말합니다. “저희는 대부분의 자동화 셀프서비스 기능과 보고 기능을 Jenkins로 구동합니다. 또한 이러한 기능을 백엔드에서 구현하기 위해 자체 C# 코드도 일부 작성했습니다.”

BIG-IQ를 통한 가시성 및 변경 관리

이러한 변경 사항에 대한 가시성을 확보하는 것 역시 CSG의 방대하고 다양한 애플리케이션 전반에서 매우 중요한 요구 사항이었습니다. 이전의 수동 작업 환경에서는 애플리케이션 팀들이 서로 중복되는 변경 작업으로 인해 충돌할 수 있었습니다. 문제가 있는 코드를 찾아내는 일도 필요 이상으로 복잡했습니다.

“환경에 뭔가 이상한 점이 생기곤 했습니다.”라고 개리건은 말합니다. “왜 문제가 생겼는지는 알 수 없었고, 그저 누군가가 뭔가를 했겠거니 할 뿐이었죠.”

또한 수동 프로세스로 인해 문제가 확인되면 팀에서 변경 사항을 완전히 파악하기 위해 해당 변경을 수행한 사람을 찾아야 하는 경우가 많았습니다.

이 문제를 해결하기 위해 팀은 F5 BIG-IQ를 도입하고 변경 프로세스 자체를 개선하기 시작했으며, 시스템 상태와 변경 사항이 미치는 전반적인 영향에 대한 자동화된 보고서를 도입했습니다. 또한 변경 사항 검증을 지원하기 위해 1,000개가 넘는 엔드포인트를 모니터링하는 Grafana 대시보드를 구축했습니다. 이제 구성을 코드로 관리하고 배포 관련 자동화까지 구축함으로써 CSG는 지금까지 이루어진 모든 변경 사항을 명확하게 파악할 수 있게 되었습니다.

Todd에 따르면, 이로 인해 현재 CSG의 환경과 과거의 수동 프로세스 사이에 가장 큰 차이점 중 하나가 생겼습니다. 변경으로 인해 문제가 발생할 경우, 이전에는 팀이 문제를 조사하고 해결하는 데 몇 시간이 걸릴 수 있었지만 이제는 평균 복구 시간이 몇 분에 불과합니다.

그는 “Kibana에 로그인하면 배포된 버전과 이전 버전 등 모든 변경 사항이 기록됩니다.”라고 말합니다. “따라서 왜 작동하지 않는지 고민하며 시간을 보내지 않고, Jenkins에서 버튼만 누르면 이전 버전의 코드를 바로 배포할 수 있습니다.”

가상화가 핵심입니다

그다음 단계는 인프라의 확장성, 유연성 및 안정성을 개선하는 것이었습니다. F5 VIPRION을 비롯한 수십 대의 물리적 하드웨어 장치를 운영하고 있었지만, 대부분의 애플리케이션 트래픽은 단 두 대의 장치를 통해 처리되고 있었습니다. 하나는 인터넷에서 유입되는 외부 트래픽용이었고, 다른 하나는 내부 트래픽용이었습니다.

그 결과 그룹 규모가 커졌고, 장애 발생 시 조직이 감수해야 할 위험도 더 커졌습니다. Todd는 “이러한 장치 중 하나라도 다운되면 사실상 모든 제품과 모든 고객이 영향을 받았습니다”라고 말합니다.

동시에 CSG의 애플리케이션은 회사의 프라이빗 클라우드와 퍼블릭 클라우드로 이전되기 시작했지만, 기존 시스템은 이러한 환경으로 확장하는 데 한계가 있었으며 AWS로의 마이그레이션도 지원하지 않았습니다.

가상화 역시 이러한 문제를 해결하는 데 핵심적인 역할을 했습니다. iApps에서 코드형 인프라를 활용함으로써 전체 장애 그룹의 규모를 줄이고, 이를 통해 애플리케이션별로 더욱 특화된 부하 분산을 구현할 수 있는 유연성을 확보했습니다. 또한 필요할 경우 궁극적으로 퍼블릭 클라우드로 전환할 수 있는 길도 열었습니다.

“최근 장애가 발생해 한 제품에 영향을 미쳤습니다.”라고 모리슨은 말합니다. “불과 1년여 전이었다면 모든 제품이 영향을 받았을 것입니다. 더 많은 인스턴스를 소규모 그룹으로 분리한 덕분에 필요할 경우 장애 조치를 수행할 수 있게 되었고, 장애 영향 범위도 매우 작아졌습니다. 따라서 안정성에 대한 투자는 이미 사내외 고객에게 좋은 결과를 가져다주고 있습니다.”

“불과 1년여 전만 해도 모든 제품이 영향을 받았을 것입니다. 이제 더 많은 인스턴스를 소규모 그룹으로 분리한 덕분에 필요할 경우 장애 조치를 수행할 수 있으며, 장애의 영향 범위도 매우 작습니다. 따라서 안정성에 대한 투자는 이미 사내외 고객에게 좋은 성과로 이어지고 있습니다. ”

에리카 모리슨, CSG 엔지니어링 부문 부사장

엔터프라이즈 라이선싱으로 필요한 유연성 확보

CSG는 F5 BIG-IP Virtual Editions에서 새로운 F5 엔터프라이즈 라이선스 계약(ELA)으로 전환하여 운영 유연성을 한층 높이고 비용을 절감했습니다. 이전에는 이 그룹이 주로 오마하에 있는 회사 본사의 단일 데이터 센터 내에서 운영되었습니다. 당시 재해 복구 솔루션은 상황에 따라 필요할 경우 타사 데이터 센터에서 서비스를 가동하는 단순한 방식이었습니다.

몇 년 전 팀이 두 번째 데이터 센터를 구축하면서 데이터 센터 간 고가용성을 모색할 수 있는 기반을 마련했지만, 기존 라이선스 계약과 물리적 하드웨어로 인해 선택지가 제한되었습니다. 고정형 하드웨어를 사용하면서 회사는 확장성, 가용성, 퍼블릭 클라우드로의 확장 역량 측면에서 어려움을 겪었습니다.

Todd는 “F5 엔터프라이즈 라이선스 계약과 가상 솔루션으로 전환하면서 원하는 것을 원하는 시점에 구축하고 두 번째 데이터 센터를 추가할 수 있는 자유를 얻게 되었습니다.”라고 말합니다. “또한 다양한 가능성을 모색하고 내부 고객의 요구에 매우 신속하게 대응할 수 있게 되었습니다.”

이제 팀은 다양한 서비스를 발전시키고 고가용성을 확보할 수 있는 유연성을 한층 더 갖추게 되었습니다.

향후 전망: 클라우드에서의 애플리케이션 제공

환경 현대화를 완료한 CSG의 운영 엔지니어링 팀은 이제 미래를 계획할 여유를 확보했습니다. 이 팀은 보안을 위한 F5 기능을 더욱 폭넓게 활용하고, BIG-IP 및 Amazon Web Services(AWS) 사용을 위한 참조 아키텍처를 구축하며, NGINX를 통해 새로운 기능을 도입하고자 합니다. 또한 ELA를 통해 기존 예산을 새로운 아키텍처와 기능 세트에 투입할 수 있게 되었습니다.

Morrison은 또한 CSG의 제품 책임자들과 협력하여 지금까지의 성과를 바탕으로 시스템 모니터링 및 알림 기능을 개선하고, 새로운 모니터를 추가하며, 애플리케이션 딜리버리를 위한 CoE(Center of Excellence) 모델을 개발하는 새로운 로드맵을 수립하고 있습니다.

그녀는 큰 틀에서 보면 현재 매우 좋은 위치에 있다고 말합니다. 이제 팀은 당초 5개년 비전에서 구상했던 거의 모든 프로젝트를 실현했습니다. 그동안 구축한 파트너십과 셀프서비스 기능, 구성을 바탕으로 이제 남은 일은 앱 팀이 앱에 대해 더 많은 주도권을 갖도록 넘겨주는 것뿐입니다.

“처음으로 ‘이제 다음에는 무엇을 해야 할까?’라고 묻게 됐어요.”라고 그녀는 말합니다. “우리는 이제 더 이상 문제를 수습하는 데 급급하지 않을 만큼 큰 진전을 이뤘습니다. 이제는 선제적으로 움직이며 우리가 마련한 탄탄한 기반 위에서 더 발전해 나갈 때입니다.”

“F5 엔터프라이즈 라이선스 계약과 가상 솔루션으로 전환하면서 원하는 것을 원하는 시점에 구축하고 두 번째 데이터 센터를 추가할 수 있는 유연성을 확보했습니다. 또한 자유롭게 새로운 가능성을 모색하고 내부 고객의 요구에 매우 신속하게 대응할 수 있게 되었습니다. ”

Phil Todd, 소프트웨어 개발 이사, CSG

가상화와 유연한 라이선싱으로 CSG의 획기적인 현대화 가속 로고

이점

  • 애플리케이션 가시성 향상
  • 퍼블릭 클라우드로의 마이그레이션 간소화
  • 고객 요구에 대한 대응력 향상

과제

  • 수작업 프로세스
  • 고정형 하드웨어로 인해 필요한 확장성과 가용성을 확보하기 어려움
  • 상태 모니터링 및 애플리케이션 가시성 부족