BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축Jung Hyun Nam
이 세션에서는 Windows Kubernetes 클러스터를 구축하는 방법에 대해 자세히 설명하고 Windows 노드와 Linux 노드를 동시에 구성 할 수있는 하이브리드 Kubernetes 클러스터와 함께 Polyglot DevOps 환경을 활용하는 예제를 제공합니다.
Windows 기반 노드를 Linux 기반 노드로 구성된 기존 Kubernetes 클러스터에 통합하여 복잡한 응용 프로그램을 호스팅하는 방법을 배울 수 있습니다.
Windows Kubernetes Bootstrapping and OperationsJung Hyun Nam
이 슬라이드는 Kubernetes Korea User Group 밋업 프레젠테이션 (2019년 7월 30일)에 발표한 내용입니다.
This slide was released in the Kubernetes Korea User Group MAKEUP PRESENTATION (July 30, 2019).
Talk about Kubernetes cluster on baremetal servers for serve internal services.
Sharing my experiences about setup and manage kubernetes cluster on premise.
At first, start with single master kubernetes cluster and enhanced by many opensource softwares.
Add more master nodes for increase server availability.
Use Rook, MetalLB, Ceph, mysql-operator and more opensource projects.
BRK3713 - Microsoft Azure에서 Windows와 Linux를 동시에 사용하는 하이브리드 Kubernetes 클러스터 구축Jung Hyun Nam
이 세션에서는 Windows Kubernetes 클러스터를 구축하는 방법에 대해 자세히 설명하고 Windows 노드와 Linux 노드를 동시에 구성 할 수있는 하이브리드 Kubernetes 클러스터와 함께 Polyglot DevOps 환경을 활용하는 예제를 제공합니다.
Windows 기반 노드를 Linux 기반 노드로 구성된 기존 Kubernetes 클러스터에 통합하여 복잡한 응용 프로그램을 호스팅하는 방법을 배울 수 있습니다.
Windows Kubernetes Bootstrapping and OperationsJung Hyun Nam
이 슬라이드는 Kubernetes Korea User Group 밋업 프레젠테이션 (2019년 7월 30일)에 발표한 내용입니다.
This slide was released in the Kubernetes Korea User Group MAKEUP PRESENTATION (July 30, 2019).
Talk about Kubernetes cluster on baremetal servers for serve internal services.
Sharing my experiences about setup and manage kubernetes cluster on premise.
At first, start with single master kubernetes cluster and enhanced by many opensource softwares.
Add more master nodes for increase server availability.
Use Rook, MetalLB, Ceph, mysql-operator and more opensource projects.
데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
도커부터 시작하여 쿠버네티스까지 각 서비스의 기능 및 구성요소에 대해 자세히 소개해 드립니다 | Learn more about the features and components of each service, starting with a Docker and ending with Kubernetes.
도커부터 시작하여 네이버클라우드플랫폼 쿠버네티스 서비스 활용안까지 전 과정을 소개해 드립니다. | From Docker to Naver Cloud Platform Kubernetes Service, we will introduce you to the entire process.
데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
도커부터 시작하여 쿠버네티스까지 각 서비스의 기능 및 구성요소에 대해 자세히 소개해 드립니다 | Learn more about the features and components of each service, starting with a Docker and ending with Kubernetes.
도커부터 시작하여 네이버클라우드플랫폼 쿠버네티스 서비스 활용안까지 전 과정을 소개해 드립니다. | From Docker to Naver Cloud Platform Kubernetes Service, we will introduce you to the entire process.
[ CB-Ladybug - 멀티클라우드 애플리케이션 실행환경 통합 관리 (Multi-Cloud Application Execution Environment Integration Management) ]
- CB-Ladybug 개요 및 구조
- CB-Ladybug 개발 방향 및 제공 서비스
- CB-Ladybug 특징 및 기대 효과
- CB-Ladybug 구조 및 기술 현황
- CB-Ladybug 개발 로드맵
# 발표영상(YouTube) : https://youtu.be/_gmC83zmd2c
# 발표자료(GitHub) : https://github.com/cloud-barista/docs/blob/master/openseminar/v0.6.0-cafelatte/ppt_files/06._Multi%20-Cloud_Application_Execution_Environment_Integration_Management(CB-Ladybug).pdf
----------------------------------------------------------------------------------------------------------
# Cloud-Barista Community Homepage : https://cloud-barista.github.io
# Cloud-Barista Community GitHub : https://github.com/cloud-barista
# Cloud-Barista YouTube channel : https://cloud-barista.github.io/youtube
# Cloud-Barista SlideShare : https://cloud-barista.github.io/slideshare
네이버 클라우드 플랫폼의 Kubernetes Service(NKS)에서 Pod들의 오토스케일을 적용하는 방법에 대해서 소개합니다 | Introduce how to apply autoscale of Pods in the Kubernets Service (NKS) of Naver Cloud Platform
사례들로 알아보는 컨테이너, 언제 어떻게 쓰면 좋을까? – 김성수 AWS 솔루션즈 아키텍트, 허준 AWS 어카운트 매니저, 이창명 선데이토...Amazon Web Services Korea
컨테이너를 활용할 수 있는 Workload는 정해져 있는 걸까? 이제는 주변에서 쉽게 보고 들을 수 있는 컨테이너, 하지만 정작 내가 쓰려면 어떻게 써야 할지 감을 잡기 어려운 것도 사실이죠. 유명 게임, 웹 서비스에서 컨테이너를 어떻게, 왜 쓰게 되었는지를 알아봅니다. 그리고 컨테이너에 올리는 작업의 특성을 파악하면 활용할수 있는 팁들까지, 실사례를 통해서 알아봅니다!
2021년 11월 18일(목)
- 14:00 ~ 15:00 MySQL Operator for Kubernetes
: Kubernetes 환경에서 MySQL에 대한 더 쉬운 운영
- 15:00 ~ 15:15 MySQL HA and Auto-Failover
: MySQL replication과 오픈소스 MHA를 통한 고가용성 확보
[ CB-Ladybug - 멀티클라우드 애플리케이션 실행환경 통합 관리 (Multi-Cloud Application Execution Environment Integration Management) ]
- CB-Ladybug 개요 및 구조
- CB-Ladybug 개발 방향 및 제공 서비스
- CB-Ladybug 특징 및 기대 효과
- CB-Ladybug 구조 및 기술 현황
- CB-Ladybug 개발 로드맵
# 발표영상(YouTube) : https://youtu.be/VDns6ZhiwLs
---------------------------------------------------------------------------------------------
# Cloud-Barista Community Homepage : https://cloud-barista.github.io
# Cloud-Barista Community GitHub : https://github.com/cloud-barista
# Cloud-Barista YouTube channel : https://youtube.com/@cloud-barista
# Cloud-Barista SlideShare : https://cloud-barista.github.io/slideshare
Cloud market trends, what is kubernets? (Korean)DonghwanKim85
As of early last year, Kubernetis has become the mainstream cloud market.
In addition, major cloud vendors such as Amazon, Google, Azure, and others have all prepared this seminar because of the competitive support that IBM and Cisco support for the container management environment and because of the increasing standard of Cubernetis.
[THR20007] WSL v2와 Rancher K3S로 빠르게 로컬 쿠버네티스 클러스터 만들기 / Quickly create a loca...Jung Hyun Nam
Demo videos available at https://1drv.ms/u/s!Aj231qrFhIQxqbxbJCrSsQw443FOoA?e=nYebBM
이 세션에서는 Windows 10의 다음 버전에 포함될 WSL v2를 이용하여 로컬에서 빠르게 구축할 수 있는 리눅스 Kubernetes 클러스터를 만들고 테스트할 수 있는 방법을 상세하게 설명합니다.
In this session, I will detail how you can create and test a Linux Kubernetes cluster that you can build locally quickly using WSL v2, which will be included in the next version of Windows 10.
[BRK40017] 기존 IIS/ASP.NET 쇼핑몰 애플리케이션을 Kubernetes로 옮기기 / Move your existing II...Jung Hyun Nam
Demo videos available at https://1drv.ms/u/s!Aj231qrFhIQxqbxbJCrSsQw443FOoA?e=nYebBM
이 세션에서는 IIS/ASP.NET 쇼핑몰 컨테이너 애플리케이션을 Azure AKS Engine으로 구축한 Kubernetes 클러스터로 마이그레이션하는 과정을 상세하게 살펴봅니다. Windows 기반으로 컨테이너화한 애플리케이션이 준비되어있으면 바로 활용할 수 있도록 내용을 구성하였습니다.
In this session, I will take a detailed look at migrating an IIS/ASP.NET shopping mall container application to a Kubernetes cluster built with Azure AKS Engine. If you have a Windows-based containerized application, you can use it immediately.
[BRK30136] Windows 기반 백엔드 개발자를 위한 컨테이너 시작하기 / Introduction to Containers For ...Jung Hyun Nam
Demo videos available at https://1drv.ms/u/s!Aj231qrFhIQxqbxbJCrSsQw443FOoA?e=nYebBM
이 세션에서는 Windows 기반 백엔드 애플리케이션 개발자들이 기존 백엔드 애플리케이션이나 명령줄 애플리케이션을 Windows 컨테이너 기반으로 마이그레이션하는 방법을 상세하게 설명합니다.
In this session, I will detail how Windows-based back-end application developers can migrate their existing back-end or command-line applications to a Windows container base.
7. Azure Container Instances (ACI)
서버 관리 없이 컨테이너를 쉽게 생성할 수 있습니다.
컨테이너 단위로
초당 청구되는 과금 체계
하이퍼바이저 격리를 통
한
안전한 실행 환경
서버 없이
컨테이너를
실행할 수 있습니다.
8. ACI에 대한 이해
• Kubernetes의 Pod과 개념적
으로 유사함
• 컨테이너 그룹 안에 하나 이상
의 컨테이너 존재 (App +
Sidecar)
9. 할당량에 대한 정보
• 구독 당 100개의 컨테이너 그룹 사용 가능
• 컨테이너 그룹 당 60개의 컨테이너, 20개의 볼륨 사용 가능
• IP당 포트는 5개까지 생성 가능
• 컨테이너 로그는 실행 중일 때 4MB, 멈추었을 때 16KB 또는
1000줄까지 보관 가능
• 시간 당 300개까지, 5분 당 100개 컨테이너 생성/삭제 가능
11. Virtual Node & Virtual Kubelet
• Kubernetes는 다수의 Node와 각 Node에서 실행되는 Pod으로
구성된 클러스터 집합
• 원래 Node는 Kubeadm 등의 수단을 이용하여 클러스터 내부의
등록 명부인 ETCD 데이터베이스에 정보를 등록해야 함
12. Virtual Node & Virtual Kubelet (Cont.)
• 하지만 실제 Node 대신 Serverless Container 서비스를 Node의
대용품으로 생각해볼 수 있지 않을까 하는 참신한 아이디어가
실현됨
• 그것이 바로 Virtual Node이며 Virtual Kubelet이 그 일을 대행
함
• Virtual Kubelet은 하나의 스펙이라고 생각하면 편리함
14. Virtual Kubelet
• Serverless Container를 Kubernetes에 통합하고 함께 사용할 수
있도록 제공
• Azure Container Instance, AWS Fargate, Alibaba Cloud ECI,
HashiCorp Nomad 등 여러 Provider 연동을 지원
15. 기존과 무엇이 달라지는가
• App 개발자 (Deployment YAML 파일 작성자) 입장에서는 달라
질 것이 없으며, 클러스터 관리자가 가상 노드를 추가하는 것
• 네트워크 서브넷을 공유해야 한다는 조건이 없다면, 공인 IP를
할당받는 가상의 Pod을 서비스 한도 내에서 제한없이 추가/제
거 가능
• 네트워크 서브넷 공유가 필요한 경우는 조건이 서로 맞아야 함
16. ACI 과금 체계
• 동남아시아 Region 기준
• 1GB/초당 0.0017276원, 1CPU/초당 0.0158076원
• Windows 컨테이너인 경우 1CPU/초당 0.0134958원 추가
18. 오늘 살펴보려는 것
• Virtual Kubelet 표준을 지원하는 Azure ACI Connector를
Docker for Desktop에 설치해서 활용하기
• 이를 통해 AKS 없이 Linux와 Windows Pod을 쉽게 배포하고 테스트할
수 있도록 만들 것입니다.
19. 준비할 것
• Azure Subscription
• Azure CLI
• Kubernetes CLI
• Helm CLI
• Docker for Desktop v2.0 이상
20. Step 1 – Docker for Desktop 설정 변경
• Linux 컨테이너 모드에서만 사
용 가능함
• Kubernetes 지원 활성화 체크
후 확인
21. Step 2 – Context 확인 및 선택
• kubectl config get-contexts
• kubectl config use-context docker-for-desktop
22. Step 3 - Master Cluster 주소 확인
• kubectl cluster-info
• $env:MASTER_URI=“…"
23. Step 4 - Subscription ID 획득
• az account list
• $env:AZURE_SUBSCRIPTION_ID=“…"
24. Step 5 - ACI용 Resource Group 생성
• $env:ACI_REGION=“…"
• $env:AZURE_RG=“…"
• az group create --name $env:AZURE_RG --location
$env:ACI_REGION
25. Step 6 - 서비스 사용자 (Service Principal)
• az ad sp create-for-rbac --name … -o table
• $env:AZURE_TENANT_ID=“…"
• $env:AZURE_CLIENT_ID=“…"
• $env:AZURE_CLIENT_SECRET=“…"
35. Limitations
• Windows 컨테이너에 관한 제약이 큰 편
• 아직 Windows Server 2016 컨테이너만 지원
• Windows 컨테이너의 크기가 큰 탓에 첫 시동이 늦음 (약 4GB 이미지)
(!!)
• Docker for Windows에서의 버그
• kubectl exec 명령을 실행한 후에 로컬 Master 서버와 연결이 끊어짐
• https://github.com/virtual-kubelet/virtual-kubelet/issues/556
36. 더 찾아보기
• 노드를 사용해서 인프라를 확장하는 것보다 더 빠르게 적시에
인프라를 증설할 수 있는 방법으로 AKS에 ACI를 더하기도 합니
다.
• Virtual Kubelet을 이용한 Burst Traffic 소화
• https://github.com/Azure-Samples/virtual-kubelet-aci-
burst/blob/master/Bursting%20Video.mp4