전체 글 29

모니터링 서버 구축해보기-4

alertmanager가 설정됐으면 이걸 이제 받는 쪽이 있어야 함웹훅을 이용해 슬랙으로 메시지가 가게 할 수 있다 그래서 슬랙을 사용함우선 새 작업공간을 만들어주고 웹훅도 활성화하고 새 웹훅 주소를 만들어준다그러면 URL이 이렇게 뜨는데 /etc/alertmanger/alertmanager.yml에 웹훅 주소를 넣어주면 됨그리고 시스템 재시작해서 적용시켜주고[root@monitoring ~]# systemctl restart alertmanager프로메테우스 쪽에서도 맞춰줘야 함alert 보낼 규칙을 지정하고 prometheus.yml에도 지정해줌 아까 본 700MiB 기준 메모리 사용량을 임의로 지정해줌[root@monitoring ~]# vi /etc/prometheus/alert-test.ymlg..

리눅스/실습 2025.11.16

모니터링 서버 구축해보기-3

기본적으로 제공되는 대시보드와 거기에 맞춰 미리 적용된 쿼리문들이 있어 웬만하면 이것들로 대략적인 모니터링이 가능한데,거기서 더 나아가서 직접 쿼리문을 작성해서 필요한 정보들만 뽑아낼 수도 있다. Prometheus에서 사용하는 쿼리라 PromQL이라고 부르는데 SQL이랑은 사용법이 꽤나 다르다.이걸 사용하면 메트릭 데이터를 기준으로 이상치를 탐지하거나 뭔가 이상한 게 생기면 감지해서 알림 전송이 가능그래서 Alertmanager라는 게 있는데 이게 그 기능을 하게 해줌쿼리문은 선택자{job=""} 이런 식으로 쓰이고 함수 안에 넣을 수도 있음 sum, avg, rate, min 등 판다스나 엑셀에서 친숙하게 보이는 그런 것들이 사용 가능사이드바에 있는 Explore를 타고 들어오면 저렇게 쿼리, 그래프..

리눅스/실습 2025.11.16

모니터링 서버 구축해보기-2

이전 DB 대시보드를 추가해봤으니 이번엔 VM 자체를 관리할 수 있는 노드 대시보드도 추가해봄이건 탬플릿 번호가 1860으로 불러오면 된다. 해당 VM 전체 리소스를 확인이 가능하다.그래서 이렇게 총 2개의 대시보드가 추가된 걸 확인할 수 있다.근데 nginx 웹 서버 자체로 들어오는 요청들도 확인이 가능하다 nginx를 사용해서 nginx exporter를 추가해주면 되는데,이건 프로메테우스 다운로드 페이지에 없어서 깃헙에서 찾아서 가져옴[root@Alma ~]# wget https://github.com/nginx/nginx-prometheus-exporter/releases/download/v1.5.1/nginx-prometheus-exporter_1.5.1_linux_amd64.tar.gz[roo..

리눅스/실습 2025.11.14

모니터링 서버 구축해보기-1

웹서버의 트래픽을 보기 위해 PG 스택으로 모니터링 서버를 구축해보기로 함저번에 https 적용까지 한 워드프레스 LEMP 서버가 대상으로 같은 가상머신 네트워크 상 1대에 모니터링 VM 구축이 목표2025.11.08 - [리눅스/실습] - 웹서버에 TLS 적용하기 웹서버에 TLS 적용하기워드프레스가 제대로 붙었으니 이제 http를 https로 만들어 볼 생각이다. 간단하게 테스트 환경에서 적용할 수 있는 openssl이랑 실제 인증서를 받아서 적용 가능한 let's encrypt가 있는데,let's encrypt를dbswjdahr.tistory.comelk는 여기서 내 노트북이 감당 못하기 때문에 가벼운 prometheus랑 grafana로 깔기로 한다.일단 https://prometheus.io/do..

리눅스/실습 2025.11.14

ansible로 쿠버네티스 클러스터 구성하기

Opentofu로 프로비저닝도 완료하고 형상 관리 내부 저장소 구축도 토푸와 앤서블로 했으니 쿠버네티스 클러스터 구성만 남았음다시 ansible 작업 폴더로 들어가서 CRI-O 런타임이랑 쿠버네티스 저장소를 추가하고 설치하는 yaml파일을 작성해줌쿠버네티스 클러스터가 작동하기 위해서는 br_netfilter 커널 모듈이 활성화되고 ip포워딩 커널 파라미터가 활성화되어야 함swap 영역도 없애고 쿠버네티스는 열어둬야 하는 각종 포트가 많아서 여기선 방화벽이랑 se리눅스를 편리하게 꺼두도록 함[root@IaC ansible]# vi k8s-install.yaml - name: Kubeadm, Kubelet, Kubectl 설치 및 설정 hosts: k8s_cluster, haproxy become: ye..

