PowerPoint 프레젠테이션

Similar documents
10김묘선

PowerPoint 프레젠테이션

Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

슬라이드 1

Æí¶÷4-¼Ö·ç¼Çc03ÖÁ¾š

Azure Stack – What’s Next in Microsoft Cloud

github_introduction.key

ZConverter Standard Proposal

PowerPoint 프레젠테이션

Cloudera Toolkit (Dark) 2018

PowerPoint 프레젠테이션

PowerPoint Presentation

PowerPoint 프레젠테이션

untitled

서현수

자동화 툴 검토 보고서

PowerPoint Presentation

スライド タイトルなし

AGENDA 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례

[Brochure] KOR_LENA WAS_

1.장인석-ITIL 소개.ppt

PowerPoint Presentation

Software Verification Team 오준 임국현 주영진 김슬기

How To Use This Deck

PowerPoint Presentation

Interstage5 SOAP서비스 설정 가이드

PowerPoint 프레젠테이션

슬라이드 1

DE1-SoC Board

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

consulting

03.Agile.key

레드햇과 오픈스택 Feb, 2014 Kim Yong Ki Solution Architect Red Hat Korea RED HAT ENTERPRISE LINUX OPENSTACK PLATFORM 2014

No Slide Title

C Cassandra cloud computing cloud Infrastructure cloud-native aptions Cloud Spanner cluster CNCF CNI Concourse CoreDNS container inerize containerized

Cloud Native Computing 실제 운영

<FEFF E002D B E E FC816B CBDFC1B558B202E6559E830EB C28D9>

이 드리는 혜택 완벽 을 위한 발환경 : Team Foundation Server 200 & CAL 제공 최저의 비용으로 구현을 위해 Visual Studio Team Foundation Server 200 서버 라이센스와 CAL이 에 포함되어 있습니다 을 모든 팀원이

Introduction to CTIP

슬라이드 1

PowerPoint 프레젠테이션

Service-Oriented Architecture Copyright Tmax Soft 2005

소프트웨어 검증 및 설계

(Microsoft PowerPoint - vForum_Public Cloud_IBM_v1.0_\271\350\306\367.pptx)

PowerPoint Presentation

Atlassian Solution Conference Seoul 2017

IBM blue-and-white template

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

쿠폰형_상품소개서

디지털 트랜스포메이션 가속을 위한 어플리케이션 플랫폼 전략

<4D F736F F D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

진단, 표시・광고법 시행 1년

텀블러514

Windows 8에서 BioStar 1 설치하기

항목

Red Hat Solution 및 Cloud Aug 26, 2011 Won Young Choi Solution Architect 1

<BCF6BFE4B0ADB4DC322E687770>

PowerPoint 프레젠테이션

슬라이드 1

PowerPoint Presentation

SW

1 SW

untitled

<30352D30312D3120BFB5B9AEB0E8BEE0C0C720C0CCC7D82E687770>

歯mp3사용설명서

vm-웨어-앞부속

2018_ifkakao_cloud_andrew_final

PowerPoint Presentation

I care - Do you?

OpenStack In Telco: Toward 5G Mobile network

gcp

[Brochure] KOR_TunA

Apache Ivy

About this template

Cloud Friendly System Architecture

희망브리지

Click to edit Master text styles Second level Third level Agenda Fourth level 클라우드서비스살펴보기 - 클라우드서비스현황 - 클라우드서비스운영자동화의필요성 시스코클라우드관리솔루션 - Cisco Cloud St

Nov-2017

슬라이드 1

PowerPoint 프레젠테이션

13 Who am I? R&D, Product Development Manager / Smart Worker Visualization SW SW KAIST Software Engineering Computer Engineering 3

초보자를 위한 분산 캐시 활용 전략

PowerPoint Presentation

Microsoft PowerPoint - chap01-C언어개요.pptx

PowerPoint 프레젠테이션

