DevOps는 Dev(개발)+Ops(운영)을 결합하여 개발과 운영이라는 두 팀 간의 장벽을 없애고,
긴밀한 협력과 연계를 통해 비즈니스 가치를 높일 수 있습니다.
AWS DevOps Service는 서비스 개발에서 테스트, 배포, 운영에 이르기까지
전체 애플리케이션 및 인프라 수명 주기를 관리하고 자동화 및 간소화를 통해
더 빠르게 혁신할 수 있도록 지원합니다.
AWS DevOps 주요 서비스
AWS CodeSeries
AWS CodeSeries는 AWS Developer Tools의 CodeCommit(저장소), CodeBuild(빌드), CodeDeploy(배포), Codepipeline(통합 파이프라인)로 구성되며, 애플리케이션 소스 코드를 안전하게 저장하고 버전을 관리하며 애플리케이션을 AWS 또는 온프레미스 환경에 자동으로 빌드, 테스트하고 배포하는 서비스입니다.
AWS Elastic Beanstalk
Java, .NET, PHP, Node.js, Python, Ruby, Go 및 Docker를 사용하여 개발된 웹 애플리케이션 및 서비스를 Apache, Nginx, Passenger 및 IIS와 같은 친숙한 서버에서 손쉽게 배포하고 확장할 수 있는 서비스입니다.
Amazon Elastic Container Service
Amazon Elastic Container Service(ECS)는 클러스터에서 컨테이너를 손쉽게 실행, 중지 및 관리할 수 있는 확장성이 뛰어나고 빠른 컨테이너 관리 서비스입니다.
Amazon Elastic Kubernetes Service
Amazon EKS는 자체 Kubernetes 제어 플레인을 설치 및 운영할 필요 없이 AWS에서 Kubernetes를 쉽게 사용할 수 있도록 해주는 관리형 서비스입니다.
기대 효과
IaC (Infrastructure as Code)를 통한 인프라 일관성
모든 인프라가 코드로 관리되므로 프로덕션 환경, 스테이징 환경, 개발 환경 간에 일관성을 유지
자동화된 빌드 및 배포 프로세스
소프트웨어 릴리스 프로세스를 자동화하여 인적 오류의 위험을 줄이고 릴리스 주기를 단축시킴으로써 더 적은 노력으로 더 자주 소프트웨어 릴리스 가능
코드 변경의 신속한 피드백
파이프라인의 자동화된 테스트는 문제를 조기에 발견하여 대처 가능하고, 피드백에 따른 신속한 오류 수정으로 소프트웨어 품질을 향상시키는 데 도움
다양한 서비스와의 통합 확장성
AWS CodePipeline은 AWS CodeBuild, AWS CodeDeploy, AWS Lambda, Amazon ECS와 같은 다른 AWS 서비스뿐만 아니라 GitHub, Bitbucket, Jenkins 등의 인기 있는 3rd party 개발 도구와의 통합 가능
주요화면 (CloudFormation)
주요화면 (CodePipeline)
고객 적용사례
미디어 산업군
지상파 방송과 뉴 미디어 서비스를 실시하는 고객의 실시간 시청자 참여형 방송 플랫폼 구축 지원이 필요했던 사례
GS네오텍이 설계/구축한 솔루션으로 안정적인 확장성, 운영 효율화 확보
1. AWS Elastic Beanstalk 도입으로 인프라 프로비저닝 자동화 리소스 관리 포인트 최소화
2. Gitlab, Jenkins 등의 DevOps 도구를 통한 CI / CD 파이프 라인으로 인한 배포 간소화
3. AWS X-Ray를 통한 분산 애플리케이션 모니터링 효율성 확보
4. Amazon EC2 AutoScaling , Amazon Aurora Cluster를 이용한 유연한 대용량 트래픽 대응
편의점, 슈퍼마켓, 홈쇼핑 등 O2O(Online to Offline) 서비스들을 통합하는 플랫폼을 구축하고 마이크로서비스로 전환한 유통업계 고객 사례
GS네오텍이 설계/구축한 솔루션으로 비용 최적화 및 운영인력 효율을 극대화
1. Container 전환과 API GW 도입으로 새로운 애플리케이션을 확장 가능
2. Amazon EKS 멀티 클러스터 도입으로 예기치 못한 장애에 신속한 대처가 가능
3. Amazon EKS의 CA(Cluster AutoScaling), HPA(Horizontal Pod Autoscaler)설정으로 트래픽량에 따른 인프라 확장 및 축소를 손쉽게 수행
4. 애플리케이션의 배포와 운영에 관련된 모든 요소를 코드화하여 깃(Git)에서 관리(Ops)하는 GitOps 구축으로 배포빈도 및 속도를 상승
뷰티·헤어·바디·헬스케어 등 다양한 카테고리의 제품을 서빙하는 오프라인 몰 서비스를 IDC에서 AWS로 이관하는 유통 업계 고객의 사례
GS네오텍이 설계/구축한 솔루션으로 프로세스 최적화 및 비즈니스 운영 향상
1. Amazon ECS를 활용하여 컨테이너 기반으로 재 구축을 진행하여 확장성, 가용성 등 다양한 이점 달성
2. AWS CodeCommit, CodeDeploy, CodePipeline 등을 활용하여 컨테이너 형태의 CI/CD를 구성하여 코드 변경 사항을 자동으로 빌드, 테스트하고 배포하는 자동화를 구현
3. IaC 원칙을 통해 인프라를 코드(Terraform)로 관리하여 반복적이고 일관된 프로비저닝을 가능하게 하여 운영 과정 간소화
4. AWS Control Tower를 활용하여 다수의 AWS 계정의 관리 복잡성을 간소화 하며 조직의 보안 및 규정 준수 요구 사항을 유지 관리
패션 산업군
SPA 브랜드를 필두로 오프라인 뿐만아니라 패션 브랜드 통합 온라인 쇼핑몰을 운영하는 고객의 Cloud Native 기반의 차세대 온라인 쇼핑몰 구축 지원이 필요했던 사례
CI/CD 최적화를 토대로 Cloud Native 기반의 차세대 온라인 쇼핑몰 구축
1. AWS Codepipeline 구성 서비스들의 최적화를 통해 CI/CD 최적화
2. AWS Cloudformation 을 활용한 차세대 쇼핑몰 IaC 구성
향후 발전 방향
AWS를 이용한 DevOps의 확장성
다음과 같은 AWS의 다양한 서비스와 DevOps 방식을 사용하여
제품을 좀 더 빠르고 안정적으로 구축 및 제공할 수 있습니다.
AWS CodeCommit
프라이빗 Git 리포지토리에 코드 저장
AWS CodeBuild
완전 관리형 지속적 통합 서비스코드 빌드 및 테스트
AWS CodeDeploy
완전 관리형 지속적 배포 서비스코드 배포 자동화
AWS CodePipeline
애플리케이션 릴리스 파이프라인의 자동화릴리스에 필요한 단계를 모델링, 시각화 및 자동화
Amazon Elastic Container Registry
완전 관리형 도커 컨테이너 레지스트리
Amazon Elastic Container Service
AWS에서 제공하는 컨테이너 관리 서비스사용자가 도커 컨테이너를 쉽게 실행, 중지 및 관리할 수 있도록 지원
Amazon Elastic Kubernetes Service
AWS 클라우드와 온프레미스에서 Kubernetes를 실행하는 데 사용되는 관리형 Kubernetes 서비스
AWS App Mesh
마이크로 서비스의 통신을 통제하고, 모니터링하며, 최적화하는 서비스 메시(service mesh)AWS 리소스를 모델링하고 설정하는 서비스
AWS Elastic Beanstalk
사용자는 코드만 업로드하면 배포, 로드 밸런싱, 자동 스케일링 등의 프로세스를 처리애플리케이션을 신속하게 배포하고 관리하는 PaaS 서비스
AWS Lambda
이벤트 중심의 서버리스 컴퓨팅인프라를 프로비저닝하거나 관리하지 않고 코드를 실행
Amazon API Gateway
API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지
Amazon Cognito
앱에 대한 보안 자격 증명 및 액세스 관리연동 자격 증명에 대한 소비자 자격 증명 관리 및 AWS 자격 증명
AWS CloudFormation
템플릿을 사용한 리소스 생성 및 관리AWS 리소스를 모델링하고 설정하는 서비스
AWS CDK
AWS Cloud Development Kit(CDK)는 공통 프로그래밍 언어를 사용하여 애플리케이션을 모델링
Amazon CloudWatch
AWS 리소스와 AWS에서 실행되는 애플리케이션을 모니터링대시보드를 사용하여 데이터를 시각화