본문 바로가기
카테고리 없음

AWS SOW 작성 요령 - 2

by BTC_Haksung 2022. 10. 21.

안녕하세요 햄토리입니다

저번에 SOW 작성 요령 - 1 의 다음인 2편입니다

목차 순서대로 진행 중이며 4번 까지 진행을 했습니다

 

1. Project Summary 

2. Executive Summary 

3. Current Situation 

4. Customer’s Requirement 

5. Proposed Architecture 

6. Scope of Work 

7. Assumptions 

8. Success Criteria 

9. Customer Dependencies 

10. Exclusions 

11. Responsibility Matrix 

12. Project Time Frame 

13. Detailed Project Costing 

14. Acceptance of Project 

이번에는 5번 부터 진행 하도록 하겠습니다.

5번 부터는 아키텍쳐가 나오면서 기술 적인 부분이 많이 필요한 부분입니다.

 

5. Proposed Architecture 

Partner’s Suggested Approach:

  • 고객 요구 사항을 충족하는 아키텍처를 AWS 인프라를 기반으로 구성 제안
  • 실행 계획 (투입 인력, 일정)
  • 기술적 접근 방식 및 방안

Detailed Approach for this Project:

  • What are the AWS services that will used? Explain how each AWS service will be setup/ configured in the proposed architecture
    AWS service 사용 용도 상세 구성 내용 정의.
    앞으로 나올 아키텍쳐에 사용되는 모든 AWS 서비스에 대해 그 서비스를 어떻게 활용 하는지 적으면 됩니다.
    • 예시: 
      - Amazon EC2
      [Game Server – World Server]
       Game – Chatting : (Windows Server), Quantity (20), Pricing strategy (On-Demand Instances), Storage amount (200GB), Instance type (c5.xlarge)
       Game Server : (Windows Server), Quantity (20), Pricing strategy (On-Demand Instances), Storage amount (200GB), Instance type (c5.xlarge)
       Game – DB Proxy Server : (Windows Server), Quantity (20), Pricing strategy (On-Demand Instances), Storage amount (200GB), Instance type (c5.xlarge)
      [Common Server]
       Common – Login/Auth : (Windows Server), Quantity (8), Pricing strategy (On-Demand Instances), Storage amount (100GB), Instance type (m5.xlarge)
       Common – Manager : (Windows Server), Quantity (1), Pricing strategy (On-Demand Instances), Storage amount (150GB), Instance type (m5.large)
       Common – Guild : (Windows Server), Quantity (1), Pricing strategy (On-Demand Instances), Storage amount (550GB), Instance type (c5.2xlarge)
       Common – Deploy : (Windows Server), Quantity (8), Pricing strategy (On-Demand Instances), Storage amount (550GB), Instance type (c5.2xlarge)
       Bastion : (Windows Server), Quantity (1), Pricing strategy (On-Demand Instances), Storage amount (30GB), Instance type (t3.small)
      - Amzon Aurora MySQL -Compatible
      [Game Serer – World Server]
       DB-GameDB(M) / DB-LogDB(M) : Nodes (40), Instance Type (db.r5.xlarge), Instance Family (Memory optimized), Pricing Model (OnDemand), Storage amount (500GB)
       DB-GameDB(S) / DB-LogDB(S) : Nodes (40), Instance Type (db.r5.large), Instance Family (Memory optimized), Pricing Model (OnDemand), Storage amount (500GB)
      [Common Server]
       Common-Shop/Talk/Maintenance : Nodes (1), Instance Type (db.r5.xlarge), Instance Family (Memory optimized), Pricing Model (OnDemand), Storage amount (500GB)
       Common-Manager : Nodes (1), Instance Type (db.r5.xlarge), Instance Family (Memory optimized), Pricing Model (OnDemand), Storage amount (500GB)
       Common-Auction : Nodes (1), Instance Type (db.r5.xlarge), Instance Family (Memory optimized), Pricing Model (OnDemand), Storage amount (500GB)
      - Elastic Load Balancing
      - Amazon CloudFront
      - Amazon CloudWatch
      - Amazon Simple Storage Service (S3) : Patch / Backup/etc.
      - AWS Systems Manager

  • Explain the expected outcomes of configuring each AWS service in a certain manner
    특정 구성을 함으로서  제공하게 성능/기능 정의 
    앞으로 나올 아키텍쳐에 사용되는 모든 AWS 서비스에 대해 그 서비스에 대한 설명을 적는 것이 아닌 그 서비스를 이 프로젝트에서 어떤 용도로 활용하는지 적으면 됩니다.
    • 예시:
      - EC2를 활용하여 Game Servcie에 필요한 각각의 서비스들 – Game(World), Login/Auth, Web, Center, Manager, Chat, Guild을 서비스 함
      - ElastiCache를 활용하여 사용자 세션 유지 및 Catalog 서비스 제공
      - RDS Aurora MySQL을 활용하여 실제 사용자 플레이 시의 Character, Item, Guild, Event Log 등을 저장
      - CloudFront를 활용하여 신규 Patch나 Upgrade Binary 배포 수행
      - S3를 활용하여 CF의 Origin 활용 및 File 형태 Event Log 수집
      - ACM을 활용하여 SSL/TLS 제공
      - SSM을 활용하여 EC2 Instance들의 Compliance 관리 및 모니터링/오딧 수행
      - EC2 및 RDS Backup & Recovery를 통해 RTO / RPO 요구 사항 만족 확인
      - 서비스 별 HA 구성 (Failover Test 수행)

  • How does the approach meet the customer’s requirements?
    설계된 AWS서비스들이 고객 요구사항에 어떻게 매칭 되어 사용되는지 정의
    • 예시:
      - 고객사 부하 툴을 사용하여 최대 CAU 플레이시 예상 부하를 측정하고 서비스 품질 이상 없는 수준의 Infra Spec과 수량을 산정
      - 완전 관리형 DB 서비스 Amazon Aurora DB를 활용하여 고성능 및 고가용성을 확보하고 Read Replica를 활용하여 분석계 용도로 활용
      - VPC Peering과 TGW를 활용하여 비용 대비 Network Bandwidth / Latency를 비교 분석
      - Login 및 Lobby 서버 부하 발생 시 Auto Scaling을 통한 서비스 품질 확보
      - Log DB 의 데이터는 S3로 지속적으로 내리고, 분석 Platform에서 해당 데이터를 활용
      - CloudWatch, Logs, Alarm 등을 활용하여 서비스 품질 모니터링 및 QOS 확보
      - 보안 관련하여 Security Group, NACL, ACM, WAF 등을 활용하여 보안 최적화
      - VPC Flow logs를 활용하여 Compliance 요건에 맞게 저장 및 분석
      - TCO 및 비용 최적화 분석을 위해 Cost Tagging 수행

