계층구조= 아래부터 위까지 쌓아올려지는 구조
서버 컴퓨터 = 사용자 컴퓨터와는 다른 서버 컴퓨터
클라우드 서비스 - 서버를 쌓아놓고 빌려주는 애들
CLI = 명령어로 컴퓨터를 조작하는 환경
GUI=시각적인 요소로 컴퓨터를 조작하는 환경
리눅스 기본 명령어 = 밑단의 인프라에서 쳐야하는 리눅스 운영체제에서 조작하는 명령어들이다.
인프라?
밑단이 되는 서버 컴퓨터, OS, 서버 프로그램이 인프라에 해당한다.
계층구조
위에 있다고 더 중요하거나 그런게 아니고, 하단에 있는 영역이 채워져야 상단의 영역도 진행 가능
보통 서비스 직접 만드는 개발은 서비스 영역임
그러나 계층 구조는 서버쪽에만 있는 것이 아님.
서비스 - 서비스 개발
프로그램 - 서비스 배포
운영체제 (OS) - 서비스 배포
하드웨어 (컴퓨터) - 서비스 배포
예) 사용자 컴퓨터에서 계층 구조 있음
서비스 - 넷플릭스
프로그램 - 크롬
운영체제 (OS) - 윈도우
하드웨어 (컴퓨터) - LG 그램
서버 컴퓨터 계층 구조
서비스 - 탈잉
프로그램 - 웹 서버 프로그램 (NGINX)
운영체제 (OS) - OS 라는 걸 깔아야함.
하드웨어 (컴퓨터) -서버 컴퓨터
서버
클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프로그램 또는 장치를 의미
서버 컴퓨터
흔한 서버 센트, 키보드, 마우, 모니터도 없음. CPU, RAM, HDD 컴퓨터 기본 요소만 있음.
눈에 보이지 않는 것들을 하는 최적화된 컴퓨터
서버실, 데이터 센터
이런 서버 컴퓨터의 경우, 많은 전력 필요, 관리 인력도 필요, 열이 많이 발생해서 통풍 잘 시켜줘야한다.
그래서 데이터센터 설립하는 위치도 중요.
중국 텐센트는 데이터센터를 산골 구이저우라는 곳에 설립했는데, 이는 해당 지역이 두 산 사이에 위치해 안전 수준이 높고, 인근에서 수력∙전력 자원을 손쉽게 끌어다 쓸 수 있어 운영비를 절감할 수 있다.
아마존, 구글과 같은 글로벌기업도, 데이터 센터를 알래스카 쪽에 건설했는데,
이는 많이 발생하는 열을 식혀 전력비용 아끼기 위한 것이다.
우리나라 네이버 데이터 센터도, 강원도 춘천의 높은 지대에 설치함.
클라우드 서비스란?
옛날엔 IT서버 만들땐 서버 컴퓨터 있었어야 했음.
그러나 이제는 클라우드 서비스 덕분에 서버 컴퓨터가 있지 않아도, 서버에 코드를 짜서 올릴 수 있다!
클라우드서비스? 서버를 구축해놓고, 일정기간 원하는 만큼 대여해주는 서비스, 서버 임대 업체로 볼 수 있다
장점 : 경제성, 유연성, 가용성, 빠른 구축
클라우드 서비스 덕분에 열관리, 전기관리, 네트워크 고민 등 다 필요없어졌다.
필요한 스펙에 맞춰 서비스 대여하면 됨.
(e.g. 메모리 4GB 에 CPU 2개짜리 서버 빌려야지, 우분투 OS로 깔아야지)
그리고 원격 프로그램으로 접속해서 코드 키면 서버에 바로 코드 칠 수 있음
컴퓨터 인터페이스 GUI 와 CLI
서버에 접속해서 몇 가지 코드 치기위해서는 CLI 인터페이스를 사용해야한다.
그럼 CLI 인터페이스는 뭐냐?
GUI: 그래픽 유저 인터페이스, 우리가 컴퓨터에서 보는 그래픽처럼 보이는 환경
CLI : 커맨드라인 인터페이스, 원래 컴퓨터는 이렇게 코드로 되어있었다.
그래픽 유저 인터페이스는 커맨드라인 인터페이스를 기반으로 누구나 쉽게 사용할 수 있도록 발전된 형태.
잡스가 애플 PC 만들면서 개발이나 코드 몰라도 컴퓨터 쓸 수 있게 해야되지 않겟냐 해서 '폴더', '마우스' 이렇게 우리가 지금 이용하는 그래픽 환경으로 만들어놓음. 참고: 매킨토시
>> 서버 컴퓨터는 모니터도 없고 마우스도 없기 때문에 커맨드라인 인터페이스(명령어) 써야함
GUI - 우리는 컴퓨터 안에 폴더 생성하기 위해 그냥 마우스 우클릭해서 폴더 생성하기를 누르지만,
CLI 는 모두 정해진 명령어를 입력해야한다.
커맨드라인 인터페이스 (리눅스 기본 명령어) |
내용보기 |
ls - List up |
폴더만들기 |
mkdir - Make directory |
폴더 들어가기 |
cd - change directory |
폴더 나오기 |
cd.. - change directory |
폴더 삭제하기 |
rm-r(폴더이름) Remove |
<전체 강의 한줄 요약>
2021.10.03 - [직장에서 살아남기] - [개발 기초 지식] 웹 브라우저와 DNS, 웹 서비스 동작 원리와 순서
2021.10.03 - [직장에서 살아남기] - [개발 기초 지식] 웹 문서 특징 (Front End)
2021.10.03 - [직장에서 살아남기] - [개발 기초 지식] Back-end : 웹 서비스
2021.10.04 - [직장에서 살아남기] - [개발 기초 지식] 데이터베이스, SQL 이란?
※ 본 내용은 탈잉 '비전공자를 위한 기초탄탄개발입문' 강의를 직접 듣고 참고해서 노트테이킹함