SlideShare a Scribd company logo
1 of 49
Download to read offline
DEVSISTERS
시작하기 전에
pyrasis.com/Docker/Docker-HOWTO
kubernetes.io/ko/docs/tutorials/
스피커 소개
DEVSISTERS
Agenda
Kubernetes 소개
오케스트레이션의 필요성
앱을 빠르고 예측
가능하게 배포
즉시 앱을
스케일 업/다운
중단 없이 새로운
기능 배포
하드웨어 사용을
필수 리소스로만
제한
Kubernetes
Kubernetes
이식 가능
퍼블릭, 프라이빗,
하이브리드,
멀티 클라우드
확장 가능
모듈식, 플러그 가능,
훅 연결 가능, 구성 가능
자가 치유
자동 배정, 자동 재시작,
자동 복제, 자동 스케일링
IIS/ASP.NET 쇼핑몰 웹
사이트의 컨테이너화
TrendyRags
github.com/rkttu/
TrendyRags
Thanks to
blog.naver.com/sicho77/
114514319
크게 요약하면
1단계
애플리케이션 리팩토링
2단계
데이터베이스 컨테이너화
3단계
웹 애플리케이션 컨테이너화
Step 1:
애플리케이션
리팩토링
설정 파일 분리
환경 변수에 대한 고려
모니터링 및 App Pool 리사이클 방지
Step 2:
데이터베이스
컨테이너화
DACPAC
이해하기
DACPAC 추출하기
SQL Server의 Windows 컨테이너
안타깝게도 SQL SERVER의
WINDOWS 컨테이너는 프리뷰 단계
개발/테스트 목적으로 사용 가능한
DEVELOPER EDITION은 사용 가능
PRODUCTION 배포를 위해서는
LINUX 버전 선택 가능
SQL Server
Base Image
준비하기
https://github.com/rkttu/TrendyRags/blo
b/master/deploy/mssql/Dockerfile
데이터베이스
컨테이너 빌드
https://github.com/rkttu/TrendyRags/blo
b/master/deploy/database/Dockerfile
데이터베이스
컨테이너
빌드와 테스트
데이터베이스
컨테이너
빌드와 테스트
(Cont.)
Step 3:
IIS/ASP.NET
컨테이너
만들기
https://github.com/rkttu/TrendyRags/blob/
master/deploy/web/Dockerfile
Service
Monitor
주의 사항
로컬에서 컨테이너 테스트
Azure AKS로 배포하기
간편하게 Kubernetes를
배포하고 관리
안심하고 응용프로그램
확장 및 실행
Kubernetes 실행 환경에
대한 확실한 보안
컨테이너화된
애플리케이션의 개발
가속화
오픈 소스 도구 및
API로 원하는 방식으로
작업
몇 번의 클릭만으로
CI/CD 설정
AKS에 Windows 클러스터 지원 추가하기
AKS Windows Support Preview 신청
리소스 그룹, ACR 생성
ACR로 이미지 빌드/푸시
AKS 클러스터 생성 및 설정
Windows Server Node Pool 생성
Kubernetes Context 설정
만약 배포 상태에 대한 디버깅이 필요하다면?
Bastion VM 생성 및 연결
Bastion VM 생성 및 연결 (Cont.)
Kustomize 스크립트 만들기
Kustomize 사용
https://github.com/rkttu/TrendyRags/tree/master/kubernetes
Demonstration
몇 가지 이슈
What’s Next
무엇이 개선되고 있는가
https://docs.google.com/document/d/1Tjxzjjuy4SQsFSUVXZbvqV
b64hjNAG5CQX8bK7Yda9w
참고할 만한 자료
https://www.packtpub.com/virtualizatio
n-and-cloud/docker-windows-second-
edition
DEVTECH
https://tech.devsisters.com/
Thank You
고맙습니다
謝謝
Danke
Merci
Obrigado
ありがとう
Tänan

More Related Content

Similar to [BRK40017] 기존 IIS/ASP.NET 쇼핑몰 애플리케이션을 Kubernetes로 옮기기 / Move your existing IIS/ASP.NET eShop Application to Kubernetes

[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for BeginnerOpenStack Korea Community
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online SeriesAmazon Web Services Korea
 
락플레이스 OpenShift Q&A 토크쇼 발표자료
락플레이스 OpenShift Q&A 토크쇼 발표자료락플레이스 OpenShift Q&A 토크쇼 발표자료
락플레이스 OpenShift Q&A 토크쇼 발표자료rockplace
 
Deployment techniques for cloud native
Deployment techniques for cloud nativeDeployment techniques for cloud native
Deployment techniques for cloud nativeAlex Jeong
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1Ji-Woong Choi
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetesSangSun Park
 
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례NAVER LABS
 
Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호용호 최
 
K8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_postK8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_postInho Kang
 
Nexclipper_1905_summary_kor
Nexclipper_1905_summary_korNexclipper_1905_summary_kor
Nexclipper_1905_summary_korJinyong Kim
 
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항rockplace
 
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)Amazon Web Services Korea
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos uEngine Solutions
 
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​Jung Hyun Nam
 
