면접을 위한 CS 지식

클라우드 엔지니어 면접을 위한 CS 지식 정리 7 - 운영

갈색말 2023. 9. 7. 15:18

운영 Management

 

문제편

 

1. 전체 백업, 차등 백업, 증분 백업에 대하여 설명하시오.

2. Archiving과 Compression의 차이에 대하여 설명하시오.

3. 리눅스에서 CPU, Memory, Disk, Network, Process 활용률을 각각 확인할 수 있는 명령어를 하나씩 나열하시오. 이 때, 과거 시간대의 자원 활용률을 알 수 있는 명령어도 함께 포함하시오.

4. RTO와 RPO에 대하여 설명하시오.

5. SLA와 거버넌스에 대하여 설명하시오.

 

6. 재해 복구 DR의 4단계 백업 & 복원, 파일럿 라이트, 웜 스탠바이, 다중 사이트에 대하여 설명하시오.

7. 고가용성, 내결함성, 확장성, 탄력성에 대하여 설명하시오.

8. 클라우드 마이그레이션 전략 - 리프트 앤 시프트와 클라우드 네이티브 방식에 대하여 설명하시오.

9. Throughput과 RPS, TPS, Latency에 대하여 설명하시오.

 

 

 

 

해답편

 

1. 전체 백업, 차등 백업, 증분 백업에 대하여 설명하시오.

=> 데이터 백업의 양을 얼마만큼 하느냐에 따라서

 

1) 전체 백업 : 백업시마다 이전 데이터 + 변경된 데이터 모두 매번 백업.

                    가장 느리고, 가장 용량도 크지만, 가장 데이터 무결성이 적다.

2) 차등 백업 : 최초 백업 이후 변경된 데이터만 백업한다.

                     다만, 최초 이후 변경된 데이터라면 모두 매번 백업한다.

                     ex) 월요일 data 변경-최초 백업.

                           화요일 data 변경-화요일 백업 O. 월요일은 포함 X.

                           수요일 data 변경-수요일 백업 O. 화요일 data 변경-백업 O. 월요일은 포함 X

                           목요일 data 변경-목요일 백업 O. 수요일 data 변경-백업 O. 화요일 data 변경-백업 O. 월요일은 포함 X

3) 증분 백업 : 최초 백업 이후 변경된 데이터만 백업한다.

                      다만, 누적없이 변경된 데이터만 백업한다.

                     ex) 월요일 data 변경-최초 백업.

                           화요일 data 변경-화요일 백업 O. 월요일은 포함 X.

                           수요일 data 변경-수요일 백업 O. 화요일은 포함 X. 월요일은 포함 X

                           목요일 data 변경-목요일 백업 O. 수요일은 포함 X. 화요일도 포함 X. 월요일은 포함 X

 

2. Archiving과 Compression의 차이에 대하여 설명하시오.

=> 파일을 모으고 압축하는 개념으로

- Archiving : 여러 개의 파일을 모으는 것. tar명령어로 사용.

                      ex) tar -cvf 파일a 파일b 파일c

- Compression : 특정 파일을 압축하는 것.  gzip 명령어로 사용.

                      ex) gzip 파일a

- Archiving & Compression : 모으고 & 압축하는 것을 동시에 진행.

                      ex) tar -czvf 파일a 파일b 파일c

 

3. 리눅스에서 CPU, Memory, Disk, Network, Process 활용률을 각각 확인할 수 있는 명령어를 하나씩 나열하시오. 이 때, 과거 시간대의 자원 활용률을 알 수 있는 명령어도 함께 포함하시오.

=> 과거 사용률은 sar을 통해 알 수 있다.

1) CPU : top, vmstat, sar 등.

               과거 사용률은 $ sar -u -f /var/log/sa/saYYMMDD

2) Memory : vmstat, sar 등.

               과거 사용률은 $ sar -r

3) Disk : iostat, iotop, sar -b, lsof 등

               과거 사용률은 $ sar -d

4) Network : netstat, route -n, traceroute

               과거 사용률은 $ sar -n DEV

 

4. RTO와 RPO에 대하여 설명하시오.

=>

- RTO (Recovery Time Objective) : 장애 허용 시간. 이 시간이 넘기전에 장애가 복구되어야 한다.

                                                          ex) RTO 1시간 = 1시간안에 장애 해결을 해야한다.

