본문 바로가기

반응형

⌛ AWS 인프라 구성하기 (MiniProject)

(33)
error: You must be logged in to the server (Unauthorized) 오류 발생시 해결 방안 # EKS 자동 빌드를 위해 Codebuild를 통해 배포하다가 error: You must be logged in to the server (Unauthorized) 해당 오류가 계속 발생 하여 해결 방안에 대해 정리한다. 1. 첫번째로, IAM 권한을 확인해야 한다. 아래와 같은 리스트 형태로 IAM 권한을 지정한다. - 초록색 테투리안에 있는 권한이 필수 권한이라고 볼 수 있다. 2. 권한 설정을 완료해도 만약 오류가 지속적으로 발생한다면, aws-auth.yaml 파일을 확인해 봐야한다. kubectl get configmaps aws-auth -n kube-system -o yaml > aws-auth.yaml 위의 명령어를 확인하여 정상적으로 적용이 되어 있는지 확인해야 한다. apiVersi..
EKS 장애발생 해결방안 (부하로 인한 클러스터 다운) # 장애발생 개념도 장애 사례 설명 1.개발자가 소스 코드를 수정하고 CodeCommit에 최종적으로 반영을 한다. 2. 수정된 소스코드가 CodeCommit에 반영되어, 최신 코드로 업데이트 된다. 3. 최종 반영된 소스코드는 Codebuild를 통해 ECR에 이미지 형태로 저장된다. 4. 이번 사례는 개발자가 최신 코드를 반영했을때 잘못된 코딩으로인해 EKS 클러스터 내에서 DB로의 커넥션이 무한으로 반복되는 무한루프 상태가 되었다. 결국에는 EKS 클러스터의 NodeGroup내에 존재하는 EC2 인스턴스 자체가 다운이 되는 문제가 발생 되었다. 장애 해결 방안 1. 원인파악이 최우선: 일단 서비스가 안되거나 리소스의 상태가 이상하다고 판단되면 가장 처음으로 해야하는일은 EKS 내의 NodeGroup..
pod를 수동으로 삭제하는 방법 # 증상 pod를 삭제를 해도 Terminaiting 상태에 머물러 있을때가 있다. 이런경우에 해결방법에 대해서 알아보자. # 해결방법 문제를 해결하는 방법은 매우 간단하다. 수동으로 해당 pod를 삭제해 주면 된다. 삭제 명령어는 아래와 같다. kubectl -n delete pods --grace-period=0 --force 만약 삭제를 하고, 다시 apply를 했을때에도 Terminating 상태가 지속 된다면, EKS 클러스터의 노드그룹의 상태를 상펴 보아야 한다. 노드 그룹이 현재는 정상이지만, 상태가 사용할 수 없음이거나, 알수 없음 등으로 되어 있으면 Terminating 상태로 머물러 있을 수 있다. 해당 부분을 반드시 확인해야 한다. - 끝 -
EKS에서 현재 설정된 노드별 실행 가능한 pod 개수 확인하기 # 현재 설정된 노드가 몇개의 pod를 실행시킬수 있는지 확인하는 방법에 대해서 알아보자. # EKS에서 특이한점은 각 node(서버?, EC2)별로 실행시킬수 있는 pod의 갯수가 한정되어 있다. 아래의 링크에서 노드별 pod를 실행시킬 수 있는 갯수가 표시되어 있으니 확인한다. nodes are available: 1 Too many pods. nodes are available: 1 Too many pods. 가끔 pod를 실행 후 위와 같이 나오는 경우가 있다. AWS의 인스턴스들은 각 타입별로 pod 생성 갯수를 제한하고 있다. 원인은 해당 인스턴스에 pod 생성 갯수를 초과해서 이다. 안쓰는 pod를 제거 후 may9noy.tistory.com 보통 내가 자주 사용하는 노드 타입은 t3.med..
CLB(Classic LoadBalancer) # 클래식 로드 밸런서는 안쓰는 추세이다. 뭐 기능이 없다. ㅎㅎㅎ ALB 및 NLB를 주로 쓴다. 아래는 기본 로드밸러서를 생성하는 yaml 파일의 내용이다. apiVersion: v1 kind: Service metadata: namespace: new-app name: new-app-elb spec: ports: - port: 8080 targetPort: 8080 protocol: TCP type: LoadBalancer selector: app: new-app 끝.
finalizers 를 활용한 서비스 강제 제거 pod가 ContainerCreating 상태로 계속 살아나거나, 삭제가 안될때 아래 url로 이동하여 해결한다. 2022.09.07 - [⭐ Kubernetes & EKS/디플로이먼트 (Deployment)] - Deployment 삭제 방법 (ReplicaSet 삭제 안될때, 좀비 pod, pod가 삭제 안될때, pod가 계속 살아날때) Deployment 삭제 방법 (ReplicaSet 삭제 안될때, 좀비 pod, pod가 삭제 안될때, pod가 계속 살아날때) # 오류내용 - ReplicaSet이 삭제가 되지 않아 pod를 강제로 지워도 좀비처럼 다시 살아나는 문제 발생 # 해결방법 - Deployment 자체를 삭제 해야한다. - Deployment 를 삭제해야한다. 그러면 pod 및 Repli..
{"level":"error","ts":11111111111111,"logger":"setup","msg":"unable to create controller","controller":"Ingress","error":"the server could not find the requested resource"} # EKS 클러스터에서 아래와 같은 오류가 발생 함 Error from server (NotFound): pods "aws-load-balancer-controller-1111111111111-11111" not found $ kubectl logs --tail 1000 -f aws-load-balancer-controller-11111111111111-11111 -n kube-system {"level":"info","ts":11111111111.11111111,"msg":"version","GitVersion":"v2.2.1","GitCommit":"27803e3f8e3b637873f9bb59c56b78de01f65b79","BuildDate":"2021-06-25T17:18:28+0000"} {"l..
cert-manager 오류 발생 시 해결방법 # 오류 내용 I0614 07:55:48.788781 1 start.go:89] "starting" version="v1.0.2" revision="219b7934ac499c7818526597cf635a922bddd22e" I0614 07:55:50.591182 1 request.go:645] Throttling request took 1.046604902s, request: GET:https://10.100.0.1:443/apis/admissionregistration.k8s.io/v1?timeout=32s I0614 07:55:51.591233 1 request.go:645] Throttling request took 2.045774149s, request: GET:https://10.100.0.1:..

728x90
반응형