시스템과 인프라 기초 지식
1.1_시스템 기반의 기초 지식
클라우드의 등장
과거 : 애플리케이션 엔지니어(개발), 인프라 엔지니어(실행 환경 구축)
최근 : 실행 환경의 구축 범위가 극도로 줄어들어 짧은 사이클로 릴리스를 반복하는 스타일로 두 직종의 경계선이 흐릿해짐
시스템 기반의 구성 요소
- 시스템 기반
: 애플리케이션을 가동시키기 위해 필요한 하드웨어나 OS, 미들웨어 등과 같은 인프라
- 인프라 기술
: 시스템 기반을 다루는 기술
하드웨어
- 시스템 기반을 구성하는 물리적인 요소로서 서버 장비 본체나 데이터를 저장하기 위한 스토리지, 전원 장치 등
- 넓은 의미로는 데이터센터의 설비(건물, 공조, 보안 설비, 소화 설비 등)도 포함)
네트워크
- 시스템 이용자가 원격지에서 액세스할 수 있도록 서버들을 연결하기 위한 요구사항
OS(운영체제)
- 하드웨어나 네트워크 장비를 제어하기 위한 기본 소프트웨어로, 하드웨어의 리소스나 프로세스 관리
- 클라이언트 OS : Windows/macOS (이용자의 편의를 위해 GUI, 멀티미디어 기능 마련)
- 서버 OS : Windows Server, Unix, Linux (시스템 고속 및 안정 가동을 위한 기능으로 특화)
미들웨어
- 서버 OS 상에서 서버가 특정 역할을 다하기 위한 기능을 갖고 있는 소프트웨어
시스템의 이용 형태 : 클라우드 & 온프레미스
온프레미스(on-premises)
- 기업 시스템에서 지금까지 상당히 많이 채택되어 온 것으로, 자사에서 데이터센터를 보유하고 시스템 구축부터 운용까지를 모두 수행하는 형태
- 서버/네트워크 장비 직접 조달, 인프라 구축, 하드웨어/OS/미들웨어 구입, 라이선스 관리나 버전업, 자사 운용
퍼블릭 클라우드(public cloud)
- 인터넷을 경유하여 불특정 다수에게 제공되는 클라우드 서비스
- 서버나 네트워크 등 인프라와 관련된 초기 투자가 필요 없다
- IaaS/PaaS/SaaS
ex) Windows Azure, amazon web services, Google Cloud Platform
프라이빗 클라우드(private cloud)
- 특정 기업 그룹에게만 제공되는 클라우드 서비스
1.2_하드웨어와 네트워크 기초 지식
서버 장비
CPU
- 프로그램의 설계나 처리 등을 수행하는 전자회로 부품
- 작동 주파수가 클수록 연산 능력이 높아짐
- 연산회로 = 코어, 코어 수가 많으면 많을수록 연산을 동시에 처리할 수 있는 수가 늘어남
- 대부분 여려개의 코어를 가진 멀티코어를 사용
메모리(주기억장치)
- CPU가 직접 액세스할 수 있는 기억장치(기억 영역)
- 서버용으로는 전력 소모가 적고 오류 처리가 탑재되어 있는 것을 선정함
스토리지(보조기억장치)
- 데이터베이스에 기록하는 데이터 등과 같은 영구적인 데이터를 저장하는 디바이스
- 스토리지의 용량, 읽기와 쓰기 속도가 시스템 전체의 응답 시간에 영향을 주는 경우가 많다.
- 하드디스크, SSD, Fiber Channel(FC)
네트워크 주소