- RPO (Recovery Point Objective) : 데이터 손실 허용 시간. 장애 전 이 시간까지의 데이터는 복구되어야 한다.

                                                          ex) RPO 1시간 = 장애 1시간 전 데이터까지는 복구되며, 이후 데이터는 소실될 수 있다.

 

5. SLA와 거버넌스에 대하여 설명하시오.

=>

- SLA : Service Level Agreement. 제공자<->서비스 간의 사용 협약. 주로 가동률 등을 얼만큼 보장할지에 대해 나와있다.

ex) 월간 SLA 99.99%를 보장한다 = 29일 23시간 55분 41초까지 가동률을 보장하며, 4분 19초는 다운된다.

 

- 거버넌스 : Governance. 한 조직이 준수하는 프로세스 절차.

 

6. 재해 복구 DR의 4단계 백업 & 복원, 파일럿 라이트, 웜 스탠바이, 다중 사이트에 대하여 설명하시오.

=> RPO/RTO가 높을 수록 재해 복구는 쉽지만 비용 또한 올라간다.

공식 AWS 기술 블로그https://aws.amazon.com/ko/blogs/tech/disaster-recovery-dr-architecture-on-aws-part-i-strategies-for-recovery-in-the-cloud-3/

 

1) 백업 & 복원 : Backup & Restore. 장애시 미리 준비된 이미지에서 새로 VM들을 생성. 당연히 RTP/RPO도 낮으며, 비용도 제일 적다.

RPO/RTO는 시간 단위.

2) 파일럿 라이트 : Pilot Light. 가스 히터의 작은 불꽃처럼 신속하게 데울 수 있는 것처럼, 복구 사이트에 DB같은 아주 중요한 몇 서버만 미리 실행되어 있다. RPO/RTO는 10분 단위.

3) 웜 스탠바이 : Warm Standby. 필요한 모든 구성 요소를 항상 대기로 실행 중이어야 한다. RPO/RTO는 10분 미만.

4) 다중 사이트 : Multi-site. active/active라고도 한다. 제로 다운타임, 멀티 사이트가 항상 대기중이므로 실시간에 가까운 목표로 복구한다. 대신 비용이 제일 높다.

 

7. 고가용성, 내결함성, 확장성, 탄력성에 대하여 설명하시오.

=> 비기능적 요구 사항 정의의 항목들이며, 다음 사항들은 인프라에 함께 중복될 수 있다.

1) 고가용성(High Availability) : 시스템을 끊김없이 계속 사용할 수 있는가. ex) 하나의 데이터 센터를 추가로 대비하는 등.

2) 내결함성(Fault Tolerance) : 시스템이 얼마나 손상이 갔는가. ex) 3대의 WEB서버 중 1대가 다운되면, 내결함성은 30% 떨어진다.

3) 확장성(Scalability) : 시스템을 얼마나 추가로 할당하거나 축소할 수 있는가. ex) WEB서버를 2대 추가, 검색 서버를 1대 줄일 수 있다.

4) 탄력성(Resilience) : 장애 상황에서의 시스템을 어떻게 조절하고 회복할 수 있는가. ex) WEB서버가 부하가 걸려 AutoScaling 진행.

 

8. 클라우드 마이그레이션 전략 - 리프트 앤 시프트와 클라우드 네이티브 방식에 대하여 설명하시오.

=> 

1) 리프트 앤 시프트 : 기존의 VM을 그대로 AWS로 이전. 리호스트, 리플랫폼, 리로케이션으로 나뉜다.

 - 리호스트 : App 수정없이 그대로 VM Image로 변경하여 클라우드로 이전.

 - 리플랫폼 : 옮기는 김에 App을 업그레이드 하여 클라우드로 이전.

 - 리로케이션(재배치) : 도커 등을 사용하여 컨테이너 환경으로 재배치.

 

2) 클라우드 네이티브 : 클라우드 최적화 적인 개발방법 구현. 리팩터와 재구매로 나뉜다.

 - 리팩터 : 미들웨어나 애플리케이션 재설계. 

 - 재구매 : 클라우드 솔루션이나 라이센스 등을 새로 구매하여 환경을 교체.

 

9. Throughput과 RPS, TPS, Latency에 대하여 설명하시오.

=>

1) Throughput : 시스템이 처리하는 트랜젝션 수. 목적지까지 도달하는 자동차 댓수. 높아야 좋다.

   - RPS : 1초당 요청수

   - TPS : 1초당 처리수 (트랜젝션)

2) Latencty : 지연시간. 자동차가 목적지까지 걸리는 시간. 낮아야 좋다.