728x90 전체 글59 Kubernetes HPA (파드 오토스케일링) [2] - 동작 제어 이전 장에서는 HorizontalPodAutoscaler에 대한 기본적인 내용에 대해 알아보았다. HorizontalPodAutoscaler에 대해 처음 들어보았다면 아래 글을 먼저 읽어보는 것이 좋다. 2025.01.05 - [DevOps/Kubernetes] - Kubernetes HPA (파드 오토스케일링) [1] - 기초 Kubernetes HPA (파드 오토스케일링) [1] - 기초HPA (Horizontal Pod Autoscaler)는 Deployment나 StatefulSet 등의 워크로드의 레플리카 갯수를 수요에 맞게 자동으로 스케일링하도록 한다. 수평 스케일링은 레플리카를 늘리고 줄이는 것을 의미한다. 통상beer1.tistory.com autoscaling/v2 버전의 Horiz.. 2025. 1. 5. Kubernetes HPA (파드 오토스케일링) [1] - 기초 HPA (Horizontal Pod Autoscaler)는 Deployment나 StatefulSet 등의 워크로드의 레플리카 갯수를 수요에 맞게 자동으로 스케일링하도록 한다. 수평 스케일링은 레플리카를 늘리고 줄이는 것을 의미한다. 통상적으로 레플리카를 늘리는 것을 scale-out, 줄이는 것을 scale-in 이라고 부른다. 수직 스케일링이라는 것도 있는데, 이는 레플리카를 조절하는 것이 아닌 CPU 및 메모리 등 서버의 스펙을 늘리거나 줄이는 것을 의미한다. (이는 scale-up / scale-down 으로 불린다.)HPA 동작 방식쿠버네티스에는 HPA를 지원하기 위해 HorizontalPodAutoscaler API와 이에 대응하는 컨트롤러를 제공한다. HorizontalPodAutoscale.. 2025. 1. 5. Coraza WAF 소개와 Istio에서 Coraza WAF 적용하기 Coraza WAFCoraza는 엔터프라이즈급 고성능 웹 애플리케이션 방화벽 (WAF) 이다. Go 언어로 작성되었으며 Modsecurity SecLang Rule set을 지원하고 OWASP Core Rule Set v4와 100% 호환한다. ✏️ Coraza를 알아보기 전에..Coraza를 알아보기 전에 WAF와 OWASP에 대해 간단히 알아보면 좋을 것 같다. WAF(웹 방화벽) 소개WAF (Web Application Firewall)WAF는 웹 애플리케이션으로 들어오는 트래픽을 모니터링 및 필터링하여 악성 요청으로 의심되는 요청들을 차단하고 웹 앱을 보호하고 승인되지 않은 데이터가 앱에서 나beer1.tistory.com OWASP란?OWASP (Open Web Application Secu.. 2024. 11. 10. OWASP란? OWASP (Open Web Application Security Project)OWASP는 전 세계 기업, 교육기관 및 개인이 만들어가는 오픈소스 애플리케이션 보안 프로젝트로, 중립적, 실무적이면서 비용 효과적인 애플리케이션 보안 가이드라인을 무료로 제공하고 있으며 이러한 가이드라인은 웹 및 애플리케이션 보안분야에서 거의 표준이 되고 있다. OWASP Top TenOWASP Top Ten은 웹 애플리케이션 취약점 중에서 빈도가 많고 가장 중요하고 보호해야 할 보안 위험에 대한 취약점 리스트이다. 공식 문서에서는 2021년 기준 TOP 10을 소개하고 있고, 2025년 업데이트할 예정이라고 한다. Broken Access Control: 허가된 사용자에 대해서만 리소스에 접근할 수 있도록 적절하게 인증/.. 2024. 11. 6. WAF(웹 방화벽) 소개 WAF (Web Application Firewall)WAF는 웹 애플리케이션으로 들어오는 트래픽을 모니터링 및 필터링하여 악성 요청으로 의심되는 요청들을 차단하고 웹 앱을 보호하고 승인되지 않은 데이터가 앱에서 나가는 것을 방지한다. 방화벽 (Firewall)과의 차이점일반적인 방화벽과의 차이점은, 방화벽은 OSI 7 Layer 중 L4 수준에서의 트래픽을 관리 및 차단한다. 구체적으로 이야기 하자면, IP와 Port를 기준으로 트래픽을 허용할지 차단할지 설정한다. 방화벽에 의해 차단되는 경우, 실제 애플리케이션까지 트래픽이 도달하지 않기 때문에 클라이언트에서는 타임아웃이 발생한다. 반면에 WAF는 OSI 7 Layer 중 L7 수준에서의 트래픽을 관리 및 차단한다. 그 중에서 HTTP 정보를 기반으로.. 2024. 11. 5. Kubernetes Scheduling - Node Affinity Affinity를 사용하여 파드를 스케줄링할 노드를 찾을 때의 제약조건을 정의할 수 있다. Affinity를 사용하면 이전 시간에 언급한 nodeSelector보다 더 풍부한 방식으로 파드를 실행시키는 노드의 조건을 설정할 수 있다. Affinity에는 크게 NodeAffinity와 Pod간 Affinity가 있다. 이번 글에서는 Node Affinity에 대해 알아보자.NodeAffinityNode Affinity는 node label를 기반으로 파드를 스케줄링할 수 있는 노드를 제한할 수 있다. Affinity는 파드의 Spec이기 때문에 Affinity를 사용하면 파드가 노드를 선택하는 개념으로 볼 수 있다. Scheduler에서는 NodeAffinity 플러그인에서 NodeAffinity에 대한 .. 2024. 5. 2. Kubernetes Scheduling 소개 및 NodeSelector Kubernetes Scheduling쿠버네티스에서 스케줄링은 파드를 실행할 쿠버네티스 클러스터에 있는 적절한 노드를 찾는 과정을 말한다. 기본적으로 쿠버네티스에서 스케줄링은 컨트롤 플레인에 있는 kube-scheduler라는 컴포넌트가 그 기능을 담당한다. 물론 쿠버네티스의 스케줄링 메커니즘을 잘 이해한다면 자신만의 커스텀 스케줄러를 구현하는 것도 가능하다. kube-schedulerkube-scheduler는 쿠버네티스의 컨트롤 플레인의 구성요소로, 쿠버네티스의 기본 스케줄러이다 kube-scheduler는 새로 생성되었지만 아직 노드에 스케줄링되지 않은 파드를 실행하기 위해 최적의 노드를 선택한다. kube-scheduler에서 파드를 스케줄링을 할 때는 기본적으로 총 12단계를 거치게 된다. 그 .. 2024. 5. 1. Jenkins pipeline 소개 및 Java 애플리케이션 CI/CD pipeline 작성 Jenkins pipeline은 CI / CD 파이프라인을 구현하고 Jenkins에 통합하는 것을 지원하는 플러그인 모음이다. Jenkins Pipeline은 Pipeline 도메인별 언어 (DSL)을 통해 간단한 파이프라인부터 복잡한 파이프라인을 코드로 모델링할 수 있는 확장 가능한 도구들을 제공한다. 즉, Jenkins pipeline에서 제공하는 DSL을 활용하여 애플리케이션 CI/CD 파이프라인을 포함한 여러가지 자동화 파이프라인 기능을 구현할 수 있다. Jenkins Pipeline의 정의 부분은 jenkinsfile 이라고 불리는 텍스트 파일에 작성된다. 이 파일은 Git과 같은 소스코드 레포지토리에서 관리할 수도 있다. Jenkinsfile은 pipeline as code의 기초로써, 파이프.. 2024. 2. 4. Jenkins 소개 및 Kubernetes에 설치 Jenkins Jenkins는 소프트웨어 빌드, 테스트 및 배포와 관련된 모든 종류의 작업을 자동화 하는 데 사용하는 독립형 오픈소스 자동화 서버이다. 보통은 Jenkins를 CI / CD 도구로 잘 알려져 있으며, 회사와 같이 여러 조직에서 사용하기 좋다. 2023.11.04 - [DevOps/CI.CD] - CI / CD란 무엇일까? CI / CD란 무엇일까? CI / CD 개발자가 애플리케이션을 개발하고나면 애플리케이션을 실제 서버로 배포해야 한다. 보통 배포를 할 때는 애플리케이션을 빌드하고, 작성한 테스트코드를 돌려서 테스트를 진행한 후 모 beer1.tistory.com Jenkins 기능 Jenkins의 기능은 여러가지가 있다. Jenkins Job을 사용하여 스크립트 실행 Jenkins J.. 2023. 11. 7. 이전 1 2 3 4 ··· 7 다음 728x90