Intended Architectural Diagram:

해당 칸에는 아키텍쳐를 넣으면 됩니다.

아키텍쳐 조건: 
• 추적이 가능해야 한다
• PoC 목표에 부합되어야 한다
• 일관된 구성을 보여주어야 한다
• 기술적인 제한 조건을 반드시 확인한다
• 과도한 용량 산정은 자제한다

 

Overview of the Architectural Diagram:

다이어그램에 data flow 등 간단한게 설명을 해줍니다.

 

Expected Costing of AWS Infrastructure:

AWS Calculator link를 첨부 하면 됩니다.

 


6. Scope of Work

Outline of the work to be performed in the respective area:

예시:

업무 진행 작업
사전작업 PoC 계획 수립
·        요구사항 분석
·        아키텍처 작성 및 검토
·        기준 설정
·        예상 결과 및 수준 협의
AWS 인프라 구축 VPC 등 네트워크 설정
IAM 계정에 대한 보안 정책 설정
EC2, ELB, Aurora MySQL 구축
VPC Peering, TGW, VPN(필요시), NAT Gateway 구성
S3 버킷 생성 및 버킷 정책 설정
환경설정 및 소스 배포 EC2 Server 환경 설정
Schema, Table 생성, 데이터 이관
CloudWatch 설정
정적 파일(Game Binary, image, js ) S3 upload
테스트 테스트 시나리오 작성
게임 시스템 부하 테스트
게임 테스트 및 결과 리뷰
테스트 결과 리뷰
작업 Activity W1 W2 W3 W4
계획 계획 수립
(목표, 지표 설정)
       