리눅스/실습 2025.11.11

내부 저장소 구축과 연동 - 2

이전 minIO로 오픈토푸 백엔드 설정하고 상태를 버전으로 관리할 수 있게 해놨으니 이번엔 Gitea로 전체 IaC 코드 관리를 함Gitea는 포트가 3000으로 웹콘솔에 들어가면 초기 구성이 보임 SQLite로 하면 바로 가능하지만 너무 간단하니 Postgresql로 붙여보려고 함 현재 저장소 노드에서 podman으로 gitea 컨테이너가 하나 띄워져있는 상태, sqlite는 걍 하면 되는데 db는 따로 DB용 노드 추가해서 서버 띄우든 로컬에서 db 띄워서 연결하든 컨테이너 띄워서 연결하든 동작하는데 상관은 없다그렇지만 podman을 사용 중이니까 gitea 컨테이너, db컨테이너 하나씩 묶어서 pod로 관리하게 했음일단 다시 pod를 만들고 2개 컨테이너를 묶기 위해 지금 실행중인 gitea 컨테이..

리눅스/실습 2025.11.10

내부 저장소 구축과 연동 - 1

이제 3개의 디스크 파티션에 각각 컨테이너 데이터가 저장될 디렉터리를 마운트하고 열어줬으니 이걸 이용해서 형상 관리를 진행할 수 있게 됨minIO는 토푸의 상태 관리, Gitea는 전체 작업 디렉터리를 기록하기 위함.일단 minIO와 통신하기 위해 IaC에서 민아이오 클라이언트를 다운받음 - https://github.com/minio/mc GitHub - minio/mc: Unix like utilities for object storeUnix like utilities for object store. Contribute to minio/mc development by creating an account on GitHub.github.com역시 dnf 기본 패키지 저장소엔 없지만 오픈소스라 가져와서 사..

리눅스/실습 2025.11.10

IaC 실습하기-3

이전에 저장소용 인스턴스 생성과 ssh 연결 테스트까지 했으니 이번에는 디스크를 추가해준다.miniO, Gitea, Docker registry 컨테이너 이미지를 Podman으로 3개를 띄울 거기 때문에 블록 스토리지 3개를 추가해줌.오픈토푸로 블록 스토리지 생성과 붙이기까지 가능하긴 하지만 엔드포인트를 찾을 수 없다는 에러가 떠서 이건 직접 붙여주기로 함.대시보드에서 생성하고 붙여줌다시 들어가서 확인해보면 잘 붙은 게 보인다이제 IaC 노드로 돌아가서 저장소용으로 생성된 인스턴스에 디스크 파티션이랑 포맷해주고 Podman 설치하고 컨테이너 띄워주면 됨일단 디스크 파티션/포맷 하나, podman 설치 및 실행 하나로 yaml 파일 만들어 나눠줌[root@IaC ansible]# vi disk-setup...

리눅스/실습 2025.11.10

IaC 실습하기-1

노트북의 Hyper-V에서는 VM을 4대 이상 올리기가 버거워 환경을 옮겨서 다양한 작업을 해보기로 한다.최근에 클라우드 교육 과정을 들으면서 운이 좋게도 강사님께서 운영하시는 오픈스택 클라우드 서버 환경을 제공받아 사용할 수 있게 되었었다.교육이 끝났지만 너무 감사하게도 강사님께서 무료로 최대 20대 가량의 인스턴스를 올리고 여러 작업을 할 수 있는 환경을 계속해서 제공해주심. 메모리도 매우 넉넉해 8GB씩 여러 대를 할당해도 충분한 IaaS 서비스를 이용할 수 있게 됨그래서 자원도 넉넉하고 여러대 생성도 가능하니 IaC로 쿠버네티스 클러스터를 구축함 오픈토푸, 앤서블을 사용해 인스턴스를 만들고 컨트롤 3대 워커 5대로 구성할 예정오픈토푸는 테라폼의 라이선스 정책 변화로 포크한 오픈소스로 mysql -..

리눅스/실습 2025.11.09