HA
: 고가용성 , 특정 서비스 또는 서버가 다운타임 없이 거의 100% 상시 액세스
가능(또는 사용 가능)한지, 그리고 서비스나 서버가 설정된 기간 동안 합리적인 기대치에 부합하는 성능을 제공하는지 여부
Resilience
: 회복 탄력성
실무 개발 유형 : 솔루션 개발, si개발, 서비스 개발(고가용성)
솔루션 개발은 주로 B2B(회사 대 회사)
-> ex) 회계관리, 인사관리 시스템
-> B2C보다 유저가 작음
솔루션 이나 si 개발에는 Spring cloud 적용안하는 경우가 많음
서비스를 안정적으로 확장하는 방식에는 크게 두가지
서버를 여러 대 추가하여 시스템을 확장하는 방법
예를 들어, ‘1’의 처리 능력을 가진 서버에 동일한 서버 4대를 더 추가하여, 총 ‘5’의 처리 능력을 만드는 것
서버가 여러 대가 되기 때문에 각 서버에 걸리는 부하를 균등하게 해주는 로드밸런싱
이 필수적으로 동반되어야 함
스케일 아웃의 경우, 서버 한 대가 장애로 다운되더라도 다른 서버로 서비스 제공이 가능하다는 장점
이 있지만 모든 서버가 동일한 데이터를 가지고 있어야 하므로, 데이터 변화가 적은 웹 서버에 적합한 방식
즉 여러대의 서버가 트래픽을 나눠서 가짐
애플리케이션 또는 마이크로서비스의 이전 버전에 있던 사용자 트래픽을 이전 버전과 거의 동일한 새 버전으로 점진적으로 이전하는 애플리케이션 릴리스 모델
-> 이때 두 버전 모두 프로덕션 환경에서 실행 상태를 유지
이전 버전을 blue
환경으로, 새 버전은 green
환경
프로덕션 트래픽이 blue에서 green으로 완전히 이전되면 blue는 롤백에 대비하여 대기 상태로 두거나 프로덕션에서 가져온 후 업데이트하여 다음 업데이트의 템플릿으로 삼을 수 있다
blue, green을 나란히 구성하여 배포 시점에 트래픽이 일제히 전환됨
스케일 업
은 서버에 CPU나 RAM 등을 추가하거나 고성능의 부품, 서버로 교환하는 방법
예를 들어, ‘1’의 처리 능력을 가진 서버 한 대를 ‘5’의 처리 능력을 가진 서버로 업그레이드시키는 것
CPU나 RAM을 추가하기로 했다면 현재 서버에 추가 부품을 장착할 수 있는 여유 슬롯이 있어야 하며, 그렇지 않은 경우 서버 자체를 고성능으로 교체하는 것이 필요
스케일 업의 경우, 서버 한 대에 모든 부하가 집중되므로 장애 시 영향을 크게 받을 수 있는 위험성
한 대의 서버에서 모든 데이터를 처리하므로
데이터 갱신이 빈번하게 일어나는 데이터베이스 서버
에 적합한 방식
서버
: 무언가를 제공하는 대상 혹은 그 주체
부하
: Load 가 많이 걸린 것( 요청 많이 온 것)
-> 이를 해결하는 방법이 분산
분산
: 일(요청) 나눠서 하는 것
-> 컴퓨터 끼리는 연결 수단이 있어야 일을 나눠서 함
네트워크
: 어떠한 일이나 문제점을 처리하는데 긴밀하게 연결되어 효율적으로 움직일 수 있는 체계, 컴퓨터나 다른 장비들을 연결하여 데이터를 전송하는 시스템
Native cloud로 전환하더라도 네트워크 이해 필요
구조 : 외부 요청 -> 라우터 -> 백본 스위치 -> L7 스위치 -> DMZ Zone && Trust Zone -> DMZ Zone
외부에서 요청이 오면 라우터
를 통해 분배되어 전달
라우터: 둘 혹은 그 이상의 네트워크와 네트워크 간 데이터 전송을 위해 최적 경로를 설정해주며 데이터를 해당 경로를 따라 한 통신망에서 다른 통신망으로 통신할 수 있도록 도와주는 인터넷 접속 장비
스위치
는 컴퓨터 네트워크에서 사용되는 장비로, 네트워크 트래픽( 컴퓨터 네트워크에서 전송되는 데이터)을 전송하는 데 사용
L7 스위치
는 응용 계층(Application Layer)에서 작동하는 스위치로, 네트워크 트래픽을 응용 계층 프로토콜을 기반으로 구분하여 전송하는 네트워크 장비
-> L7 스위치는 다른 종류의 스위치와는 달리 응용 계층 프로토콜을 기반으로 트래픽을 제어 가능
-> 네트워크의 성능을 개선할 수 있고, 보안 및 네트워크 관리 등의 목적으로도 사용됨
Trust zone
와 DMZ zone
은 네트워크 보안에서 사용되는 개념으로, 두 영역은 네트워크의 구조를 나타냄
Trust zone
은 네트워크 내부의 컴퓨터들로 이루어진 영역이며, 내부 네트워크의 보안을 위해 설정되는 영역
DMZ zone
은 외부 네트워크와 내부 네트워크 사이의 영역으로, 일반적으로 외부에서 접근이 가능한 서버들이 속해 있는 영역
보통 DMZ zone의 컴퓨터들은 외부 네트워크에서 접근이 가능하지만, Trust Zone과 같은 내부 네트워크로의 접근은 제한