Facts (사실, 객관)
-
오늘 회사에서, 일이 굉장히 잘 풀렸다.
-
도커의 내부 원리에 대해서, 공부하였다.
-
쿠버네티스의 아키텍처에 대해서 공부하였다.
Feelings (느낌, 주관)
-
미리 풀리퀘를 날리고, 거기에 구현할 계획을 세우고 체크 박스로 하나씩 요구사항을 체크하면서 개발을 하다보니, 실수도 적어지고 내가 무엇을 해야할지 빠르게 파악할 수 있었다.
-
다만 어떻게 구현할지에 대한 계획에 대한 고민을 좀 더 체계적으로 해야하는 필요성을 느낄 수 있었다.
-
여태까지, 도커의 명령어만 사용하면서 아키텍처에 대해서는 제대로 이해하지 못하고 있었다는 사실을 깨닫게 되었다.
Findings (배운 점)
-
리눅스가 하는 일을 보면, 크게 두 가지가 있는데 하나는 애플리케이션 자원 관리(
PID
,ROOT
,PORT
)이고, 다른 하나는 하드웨어 자원 관리이다. -
컨테이너는 독립된 리눅스 환경을 보장 받는 컨테이너라는 것을 알게 되었다.
-
리눅스는 커널안에 있는 자원을
namespace
라는 기능을 통해서 애플리케이션 자원을 독립화 시킬 수 있으며, 하드웨어 자원은cgroup
을 이용하여 독립화 시킨다. 따라서 도커는 리눅스의 이 두 기능을 이용하여 독립된 컨테이너 환경을 만드는 것이다.
-
docker0
가 내부적으로 브릿지 역할을 한다. 그리고 컨테이너간의 통신은 가상 네트워크 인터페이스인veth
를 통해서 이루어 지고, 내부적으로는 두 개의namespace
를 이어주는 것이라고 보면 된다. -
컨테이너 각각의
eth0
인터페이스를 통해서 통신을 하게 된다. -
만약 하나의 컨테이너와 다른 컨테이너가 통신을 할 때,
docker0
를 통하게 되어 다른 컨테이너로 통신이 이루어지게 된다.
-
etcd
는 쿠버네티스 안에서, 모든 로깅에 정보를 기록한다. -
API server
는 컨테이너를 늘리는 명령어를 비롯한 모든 명령어들을 처리한다. -
스케줄러는 여러 서버가 있을 때, 어떤 노드에 명령어를 실행할지를 정해준다.
-
POD
은 논리적으로 애플리케이션의 묶음이고, 기본적으로 여러개의POD
이 하나의 애플리케이션을 구성하게 된다.
Bad (개선할 점)
- 집중하다 보면, 너무 오래 앉아있는데 일어날때마다 어지럽게 된다. 따라서, 일정 시간마다 일어나서 체력 분배를 하자.
Affimation (자기 선언)
- 네트워크 및 클라우드에 대한 지식 및 데브옵스 지식을 배우는 것이 전체적인 개발 스킬을 늘려줄 수 있을 것이다. 열심히 공부하자!
회고 작성법
- Facts(사실, 객관) 회사에서 실제로 내가 했던 일이나 겪었던 일의 사실을 적는다.
- Feelings(느낌, 주관) 내가 했던 일을 하면서 느꼈던 감정이나 느낌을 적는다.
- Findings(배운 점) 내가 했던 일을 통해서 새롭게 배운 점이나 알게 된 점을 적는다.
- Affirmation (자기 선언) 내가 했던 일을 통해 배운 점과 아쉬운 점을 어떻게 유지 하고 개선할지를 적는다.