6. DevOps is NOT
조직의 통합, 인력 운영의 효율
DevOps는 단순히 개발팀(Dev)과 운영팀(Ops)의 통합을 의미하는 것은 아닙니다.
개발자가 운영 환경에 접근할 수 있도록 허용
DevOps는 모든 분야 간의 긴밀한 협력을 촉진하여 탁월성을 증진하는 지침/원칙을
정의합니다.
DevOps는 개인 및 팀 간에 연결을 구축하는 프로세스입니다.
툴과 자동화에 중점
여러 팀 간에 문화 변화, 신뢰가 없다면 툴과 자동화는 중요하지 않습니다.
7. What DevOps is
ONE TEAM CULTURE
긴밀한 현업, 사일로 방지, shift left
PRODUCT FOCUSED
FULL PRODUCT KNOWLEDGE VS PROJECT, ROI,
EXPERIMENTATION (FAIL FAST), HIGHER QUALITY
FAST DELIVERY
MORE FREQUENT DEPLOYMENTS, AUTOMATION - ALL
22. EB CLI
Git
AWS
Test
Bamboo
Jenkins
AWS
Live
App Source
Build, Deploy Code
a.k.a provisioning
Test Deploy Job
on Docker
1
2
3
Test
on Docker
Terminate
Test EB
4
Test
on Docker
Live Deploy Job
on Docker
Live Service
on Docker
Live Service
on Docker
5
6
1. 빌드서버에서 Application Source Check out
2. 빌드서버의 빌드, 배포 절차를 Git 으로 관리
3. 테스트 환경 생성 및 배포 (필요할 때만 운영 여윽시 내 최고의 친구)
- Git 브랜치와 EB 환경 연결하여 수시로 배포 가능
4. 테스트 완료 후 EB 종료 (삭제)
5. 동일하게 운영에 업데이트된 Application 생성
6. CNAME swap 블루/그린 배포 (여윽시 내친구)
23. EB CLI
맛보기 - 0
> ~/eb-docker
|-- Dockerfile
|-- application.py
eb-docker> eb init -p docker best-eb-friends
Application best-eb-friends has been created.
eb-docker> eb local run --port 5000
Dockerfile
FROM python:3.6
COPY . /app
WORKDIR /app
RUN pip install Flask==1.0.2
EXPOSE 5000
CMD ["python", "application.py"]