Devin.KR

클라우드·DevOps·SRE 부트캠프

작은 안내판 웹 서비스를 Linux에서 실행하고 컨테이너·CI·IaC·관측·복구를 차례로 연결합니다.

대상
국비 웹 과정 수료생과 비전공 입문자를 대상으로 합니다. 제공된 Java 서비스에서 운영 작업을 익힙니다.
시작 전
파일·폴더와 브라우저 사용부터 시작합니다. Linux 실습 환경·Git·Java 17·Docker 설치를 안내하며 유료 클라우드 계정은 요구하지 않습니다. Python 실습은 변수·조건·반복·JSON 읽기의 준비 예제를 제공합니다.
학습 시간
126시간 안팎

트랙 프로젝트

작은 웹 서비스의 배포·복구 파이프라인

안내판 조회 API를 로컬 컨테이너에 배포합니다. 검증한 이미지와 설정을 분리하고 실패 배포의 이전 버전 복구·데이터 복원·자원 정리까지 재현합니다.

수료하면 할 수 있는 일

  • Linux·HTTP·DNS를 이용해 서비스 접속을 진단합니다.
  • 셸과 Git으로 실행 절차와 변경을 기록합니다.
  • 이미지를 빌드하고 동일 버전으로 서비스를 실행합니다.
  • 환경 변수와 볼륨·포트 설정을 분리합니다.
  • CI에서 테스트와 이미지 빌드를 수행합니다.
  • 배포 실패 시 이전 버전으로 되돌리는 절차를 검증합니다.
  • IaC로 실습 자원을 만들고 변경 계획을 확인합니다.
  • VPC·서브넷·보안그룹의 통신 범위를 설명합니다.
  • 최소 권한과 비밀 주입으로 접근을 제한합니다.
  • 사용량을 확인하고 사용하지 않는 실습 자원을 정리합니다.
  • 지표·로그·트레이스로 요청 실패를 추적합니다.
  • SLI와 SLO의 차이를 설명하고 장애 회고를 작성합니다.
진도 0%

모듈

  1. Linux 실행 환경과 변경 기록

    터미널 경험이 없어도 경로·권한·종료 상태를 읽고 서비스 작업을 기록합니다.

    10시간 안팎

    workspace/와 scripts/를 만들고 경로가 바뀌어도 실행되는 준비 스크립트를 작성합니다.

  2. 작은 웹 서비스 실행과 접속 진단

    제공된 Java 서비스를 띄우고 DNS·TCP·TLS·HTTP 순서로 접속 실패를 좁힙니다.

    12시간 안팎

    제공된 안내판 API를 Java 17·Spring Boot 3.1.x로 빌드하고 /health와 /notices를 확인합니다.

  3. 컨테이너 이미지와 재현 가능한 실행

    앞 모듈의 서비스를 고정된 이미지로 실행하고 설정과 데이터를 분리합니다.

    12시간 안팎

    m02 서비스를 컨테이너화하고 릴리스 명세에 실제 이미지 digest를 기록합니다.

  4. CI 테스트와 이미지 빌드 자동화

    검증이 통과한 변경만 이미지와 릴리스 명세로 남깁니다.

    12시간 안팎

    m03 이미지 빌드를 테스트 이후에 연결하고 변경 ID·digest·테스트 요약을 산출물로 저장합니다.

  5. IaC 자원 구성과 네트워크 경계

    코드로 로컬 실습 자원을 만들고 VPC·서브넷·보안그룹의 통신 범위를 설명합니다.

    16시간 안팎

    m04 릴리스 명세를 Terraform 입력으로 사용해 전용 Docker 네트워크·서비스·볼륨을 생성합니다.

  6. 최소 권한과 비밀 주입

    서비스 계정과 배포 계정의 권한을 구분하고 비밀을 저장소 밖에서 전달합니다.

    12시간 안팎

    m05 서비스에 저장소 밖의 실습 비밀 파일과 비루트 서비스 계정을 연결합니다.

  7. 헬스 체크와 배포·롤백

    테스트를 통과한 이미지를 배포하고 사용자 요청 실패 시 이전 버전으로 복구합니다.

    16시간 안팎

    m04 CI 통과 산출물만 받아 m06 후보 환경에 배포하고 readiness·사용자 요청 검사 후 프록시를 전환합니다.

  8. 지표·로그·트레이스와 요청 추적

    배포 전후 자료를 비교하고 하나의 실패 요청을 관측 자료로 추적합니다.

    14시간 안팎

    m07 배포 파이프라인에 전후 관측 자료 수집을 연결하고 로그·지표·트레이스를 함께 저장합니다.

  9. SLI·SLO와 장애 회고

    사용자 흐름에 맞는 목표와 경보를 정하고 복구 기록에서 후속 작업을 도출합니다.

    10시간 안팎

    m08 관측 자료로 안내판 조회 성공률 SLI와 교육용 SLO의 기간·목표·제외 조건을 작성합니다.

  10. 사용량·자원 정리와 최종 인계

    사용량 근거와 데이터 보존 절차를 남기고 전체 배포·복구 파이프라인을 시연합니다.

    12시간 안팎

    m01~m09 산출물을 하나의 실행 안내에 묶고 빌드→배포→실패 감지→이전 버전 복구를 시연합니다.

신입 기본기 대응표

영역완료 기준모듈
운영 기반
  • Linux·HTTP·DNS를 이용해 서비스 접속을 진단합니다.
  • 셸과 Git으로 실행 절차와 변경을 기록합니다.
m01-linux-workspacem02-service-network
컨테이너
  • 이미지를 빌드하고 동일 버전으로 서비스를 실행합니다.
  • 환경 변수와 볼륨·포트 설정을 분리합니다.
m03-container-release
배포 자동화
  • CI에서 테스트와 이미지 빌드를 수행합니다.
  • 배포 실패 시 이전 버전으로 되돌리는 절차를 검증합니다.
m04-ci-artifactsm07-deploy-rollback
인프라 구성
  • IaC로 실습 자원을 만들고 변경 계획을 확인합니다.
  • VPC·서브넷·보안그룹의 통신 범위를 설명합니다.
m05-iac-network
권한과 비용
  • 최소 권한과 비밀 주입으로 접근을 제한합니다.
  • 사용량을 확인하고 사용하지 않는 실습 자원을 정리합니다.
m06-identity-secretsm10-usage-handoff
관측과 신뢰성
  • 지표·로그·트레이스로 요청 실패를 추적합니다.
  • SLI와 SLO의 차이를 설명하고 장애 회고를 작성합니다.
m08-observabilitym09-slo-incident

면접 질문 대응