전체 글

· Kubernetes
1. Pod Pod는 한 개 이상의 컨테이너로 구성된 쿠버네티스 기본 배포 단위이다. 하나의 Pod에 여러 개의 컨테이너가 있는 경우 파드 내의 컨테이너들은 같은 가상머신에 배치되며, 같은 네트워크 네임스페이스, IP 주소 및 포트 공간을 공유한다. 파드 내의 컨테이너들은 서로를 localhost로 찾아 통신할 수 있다. 2. Controller Pod는 Controller를 통해 배포될 수 있다. Controller에는 ReplicaSet, Deployment, DaemonSet, Job, Cron Jobs, StatefulSet이 있다. Replicaset Pod는 ReplicaSet을 통해 배포가 된다. ReplicaSet은 지정된 수의 Pod 복제본을 유지하도록 관리하고 Probe를 적용해 일정주..
· Kubernetes
1. Architecture 쿠버네티스 클러스터는 Control plane(Master node)과 Worker node(Compute machine)로 구성된다. 쿠버네티스 kubectl 키워드를 사용해서 제어할 수 있다. kubectl 명령이 API Server로 전달되고 해당 명령을 수행하는 컴포넌트에게 전달되어 수행된다. 즉 Client의 명령에 따라 Control plane이 Worker node를 제어하는 구조이다. 2. Control Plane Control Plane은 API Server, etcd, Controller manager, Scheduler로 이루어져 있다. API Server API서버는 클러스터의 관리 명령을 중앙 집중적으로 처리하는 컴포넌트이다. 모든 쿠버네티스 명령은 A..
· Kubernetes
현대 애플리케이션은 유연한 확장성, 신속한 배포를 위해 Monolithic설계에서 Micro Service Architecture로 전환되고 있다. MSA는 서비스가 분리되어 있기 때문에 필요한 서비스만 확장 하거나 장애상황에서 보다 빠르게 대응할 수 있다. MSA 설계에서 가장중요한 것이 바로 컨테이너이다. 왼쪽은 가상머신 구조 오른쪽은 컨테이너 구조이다. 가상머신은 서버 하드웨어 위에 Hypervisor가 설치되고 그 위에 Guest OS가 설치된다. 윈도우에서 VirtualBox로 Ubuntu를 구동하거나 맥에서 패러렐즈로 윈도우를 구동시킬 때 Hypervisor위에 Guest OS가 설치된다. 원래 컴퓨터에 깔려있는 OS가 Host OS, 하이퍼바이저 위에 설치한 OS가 Guest OS가 된다. ..
· Algorithm
예전에 풀었을때도 막혔었던 문제이다... 다시 풀어도 풀이 방법이 떠오르지 않아 풀이를 보고 풀었던 문제이다. 이 문제의 핵심은 아래와 같은 상황(1번)에서 어떻게 모서리만 탐색할수 있는가라고 생각한다. 기존 방법은 사각형이 있는 곳만 1로 채운뒤 다음에 탐색할 점을 4방탐색으로 탐색한후 8방탐색으로 0(사각형이 없는 부분)이 있는 부분이 있으면 모서리라 판단하고 탐색할 점으로 정했다. 그러다 보다 1번과 같은 상황이 발생하였다. 생각해도 방법이 생각나지 않아 힌트를 보고 풀이를 떠올렸다. 풀이는 사각형, 시작점, 목표점의 값에 2를 곱한뒤 거리를 구하고 최종적으로 구한 길이를 2로 나누어 최단경로의 길이를 구하였다. (다음점을 구하는 로직은 기존의 방법과 같다.) from collections impo..
· Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/132266 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 각 시작지점 에서 목표지점 까지의 최단거리를 구하는 문제이다. 처음풀이는 문제요구사항 그대로 각각의 시작지점에서 목표지점까지 BFS로 거리를 구하였다. 하지만 11, 12, 13, 14, 15번 테케에서 시간초과.. from collections import defaultdict from collections import deque def solution(n, roads, sources, des..
· Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/81303 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 표를 주어진 연산에 따라 수정 하였을때 최종 적인 표의 모양을 출력하는 문제이다. 1. "U X": 현재 선택된 행에서 X칸 위에 있는 행을 선택합니다. 2. "D X": 현재 선택된 행에서 X칸 아래에 있는 행을 선택합니다. 3. "C" : 현재 선택된 행을 삭제한 후, 바로 아래 행을 선택합니다. 단, 삭제된 행이 가장 마지막 행인 경우 바로 윗 행을 선택합니다. 4. "Z" : 가장 최근에 ..
Chlorine
Devlog