System Engineering/Kubernetes

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..

System Engineering/Kubernetes

1. 가상화와 Container의 차이

1. 가상화 (Virtualization) 기존의 Bare-metal에서 단일 서버의 Resource 사용 효율 향상과 비용 절감, HA(High Availablity)등을 위해 Hypervisor 기반 가상화가 등장하였다. 그러나 Guest의 Image에 따라 Provisioning과 Booting에 수분의 시간이 소요되었고, 각 VM마다 OS를 구동하기 위한 하드웨어 리소스를 필요로 하였다. 또한, Guest에서 Hypervisor 통하여 H/W 리소스에 접근해야하기 때문에 Bare-metal에 비해 느릴 수 밖에 없었다. 2. Docker와 Container - Mircoservice Docker는 Linux cgroups과 namespace, chroot에서 발전한 컨테이너를 통해 Host에서 A..

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