2022년 1월 25일 화요일

이전 글 1에서 설명했듯이, 효과적인 Multi-Cloud 전략을 수행하기 위해서는 본질적으로 기업에서 왜 Multi-Cloud 전략을 사용하고 싶어하는지를 정의하고, 이를 이루기 위해서 포기하는 부분에 대해서 분석을 해야한다. 대부분은 기업들은 특정 Vendor에 Lock-in이 되기 싫고, 필요시에 더 좋은 가격을 제공하는 Vendor로 손쉽게 옮기고 싶고, 마지막으로 특정 Vendor의 장애에 영향을 받기 싫어서 Multi-Cloud 전략을 선택하게 된다. 하지만 이 조건들만을 이루기 위해서 Multi-Cloud 전략을 사용한다면 크게 3가지 부분에 유의해서 전략을 수행해야한다.

첫째, 특정 Public Cloud Vendor에서 손쉽게 할 수 있는 업무를 Multi-Cloud를 위해서 더 복잡하게 만드는 것은 아닌지 유의해야한다. 예를 들어서, Google Analytics Data를 분석하기 위해서는 Google Cloud Platform (GCP) 에서 작업을 하는 것이 편하다. 물론 해당 Data를 AWS나 Azure에 보낼 수도 있다 2. 하지만 GCP의 BigQuery를 이용해서 해당 Data를 분석하는 처리방식과 AWS S3로 해당 Data를 보낸 후에 Athena로 분석하는 처리방식에는 차이점이 존재하며, 하나의 분석 Query를 수정한 후, 다른 Platform에 똑같은 부분을 수정하는 작업은 쉽지 않다. 이러한 이유로 인해서 결국 특정 Cloud에서 제공하는 기능들을 사용하지 않게 되면서, 더 복잡한 구성이 될 수 밖에 없는 부분이다.

두번째, 유사한 서비스들은 존재하나 다르게 동작하거나 구성해야하는 부분에 대해서 유의해야한다. 예를 들어서, AWS, Azure, GCP는 모두 Indentity Service에 다른 부분들이 존재한다. 3 이로 인해서 하나의 Cloud에서는 정상적으로 동작하는 Application이 다른 Cloud에서는 권한 문제로 동작을 정상적으로 안 할 수 있다. 추가적으로 많이 사용하는 Serverless Service들도 수행시간 limit에 차이가 있고 각 Call이 사용하는 Resource가 다름으로, 추가적인 test를 수행해야한다.

마지막으로, 가용성때문에 Multi-Cloud를 생각한다면, 특정 Cloud내에서 가용성을 구축하는 방법도 고려해야한다. Public Cloud Vendor들의 장애를 살펴보면, 현재까지 여러개의 Region에서 동시에 문제가 발생했던 사례를 극히 드물고, 특히 여러개의 Region에서 같은 서비스가 문제가 발생했던 사례를 없다고 보아도 무방하다. 그러므로 차라리 특정 Cloud내에서 다른 Region들로 Failover할 수 있게 구성하는 편이 손쉽게 가용성을 높이는 방법이 될 수 있다.

위 세가지 유의점들을 종합해보면, Multi-Cloud 전략이 Application별 혹은 업무별로 가장 효과적인 Public Cloud Vendor를 고른 후에, 해당 Vendor에서 제공하는 Service들을 최대한 활용하여 운영비용과 복잡도를 최소화하고, 가용성을 최대한 높이는 방법을 많이 사용하는 추세이다. 여러개의 업무들이 각기 다른 Cloud에서 가장 효율적이고 효과적으로 운영되는 방법으로 시작하고, Migration이 필요하다는 판단이 들면, 근거자료와 Testing을 통해서 운영비용이나 효율성을 검증한 후에 옮기는 것이, 처음부터 모든 업무를 여러개의 Cloud Vendor에서 운영하는 방법보다 효율적이라 생각한다.

  1. Multi-Cloud 전략의 장단점
  2. Analyzing Google Analytics data with Amazon AppFlow and Amazon Athena
  3. THE ULTIMATE GUIDE TO OBJECT STORAGE AND IAM IN AWS, GCP AND AZURE

    Related Posts

    클라우드 서비스와 오픈소스 라이선싱
    ML 모델 도입을 위한 SageMaker의 효율성
    클라우드 환경에서의 데이터베이스 가용성

    Leave a Reply