본문 바로가기

분류 전체보기52

Chapter 15. Automatic scaling of pods and cluster nodes 주요 내용 HPA 리소스 이해하고 사용하기 클러스터 노드의 automatic scaling 수동으로 scaling (수평) 을 하는 경우 ReplicationController, ReplicaSet, Deployment 등에서 replicas field 를 고쳐줘야 했다. 이번 장에서는 pod 나 노드의 상태에 따라 자동으로 scaling 하는 방법을 알아본다. 15.1 Horizontal pod autoscaling Horizontal pod autoscaling 은 Horizontal controller 가 pod 의 replica 수를 알아서 조절하는 것이다. 이 controller 는 HorizontalPodAutoscaler(HPA) 리소스를 생성하면 활성화 되며, 주기적으로 pod 의 metr.. 2021. 7. 18.
Chapter 14. Managing pods' computational resources 주요 내용 Pod requests/limits 설정, 동작 방식 및 scheduling 에 미치는 영향 Pod requests/limits 과 QoS class LimitRange resource, ResourceQuota object 각 pod 가 어느 정도의 자원(CPU/메모리)을 소모할지 파악하고, 이를 적절히 제한하는 것은 pod 정의에서 굉장히 중요한 부분이다. 14.1 Requesting resources for a pod's containers Pod 를 생성할 때 requests 와 limits 를 정할 수 있다. requests: 컨테이너가 필요로 하는 CPU와 메모리 양을 설정 limits: 컨테이너가 최대로 사용할 수 있는 CPU와 메모리를 설정 이는 각 컨테이너 별로 설정할 수 있으.. 2021. 7. 11.
2021 June 이 글을 쓴다는 것은 6월이 지났다는 것이고, 6월이 지났다는 것은 2021년이 벌써 절반 지났음을 의미한다. 우선 세웠던 이번 달 목표들의 달성률을 확인해야 한다. 6월 목표 🖥️ Computer Science: 전공 챙기기 Kubernetes in Action 스터디로 할 때에는 진짜 매주 한 챕터씩 읽었는데, 스터디가 마무리되고 다른 주제 (Golang) 로 넘어가면서 강제성이 사라지니까 안 보게 되었다. 그래도 1달 동안 3 챕터 정도는 보겠지 했는데, 2 챕터밖에 못 봤다 ㅋㅋ 업무에 계속 사용할 예정이니 계속 보긴 할 예정이다. Go 언어 스터디 Kubernetes 를 열심히 공부하지 못했던 주원인. 원래 Kubernetes 를 매주 했는데 이번 달에는 매주 Golang 을 보게 되었다. 얘는.. 2021. 7. 5.
Chapter 13. Securing cluster nodes and the network 주요 내용 노드의 default Linux namespace 사용하기 컨테이너/Pod 단위로 권한 및 네트워크를 제어하여 보안 수준 높이기 컨테이너는 독립적인 환경을 제공한다고 하긴 했지만, 공격자가 API server 에 접근하게 되면 컨테이너에 무엇이든 집어넣고 악의적인 코드를 실행할 수 있고, 이는 실행 중인 다른 컨테이너에 영향을 줄 수도 있다! 13.1 Using the host node's namespaces in a pod 컨테이너는 별도의 linux namespace 에서 실행된다고 했었다. 13.1.1 Using the node's network namespace in a pod 시스템과 관련된 작업 (노드 레벨의 자원을 확인/수정하는 등) 을 하는 pod 의 경우 노드의 default .. 2021. 6. 29.
Chapter 12. Securing the Kubernetes API server 주요 내용 Authentication 과 ServiceAccount 에 대한 이해 RBAC plugin, Role/RoleBinding, ClusterRole/ClusterRoleBinding 에 대한 이해 12.1 Understanding authentication API server 가 요청을 받게 되면, authentication plugin 을 거치며 요청을 보낸 주체가 누구인지 분석한다. Plugin 을 거치게 되면 username, user ID, 클라이언트가 속하는 group 등의 정보가 API server 에게 전달된다. 12.1.1 Users and groups Understanding users Kubernetes 에서는 API server 에 연결하는 주체를 2가지로 분류한다. 사람 .. 2021. 6. 6.
Chapter 11. Understanding Kubernetes internals 주요 내용 Kubernetes 클러스터를 구성하는 컴포넌트의 기능과 역할에 대한 이해 Pod 생성시 일어나는 일에 대한 이해 Kubernetes 내부 네트워크와 Service 의 동작 방식 이해 Kubernetes 리소스들이 어떻게 구현되었는지 살펴보자! 11.1 Understanding the architecture Kubernetes 클러스터는 다음과 같이 구성되어 있음을 1장에서 배웠다! Kubernetes Control Plane: 클러스터의 상태를 저장하고 관리한다 etcd distributed persistent storage API server Scheduler Controller Manager (Worker) Node(s): 실제로 컨테이너를 동작하게 한다 Kubelet Kubernetes.. 2021. 5. 30.
2021 April ~ May 거짓말같이 4~5월이 지나가 버렸다. 벌써 6월이라는 게 믿기지 않을 정도다. 얼마 전에 2021년이 40%가 지나갔다는 소식을 들었는데, 정말 충격적이다. 이번에도 회고가 2달치가 밀려버렸는데, 2~3월 때와는 달리 매일 기록을 남겨두지 않아서 무슨 일이 있었는지 상세히 기억이 나지는 않는다. 그저 회사에서 열심히 일을 했고, 피아노를 치러 다녔고, 개인적으로 공부도 좀 한 게 전부인 것처럼 느껴진다. 근데 피아노를 제외하고 나면 회사 일 하는 것과 공부하는 것은 패시브이기 때문에... Studies 따로 기록을 남긴 것은 아니지만 일단 무엇을 했는지 궁금하면 얼추 Github 커밋 내역을 보면 히스토리가 나온다. Kubernetes 책으로 Kubernetes 에 대해서 열심히 공부하고 있다. 4~5월.. 2021. 5. 30.
Chopin: Scherzo No.2 in B♭ minor / 연주회 후기 등록해서 다니고 있는 피아노 연습실에서 얼마 전에 소규모로 연주회를 하게 되었다. 연주를 하겠다고 결정한 순간부터 선곡하고, 연습하고, 또 연주를 마친 그 순간까지의 모든 과정이 쉽게 찾아오지 않을 기회이자 가치 있는 경험이라 생각해 미처 하지 못했던 이야기들을 전부 포함하여 후기를 남기려고 한다. Behind Story 5월에 연주회를 하겠다는 이야기를 아마 2~3월쯤에 들었던 것 같다. 그때는 사실 심각하게 생각하지 않았는데, 열심히 살다 보니 어느새 5월이 되어버렸고, 연주회에 대한 이야기가 다시 나오기 시작했다. 그리고 5월 12일, 연습실 단톡 방에 연주회를 할 예정이라는 공지가 올라왔다. 공지를 보고 이걸 해야 하나 말아야 하나 무척 갈등했지만, 이것도 다 경험이겠지 싶어서 한 번 해보는 게 .. 2021. 5. 23.
Chapter 10. StatefulSets: deploying replicated stateful applications 주요 내용 StatefulSet 에 대한 이해 Stateful application 배포하기 DNS SRV record 를 이용한 peer discovery 10.1 Replicating stateful pods 도입 질문: 각 pod replica 가 하나씩 PV 를 갖게 할 수는 없을까? ReplicaSet 의 pod template 에서 PVC (PersistentVolumeClaim) 를 사용하게 되면, 모든 replica 가 하나의 PV (PersistentVolume) 을 참조하게 된다. 그래서 하나의 ReplicaSet 으로는 distributed data store 를 만들 수 없다. 지금까지 살펴본 API object 만으로는 조금 복잡하다. 10.1.1 Running multiple r.. 2021. 5. 17.