애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축rockplace
 
[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래NAVER D2
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1Ji-Woong Choi
 
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편negabaro
 
[221] docker orchestration
[221] docker orchestration[221] docker orchestration
[221] docker orchestrationNAVER D2
 

Similar to [BRK40017] 기존 IIS/ASP.NET 쇼핑몰 애플리케이션을 Kubernetes로 옮기기 / Move your existing IIS/ASP.NET eShop Application to Kubernetes (20)

[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
[OpenInfra Days Korea 2018] K8s workshop: Kubernetes for Beginner
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
 
락플레이스 OpenShift Q&A 토크쇼 발표자료
락플레이스 OpenShift Q&A 토크쇼 발표자료락플레이스 OpenShift Q&A 토크쇼 발표자료
락플레이스 OpenShift Q&A 토크쇼 발표자료
 
Deployment techniques for cloud native
Deployment techniques for cloud nativeDeployment techniques for cloud native
Deployment techniques for cloud native
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
 
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
 
Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호
 
K8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_postK8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_post
 
Nexclipper_1905_summary_kor
Nexclipper_1905_summary_korNexclipper_1905_summary_kor
Nexclipper_1905_summary_kor
 
Docker Container
Docker ContainerDocker Container
Docker Container
 
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
 
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​
Korea Community Day 2019 - Kubernetes와​ Serverless의 만남 – Knative​
 
애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축애플리케이션 최적화를 위한 컨테이너 인프라 구축
애플리케이션 최적화를 위한 컨테이너 인프라 구축
 
[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1
 
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
 
[221] docker orchestration
[221] docker orchestration[221] docker orchestration
[221] docker orchestration
 

More from Jung Hyun Nam

[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux
[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux
[KCD2020] Win32 API로 다루는 Windows Subsystem for LinuxJung Hyun Nam
 
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...Jung Hyun Nam
 
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...Jung Hyun Nam
 
Windows Kubernetes Bootstrapping and Operations
Windows Kubernetes Bootstrapping and OperationsWindows Kubernetes Bootstrapping and Operations
Windows Kubernetes Bootstrapping and OperationsJung Hyun Nam
 
코딩이랑 무관합니다만, 2019년 6월 발표 자료
코딩이랑 무관합니다만, 2019년 6월 발표 자료코딩이랑 무관합니다만, 2019년 6월 발표 자료
코딩이랑 무관합니다만, 2019년 6월 발표 자료Jung Hyun Nam
 
Windows Kubernetes Deep Dive
Windows Kubernetes Deep DiveWindows Kubernetes Deep Dive
Windows Kubernetes Deep DiveJung Hyun Nam
 
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축Jung Hyun Nam
 
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발Jung Hyun Nam
 
Journey to Windows Kubernetes
Journey to Windows KubernetesJourney to Windows Kubernetes
Journey to Windows KubernetesJung Hyun Nam
 

More from Jung Hyun Nam (9)

[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux
[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux
[KCD2020] Win32 API로 다루는 Windows Subsystem for Linux
 
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...
 
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...
 
Windows Kubernetes Bootstrapping and Operations
Windows Kubernetes Bootstrapping and OperationsWindows Kubernetes Bootstrapping and Operations
Windows Kubernetes Bootstrapping and Operations
 
코딩이랑 무관합니다만, 2019년 6월 발표 자료
코딩이랑 무관합니다만, 2019년 6월 발표 자료코딩이랑 무관합니다만, 2019년 6월 발표 자료
코딩이랑 무관합니다만, 2019년 6월 발표 자료
 
Windows Kubernetes Deep Dive
Windows Kubernetes Deep DiveWindows Kubernetes Deep Dive
Windows Kubernetes Deep Dive
 
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축
 
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발
BRK3738 - Azure Container Instance로 시작하는 간편한 서버리스 컨테이너 개발
 
Journey to Windows Kubernetes
Journey to Windows KubernetesJourney to Windows Kubernetes
Journey to Windows Kubernetes
 

[BRK40017] 기존 IIS/ASP.NET 쇼핑몰 애플리케이션을 Kubernetes로 옮기기 / Move your existing IIS/ASP.NET eShop Application to Kubernetes