Kubernetes Ingress Controller
·
Kubernetes
Kubernetes Ingress ControllerIngress Controller는 Kubernetes 클러스터에서 HTTP(S) 요청을 처리하고, 외부 트래픽을 내부 서비스(Pod)로 라우팅하는 중요한 구성 요소입니다. Ingress는 외부 트래픽을 클러스터 내부의 특정 서비스로 유도하는 규칙을 정의한 Kubernetes 리소스입니다. 하지만 이 Ingress 리소스가 동작하려면 실제로 트래픽을 처리하는 Ingress Controller가 필요합니다.Ingress 및 Ingress Controller의 역할Ingress: HTTP/HTTPS 경로 기반 라우팅, 호스트별 라우팅, TLS/SSL 처리를 포함한 트래픽 라우팅 규칙을 정의합니다.Ingress Controller: 정의된 Ingress 리소..
Kubernetes Traffic
·
Kubernetes
Kubernetes Traffic외부에서 Kubernetes 클러스터 내부의 Pod까지 트래픽이 도달하는 과정을 설명하면, 여러 네트워크 레이어와 Kubernetes 구성 요소들이 관여하게 됩니다.1. DNS 또는 외부에서의 접근 (Ingress):외부에서 Kubernetes 클러스터로 트래픽을 보내기 위한 첫 번째 단계는 클러스터를 외부에 노출하는 것입니다. 일반적으로 DNS 이름을 통해 외부 트래픽이 클러스터로 유입됩니다. 이 단계에서는 다음과 같은 옵션이 있을 수 있습니다:Load Balancer (로드 밸런서): 클라우드 환경에서는 Kubernetes에서 제공하는 LoadBalancer 타입의 Service를 사용해 외부 로드 밸런서를 생성하고 외부 트래픽을 클러스터로 전달할 수 있습니다.Ingr..
Kubernetes Liveness Readiness
·
Kubernetes
Kubernetes Liveness ReadinessKubernetes에서 Liveness와 Readiness Probes는 컨테이너의 상태를 모니터링하고, 애플리케이션의 가용성과 안정성을 유지하기 위한 중요한 도구입니다. 이 두 가지 Probes는 각각의 목적에 따라 애플리케이션의 상태를 다르게 관리합니다.1. Liveness ProbeLiveness Probe는 컨테이너가 정상적으로 동작하고 있는지를 확인하는 데 사용됩니다. 만약 Liveness Probe가 실패하면 Kubernetes는 해당 컨테이너를 재시작합니다. 이 메커니즘은 컨테이너가 비정상 상태에 빠졌을 때(예: 무한 루프나 중단된 상태) 이를 복구하기 위해 사용됩니다.1-1. Liveness Probe의 주요 목적:컨테이너가 응답하지 않을..
ArgoCD Kubenetes Helm 구축
·
Kubernetes
ArgoCD Kubenetes Helm 구축이번 글에서는 ArgoCD를 Kubernetes Cluster에 Helm을 활용해 구축해보겠습니다.argocd 설치curl -sSL -o argocd-linux-amd64 sudo install -m 555 argocd-linux-amd64 /usr/local/bin/argocdrm argocd-linux-amd64Namespace 생성kubectl create ns argocdCert 등록kubectl edit cert -nistio-system xxx-cert---argocd.xxx.netHelm 설치# Repo 추가helm repo add argo # Helm 가져오기helm fetch argo/argo-cd --untarcd argo-cdlsvalues...
Harbor Kubernetes Helm 설치
·
Kubernetes
Harbor Kubernetes Helm 설치오늘은 Harbor를 Kubernetes Cluster에 Helm을 통해 구축을 진행해보겠습니다.namespace 생성을 진행하고 Istio Injection을 enabled로 설정합니다.Istio 설치는 다음 글을 참고해주세요.https://jeongchul.tistory.com/720 Istio Kubernetes 구축 및 Nginx 테스트Istio Kubernetes 구축 및 Nginx 테스트Istio 란?오픈소스 service mesh로 microservice를 보호, 연결, 모니터링할 수 있습니다.여기서 service mesh란 microservice의 네트워크와 트래픽을 관리할 수 있습니다.각 servicejeongchul.tistory.com ku..
Istio IngressGateway External IP 설정
·
Kubernetes
지난번에 설정한 Istio VirtualService에 Domain을 설정하였습니다.도메인으로 접근 시에 Istio Service에 있는 NodePort로만 접근이 가능하였는데요.443 포트로도 접속이 가능하도록 External IP 설정을 진행하겠습니다.https://jeongchul.tistory.com/721 Cert Manager with SSL Domain with AWS Route53Cert Manager with SSL Domain with AWS Route53지난번 글에서 Istio를 구축하였습니다.https://jeongchul.tistory.com/720금번 글에서는 AWS Route53을 통해 할당받은 도메인을 SSL 인증서를 Cert Manager와 Let's Encrypt를 통해j..
Cert Manager with SSL Domain with AWS Route53
·
Kubernetes/Istio
Cert Manager with SSL Domain with AWS Route53지난번 글에서 Istio를 구축하였습니다.https://jeongchul.tistory.com/720금번 글에서는 AWS Route53을 통해 할당받은 도메인을 SSL 인증서를 Cert Manager와 Let's Encrypt를 통해 발급받고, 이를 Istio Gateway와 VirtualService에 적용해보겠습니다.AWS Route 53AWS Route 53에 들어가 구매한 도메인에 대해 다음의 A records를 추가합니다.Record name: 각각 공백, * 입력하여 두 개의 records 생성Type: AValue: Kubernetes Cluster IP(xxx.xxx.xxx.xxx)최종적으로 A Type에 대해..
Istio Kubernetes 구축 및 Nginx 테스트
·
Kubernetes/Istio
Istio Kubernetes 구축 및 Nginx 테스트Istio 란?오픈소스 service mesh로 microservice를 보호, 연결, 모니터링할 수 있습니다.여기서 service mesh란 microservice의 네트워크와 트래픽을 관리할 수 있습니다.각 service 간에 직접 호출하는 것이 아닌 sidecar 형태의 proxy를 넣어 인입되거나 나가는 트래픽을 네트워크 단에서통제가 가능하며, 복잡해진 네트워크를 제어할 수 있게 도와줍니다.Istio 기능Load balancing: HTTP, TCP, WebSocket 트래픽에 대한 허용 및 로드 밸런싱Fine-grain control: 각 트래픽에 대한 라우팅 규칙, 재시도, 장애복구와 같은 제어 기능Access control: 정책 확인 ..
김 정출