쿠버네티스 - 컨피그맵
2023. 1. 15. 19:05
개발자: 지식 정리/쿠버네티스
컨피그맵 배경 개별 Pod-definiton file에서 env 키로 환경변수를 관리할 수 있다. kind: Pod spec: containers: - image: luksa/fortune:env env: - name: INTERVAL value: "30" name: html-generator ... 하지만 Pod-definiton 파일이 많아질 경우, 환경변수 데이터 관리가 복잡해질 수 있다. 컨피그맵은 이를 중앙에서 손쉽게 관리할 수 있도록 해준다. Pod를 생성할 때, config map을 통해 환경변수를 주입해줄 수 있다. 컨피그맵 소개 apiVersion: v1 kind: Pod metadata: name: fortune-env-from-configmap spec: containers: - im..
쿠버네티스 클러스터 구성 요소 및 동작 이해 (4) - Kubelet
2023. 1. 15. 19:04
개발자: 지식 정리/쿠버네티스
Kubelet 작업 Kubelet은 워커 노드에서 실행하는 모든 것을 담당한다. Kubelet은 실행 중인 노드를 노드 리소스로 만들어서 API 서버에 등록한다. 실행 중인 노드를 모니터링하고 상태를 API 서버에 보고한다. API 서버를 지속적으로 모니터링해서 해당 노드에 파드가 스케줄링되면, 파드의 컨테이너를 실행한다. 설정된 컨테이너 런타임(도커, rkt 등) 에 지정된 컨테이너 이미지로 컨테이너를 실행함으로써 이 작업을 수행한다. Kubelet은 실행 중인 컨테이너를 계속 모니터링 하면서 상태, 이벤트, 리소스 사용량을 API 서버에 보고한다. 컨테이너가 제대로 실행되지 못하면, 컨테이너를 다시 시작한다. 컨테이너가 제대로 실행되지 못하면, 컨테이너를 다시 시작한다. API 서버에서 파드가 삭제되..
쿠버네티스 클러스터 구성 요소 및 동작 이해 (3) - 스케줄러, 컨트롤러
2023. 1. 15. 19:04
개발자: 지식 정리/쿠버네티스
스케줄러 스케줄러는 API 서버의 감시 메커니즘을 통해 새로 생성될 파드를 기다리고 있다가, 할당된 노드가 없는 새로운 Pod를 노드에 할당하는 일만 한다. 스케줄러는 선택된 노드에 파드를 실행하도록 지시하지 않는다. 단지 스케줄러는 API 서버로 파드 정의를 갱신한다.(어떤 노드에 할당될지) -> API 서버는 (감시 메커니즘에 의해) kubelet에 파드가 스케줄링된 것을 통보한다. -> 대상 노드의 Kubelet은 파드가 해당 노드에 스케줄링된 것을 확인하자마자 파드의 컨테이너를 생성하고 실행한다. 컨트롤러 API 서버는 리소스를 etcd에 저장하고 변경 사항을 클라이언트에게 통보하는 것 외에 다른 일을 하지 않는다. 스케줄러는 파드를 노드에 할당만 한다. 그러므로 API 서버로 배포된 리소스에 지..
쿠버네티스 클러스터 구성 요소 및 동작 이해 (2) - API 서버
2023. 1. 15. 19:04
개발자: 지식 정리/쿠버네티스
동작 과정 쿠버네티스 API 서버는 클러스터 상태를 조회하고 변경하기 위해 RESTful API로 CRUD 인터페이스를 제공한다. 쿠버네티스 상태는 etcd 안에 저장된다. API 서버의 클라이언트 중 하나는 kubectl 명령줄 도구이다. 예를 들어 yaml 파일에서 리소스를 생성할 때 kubectl은 파일의 내용을 API에 HTTP POST 요청으로 전달한다. api 서버 옵션 조회 kubeadm 툴을 이용했을 시, kube-apiserver 는 master 노드 kube-system 네임스페이스에서 Pod 로 존재함을 확인할 수 있다. kubectl get pods -n kube-system cat /etc/kubernetes/manifests/kube-apiserver.yaml kubeadm 툴을..
쿠버네티스 클러스터 구성 요소 및 동작 이해 - (1) etcd
2023. 1. 15. 17:55
개발자: 지식 정리/쿠버네티스
쿠버네티스 클러스터 구성요소(component) 이전 글 쿠버네티스 etcd 쿠버네티스는는 기본 데이터 저장소로 etcd를 채택했다. etcd 는 분산 시스템에서 사용할 수 있는 분산형 키-값 (key-value) 저장소로, 공식 문서는 다음과 같다: https://etcd.io/docs/ 쿠버네티스에서 etcd는 클러스터의 상태를 저장하고 있다. 클러스터에 필요한 설정 정보와, 포드와 서비스 같은 각 리소스들의 명세와 상태 정보 등을 저장한다. 모든 클러스터 데이터를 담는 쿠버네티스 뒷단의 저장소로 사용되는 일관성·고가용성 키-값 저장소이다. 카카오 테크에서 정리한 etcd 참고 etcd 블로그 글 쿠버네티스가 etcd를 사용하는 방법 쿠버네티스가 클러스터 상태와 메타데이터를 저장하는 유일한 장소가 e..
[영어회화 100일의 기적] 온라인 스터디 8~12일차
2023. 1. 9. 01:05
자기계발/영어회화
유투브 링크 원래 아침에 일어나서 잠 깨는 용도로 봤었는데, 그동안 잘 안되었다. 하지만 포기하지 말고 끝까지 해봐야겠다. 지하철 탈 때, 버스 탈 때 한 번씩 보자. 8일차 A : 이것 좀 도와줄래? Can you give me a hand with this? B : 그러고 싶은데 너무 바빠. I'd love to, but I'm too busy. A : 넌 왜 그렇게 핑계를 잘 대니? How come you're good at making excuses? B : 나한테 화풀이하지 마. Don't take it out on me. A : '알았어.'라고 대답만 하면 되잖아. All you have to do is just say yes. B : 네 능력을 키우려면 스스로 해야 해. You hav..
⚡️ Blocking, Non-blocking, Sync, Async 아주 쉽게 정리
2022. 12. 26. 14:12
개발자: 지식 정리/아키텍처&설계
Blocking/Non-blocking Blocking 다른 서비스에 내용을 요청하게 되면, 그 요청이 끝날 때까지 나는 아무것도 하지 못하고 기다리는 상태. 다른 서비스의 작업이 끝나야 나는 내 일을 할 수 있다. 예시) 1. 프린터에게 내가 쓴 문서를 인쇄하라고 요청함. 2. 프린터가 인쇄할동안 나는 아무것도 하지 않고 기다려야 함. 인쇄한 문서를 있어야 내 할 일을 할 수 있기 때문에. 3. 인쇄가 끝나면 난 내 할 일을 할 수 있음. Non-Blocking Non-blocking 으로 처리할 경우, 다른 서비스에 요청한 작업이 지금 어떻게 진행되고 있던 간에 상관없이 내 할 일을 할 수 있다. 예시) 1. 프린터에게 내가 쓴 문서를 인쇄하라고 요청함. 2. 프린터가 인쇄할동안 나는 내 다른 할 일..
[영어회화 100일의 기적] 온라인 스터디 3~7일차
2022. 12. 25. 00:13
자기계발/영어회화
유투브 링크 아침에 일어나서 잠 깨는 용도로 한 번씩 보고 있다. 3일차 A: 이번 주 토요일 날씨가 어떨 것 같아? A: What's the weather gonna be like this Saturday? B: 일기예보에서 비가 올 거라고 했어. B: The weather reporter said it was gonna be raining. A: 여행을 취소해야 할 것 같은 느낌이 들어. A: I get the feeling that we should call off our trip. B: 이런! 깜박 잊고 있었네. B: Boy! It totally slipped my mind. A: 설마 나 몰래 혼자 가려고 했던 건 아니겠지. A: Don't tell me you were g..
[영어회화 100일의 기적] 온라인 스터디 1~2일차
2022. 12. 13. 11:18
자기계발/영어회화
유투브 링크 누구와 일단 나 혼자서 언제 아침에 알람 듣고 일어난 직후 얼마나 하루에 한 영상씩 어떻게 한 영상씩 보면서 듣고, 따라 읽기 이유 영어로 일상 회화 가능을 위해, 영어 실력 상승을 위해, 내 미래(커리어 혹은 해외여행 등 영어가 필요할 때)를 위해 목표 100일차까지 다 빠짐없이 보기 기대하는 나 편하게 영어로 일상 회화 가능. 1일차 A: 라이언! 이게 대체 누구야? B: 반가워. 세상 참 좁구나. A: 오랜만이야. 어떻게 지냈어? B: 잘 지내고 있어. 넌 하나도 안 변했구나. A: 대화 즐거웠어. 와이프한테 안부 전해 줘. B: 나중에 봐. 내가 연락할게. A: Ryan! Look who's here! B: Good to see you. What a small world. A:..
네트워크 인터페이스란? (ifconfig 명령어)
2022. 11. 20. 20:41
개발자: 지식 정리/리눅스
네트워크 인터페이스// 이름은 어디서 많이 들어봤는데 정확히 잘 모릅니다. 얼마 전에 회사에서 운영하는 서버에서 서버 인터페이스가 내려가는 일이 일어났었습니다. 관련해서 전문 부서에서 해결해주셨는데요, ifconfig 명령어 찾아보며 알아보긴 했지만, 인터페이스가 뭔지 개념도 잘 몰라 벙쪄있던 기억이 있습니다. 이 기회에 네트워크 인터페이스, ifconfig 명령어 관련해 관련 지식을 잘 정리해놓으려고 합니다. 네트워크 인터페이스란? 네트워크 인터페이스는 컴퓨터를 네트워크에 연결해주는 역할을 합니다. os 커널 소프트웨어 side에서 일어나는 네트워킹을 실제 하드웨어 네트워크 장치와 이어준다고 합니다. (컴퓨터가 네트워크 장치와 연결되는 지점) 컴퓨터가 네트워크에 연결하여 통신하기 위해 사용되는 하드웨어..