IBM Cloud Private 온프레미스장점과클라우드장점을모두살린신개념클라우드 - 퍼블릭클라우드의파워를방화벽내기업데이터센터로확장 - 컨테이너, 마이크로서비스아키텍처, 오픈소스기반으로클라우드네이티브앱개발및기존앱현대화 - 완벽한하이브리드환경지원 (Private Cloud

PowerPoint 프레젠테이션


<BCBCBBF3C0BB20B9D9B2D9B4C220C5ACB6F3BFECB5E520C4C4C7BBC6C3C0C720B9CCB7A128BCF6C1A4295F687770>

Mango220 Android How to compile and Transfer image to Target

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤

PowerPoint 프레젠테이션

PCServerMgmt7

99-18.hwp

슬라이드 1

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

solution map_....

PowerPoint Presentation

Transcription:

Kubernetes, Docker, Jenkins 를활용한 CI/CD 환경구축 삼성전자 SQE Lab.( 네트워크 ) 이호광 2018. 10. 18.

목차 제품특성과현재환경, 목표 DevOps Immutable Infrastructure Infrastructure as Code Container Container Orchestration CI/CD 개선결과, Lesson Learned 03 05 06 07 08 10 13 14

제품특성과현재환경 다양한제품 ( 군 ) 과개발 / 운영중인버전들 다양한 OS 와버전 다양한 toolchain 서버 개발서버 빌드서버 서버관리자가서버세팅 / 관리 개발자는개발서버에서 build 월평균 21,000 commits

목표 개발자는개인 PC 에서개발 개발서버미제공 빌드서버는 Cloud Native On-Premise 에서 Cloud 처럼 CI/CD Pipeline Commit 되면 pipeline 시작 Pipeline 은빌드, 시험, 배포의일련의 workflow 특정 step 에서문제발생시 committer 에게알림 Automation & Infrastructure as Code 모든것이자동화 누가무엇을바꿨는지쉽게알수있으면

DevOps (2008 년 Agile conference 에서처음언급됨 ) Dev(Development) + Ops (Operation) 개발팀과운영팀사이의소통, 협업을강조하는 S/W 개발방법론 빨리, 자주, 안정적으로 build, test, release 할수있는문화와환경구축 주요 Practice Continuous Integration 자동화된 build, 테스트후변경사항을주기적으로통합 Continuous Delivery 코드변경되면자동으로 build, test, release 준비 Infrastructure as Code Provisioning, 시스템변경및구성에대한일관되고반복적인과정자동화 Microservices Monitoring and Logging Communication and Collaboration

Immutable Infrastructure (2013 년, Chad Fowler) 서버가배포된후에수정되지않는인프라패러다임 변경이필요하면새서버를제공하고기존서버를대체 Snowflake Server vs Phoenix Server (2012 년, Martin Fowler) Immutable Infrastructure 의장점 일관성및신뢰성향상 간단하고예측가능한배포프로세스 변경가능한인프라에서일반적으로발생하는문제를완화하거나완전히예방 효율적으로사용하려면다음사항이필요 배포자동화 Cloud 컴퓨팅환경에서의빠른 provisioning 상태저장또는임시데이터처리솔루션

Infrastructure as Code 지금까지수작업으로해오던인프라구축이나변경작업을코드로작성해서자동화하는것 인프라에 " 유연성 ", 즉반복성과확장성을부여 장점 : 빠른속도, 비용절감, 위험감소 Tools Ansible Chef Puppet Terraform AWS CloudFormation <Docker in Docker!> ( 출처 : https://github.com/docker-library/docker)

Container Container 란? VM 과유사하나, Host OS 의 Kernel 을공유하면서애플리케이션과라이브러리만가상화하는방법 ( 출처 : techtarget.com) Container 기술의장점 가볍다 : VM 을사용할때보다최대 4~10 배나더많은서버인스턴스구동가능 빠르다 : 컨테이너가구동되면애플리케이션이바로시작됨

Docker ( 부두노동자를뜻함 ) Container 기술중현재가장인기있는오픈소스소프트웨어 표준컨테이너포맷지위획득 (2015년 OCI(Open Container Initiative) 에소스기증 ) 이미지생성과배포 / 관리에특화되어, Cloud와같은유연성을제공 비저장성 - 영속성 (Persistency) 없음 ( 필요시별도 volume 사용 ) As-Is To-Be Toolchain Toolchain Toolchain RHEL 7.1 RHEL 7.2 RHEL 7.3 VM VM VM Docker Registry Don t Care Don t Care RHEL 7.1 환경 RHEL 7.2 환경 RHEL 7.3 환경 - VM 개수만큼각종 OS, Toolchain 설치 - 환경이변경되면, VM 개수만큼작업 - 이미지관리 ( 환경당 1 회 ) - 환경이변경되면이미지업데이트 ( 출처 : docker.com)

Container Orchestration 수많은호스트에서다양한 container 를세팅하고적용 / 관리해야하는번거로움을해결 컨테이너의배포, 관리, 확장, 네트워킹및가용성을자동화하는도구 기능 호스트 Provisioning 컨테이너세트의인스턴스화 실패한컨테이너일정재조정 합의된인터페이스를통해컨테이너연결 클러스터외부에서비스노출 컨테이너추가또는제거로클러스터확장또는축소 ( 출처 : docker.com) <The Container Orchestration Landscape is Changing> ( 출처 : cncf.io)

Kubernetes (k8s) ( 그리스어로키잡이를뜻함 ) Container Orchestration 도구중가장인기있는오픈소스소프트웨어 Google 이자사데이터센터운영에활용했던컨테이너기술을기반으로개발해오픈소스로공개 CNCF(Cloud Native Computing Foundation) 에 2016 년첫번째프로젝트로기부 master Pod 1 Pod 2 Node Node Node ( 출처 : cloudplatform.googleblog.com) PV

+ alpha Harbor VMware 사에서만든오픈소스 Docker registry 현재 CNCF sandbox project Helm The package manager for Kubernetes chart 활용하여복잡한 Kubernetes application 을쉽게정의, 설치, 업그레이드할수있음 chart 를생성, 버전관리, 공유, 배포하기쉬움 현재 CNCF Incubating project

CI/CD Fail Fast CI (Continuous Integration) change 가 commit 되면즉시 build & test 가능한빠른오류발견과수정을가능케한다 빨리고품질의 code 를만들수있다 (2010 년, Jez Humble) (1997 년, Kent Beck) CD (Continuous Delivery or Continuous Deployment) CI 를더오른쪽으로 (test, deploy) 확장하여 release-ready 상태보장 빠르고반복적이고믿을수있는방법으로 change 가 pre-production 또는 production 환경, 결국고객에게까지전달될수있게한다 Continuous Deployment 는 Facebook, Netflix 와같은 B2C 제품에적합

Jenkins Cloudbees 사에서만든오픈소스 CI/CD Tool 다양한 Plugin 제공 Pipeline as Code <Blue Ocean 에서의 Pipeline> ( 출처 : Jenkins.io) <Pipeline as Code : Jenkinsfile> ( 출처 : Jenkins.io)

개선결과 개발환경 Container화 개발환경을 Dockerfile로작성하고형상관리 Harbor로 Docker Registry 구축하고이미지등록 개발서버대신개인PC에서개발 Kubernetes 활용한 Cloud Native 환경구축 kubeadm 활용한 Kubernetes Cluster 구축 Ingress, Persistent volume, Helm 설치 / 활용 Jenkins 설치 Jenkins 운영 Blue Ocean, Kubernetes, Pipeline 등의 Plugin 활용 MultiBranch Pipeline Job 생성 제품 /branch 별 Jenkinsfile 작성하고형상관리

개선결과 As-Is To-Be 개발서버 RHEL 7.1 RHEL 7.2 RHEL 7.3 k8s master Ubuntu 16.04 k8s nodes ( 빌드서버 ) Dockerfile 빌드서버 Jenkinsfile RHEL 7.1 RHEL 7.2 RHEL 7.3 Docker Registry VCS Jenkins master RHEL 7.1 RHEL 7.2 RHEL 7.3 Jenkins Master Launch Jenkins Agent PODs using Docker Registry Run pipeline

Lesson Learned Infra 기술들이 Cloud 를향하고있다 ( 또는 Cloud 의대중화 ) Hybrid (Cloud + On-premise) 환경으로전환예상 DevOps Engineer? Docker (+ Harbor) Dockerfile 작성 / 관리중요 Kubernetes (+ Helm) 난이도상 (http(s) proxy 문제등 ) 아직완성되지않았지만 (beta 버전 ) 강력하다 Jenkins 설정자동화필요 (Configuration as Code Plugin 활용 )

Q&A

THANK YOU