inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)

📝 모니터링 설치 - Loki-Stack (💻 실습포함)

application 응용과제 1번

333

피이백

작성한 질문수 5

1

startupProbe의 실패기간을 성공기간보다 짧게 가져가기위해서

이렇게 변경해주었을때 위와같은 오류가 발생했습니다.

오류결과

successThreshold와 failureThreshold를 변경할 수 없다는 거 같습니다.

kubernetes infrastructure container

답변 3

1

피이백

Internal server error

Pod "api-tester-1231-6f49f78859-qvmn8" is invalid: spec: Forbidden: pod updates may not change fields other than spec.containers[*].image,`spec.initContainers[*].image`,`spec.activeDeadlineSeconds`,`spec.tolerations` (only additions to existing tolerations),`spec.terminationGracePeriodSeconds` (allow it to be set to 1 if it was previously negative)   core.PodSpec{    Volumes: {{Name: "files", VolumeSource: {PersistentVolumeClaim: &{ClaimName: "api-tester-1231-files"}}}, {Name: "secret-datasource", VolumeSource: {Secret: &{SecretName: "api-tester-1231-postgresql", DefaultMode: &420}}}, {Name: "kube-api-access-zcbck", VolumeSource: {Projected: &{Sources: {{ServiceAccountToken: &{ExpirationSeconds: 3607, Path: "token"}}, {ConfigMap: &{LocalObjectReference: {Name: "kube-root-ca.crt"}, Items: {{Key: "ca.crt", Path: "ca.crt"}}}}, {DownwardAPI: &{Items: {{Path: "namespace", FieldRef: &{APIVersion: "v1", FieldPath: "metadata.namespace"}}}}}}, DefaultMode: &420}}}},    InitContainers: nil,    Containers: []core.Container{    {    ... // 12 identical fields    LivenessProbe: &{ProbeHandler: {HTTPGet: &{Path: "/liveness", Port: {IntVal: 8080}, Scheme: "HTTP"}}, TimeoutSeconds: 1, PeriodSeconds: 10, SuccessThreshold: 1, ...},    ReadinessProbe: &{ProbeHandler: {HTTPGet: &{Path: "/readiness", Port: {IntVal: 8080}, Scheme: "HTTP"}}, TimeoutSeconds: 1, PeriodSeconds: 10, SuccessThreshold: 1, ...},    StartupProbe: &core.Probe{    ... // 3 identical fields    PeriodSeconds: 5,    SuccessThreshold: 1, -  FailureThreshold: 5, +  FailureThreshold: 2,    TerminationGracePeriodSeconds: nil,    },    Lifecycle: nil,    TerminationMessagePath: "/dev/termination-log",    ... // 6 identical fields    },    },    EphemeralContainers: nil,    RestartPolicy: "Always",    ... // 28 identical fields   }

 

failureThreshold를 수정할때마다 이러한 오류가 발생합니다.


1

피이백

아 혹시 쿠버네티스대시보드 에서

파드가아닌 디플로이먼트에서 수정해야하는 걸까요?

0

일프로

아..[쿠버네티스 대시보드 -> 파드 -> 편집 -> startupProbe] 이 내용을 보니 원인을 알겠네요.

제가 다른 일을 하면서 답변을 드리다 보니, 질문을 급하게 보고 좀 즉흥적으로 답변을 드린 것 같습니다. 그런 부분은 사과드리고요. 일단 Pod를 수정하시면 안됩니다. ^^ Deployment를 수정하셔야 되요.

그리고 답변 드린 내용을 정정하자면 startupProbe의 successThreshold 수치도 2로 변경 할 수 있습니다. 두 번 성공해야 잘 기동된 걸로 간주한다는 셈인거죠.

 

 

1

피이백

startupProbe가 한번이라도 응답이 오면 성공으로 간주.

즉, startupProbe의 failureThreshold를 successThreshold보다 짧은 기간(successThreshold가 1이니까 더 짧게)을 설정하는게 맞을까요?

그런데 저는 쿠버네티스 대시보드 -> 파드 -> 편집 -> startupProbe를 수정하면 저런 에러가 뜨더라구요.

1

일프로

Threshold는 기간이 아닌 횟수입니다.

그리고 startupProbe는 successThreshold이 1로 고정이기 때문에 한번이라도 성공 응답이 오면 App이 정상적으로 기동 됐다고 판단하는 거고요. 이 수치는 변경할 수가 없어요.

반면에 Application이 무거워서 기동 시간이 오래 걸린다면, failureThreshold의 수치가 작을 때 App이 무한 재기동 될 수 있기 때문에, failureThreshold를 늘려야 됩니다.

그래서 결국 startupProbe의 successThreshold이 1은 변경하면 안되는 수치가 되요.

만약 강의를 들으셨는데 아직 개념이 헷갈리시면, 한번 더 강의를 들어보시길 권해드릴께요.

아, 그리고 응용과제 1번은 startupProbe에서 failureThreshold의 수치만 낮추면 됩니다 :)

0

일프로

startupProbe은 한번만 성공하면 끝나는 속성입니다. 그렇기 때문에 success는 1 말고는 다른 값이 올 수가 없어요. 반면에 failure는 1로 변경할 수 있고요.

해당 속성을 변경하는 목적에 대해서 좀 더 상세하게 설명 가능할까요? "startupProbe의 실패기간을 성공기간보다 짧게 가져가기위해서"라는 게 어떤 의미인지 잘 이해가 안되서요.

젠킨스버전과 플러그인설치

1

35

2

강의자료 원본 애니메이션처리가 되어 있을까요?

1

87

1

get pods 했을 때 connection refused가 뜹니다.

1

92

3

베이그란트 플러그인 설치 실패

1

86

1

실습겸 미니pc사보려는데 이정도면 괜찮을까요?

0

95

2

Image updater 1.0 이후 CRD 기반 변경 시 적용 방법 공유합니다.

1

85

1

기본 values 파일과 service name에 대한 질문이 있습니다.

0

73

2

Sprint 2 강의에서 yaml 파일들 경로에 대해 궁금한게 있어요.

1

64

2

Selector의 속성에 대해 질문 드립니다.

1

60

1

인스턴스 스펙

1

70

2

Container 기술 관련해서 질문드립니다.

1

84

3

Jenkins 빌드 UI 설정 관련 질문드립니다.

1

86

3

Jenkins 빌드 진행 UI 설정

0

70

1

cicd 서버 올린 후 기존 마스터 노드 기동 시 네트워크 에러

1

80

2

HPA - Auto Scaling 실습 관련 에러 해결 공유.

1

66

1

Loki-Stack 실습 관련 질문

1

74

2

Self-Healing 테스트 중 문의사항

1

73

2

영상 내용과 강의 자료가 상이해서 강의 듣기가 짜증납니다.

0

108

2

젠킨스 구축 9단계 오류

1

89

3

실습환경 네트워크 끊김 및 느린 속도 관련 질문

1

86

2

온프레미스 환경에 쿠버네티스도입

1

102

1

SealedSecret 관련 궁금증.

1

53

1

vagrant up 사용 시 The SSH connection was unexpectedly closed by the remote end

1

90

2

젠킨스 배포 질문

1

60

2