업데이트 전 환경 ec2 instance k9s : v0.25.18 aws-cli : 1.8.x 문제점 k9s v0.25.18 버전에서 최신으로 업데이트 할 경우 unable to connect context 에러가 발생하며 정상적인 사용이 불가능하다. 원인 kubeconfig에 설정된 client.authentication.k8s.io의 버전이 낮아서 일어나는 문제이다. v1alpha1 => v1beta1 업데이트가 필요하다. 해결법 1. aws-cli 업데이트 curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install --bin-dir /usr/l..
목차 1. 환경 Master Node : EKS Plugin : ISTIO 1.14.2 2. 현상 Server 컨테이너에서 Request의 Header로부터 Client의 IP주소를 기록하고 싶었으나 127.0.0.6 과 같은 내부 IP만 기록되었습니다. 3. 원인 ISTIO 환경에서는 Pod에 출입하는 네트워크를 ISTIO가 관리합니다. 이때 X-Forward-For와 같은 헤더를 ISTIO가 덮어씌우기 때문에 이와같은 현상이 일어났습니다. 4. 해결방법 Pod의 annotations에 "sidecar.istio.io/interceptionMode: TPROXY"를 추가해주면 됩니다. 예시) apiVersion: apps/v1 kind: Deployment metadata: name: server-de..
목차 들어가기 전에 처음 쿠버네티스를 공부할 때는 쿠버네티스만 하면 끝날 줄 알았습니다. 하지만 인기 있는 오픈소스가 애드온이 없을 리가 없지요. 한 번에 익혀야 할 지식이 너무 많아서 버거운 것이 사실입니다. 또한 교육자료에서는 샘플 코드를 기준으로 가르치기 때문에 실제 환경에서 어떻게 구성해야 하는지 시행착오를 많이 겪어야 했습니다. 때문에 오늘은 쿠버네티스 애드온의 Production환경 구축에 대해서 하나하나 풀어가보겠습니다. 가능한 helm을 이용해서 설치합니다. helm을 먼저 설치해주시기 바랍니다. https://helm.sh/docs/intro/install/ Installing Helm Learn how to install and get running with Helm. helm.sh 이..
개발환경에서 간단하게 확인하는 글들은 인터넷에 많이 있었습니다. 그래서 실제 Production 환경을 구성하면서 겪었던 문제점들과 어떻게 해결했는지에 대해서 적어보려고 합니다. 여기에 남긴 방법이 정답은 아니며 더 좋은 방법을 찾아가고 있습니다. 1. 2022.03.11 - [개발/Kubernetes] - [Production] 쿠버네티스 Addon 설정 2. Github Action, Gitops 레포지토리, ArgoCD를 활용한 CI/CD 구성 3. Argo Rollouts를 이용한 Blue / Green 배포 4. MSA에서 Blue / Green 배포를 사용한다면 같은 배포 환경끼리 통신하는 방법 5. SaaS 앱에서 서브도메인으로 사용자를 구분할 때 컨테이너에서 서브도메인 정보를 얻는 방법
개요 처음 쿠버네티스 환경 구축을 하며 Istio를 사용했습니다. 자연스럽게 Istio ingress gateway를 도입해서 라우팅을 하였습니다. 하지만 Istio는 arm을 지원하지 않는다는 문제가 생겼습니다. Istio ingress gateway를 사용하기 때문에 Istio를 사용하지 않으면 프로젝트가 올바르게 동작하지 않기 때문에 개발환경 구축에 큰 차질이 생긴 것입니다. 그래서 Istio ingress gateway를 traefik으로 마이그레이션 하여 Istio의존성을 낮추기로 했습니다. 개발환경에서는 Istio없이 구축하고 프로덕션에서는 Istio를 사용하는 방향으로 변경했습니다. Traefik 설치 helm으로 traefik을 설치할때 사용할 values.yaml을 만들어줍니다. 디폴트값..
2달간의 공부끝에 82점으로 합격했습니다. 어디서 틀렸는지 알고 싶지만 알 수 없다는게 아쉽습니다. 시험관과 시험 환경을 확인하는 도중에 크롬에서 화면공유가 활성화 되지 않아 비발디 브라우저로 시험을 치루었습니다. 혹시 모르니 비발디 브라우저도 준비하시는 것을 추천합니다. 가장 어려웠던 문제는 네트워크 폴리시였습니다. 영어를 잘 못하니 ingress인지 egress인지 구분하는 것이 제일 큰 난관이었습니다. 제일 걱정했던 트러블슈팅은 kubelet을 restart하는 것만으로 끝나버려 허무할 뿐입니다. 그 외의 문제는 무난하고 크게 어렵지는 않았습니다. 준비하는 과정에서 쿠버네티스에 많이 익숙해질 수 있어서 좋은 시험이라고 생각합니다. AWS시험 같은 4지선다보다는 훨씬 재밌는 시험이라고 생각합니다. 다..
- Total
- Today
- Yesterday
- golang
- cloudflare
- S3
- Traefik
- 전략패턴
- cka
- VPC
- flyway
- jaeger
- DB형상관리
- CloudFront
- 달러구트 꿈 백화점
- kiali
- 프로덕션
- liquibase
- k8s
- Prometheus
- AWS
- istio
- kubernetes
- IAM
- 드래곤라자
- minikube
- grafana
- eks
- HMAC
- Constant
- production
- 쿠버네티스
- Auto Scaling
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |