폭탄을 돌리는 게임이 있다고 생각해보자
유저1이 유저2에게 폭탄을 던진다. 이것을 스킬이라 한다면,
유저1이 스킬을 시전했다는 것과 유저2가 그 스킬에 피격되었다라는 정보가 각각의 컴퓨터에 전달되어야 할 것이다.
이러한 상황에서 만약 유저가 100명 1000명 10000명 그 수가 많아진다면 자그마한 오류마저도 전체 통신에 큰 지장을 줄 것이다. 그래서 등장한 것이 서버이다. 중간에서 모든 정보를 처리하고 결과값을 전달해준다.
이 역할을 클라이언트가 담당하게 된다면, 클라이언트 측에서 그 정보를 조작하여 본인에게 유리하게 작용하도록 악의적인 사용을 할 수도 있다.
그리하여 이 서버는 필수불가결한 존재가 되었다.
데이터센터는 서버들이 여러개 있는 공간이다.
어플리케이션의 서버를 호스팅하는 실제 시설이라고 할 수 있고,
이 시설에는 컴퓨팅 시스템을 위한 하드웨어, 네트워킹 장비, 전원공급장치, 전기 시스템, 백업 발전기, 환경 제어장치(에어컨, 냉각장치, 팬 등), 운영 인력, 기타 인프라 등 다양한 것들을 필요로 한다.
그렇다보니 이 데이터센터에 문제점이 발생하는데, 운영에 비용이 많이 소요된다는 것이다.
건물 유지비용, 서버 구매비용, 셋업, 유지보수 등 그리고 한번 구매하면 수요에 상관없이 계속 보유를 해야한다.
그리고 또 하나는 느린 구축시간이다. 유저의 수요에 빠르게 대처하기 힘들고, 장애 기기를 교체하는 시간 역시 느리다.
따라서 이런 문제점들을 해결하기 위해 기업들은 클라우드 환경을 구축하기 시작하였다.
유저들이 클라우드로 접속을 하여 여러 서비스를 받아보는 것인데,
"클라우드 컴퓨팅은 IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 것을 말합니다."
온디맨드 - 수요에 반응한다
출장을 자주 다니는 엔지니어가 숙박할 곳이 필요하다 생각해보자
클라우드 : 빌려 쓰기
여러 회사들이 각각 필요한 만큼 빌려 쓰는 것이다.
서버 구축 시 최대 피크 사용량을 기준을 두어야 하기에 불필요한 잉여 자원이 감수해야 했다.
하지만 클라우드 환경에서는 사람들의 수요에 반응하여 사용량에 따라가기에 용량의 추정이 불필요하게 되었다.
클라우드 컴퓨팅의 이점