설계 인프라 설계        
구축 PoC 방안 확정        
인프라 구성(TGW, VPC, VPN)        
환경 구성 및 검증        
소스배포        
Gaming 기능 단위 테스트        
부하테스트 & Spec 검증        
고객 리뷰 Spec 확정 및 고객 Review        

7.  Assumptions

Overview of key assumptions that are assumed to be true for this Project. Bullet points are fine. 

 

이 프로젝트를 진행 하기 앞서 가정하는 것들

예시:

Internet-Facing ELB외에는 직접적으로 인바운드 트래픽이 유입되어야하는 EC2 없음

Failover Recovery Test Game Server DB만을 대상으로 하며, 나머지 서비스들은 이에 준하는 것으로 가정

- Network Packet 기준을 아래와 같이 가정합니다.
   - 이동패킷 사이즈 : 40byte + tcp 헤더 20byte = 60 byte
   - 소켓 옵션 : nagle 알고리즘 on 상태
   - 이동 패킷 발송 주기 : 1초에 3번 전송

 


8. Success Criteria

What are the conditions/ results that have to take place, in order for the Project to be deemed as a successful Project? Bullet points are fine.

 

- 제공 해야 할 산출물의 정의
- 서비스 기능 및 성능 기준는 수치화 할 수 있는 기준
- Well architected framework에 준하는 내용 또는 진단 개선 내용

 


9. Customer Dependencies

What are required from the customer to ensure that the Project is successful (e.g. what kind of information sharing is required)? Bullet points are fine.

 

- 고객이 제공해 줘야 할 자료 및 환경 제공 요건 정의

예시:

- 고객이 가정하고 있는 동시 접속 사용자(CAU, DAU, MAU)를 사용
- 부하 테스트 도구와 시나리오는 고객이 제공
- RPO / RTO는 고객사의 Compliance 요건을 따름

 


10. Exclusions

What are not covered in the Project? Bullet points are fine

• 프로젝트에서 제외된 내용 명시
• 예시)
   테스트 예외 범위(성능/부하테스트 제외)
   고객사 컨설팅,운영, 기간 등을 정확하게 명기
   다중 지역 테스트 (한 개 지역에서만 테스트 하고 나머지는 제외) 


11. Responsibility Matrix

Between the Partner Team and Customer Team, provide brief overview on how responsibility is shared to ensure that the Project is successful. Table presentation is preferred for easy reading. 

 

- 고객사, AWS, 파트너사의 R&R 정리 
- 파트너사의 contribution이 명기되어야 함 (파트너사의 contribution에 대한 비용 근거가 됨)

 

예시:

No. Activity Primary Owner Secondary Owner
1 고객요구 사항 정의 Customer Partner
2 PoC 계획 수립 Partner Customer
3 AWS 아키텍처 설계 Partner Customer
4 PoC 인프라 환경 구성 Partner Customer
5 PoC 소스 작성 및 배포 Customer Partner
6 테스트 데이터 준비 Customer Partner
7 테스트 수행 Customer Partner
8 결과 검증 Customer Partner

12. Project Time Frame

Estimation of Project Duration – provide a brief overview and state the number of weeks taken

예시:

프로젝트 기간 : 4주로 아래와 같이 POC예정

  o   VPC Network구성

  o   EC2,ELB,RDS,ECC,S3,AWS 구축

  o   :

  o   예약인스턴스의적용

 


13. Detailed Project Costing

해당 부분은 영업부서에서 확인 후 기입

Resources Number of Hours Rate per Hour (USD) Cost (USD)
Solutions Architect 40 70 2,800
AWS infrastructure     3,000
: : : :
Cloud Engineer 200 40 8,000
Total Cost (USD) 30,000
Partner Contribution (USD) (15,000)
AWS Cash Contribution* (USD) (5,000)
AWS Credits Contribution* (USD) (5,000)
Total Payable by Customer (USD) 5,000

14. Acceptance of Project

이 부분은 영업이 할 부분이니 Skip!!

 

드디어 끝났네요 ㅎㅎ 제가 적은 예시와 작성해야하는 내용을 기반으로 잘 작성하길 바랍니다.

 

SOW는 전체적인 스토리의 일관성 그리고 AWS 서비스를 어떻게 활용 하는지 마지막으로 Calculator 작업을 잘 하면 완성이 되니 모두 어렵지 않게 진행 할 수 있을 겁니다! 

 

그럼~~

 

댓글