🐧 리눅스 생태계 (Linux Ecosystem)
리눅스/유닉스 기반 운영체제
- 리눅스 기반 OS: Android, TIZEN, WEB OS, Ubuntu Touch 등. 리눅스 커널을 기반으로 다양한 기기(모바일, 자동차 등)에 맞게 개발된 운영체제들입니다.
- 유닉스 기반 OS: macOS, iOS, Solaris, HP-UX 등. 유닉스의 설계 철학을 계승한 운영체제들입니다.
주요 리눅스 배포판
- Rocky Linux / AlmaLinux: CentOS 지원 종료 이후, RHEL(Red Hat Enterprise Linux)과 완벽하게 호환되는 것을 목표로 등장한 배포판들입니다.
- Arch Linux: 단순성과 미니멀리즘을 추구하며, 사용자가 직접 시스템을 구성하는 데 중점을 둔 배포판입니다.
- Linux Mint: Ubuntu를 기반으로 하여 사용자 친화적인 데스크톱 환경을 제공하는 데 중점을 둔 배포판입니다.
⚙️ 클러스터링 기술 (Clustering Technologies)
클러스터링은 여러 대의 컴퓨터를 하나처럼 묶어 사용하는 기술로, 목적에 따라 다음과 같이 나뉩니다.
-
고성능 컴퓨팅 클러스터 (HPC, High Performance Computing)
- 베어울프(Beowulf) 클러스터라고도 불립니다.
- 수많은 컴퓨터의 연산 능력을 하나로 묶어 복잡한 과학 계산이나 시뮬레이션 등 슈퍼컴퓨터가 필요한 작업에 사용됩니다.
-
부하 분산 클러스터 (LVS, Linux Virtual Server)
- 로드 밸런싱(Load Balancing) 기술을 사용합니다.
- 대규모 서비스(예: 웹사이트)에서 발생하는 수많은 요청(트래픽)을 여러 대의 서버로 분산시켜 안정적인 서비스 제공을 목표로 합니다.
-
고가용성 클러스터 (HA, High Availability)
- 서비스의 무중단 운영을 목표로 합니다.
- 주 서버에 장애가 발생할 경우, 즉시 백업 서버가 서비스를 이어받는 방식으로, 금융권이나 데이터 센터에서 주로 사용됩니다.
💻 가상화 기술 (Virtualization Technologies)
하나의 물리적 하드웨어에서 여러 개의 운영체제나 애플리케이션을 독립적으로 실행하는 기술입니다.
하이퍼바이저 기반 가상화
**하이퍼바이저(Hypervisor)**라는 소프트웨어 계층 위에서 가상 머신(VM)을 실행하는 전통적인 방식입니다.
-
전가상화 (Full Virtualization): 게스트 OS가 자신이 가상 환경에서 실행된다는 사실을 인식하지 못합니다. 하드웨어 자체를 완전히 가상으로 흉내 내기 때문에 호환성이 높지만 성능 저하가 있습니다. (예:
VMware,KVM,Hyper-V)
-
반가상화 (Para-virtualization): 게스트 OS가 가상 환경임을 인식하고, 하이퍼바이저와 직접 통신합니다. 전가상화보다 성능이 우수합니다. (예:
Xen)
💡 TMI 최신 CPU의 하드웨어 가상화 지원 기술(Intel의 VT-x, AMD의 AMD-V) 덕분에
KVM같은 전가상화 기술도 거의 네이티브에 가까운 성능을 낼 수 있게 되었습니다.
컨테이너 기반 경량 가상화
하이퍼바이저 없이, 호스트 OS의 커널을 공유하며 애플리케이션과 그 실행에 필요한 라이브러리만 격리하여 실행하는 최신 기술입니다.
- Docker: 컨테이너 기술을 대중화시킨 오픈소스 가상화 플랫폼입니다. 애플리케이션을 신속하게 배포하고 실행할 수 있습니다.
- Kubernetes: 여러 서버에 분산된 수많은 컨테이너들을 효율적으로 관리하고 조정(Orchestration)하는 플랫폼입니다.
☁️ 클라우드 컴퓨팅 서비스 모델
- IaaS (Infrastructure as a Service): IT 인프라(서버, 스토리지, 네트워크)를 빌려주는 서비스. 사용자가 OS부터 애플리케이션까지 직접 관리합니다.
- PaaS (Platform as a Service): 애플리케이션을 개발하고 실행하는 데 필요한 플랫폼(OS, 미들웨어, 런타임 등)을 제공하는 서비스.
- SaaS (Software as a Service): 클라우드 환경에서 이미 완성된 소프트웨어를 구독 형태로 제공하는 서비스. (예: Google Workspace, Microsoft 365)
- DaaS (Desktop as a Service): 가상화된 데스크톱 환경을 제공하는 서비스.
🛠️ 기타 주요 기술 및 도구
- 빅데이터/데이터베이스:
Hadoop: 대용량 데이터를 여러 서버에 분산하여 저장하고 처리하는 프레임워크.R: 통계 분석 및 시각화에 특화된 프로그래밍 언어.NoSQL: 관계형 데이터베이스(RDBMS)가 아닌 다른 형태의 데이터 저장소.
- IT 자동화 및 인프라:
Ansible: 서버 구성 관리, 소프트웨어 배포 등을 자동화하는 도구.OpenStack: 클라우드 인프라를 구축하기 위한 오픈소스 플랫폼.