System Engineering/Kubernetes

System Engineering/Kubernetes

5. K8s Lifecycle / Configmap

1. Probe - 컨테이너에서 kubelet에 의해 주기적으로 수행되는 진단 - kubelet은 컨테이너에 의해 구현된 핸들러를 호출 - Probe Type 1) ExecAction : 컨테이너 내에 지정된 명령어(Shell Command)를 실행하며, 명령어 Status Code가 0으로 종료되면 진단 성공으로 간주 exec-liveness.yaml docs/tasks/configure-pod-container apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-exec spec: containers: - name: liveness image: k8s.gcr.io/busybox agrs: - /bin/sh - -c - to..

System Engineering/Kubernetes

4. K8s Service / Ingress

1. Service - Pod에 Access할 수 있는 고정 IP를 할당 - 할당한 IP와 Port에 따라 트래픽 라우팅 - selector를 기준으로 Pod에 L4 Load Balancing 기능 제공 - 고유 DNS Name 지정 가능(?) * {service name}.{namespace name}.svc.cluster.local의 형식으로 DNS 등록 kind: Service apiVersion: v1 metadata: name: my-service spec: selector: app: MyApp ports: - protocol: TCP port: 80 targetPort: 9376

System Engineering/Kubernetes

3. K8s Controller

1. Cotroller - K8s에서 ReplicationController(RC), ReplicaSet(RS), DaemonSet, Jon, StatuefulSet, Deployment 등이 콘트롤러가 있다 2. ReplicationContoller - Label을 기준으로 Replicas에 설정값만큼 구동되는 Pod의 개수를 보장 - 구동중인 Pod가 죽으면 Replias의 개수가 맞게 Auto Deploy하여 개수 유지 - Equality Based Label * Container의 Image가 다르더라도 selector가 일치하는 Pod가 이미 구동중이라면, 새로 Deploy되지 않음. replication.yaml docs/concepts/workloads/controllers apiVersio..

System Engineering/Kubernetes

2. Kubernetes Architecture

1. Kubernetes K8s는 컨테이너의 집합(Pod)을 효율적으로 배포•관리하기 위한 오픈소스 Ochestrator이다. Master : K8s의 전체적인 Control Worker(Node) : Container가 배포되어 구동되는 Node API Server : Node, Web Console, Cli 명령어 등과 통신 Etcd : K8s의 Configuration 등, Stateful 정보를 저장하기 위한 Key-Value 방식의 분산형 DB Scheduler : 컨테이너를 어느 노드에 배포할 것인지 결정 C-M(Controller Managers) : 구동중인 컨테이너가 죽으면 Restart 시키는 등의 관리 C-C-M(Cloud Controller Managers) Container Run..

Hopulence
'System Engineering/Kubernetes' 카테고리의 글 목록 (3 Page)