전체 글 24

Spring Cloud Gateway를 Docker 환경에서 실행하기

다양한 APIM 오픈소스들도 있고, kubernetes의 Ingress와 유사한 서비스로 생각되는데 직접 서비스를 구성하여 비교해보기로 한다. [참고] https://spring.io/projects/spring-cloud-gateway Spring Cloud Gateway This project provides a libraries for building an API Gateway on top of Spring WebFlux or Spring WebMVC. Spring Cloud Gateway aims to provide a simple, yet effective way to route to APIs and provide cross cutting concerns to them such as: secur..

Resilience4J(Circuit Breaker) 활용하기

CNCF의 Graduated 프로젝트인 Istio(Service Mesh)를 주로 Circuit Breaker 용도로 쓰다보니 Hystrix 같은 다소 Application 영역에 대한 궁금증이 생겼다. 얼마 전 Eureka&OpenFeign 관련 구현을 할 때 Hystrix 대신 Resilience4J가 활용되기 시작하는 것을 보았는데, 환경을 간단히 구성하고 테스트해보기로 한다. 실행 환경 구성 Spring Cloud Circuit Breaker 샘플 프로젝트는 SpringBoot 2를 기반으로 되어있는데, 관련된 설정을 일부 변경하여 진행. [참고] https://github.com/spring-cloud-samples/spring-cloud-circuitbreaker-demo GitHub - sp..

Spring Cloud Eureka&OpenFeign Docker로 구성하기

Kubernetes를 활용하다보니 Software를 활용한 환경 구성과의 차이점이 궁금하여 뒤늦게 Spring Cloud를 활용한 실행환경을 구성하게 되었다. 나중에 Kubernetes에 올릴 생각으로 Docker로 모든 서비스를 구성해보자. 전에는 Netflix의 Hystrix, Zuul, Eureka가 거의 표준처럼 자리 잡았던 것으로 기억하는데, Hystrix같은 경우 현재 더 이상 지원하지 않는다고 한다. 그 사이 또 많은 변화가 있었던 것 같다. [참고] https://spring.io/blog/2018/12/12/spring-cloud-greenwich-rc1-available-now Eureka Server 구성 GitHub에서 아래 repository를 clone하여 몇 가지 수정을 ..

Grafana 설치 (kubernetes/aws)

지난 Prometheus 설치에 이어 Grafana를 설치한다. 동일하게 helm으로 진행. [참고] https://grafana.com/docs/grafana/latest/setup-grafana/installation/helm/ Deploy Grafana using Helm Charts | Grafana documentation Thank you! Your message has been received! grafana.com 설치 Helm repository 추가 [ec2-user@ip-10-180-16-34 ~]$ helm repo add grafana https://grafana.github.io/helm-charts "grafana" has been added to your repositorie..

Engineering/DevOps 2024.03.21

Prometheus 설치 (kubernetes/aws)

helm을 사용하여 kubernetest cluster에 monitoring 환경을 구성한다. [참고] https://github.com/prometheus-community/helm-charts/tree/main/charts/prometheus helm repository 설정 aws-ebs-csi-driver는 https://dev-tobe.tistory.com/12 과정에서 설치했으므로 생략. [ec2-user@ip-10-180-16-34 ~]$ helm repo add prometheus-community https://prometheus-community.github.io/helm-charts "prometheus-community" has been added to your repositorie..

Engineering/DevOps 2024.03.20

Hubble UI(cilium) 설정하기

CNI Open Source로 cilium을 설치한 후, Add-on 서비스를 구성해본다. 생각보다 이런저런 문제가 있어 기록.  [참고] cilium 설치 https://dev-tobe.tistory.com/9 kubernetes cluster 수동 설치(w/aws)CSP별로 kubernetes를 managed service로 제공하지만, 수동으로 kubernetes를 설치하면서 구성에 대한 이해를 높이고 서비스 비용에 대한 타당성 및 장단점을 확인해보자. 1. Installing kubeadm 0. 사전 작업 0.1. Edev-tobe.tistory.com 설치하단의 링크를 참조하여 간단히 설치 가능.[참고] https://docs.cilium.io/en/stable/gettingstarted/hub..

Engineering/k8s 2024.03.11

kubernetes worker node 수동 추가

사전 작업 node(EC2) 준비 앞에서 kubernetes cluster를 설치하기 위해 Node를 준비했던 것 처럼 kubeadm까지 설치를 진행 [참고]https://dev-tobe.tistory.com/9 kubernetes cluster 수동 설치(w/aws) CSP별로 kubernetes를 managed service로 제공하지만, 수동으로 kubernetes를 설치하면서 구성에 대한 이해를 높이고 서비스 비용에 대한 타당성 및 장단점을 확인해보자. 1. Installing kubeadm 0. 사전 작업 0.1. E dev-tobe.tistory.com kubelet, kubectl 을 생략하고 아래와 같이 kubeadm을 설치한 것은 약간의 차이점. sudo yum install -y kub..

Engineering/k8s 2024.03.08

kubernetes cluster 수동 설치(w/aws)

CSP별로 kubernetes를 managed service로 제공하지만, 수동으로 kubernetes를 설치하면서 구성에 대한 이해를 높이고 서비스 비용에 대한 타당성 및 장단점을 확인해보자. 1. Installing kubeadm 0. 사전 작업 0.1. EC2 - Launch an instance 우선 Free tier에 해당하는 instance type: t2.micro은 추후 resource 부족 이슈가 생기므로 t3.small로 진행 AMI는 Amazon Linux 2023 대신 Amazon Linux 2로 진행. 2023은 설치 후, pod 무한 restart 및 다양한 문제 발생. (EOS는 짧지만 Amazon Linux 2가 안정감 있음) ➜ mango ssh -i "mango-kubea..

Engineering/k8s 2024.03.08

Service mesh(istio) upgrade 하기

istio upgrade가 필요한 경우, 아래와 같이 진행 가능하다. version 확인 ➜ ~ istioctl version client version: 1.17.1 control plane version: 1.14.1 data plane version: 1.14.1 (1 proxies) https://istio.io/latest/docs/setup/upgrade/in-place/ upgrade 사전 확인 ➜ ~ istioctl x precheck ✔ No issues found when checking the cluster. Istio is safe to install or upgrade! To get started, check out https://istio.io/latest/docs/setup/g..

Engineering/k8s 2024.01.23