게시글
질문&답변
2024.04.18
application 응용과제 1번
startupProbe은 한번만 성공하면 끝나는 속성입니다. 그렇기 때문에 success는 1 말고는 다른 값이 올 수가 없어요. 반면에 failure는 1로 변경할 수 있고요. 해당 속성을 변경하는 목적에 대해서 좀 더 상세하게 설명 가능할까요? "startupProbe의 실패기간을 성공기간보다 짧게 가져가기위해서"라는 게 어떤 의미인지 잘 이해가 안되서요.
- 1
- 3
- 51
질문&답변
2024.04.16
쿠버네티스는 서버에서 데몬 서비스처럼 동작하는지 궁금합니다
네 맞습니다. 쿠버네티스 자체 컴포넌트들은 vm재기동시 자동으로 기동되도록 되어 있어요. 일반적으로 pod는 deployment와 같은 컨트롤러에 의해서 기동이 되는데, replicas가 2로 되어 있기 때문에 쿠버네티스가 항상 2개의 pod가 정상적으로 running이 되도록 유지시켜 주는데요. 근데 vm을 재기동 했을 때는 좀 다른 절차로 pod를 재시작시켜요. 정확한 절차는 아래와 같습니다. 데몬 서비스: 쿠버네티스는 kubelet, kube-proxy와 같은 데몬 서비스들이 각 노드(VM)에 설치되어 있어, 이 서비스들이 자동으로 시작되게 됩니다. 이 데몬들은 쿠버네티스 마스터와 통신하여 노드의 상태를 마스터에 보고하고, 마스터로부터 명령을 받습니다. 자동 복구: 쿠버네티스의 컨트롤 플레인(주로 마스터 서버에서 동작)은 노드와 파드의 상태를 지속적으로 모니터링합니다. VM이 재기동하더라도, kubelet이 자동으로 재시작되며, 이후 쿠버네티스 API 서버와 통신을 재개합니다. 파드 재스케줄링: kubelet은 마스터로부터 해당 노드에 할당된 파드들을 다시 받아 실행합니다. 이 과정에서 파드들은 Running 상태로 돌아가게 됩니다. 쿠버네티스는 파드의 상태를 Desired State로 유지하려고 시도하기 때문에, 파드 스펙에 정의된 상태로 자동으로 복구 시도를 합니다. 현재 단계에서 이 내용을 알기에는 좀 복잡한 내용이긴 한데, 대략적인 느낌을 이해해 주시면 됩니다 :)
- 1
- 1
- 37
질문&답변
2024.04.16
window 환경 vagrant up 에러 문의드립니다
네, 맞습니다 🙂 잘 해결하셨네요!
- 1
- 2
- 63
질문&답변
2024.04.15
모니터링 설치 - Loki-Stack
안녕하세요. 혹시나 해서 저도 지금 다시 설치해봤는데, 잘 됐습니다. 올려주신 설치 로그를 봤을 때 문제가 없어 보이는데, URL 입력한 화면 캡쳐 다시 올려주시겠어요? 입력한 URL이 보이도록요. 그리고 복사해서 붙여넣기 하다보면 입력한 내용에 띄어쓰기가 있을 수도 있어요.
- 1
- 3
- 50
질문&답변
2024.04.14
k8s naming convention이 궁금합니다.
안녕하세요. 쿠버네티스에서 네이밍과 레이블의 이름들을 잘 만드는 건 중요합니다. 하지만 자바처럼 공식적이고 명료한 네이밍 컨벤션은 없기 때문에 인터넷에서 딱 마음에 드는 내용은 찾기 힘들꺼예요. 그래서 먼저 쿠버네티스 공식 문서로 리소스의 이름과 레이블/셀렉터의 이름 규칙에 대해서 대략적으로 알아야 하고 쿠버네티스 공식 문서 이름 생성 규칙 : https://kubernetes.io/ko/docs/concepts/overview/working-with-objects/names/ 레이블과 셀렉터 규칙 : https://kubernetes.io/ko/docs/concepts/overview/working-with-objects/labels/ 다른 공식 오픈소스들에서는 어떻게 네이밍을 했는지 살펴봐야 합니다. 결국 마이크로 서비스 상에서의 트리구조인 기능들을 잘 표현할 수 있는 이름을 작명하는 게 가장 중요하고요. 결국 이름 자체는 소문자와 숫자 그리고 하이픈(-)을 사용해서 만듭니다. 제 다른 강의에서 Promethues를 가지고 정리한 내용 (사진) 그리고 현업에서 더 다양한 방법으로 만들기 때문에 말씀드리면 더 혼란이 가중될 꺼예요. 예를들어 frontend-service , database-deployment , redis-pod 이런식으로 리소스 유형을 포함 시켜서 만들기도 하고요. 그리고 dev-frontend , prod-database 같이 각 환경에 따라서 접두사를 추가하기도 합니다. 그리고 api-server-v2 , frontend-v1.3 이렇게 리소스 버전을 붙이기도 하고요. 또, 그리고 us-east-db-replica , eu-cache 등 식으로 클라우드 환경에서는 지리적인 영역을 접두사에 포함하기도 합니다. 또, 그리고 payment-system-queue , payment-system-db 처럼 각 시스템 별로 접두사를 주기도 해요. 그래서 이렇게 이름(라벨/셀렉터)를 통해서 그 시스템이 어떤 건지 명확하게 알 수 있게 만드는 게 중요하고요. 명령 규칙만 보자면 쿠버네티스 공식 문서에 아래 내용이 전부입니다. 253자를 넘지 말아야 한다. 소문자와 영숫자 - 또는 . 만 포함한다. 영숫자로 시작한다. 영숫자로 끝난다. 그리고 위 규칙은 Service의 경우 기능적으로 이 리소스 이름 자체가 DNS 이름으로도 쓰이기 때문에, 결국 우리가 인터넷에서 도메인으로 본 이름들이 쓰인다고 볼 수 있어요. 좀 느낌이 오셨나요?
- 1
- 1
- 274
질문&답변
2024.04.13
m2에서 node1과 node2에서 yum 설치가 되지 않습니다..
DNS servers는 기존대로 설정하지 마시고, 게이트웨이만 192.168.56.1로 변경해 주세요. 자료실은 업데이트 해놓았습니다. 실습 환경 구성에 불편을 드려 정말 죄송하고요. 10번까지 가지 마시고 2~3번 안되면 편하게 질문 주세요.
- 1
- 3
- 84
질문&답변
2024.04.13
맥 m1 node1 서버 설정 오류
안녕하세요. 늦었지만 원인이 확인되어 말씀드립니다. 워커노드 설치 가이드에 게이트웨이 주소가 잘못 적혀 있었습니다. 마스터는 192.168.56.1로 해놓고, 워커노드 설치에는 192.168.64.1로 되어 있었네요. 최근 가이드를 수정하면서 누락된 것 같아요. 실습 환경 구성에 불편을 드려 정말 죄송합니다.
- 1
- 2
- 77
질문&답변
2024.04.09
Pod 생성 에러 원인 알수 있을까요?
혹시 yaml 내용을 직접 타이핑 하셨을까요? 자료실에 아래 링크 내용을 붙여 넣기 하시면 되고요. https://kubetm.github.io/k8s/03-beginner-basic-resource/pod/#1-1-pod 해당 에러는 image 속성에 대한 yaml 포맷이 틀려서 난 에러입니다.
- 1
- 1
- 49
질문&답변
2024.04.08
대쉬보드 관련 질문드립니다.
잘 하셨습니다. 근데 브릿지 모드라면 공유기 IP가 192.168로 시작하나요? 그리고 대시보드는 아래와 같이 nodePort로 접근해야 합니다. https://192.168.56.30:30000/#/login 설치 가이드 주소 : https://kubetm.github.io/k8s/02-beginner/cluster-install-case6/#6-%EB%8C%80%EC%8B%9C%EB%B3%B4%EB%93%9C-%EC%A0%91%EA%B7%BC 제 강의에서 어떤 버전의 설치 가이드를 보고 계신지?
- 2
- 7
- 164
질문&답변
2024.04.07
jenkins 설치 후, 플러그인 설치 시 오류
redhat에서 제공해주는 repo가 좀 이상하네요. 정확히 알 수는 없지만, 현재 버전에 대해서 의존성 경로들이 잘못 되어 있는 것 같아요. 최근 까지 문제 없던 걸로 보아 이번 주에 무슨 작업이 있었던 것 같습니다. 그래서 문제없는 최신 버전을 확인했고요. 현재 서버가 좀 느리긴 하지만 잘 설치되고 있으니, Vagrantfile을 다시 받아서 재 설치를 해보시기 바랍니다. 변경 사항은 java-11 버전 설치를 없앴고, Jenkins Version이 올라갔습니다.
- 1
- 4
- 115