2. 안전하고 아름다운 코드를 추구하는 개발자 이예성 입니다.
"Safe, Clean, Reliable and Elegnace"
"No meno, No memory"
Hello! I am Isaac Lee 👋
Experience
- 쎄트렉아이 DevOps 엔지니어
- 충남대학교 학부생 연구 인턴
- 쎄트렉아이 학부생 인턴
- 케어커넥트 Founder / CTO
Community
- K-DEVCON 운영진 & UNIV 리드
- CPython 컨트리뷰터
- 노마드코더 번역 장학생
Contact Me
📧 Email: isaac.lee.3412@gmail.com
Ⓖ Github: Isaac-Lee
ℹ LinkedIn: Isaac(Yesung) Lee
📝 Blog: 아이작의 작(作)
49. • 컨테이너를 쓰는 경우
• 경량화된 인프라가 필요한 경우
• 빠른 시작과 종료가 중요한 경우
• 서비스의 확장성이 필요한 경우
• 일관된 환경과 이식성이 중요한 경우
• 가상머신을 쓰는 경우
• 완전한 운영체제가 필요한 경우
• 높은 수준의 격리와 보안이 필요한 경우
• 여러 운영체제를 사용해야 하는 경우
• 하드웨어를 에뮬레이션 해야하는 경우
With container
Docker container를 사용하기
50. • 컨테이너 이미지: 애플리케이션을 실행하는데 필요한 모든 요소를 담고 있는 사진
With container
Docker container를 사용하기
51. • 컨테이너 이미지: 애플리케이션을 실행하는데 필요한 모든 요소를 담고 있는 사진
사진대로 주세요
어디서든 똑같이
같은 환경을 사용 가능
With container
Docker container를 사용하기
52. From scratch
개발 / 테스트 / 배포 모두 직접 하기
서버
로컬 서버에 배포된
이미지를 받아야지!
Python 3.9
Django 4.2
PostgreSQL 16
Python 3.9
Django 4.2
PostgreSQL 16
이미지 Pull, Run, 끝
59. With container
Docker container를 사용하기
개발 테스트 빌드
컨테이너
이미지
Build
컨테이너
이미지
Push
컨테이너
이미지
Pull
이미지
버전 교체
배포 완료
컨테이너
이미지
Pull
이미지
버전 교체
서버
내리기
서버
올리기
아직도... 서버를 껐다 켜야해...
62. • 컨테이너화 된 애플리케이션의
배포, 스케일링 및 관리를 자동화하는 오픈 소스 플랫폼
• 클러스터 단위로 구축하여 하나의 Master 노드 아래 여러 Worker 노드로 구성
• YAML이나 JSON을 통해 선언적으로 애플리케이션의 상태과 구성을 기술
• TMIs
• Kubernetes의 손잡이가 7개인 이유?
Kubernetes의 근본이 되는 구글의 프로젝트 이름이 "Project 7 of Nine" 이었기 때문
With Kubernetes
Kubernetes를 사용하기
65. 아니 그래서 Pod가 뭔데 자꾸 Pod, Pod, 하는거야?
With Kubernetes
Kubernetes를 사용하기
66. • 쿠버네티스는 컨테이너를 묶은 Pod를 단위로 서비스를 배포
• Pod는 하나 이상의 컨테이너로 구성
container container container container container container
Pod Pod Pod
Worker Node Worker Node
With Kubernetes
Kubernetes를 사용하기
73. With Kubernetes
Kubernetes를 사용하기
개발 테스트 빌드
컨테이너
이미지
Build
컨테이너
이미지
Push
쿠버네티스
명세 수정
명세
Apply
배포 완료
컨테이너
이미지
Pull
쿠버네티스
명세 수정
명세
Apply
이제 서버를 안꺼도 된다..!
74. - Kubernetes와 ArgoCD를 사용하기
- 쿠버네티스 근데 이제 CD를 곁들인...
- "배포할 때 손 안쓰고 싶어요"
With K8s + CD
75. With K8s + CD
Kubernetes와 ArgoCD를 사용하기
생성하고 종료하기
손으로 해야한다.
76. With K8s + CD
Kubernetes와 ArgoCD를 사용하기
애플리케이션 생성/수정/삭제
네트워크 생성/수정/삭제
저장소 생성/수정/삭제
언제 다 손으로 해..
98. 개발자 구합니다.
• 서로가 서로에게 도움을 주고 받을 수 있는 개발 문화
• 활발한 코드 리뷰 (선임자도 후임자에게, 후임자도 선임자에게 자유롭게...!)
• 서로의 기여를 인정하고 같이 성장
• 강건한 SW를 만들기 위한 테스트 영역 강화
• 테스트 전담 팀이 존재
• 정적/동적 테스트를 통해 SW가 안전하고 좋은 성능으로 동작할 수 있도록 프로세스 구축
• 개발자에게는 부담없이 리팩토링을 수행할 수 있도록 하는 안전장치 마련
어떤 문화를 지향하나요?