[정보] AWS Saving Plan 구독 즉시 시간 당 비용 발생(EC2 미사용 포함)
·
기타정보
한줄요약 Saving Plan은 등록 즉시 EC2 사용유무와 상관없이 비용이 청구되며 원칙상 취소는 불가하다. Support에 취소 문의 후 내부 프로세스에 따라 취소받음 이슈내용 Saving Plan 이란? AWS Saving Plan 구독 시 EC2를 사용하지 않아도 약정된 금액으로 시간당 비용 발생 됩니다. 사건내용 저는 0.05$로 1년 약정을 Add Cart하니 즉시 계약이 체결된 것입니다. 그 때부터 시간당 비용이 발생합니다. 저는 인터넷에 찾아봤지만 다들 뜬구름 잡는 업체의 비용 계산법 등 후기를 알지 못하여 답답했습니다. 그래서 공유드립니다. 저는 처음에 너무 놀라서 인터넷을 찾아보니 취소가 안된다는 것이었습니다. 1년에 40만원이 꼼짝없이 날아가게 생긴 것 입니다. 그래서 지푸라기 잡는 ..
MSA로의 이전
·
기타정보
프로토타입 형식의 소프트웨어 아키텍처는 모놀리식으로 개발을하여 테스트후 마이크로소프트웨어 아키텍처로의 이전의 필요성을 요즘 느끼고 있다. 그 중 하나의 과업은 내가 운영하는 서비스의 쿠버네티스 이전이다. 또한 안정성과 비용도 큰 부분을 차지한다. 대고객 서비스를 클라우드로 할 지 IDC에 장비를 넣어서 관리할지 고민이다. 한정된 자원의 효율적인 분배가 제일 고민이다. 실제 서비스를 만들어보고 운영해봄으로서 결정해도될것같다. 1U 서버를 구매해서 사무실에서 운영하다가 코로케이션을 넘기거나 해야겠다. 개발 및 운영 망을 각각 사무실 및 클라우드로 생각해봐야겠다. 쿠버네티스 환경으로 각각 구성해서 하면 될 듯 하다. 이렇게 되면 환경에 따른 세팅이 달라져 학습비용이 2배이상으로 증가한다. 하지만 EKS로 구성..
[정보] pv pvc 트러블슈팅
·
기타정보
selector로 라벨을 지정하면 pv를 자동으로 선택하는 줄 알았다. 말그대로 라벨로 추가 필터링하는 기능이다. pvc 에서 volumeName으로 pv를 연결한다. namespace 상에 어플리케이션과 pvc는 같이 있어야하며 pv는 다른 namespace에 존재해도 된다. apiVersion: v1 kind: PersistentVolume metadata: name: nfs-pv spec: storageClassName: "" capacity: storage: 128Gi accessModes: - ReadWriteMany nfs: server: 192.168.0.210 path: /data/nfs apiVersion: v1 kind: PersistentVolumeClaim metadata: name..
[정보] 쿠버네티스(kubernetes) rabbitMQ 헬름차트 yaml 설정
·
기타정보
헬름차트 구성도 종합 rabbitmq를 stateful 기반으로 작성하여 데이터가 유실되지 않도록 nfs 서버에 마운트하여 데이터를 관리하는 yaml 입니다. 네트워크 접속결과 구성파일 statefulset.yaml apiVersion: apps/v1 kind: StatefulSet metadata: namespace: rabbit name: rabbitmq spec: replicas: 1 serviceName: rabbitmq selector: matchLabels: app: rabbitmq template: metadata: labels: app: rabbitmq spec: containers: - name: rabbitmq image: rabbitmq:3-management env: - name: ..
[정보] 쿠버네티스 서비스의 역할
·
기타정보
개념 Service는 Pod을 외부에서 접속할 수 있도록 하는 오브젝트이다. 환경구성 deploy.yaml 다음은 예제에 사용된 nginx pod을 3개 생성하는 deployment 파일이다. 컨테이너 생성을 포함하며 pod가 replicas에 의해 3개 생성된다. labes라는 것을 이용하여 연관관계 생성한다. apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment namespace: my-web # 네임스페이스 추가 labels: app: nginx-deployment spec: replicas: 3 selector: matchLabels: app: nginx-pod template: metadata: labels: app: ngi..
[정보] 쿠버네티스 pod Evicted - 하드디스크 부족
·
기타정보
나의 빨간 pod들 혼자서 재기동을 반복한다. 서비스가 살아났다 죽었다 한다. 그 해결 방법은 디스크 용량 증설! 나의 경우 최소 워커노드에 32gb에서 160gb로 할당해주니까 정상적으로 돌아왔다
[정보] ingress-nginx argocd 설정 파일(redirection loop)
·
기타정보
문제발견 ingress-nginx를 사용중에 argocd를 연결하니 307 redirection loop가 발생 했다. 해결방법 공식 홈페이지를 찾아보니 무조건 backend는 https로 접속하는 metadata:annotation을 추가로 달아줬다. # If you encounter a redirect loop or are getting a 307 response code # then you need to force the nginx ingress to connect to the backend using HTTPS. # nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" Ingress Configuration - Argo CD - Declarative Gi..
[정보] kubernetes 외부통신 적용(metallb)
·
기타정보
namespace 생성 kubectl create namespace metallb-system helm 등록 helm repo add bitnami https://charts.bitnami.com/bitnami metallb 적용 helm install -n metallb-system my-metallb bitnami/metallb --version 4.10.1 address pool 파일 작성 # IPAddressPool.yaml # The address-pools lists the IP addresses that MetalLB is # allowed to allocate. You can have as many # address pools as you want. apiVersion: metallb.io..
[정보] kubernetes 관리도구 k9s 설치
·
기타정보
https://github.com/derailed/k9s/releases Releases · derailed/k9s 🐶 Kubernetes CLI To Manage Your Clusters In Style! - derailed/k9s github.com wget https://github.com/derailed/k9s/releases/download/v0.31.6/k9s_Linux_amd64.tar.gz mv /usr/sbin k9s
[정보] kubernetes etcd 상태확인
·
기타정보
etcdctl 사용 이유 master1이 down되면 master2가 리더가되어 etcd write 권한을 얻게 된다. 그리고 관련 정보도 sync 되어 ha 구성을 할 수 있다. etcdctl 설치 Releases · etcd-io/etcd Distributed reliable key-value store for the most critical data of a distributed system - etcd-io/etcd github.com ETCD_VER=v3.4.29 # choose either URL GOOGLE_URL=https://storage.googleapis.com/etcd GITHUB_URL=https://github.com/etcd-io/etcd/releases/download DOW..