12. DevOps 는 무엇인가요?
DevOps 정의 (Wikipedia)
DevOps라는 합성어는 소프트웨어 개발자들과 IT 종사자들 사이의
의사소통, 협업, 융합 을 강조한
소프트웨어 개발 방법론이며, 소프트웨어 개발과 IT 운영간의
상호 의존관계에 대한 산물이다.
DevOps (a portmanteau of development and operations) is a software development method that stresses communication, collaboration and
integration between software developers and information technology(IT) professionals. DevOps is a response to the interdependence of software
development and IT operations. It aims to help an organization rapidly produce software products and services.
http://en.wikipedia.org/wiki/Devops
DevOps 는 조직에서 소프트웨어 상품과 서비스를
신속히 생산 하는 것에 도움이 되는 것을 목적으로 한다.
13. DevOps 는 무엇인가요?
대규모 버전업 과정
facebook, twitter 친구/포스팅,
음악 가져오기, 레이아웃 변경,
필터 추가, 버그픽스 …
8주간 개발, 2달 뒤 첫 주 금요일에
v 1.5 반영
신규 가입자를 늘리기 위한 버전 업
1.0 1.5
14. DevOps 는 무엇인가요?
잦은 버전업 과정
facebook, twitter 친구/포스팅,
음악 가져오기, 레이아웃 변경,
필터 추가, 버그픽스 …
각 기능별 1주간 (iteration) 개발하고,
매주 반영, 총 소요기간 8주
신규 가입자를 늘리기 위한 버전 업
1.0 1.0.1 1.0.2 1.1 …
15. DevOps 는 무엇인가요?
잦은 배포의 효과
http://en.wikipedia.org/wiki/DevOps#Devops_Days
잦은 릴리즈
“애자일 방법론”
간격이 긴 릴리즈
“일반적인 방법론”
완만해진 위험도뾰족한 위험도
19. 앱(APP) 중심으로 생각하기
새로운 서비스 시작
하드웨어, Storage, NW 산정
HP Quad Core IA2 BL860c i2 Blade IA * 2
스토리지, VERITAS VCS, Rack, …..
일일 10만 유저 방문
5만명 사진 업로드
5만 명 댓글 포스트, 좋아요 클릭
또, 연인들의 날 트래픽 급격히 증가
……….
20. 앱(APP) 중심으로 생각하기
새로운 서비스 시작
하드웨어, Storage, NW 산정
HP Quad Core IA2 BL860c i2 Blade IA * 2
스토리지, VERITAS VCS, Rack, …..
일일 10만 유저 방문
5만명 사진 업로드
5만 명 댓글 포스트, 좋아요 클릭
또, 연인들의 날 트래픽 급격히 증가
……….
21. 앱(APP) 중심으로 생각하기
새로운 서비스 시작
하드웨어, Storage, NW 산정
HP Quad Core IA2 BL860c i2 Blade IA * 2
스토리지, VERITAS VCS, Rack, …..
일일 10만 유저 방문
5만명 사진 업로드
5만 명 댓글 포스트, 좋아요 클릭
또, 연인들의 날 트래픽 급격히 증가
……….
22. 새로운 서비스 시작
일단 최소로 가보자.
VM v2core 4GB RAM HDD 100GB
S3 스토리지, ELB, RDS 사용
일일 10만 유저 방문
5만명 사진 업로드
5만 명 댓글 포스트, 좋아요 클릭
또, 연인들의 날 트래픽 급격히 증가
……….
앱(APP) 중심으로 생각하기
23. 새로운 서비스 시작
일단 최소로 가보자.
VM v2core 4GB RAM HDD 100GB
S3 스토리지, ELB, RDS 사용
일일 10만 유저 방문
5만명 사진 업로드
5만 명 댓글 포스트, 좋아요 클릭
또, 연인들의 날 트래픽 급격히 증가
……….
부족하면 즉시 늘리면 되니까 !
앱(APP) 중심으로 생각하기
24. 모바일 서비스 프로젝트 시작
앱개발자 데봅 김군.
취미로 주말마다 전국의 낚시터를 다니며
민물낚시를 즐김.
필요에 의해, 낚시인들이 경험한 낚시터와
주변의 먹거리, 여행 정보를 공유하는
모바일 서비스를 하기로 막 결정한 상태
앱(APP) 중심으로 생각하기
25. 모바일 서비스 프로젝트 시작
사용자는 얼마 안 될 테니, VM 1EA 호스팅
세팅 : Apache + Tomcat + Spring, MySQL DB
개발 : API 서버 개발, 앱 개발
기타 1 : API 서버를 위한 도메인 구매
기타 2 : 고객 정보 보호를 위해 SSL 인증서 구매
기타 3 : 백업 정책 수립, 매주 백업
걱정 : 잘 되도 걱정,
갑자기 사용자가 늘어나면 어떻게 하지?
앱(APP) 중심으로 생각하기
26. 모바일 서비스 프로젝트 시작
앱(APP) 중심으로 생각하기
모바일 앱
Home
Backup
API Server
MySQLApache
Tomcat
Spring
사진
저장소
https
restful/json
weekly backup
$wget –username -- …
• 회원가입
• 회원정보조회/수정
• 사진업로드
• Push
• POI
• 통계
• 피드백
27. 모바일 서비스 프로젝트 시작
앱(APP) 중심으로 생각하기
Home
Backup
API Server
MySQLApache
Tomcat
Spring
사진
저장소
https
restful/json
• 회원가입
• 회원정보조회/수정
• 사진업로드
• Push
• POI
• 통계
• 피드백
모바일 앱
Backend as a Service
29. 왜 자동화 해야 하나요 ?
신속 / 적기에 서비스 오픈 해야 글로벌 경쟁에서
살아 남는 것을 넘어, 선도할 수 있음.
IT 도 사람이 하는 작업이기에, 언제나 실수할 수 있음
삽질은 툴에 맡기고, 그 시간에 창조적인 일에 집중
동일한 업무는 모든 사람이 동일한 품질을 보장
31. KTH 에서는 …
DevOps 정의 in kth
개발팀과 운영팀을 지원/선도하는 조직으로써,
서비스 기획 및 개발 시작 단계에서부터
서버설치, 개발, 빌드, 테스트, 배포, 모니터링까지
모든 서비스 라이프 싸이클 프로세스를
자동화 개선해 나가는 조직하고
32. KTH 에서는 …
계정 통합
이슈 통합
소스 활용
효용성 확보
빌드 자동화
시스템 설정
자동화
배포 자동화
로드맵
모니터링
자동화
33. KTH 에서는 …
이슈 관리
빌드
서버 배포
앱 배포
모니터링
서버 세팅
이슈+소스
테스트
이 전
메일, 메신저, 전화
관계 관리 X
로컬, 개발서버
직접 테스트
복사, 직접 재기동
메일, 메신저
단독 모니터링
직접 빌드, 설치
자동화 전,후 비교
34. KTH 에서는 …
이슈 관리
빌드
서버 배포
앱 배포
모니터링
서버 세팅
이슈+소스
테스트
이 전
메일, 메신저, 전화
관계 관리 X
로컬, 개발서버
직접 테스트
복사, 직접 재기동
메일, 메신저
단독 모니터링
직접 빌드, 설치
이 후
JIRA
JIRA
중앙 빌드
빌드 후 자동
빌드 후 자동 배포
빌드 후 자동 배포
시스템 연계 모니터링
자동 세팅
자동화 전,후 비교
50. 부록 : 동영상 링크
• DevOps Days 2009 intro “dev meets ops, ops meets dev” (한글자막)
http://www.youtube.com/watch?v=7kP8U0f9ELk
• Sheath Demo: Chef 를 이용한 시스템설정 자동화
http://www.youtube.com/watch?v=RNV2lNu9OeM
• Safari Tour Demo: 서비스 모니터링
http://www.youtube.com/watch?v=fOn6niktvEQ