Introduction

Web 기반 사용자 interface Kubernetes Dashboard를 구축해보자!
이를 통해 사용자는 container화 된 application을 Kubernetes cluster 내에 배포하고, 문제를 진단하며, 클러스터 자원을 관리할 수 있다.

  • Resource Monitoring: 라이브 node 정보, CPU 및 memory 사용량과 같은 cluster의 핵심 지표 모니터링
  • Application 배포: Web interface를 사용하여 application 배포 및 관리
  • 문제 진단: Log, event 및 cluster resource 정보를 확인하여 application의 문제 파악 및 진단
  • Object 관리: Deployments, Jobs, DaemonSets 등과 같은 Kubernetes object의 생성, 수정 및 삭제
Read more »

Introduction

Fail2Ban의 명령어 중 sudo fail2ban-client status sshd을 사용하면 아래와 같은 결과가 나온다.

fail2ban

1
2
3
4
5
6
7
8
9
10
$ sudo fail2ban-client status sshd
Status for the jail: sshd # Service에 대한 보호 규칙
|- Filter # 악의적인 활동 정보
| |- Currently failed: 2 # 2개 기기의 잘못된 로그인 시도
| |- Total failed: 7 # 시작된 이후 총 7번의 잘못된 로그인 시도
| `- Journal matches: _SYSTEMD_UNIT=sshd.service + _COMM=sshd # Fail2Ban의 시스템 로그를 감시 방법
`- Actions # 악의적인 활동을 감지했을 때 취하는 조치에 대한 정보
|- Currently banned: 1 # 현재 차단된 IP 주소의 수
|- Total banned: 1 # 총 차단된 IP 주소의 수
`- Banned IP list: XXX.XXX.XXX.XXX # 차단된 IP

차단된 기기에서 SSH를 연결하려 시도하면 아래와 같이 실패하게 된다.

1
2
$ ssh ${USER}@${IP} -p ${PORT}
ssh: connect to host ${IP} port ${PORT}: Connection refused

이걸 매번 확인할 수는 없기 때문에 의문의 중국 해커가 공격하면 알람을 받을 수 있게 Apache Airflow와 Discord를 사용해보겠다!
사실 그거 안다해도 포맷 말고 할 수 있는게 없긴 한…

Read more »

Introduction

열심히 구축한 home server을 더 다양하게 활용하기 위해 (설치가 매우 간편한 K3s $\rightarrow$ 많은 시행착오 끝에 K8s로,,,) K8s를 통해 Apache Airflow를 설치하고 배포해보겠다.
https://${DDNS}/airflow에 서비스가 구동될 수 있도록 ingress도 설정해보겠다.

kubernetesexecutor

삽질 끝에 복이 온다!

Read more »

Introduction

현대의 마이크로서비스 환경에서 쿠버네티스 클러스터 내의 애플리케이션으로 트래픽을 관리하는 것은 필수 기술입니다.
쿠버네티스는 클러스터로의 외부 트래픽을 제어하고 라우팅하는 강력한 솔루션인 Ingress를 제공합니다.

GPT-4 좋네

Ingress: Cluster 내 서비스로의 외부 액세스를 관리하는 Kubernetes의 API 객체

Kubernetes의 ingress는 host 이름과 경로를 포함한 일련의 규칙을 기반으로 HTTP와 HTTPS routing을 제공하여 client 요청을 적절한 backend service로 연결하는 장점이 있다.
Ingress의 주요 구성 요소는 아래와 같다.

  1. Ingress Resource
    • Traffic routing 규칙 정의
    • Host, 경로 및 traffic 흐름을 제어하는 다양한 기타 매개변수 포함
  2. Ingress Controller
    • Ingress 리소스의 규칙을 읽고 실제 traffic routing 처리
    • NGINX Ingress Controller, Traefik, …
  3. Backend Service
    • Cluster 내에서 요청을 처리하는 실제 service
    • Ingress resource에서 정의한 대로 다양한 경로와 도메인을 통해 노출 가능

또한 사용하는 이유는 아래와 같다.

  1. 간소화된 routing: Routing 규칙을 한 곳에서 집중 관리하여 관리 및 유지 보수 명료화
  2. SSL/TLS 종료: SSL/TLS 인증서를 한 곳에서 처리
  3. 경로 기반 routing: URL 경로를 기반으로 요청을 다른 서비스로 연결함으로써 보다 체계적인 구조 구축
  4. 비용 효율: Routing 규칙을 통합함으로써 여러 load balancer의 필요 감소
Read more »