
IT 서비스 운영을 위하여 직접적인 인프라(Infrastructure)를 구축하는 방식
이전 또는 현재 주로 사용하는 환경
우리가 개인 노트북을 사용해서 어떤 시스템 환경을 구축하는 것을 온-프레미스 환경이라고 할 수 있다.
즉, 온-프레미스 환경은 우리가 직접 구성하는 환경이다.
service 요청
service 제공
클라이언트는 웹 브라우저 사용을 전제로 하기 때문에 클라이언트 프로그램을 따로 사용하지 않고
보통 서버 프로그램을 많이 작성하며, 데이터베이스와의 통신, 요청 처리 로직, 보안 처리, API 작성 등을 수행한다.
그래서 주로 작성하는 부분은 백엔드가 된다.
end user(사용자) 사용하는 프로그램
client에서 동작하는 프로그램
server program
client에게 service를 제공하는 프로그램
처리 속도
최대 용량에 맞추어서 구축
CPU
처리 능력
Memory
기억 능력
I/O Device
입/출력 능력(속도)
O/S(운영 체제, 플랫폼)
H/W
Linux
대부분 Server 구축에 적용
1. RedHat 계열 배포판
2. Debian 계열 배포판
MS Windows Server
MacOS
Server 역할 또는 성격에 따라 구축
예 - Web Server, DB Engine( DBMS ), Main Server( 서비스 성격에 따른 프로그램 )
server 프로그램이 동작할 수 있는 환경
Library
함수(function) 집합
Framework
프로그램 Library와 프로그램 구조( template )를 포함하고 있는 Library
Node.js, JSP, ASP, Django, Flask..
스토리지 용량 설정, 네트워크 속도, 네트워크 구성 등등
물리적인 서버를 직접 구성하다보니 비용이 많이 발생할 수 밖에 없다.
긴급한 상황이 발생했을 때 확장하기 어려울 수 있다.
예를 들어, 온-프레미스 환경으로 구성된 코로나 백신 예약 시스템을 예로 들 수 있다.
질병관리청에서 예약 서비스 업체에 맡겨 온-프레미스를 구축했는데,
업체에서 과거의 경험을 기준으로 서버를 구축하다보니 동시접속자가 갑자기 증가했을 때 제대로된 대비가 불가했다.
서버를 물리적으로 구성했기 때문에 서버 구축이 쉽게 되지 않아 서버가 마비되는 상황이 발생한 것이다.
온-프레미스 환경은 물리적으로 서버를 구성하기 때문에 갑작스럽게 스케일 업을 하려고 해도
하드웨어가 즉각적으로 마련되지 않을 수 있고
하드웨어가 준비되어도 os 설치 및 세틍, 동작 서버 프로그램 세팅 테스트 등
일련의 시간이 필요하여 당장 확장이 필요해도 확장이 불가할 수 있다.
하드웨어 관리가 어렵다.
그래서 대안으로 나온 것이 클라우드 환경이다.
인트라넷은 클라우드 환경이 나오기 전 많이 사용되었다.
*인트라넷: 기업이나 조직 내부에서만 접근할 수 있는 폐쇄형 네트워크
cloud service 제공 업체( CSP )의 H/W, S/W 환경을 빌려서 사용
초기 자본 비용이 발생하지 않는다.
사용한 만큼 비용 지불
service 형태( 가상 환경 )로 제공하므로 자유롭게 확장 및 축소 가능
Network 사용이 기본
web 기반 이용
client 프로그램으로 web browser 사용
클라우드는 종량제로 사용한 만큼만 비용이 지불된다.
온-프레미스 환경은 하드웨어를 구매하고 구축을 하기 때문에 축소 및 환경이 쉽지 않다.
클라우드를 잘 사용한다면, 온-프레미스 보다 저렴하게 사용이 가능하여
클라우드 서비스를 사용하는 회사가 증가하고 있다.
하지만, 전체를 클라우드로 옮기는 것은 어려워 일부 서비스를 천천히 전이 중이다.
연속적인 기업들은 이미 온-프레미스 환경을 유지하기 때문에
클라우드로 완전 전이하는 데는 한계가 있어 몇 년에 걸쳐 전이하기도 한다.
대한항공이 완전히 클라우드 환경으로 전이한 예시가 있다.
* 구독제는 정해진 만큼만 정기적으로 비용을 지불하지만, 종량제는 사용한 만큼만 비용이 지불된다.