DevOps BootCamp

(CodeStates) DevOps - day1

cloudmaster 2023. 3. 7. 21:13

1. 애플리케이션 배포

  클라우드 서비스 탄생 배경

   웹 브라우저 -> 서비스를 제공하는 웹 사이트 -> 로그인 -> 웹 애플리케이션 즉시 사용

   -> 지속적 관리 필요

 

2. 서비스가 사용자에게 도달하기까지

 1) 전통적인 소프트웨어 전달 방식

  폭포수 모델 : 출시 기한을 정해놓고 소프트웨어 완성

 

 > 문제점

   소프트웨어의 출시 당시 신뢰성, 안정성 보장 불가

   소프트웨어 사용시 산더미처럼 쌓여있는 버그

 

 > 특징

   베타 버전 이용한 테스트

   사용자가 업데이트 해야 함.

   버그 수정 어려움

   모바일 애플리케이션 사용

  

 2) 클라우드 서비스의 전달 방식

  ● 애자일 모델 : 고객의 요구에 민첩하게 대응 > 지속적 전달

  ● SaaS(Software as a Service)

     브라우저로 소프트웨어를 제공, 새버전 즉시 사용 가능

     매일매일 업데이트 가능

 

   > 장점

    사용자가 업데이트 하지 않아도 됨

    하루에 여러 번 릴리즈도 가능

    다양한 배포 방식을 적용, A/B 테스트 가능

    빠른 배포 보장

     -> 이를 위해 전달 워크플로가 수립, 자동화가 필수

 

★ 서비스 전달 관점에서의 DevOps 역할    > 서비스 전달/배포 Workflow를 구성할 수 있어야 한다

 

3. CI / CD 파이프라인과 Stage

  CI / CD 파이프라인 : 지속적 배포(Continuous Deployment)

  : Plan > (Code > Build > Test) > Release > Deploy > Operate

                                  CI     

                Code > 개발자가 코드를 코드 저장소에 Push

                 Build >  코드 저장소 -> 코드를 가져와 유닛 테스트 후 빌드

                 Test > 빌드의 결과물이 다른 컴포넌트와 통합되는지 확인한다.

 

★ 필요성

   버그를 일찍 발견 가능

   테스트가 완료된 코드에 대해 빠른 전달이 가능

   지속적인 배포 가능

 

: Plan > Code > Build > (Test > Release > Deploy > Operate)

                                                                  CD

                                          Release > 배포 가능한 패키지를 작성

                                          Deploy > 프로비저닝 진행, 서비스를 사용자에게 제공

                                          Operate > 서비스에서 생길 수 있는 현황을 파악, 문제 감지

    

'DevOps BootCamp' 카테고리의 다른 글

Final Project 회고  (0) 2023.06.12
day 2 발표 자료  (0) 2023.03.08
(CodeStates) DevOps - day2  (0) 2023.03.08