AWS Cloud School 13기 50일차

Forever 김·2026년 3월 12일

AWS Cloud School

목록 보기
46/97

TIL

배운 내용

프로메테우스(Prometheus)

  • node exporter(수집,agent)
  • prometheus(저장)
  • grafana(시각화)

1. 노트 익스포터 설치

wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
# 압축 파일 다운로드

압축해제
tar -xvf
# -x : extract(해제), v : 과정출력, -f : 파일

압축할때
tar -cvf
# -c : 압축생성

[root@cent-tem ~]# tar -xvf node_exporter-1.7.0.linux-amd64.tar.gz
# 압축 해제.

[root@cent-tem ~]# cd node_exporter-1.7.0.linux-amd64

[root@cent-tem node_exporter-1.7.0.linux-amd64]# ./node_exporter

[root@cent-tem ~]# curl http://211.183.3.90:9100/metrics
# node_expoter가 잘 동작하는지 확인한다.

2. 프로메테우스 설치

wget https://github.com/prometheus/prometheus/releases/download/v2.45.0/prometheus-2.45.0.linux-amd64.tar.gz tar xvfz prometheus-2.45.0.linux-amd64.tar.gz

tar -xvf prometheus-2.45.0.linux-amd64.tar.gz
# 압축해제

[root@cent-tem prometheus-2.45.0.linux-amd64]# vi prometheus.yml
 - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
    # self health-check

  - job_name: "node_exporter"
    static_configs:
      - targets: ["localhost:9100"]
      
# 9100 = 노드익스포터 , 9090 = 프로메테우스

[root@cent-tem prometheus-2.45.0.linux-amd64]# ./prometheus
# 실행

http://211.183.3.90:9090/targets
으로 잘 동작하는지 확인한다. Grafana는 전날에 했던것과 동일하게 한다.


가상화

서버 가상화

  • 컴퓨팅 파워를 가상화할때 크게 서버 가상화(Hypervisor), 컨테이너 가상화(Docker,k8s)로 나눈다.
  • 하이퍼바이저란?
    : 프로세서, 메모리, 스토리지와 같은 컴퓨팅 리소스를 폴링하여 가상 머신(VM)에 재할당하는 소프트웨어이다. 이 기술을 통해 여러 VM을 생성하여 단일 물리 머신에서 실행하는 가상화가 실현될 수 있다.
    가상 머신 모니터(VMM)라고 한다. 하이퍼바이저는 VM의 구성 요소들을 분산시키는 작업을 담당하는 감독관과 같다. 하이퍼바이저는 물리 하드웨어에서 이러한 리소스를 가져와 여러 VM에 동시에 공급한다. 하이퍼바이저로 사용되는 물리 하드웨어를 호스트라고 하면 그 리소스를 사용하는 여러 VM을 게스트라고 한다.
  • 작동 방식
    VM을 실행하려면 메모리 관리자, 프로세스 스케줄러, I/O(입력/출력) 스택, 기기 드라이버,보안 관리자, 네트워크 스택 등의 운영 체제 수준의 구성 요소 필요
    하이퍼바이저는 각 VM에 할당된 리소스를 제공하고 물리적 리소스에 대한 VM 리소스의 스케줄링을 관리한다.

    예를 들어 하이퍼바이저가 스케줄을 관리하는 동안에도 물리적 하드웨어는 여전히 실행을 수행하므로 CPU는 VM의 요청에 따라 CPU 명령을 실행한다.

Type 1 VS Type 2

Type 1
베어메탈 하이퍼바이저라고도 불리는 유형 1 하이퍼바이저는 host의 하드웨어에서 직접 실행되어 게스트 운영 체제를 관리한다. 호스트 OS를 대신하며 하이퍼바이저가 하드웨어에 직접 VM 리소스를 예약한다
예를 들어 KVM, Microsoft Hyper-V, Vmware vSphere가 있다.

출처:https://tech.ktcloud.com/entry/%EB%B0%95%ED%98%84%EC%A4%80-%EA%B0%80%EC%83%81%ED%99%94-%EA%B8%B0%EC%88%A0-%EC%9A%A9%EC%96%B4-%EC%A0%95%EB%A6%AC%EC%9E%AC%EC%9E%91%EC%84%B1

Type 2
호스팅된 하이퍼바이저라고도 하며, 기존 운영 체제에서 소프트웨어 계층이나 애플리케이션으로 실행된다. Type 2는 Type 1의 비해 오버헤드가 크다

출처 : https://tech.ktcloud.com/entry/%EB%B0%95%ED%98%84%EC%A4%80-%EA%B0%80%EC%83%81%ED%99%94-%EA%B8%B0%EC%88%A0-%EC%9A%A9%EC%96%B4-%EC%A0%95%EB%A6%AC%EC%9E%AC%EC%9E%91%EC%84%B1

출처 :https://www.redhat.com/ko/topics/virtualization/what-is-a-hypervisor


전가상화 VS 반가상화

전가상화

  • 하드웨어를 완전히 가상화하는 방식으로 Hardware Virtual Machine이라고 불린다.
  • 하이퍼바이저 관리용 머신이 실해오디며, 모든 가상 머신들의 하드웨어 접근이 해당 관리 머신을 통해서 이루어진다.
  • GuestOS는 하이퍼바이저의 존재를 알 필요가 없다.
    장점 : OS 호환성이 높다
    단점 : 비교적 성능이 느리다.

반가상화

  • GuestOS는 스스로가 가상 환경임을 인지한다.
  • 전가상화의 성능저하 문제점을 개선하기 위해 별도의 인터페이스를 통해 명령을 한다.
  • GuestOS의 일부를 수정해줘야한다.
    단점 : 전 가상화에 비해 상대적으로 OS 호환성이 낮다.

KVM(Kernel-based Virtual Machine)

  • 커널 기반 가상 머신(KVM)은 Linux 운영 체제를 위한 오픈소스 가상화 기술이다. KVM을 통해 Linux는 격리된 여러 가상 머신(VM)을 실행하는 하이퍼바이저로 기능할 수 있습니다.
  • 커널 기반 가상 머신(KVM)은 모든 Linux 시스템을 베어 메탈 하이퍼바이저로 전환할 수 있습니다.

오늘은 실습도 진행하였는데 VMware 이슈와 나의 엄청난 착각의 이슈로 인해서 실습은 나중에 작성하든 따로 작성해보겠다.

profile
나를 한줄로

0개의 댓글