IT STUDY LOG

[SECTION 5] <Final Project> 요구사항 및 시나리오 본문

devops bootcamp 4/project log

[SECTION 5] <Final Project> 요구사항 및 시나리오

roheerumi 2023. 6. 12. 09:08

# 인프라 공통 요구사항

  • 시스템 전반에 가용성, 내결함성, 확장성, 보안성이 고려된 서비스들이 포함되어야 함
  • 하나 이상의 컴퓨팅 유닛에 대한 CI/CD 파이프라인이 구성되어야 함
  • 시스템 메트릭 또는 저장된 데이터에 대한 하나 이상의 시각화된 모니터링 시스템이 구축되어야 함

 

# 시나리오

시나리오 1: 대회 결과 기록 시스템

회사는 개인 사용자와 대회 주최자를 위한 마라톤 대회 결과 기록 시스템을 구축하려고 하며, 회사 내 데브옵스 팀의 일원으로 인프라를 구축하고, 테스트 시스템을 구성해서 인프라 작동을 확인해야 함

기능 요구사항

  • 개인 사용자와 대회주최자는 로그인 기능을 통해 토큰을 발급받을 수 있음
    • 토큰을 사용하는 로직 구현이 어렵다면 유저 데이터베이스에 접근해서 일치하는 사용자 정보가 있는 것을 확인하는 것으로 대체
  • 인증된 개인 사용자는 자신의 비공식 기록을 입력 및 조회할 수 있음
  • 인증된 개인 사용자는 특정 대회에 참가 신청을 할 수 있음
  • 대회 주최자는 대회 참가자를 조회할 수 있음
  • 대회 주최자는 대회 참가자들에 대한 공식 기록을 입력 및 조회할 수 있음
  • 대회 주최자에 의해 입력된 공식 기록에 따라 해당 참가자의 point 데이터에 점수가 추가됨
    • 예시 : 10km 참가자는 10점, half 참가자는 20점, full 참가자는 42점 추가
  • 개인 사용자는 점수를 확인 가능
    • 예시 : 전체 점수 또는 상위 몇개의 랭킹, 인증된 개인의 개별 점수

인프라 요구사항

  • 유저 데이터를 저장하고 있는 유저 데이터베이스는 다른 데이터베이스와 분리되어있어야 함
  • 기록 데이터를 기반으로 사용자별 점수를 기록하는 시스템은 데이터 유실을 막기 위해 느슨하게 결합되어야함

 

시나리오 2: 자산 관리 시스템

2023년 현재 설립 6년차인 회사는 사회 각 분야에 필요한 IT인재들을 꾸준히 배출해 왔음.
8000여명이 넘는 누적 수강생 수와 470여개의 채용 파트너사와 협력하고 있는 회사는 그동안의 업적과 함께 그에 따른 수많은 교육자료와 수강생 데이터 및 파트너사의 정보등 다양한 정보자산을 보유하게 됨.
신뢰를 바탕으로 운영되는 코드스테이츠는 이 소중한 자산을 안전하게 관리하고자 노력 중

기능 요구사항

- 현재의 시스템의 로그 뿐 만 아니라 시스템 취약점 점검을 자동화하고 점검 결과를 통합하여 관리할 수 있도록 하는 자산관리 파이프라인 시스템을 구축해야 함

  1. 자산구분 시스템: 자산 분류 기준에 따라 수립된 정의 및 리소스에 적절한 태크 설정
    • 자산 분류 기준 태그 예시
      • 환경(env): DEV, PROD
      • 자산 종류: Web Server, WAS, 수강생 데이터 베이스, 유어클래스 강의자료
      • 개인정보 취급 여부: Y/N
      • 소유자: DevOps
  2. 정보 자산 점검
    • CCE(Common Configuration Enuymeration) 취약점: 사용자에게 권한 이상의 동작을 허용하는 등의 시스템 설정 상의 취약점
    • CVE(Common Vulnerabilities and Exposure) 취약점: 컴퓨터 하드웨어 또는 소프트웨어 결함이나 체계 설계상의 취약점
  3. 모니터링 및 알람
    • 취약성 점검 결과 알림
    • 일별 점검 결과 리포트

 

시나리오 3 : 컨테이너 기반 시스템

자유롭게 주제를 선정할 수 있는 시나리오
간단한 3티어(클라이언트-서버-데이터베이스) 또는 2티어(서버-데이터베이스)를 자유롭게 구성하거나, 기존에 구성해서 보유중인 프로젝트를 이용해도 좋음
시스템이 컨테이너 환경에서 실행될 수 있게 하는 인프라를 구현해야 함

기능 요구사항

  • 최소 1개의 CRUD 기능을 가진 자유로운 시스템 구성
  • 로직 티어와 데이터 티어는 구분되어야 함

인프라 요구사항

  • 사용되는 애플리케이션들은 컨테이너로 구동되어야 함
Comments