일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 동적 프로그래밍
- mysql #numa #swap #memory
- minimum path sum
- 독후감
- 알고리즘
- 리스트의 리스트
- LongestPalindromicSubstring
- No Rules Rules
- 삼성인 아마조니언 되다
- Dynamic Programmin
- 삼성역량테스트
- 블린이
- 기술적 채무
- leetcode
- 트리
- BFS
- 아마조니언
- list of list
- 나는 아마존에서 미래를 다녔다
- 프로그래머스
- Envoy
- technical debt
- 와썹맨
- 파이썬
- Python
- 김태강
- 규칙없음
- 그거봤어?
- 리트코드
- Unique Paths
- Today
- Total
목록도커와 쿠버네티스 (5)
개발자가 되고 싶은 준개발자

1. Vagrant로 VM 준비 VirtualBox를 설치. VirtualBox: 오라클이 제공하는 다기능 하이퍼바이저(가상화 소프트웨어)로 많은 호스트 OS와 게스트 OS를 지원. git clone https://github.com/kodekloudhub/certified-kubernetes-administrator-course.git cd certified-kubernetes-administrator-course VirtualBox가 설치되면 Vagrant를 이용하여 가상 머신을 조작. 레포지토리(https://github.com/kodekloudhub/certified-kubernetes-administrator-course)에 Vagrantfile이 이미 정의되어 있음. Vagrant: 버추얼박스..

노드 보수 소프트웨어 업데이트나 보안 패치를 적용할 때 노드를 클러스터에서 빼야 할 일이 생김. 노드를 보수(shutdown)하면 그 위에 돌아가는 pod들은 어떻게 될까? 노드를 클러스터에서 제거하지 않는 이상 쿠버네티스가 알아서 서버가 지정한 시간(시간은 eviction timeout)보다 오래 내려가 있으면 그 위의 pod를 죽이고, 다른 노드 위에 새로 띄움. kube-controller-manager --pod-eviction-timout=5m0s (만약에 eviction timeout으로 설정한 시간 이후에 다시 노드가 살아서 올라온다 해도 그 위에 스케줄링되었던 pod는 이미 다른 노드로 옮겨간 상황이므로 당장 돌아가는 pod는 없음.) 노드를 클러스터에서 뺀 후에 보수할 수 없을까? 노드 ..

* 실습에는 쿠버네티스 기능을 가상으로 테스트해볼 수 있는 환경인 katacoda(www.katacoda.com/courses/kubernetes/playground)를 이용하였음 * 실습 코드는 깃헙으로부터. git clone https://github.com/Jpub/15_DandK cd step15 클러스터 가상화 네임스페이스를 사용하여 k8s 클러스터를 논리적으로 분할하는 기능 오토스케일 수평 파드 오토스케일러 (Horizontal Pod Autoscaler, HPA) 파드 수를 부하에 맞게 자동으로 조절하는 기능 CPU의 평균 사용률과 목표 사용률이 일치하도록 레플리카 수를 조절 스케일 업은 이전 동작에서 3분 뒤에 발동. 스케일 다운은 5분 뒤에 발동. 클러스터 오토스케일러 (Cluster A..

구조 사용자가 UI나 kubectl(커맨드라인 인터페이스)을 통해 명령을 전달하면 마스터가 노드들의 동작을 조정 용어 쿠버네티스 API 다양한 언어(파이썬, Go...)로 API 라이브러리를 제공 kubectl이 마스터 노드 상의 kube-apiserver에게 YAML 또는 JSON 형식으로 목표 상태를 전송하면 이를 토대로 오브젝트 생성, 변경, 제거를 진행 오브젝트 쿠버네티스 클러스터 내부의 엔티티 메타데이터에 기술된 이름에 의해 식별됨 같은 종류의 오브젝트의 이름은 하나의 네임스페이스에서 유일해야 함 네임스페이스 쿠버네티스 클러스터를 논리적으로 분할하여 사용하기 위해 존재하는 기능 kubectl의 유효 범위를 지정한 네임스페이스로 제한 가능 컨테이너 컨테이너는 파드 내에서만 실행 가능 실행 시에만 ..

컨테이너의 등장 배경 규모가 있는 프로젝트를 개발할 때는 혼자서 개발하기보다는 팀을 이루어 일하고, 오픈소스 프로젝트를 많이 활용하여 개발의 효율성을 높인다. 그러나 오픈 소스 프로젝트는 빈번하게 버전이 업그레이드되고, 사용하는 오픈 소스가 많아질수록 오픈소스의 버전을 트랙킹하며 모든 팀원들이 동일한 환경에서 개발하기가 어려워진다. 이러한 추세에 따라 컨테이너가 등장하게 되었다. 컨테이너는 1) 오픈 소스를 사용한 개발 생산성 향상과 2) 어플리케이션 안정성을 제공한다. 컨테이너를 사용하는 이유? 인프라의 사용률 향상 쿠버네티스에서 사용되는 컨테이너 기술은 애플리케이션이 정해진 서버에 돌아야 한다는 제약이 없다. 따라서 가동률이 적은 서버의 애플리케이션을 한곳에 모아 가동률을 높일 수 있다. 빠른 기동 ..