[2022 AWS re:Invent]Kubernetes virtually anywhere, for everyone

세션 유형

Leadership

세션명

Kubernetes virtually anywhere, for everyone

강연자

Join Adam Selipsky, Chief Executive Officer of Amazon Web Services

세션요약자

이종현(JongHyun Lee)

핵심내용 요약
  • Application Modernization (어플리케이션 현대화)
  • Why AWS Kubernetes? (왜 AWS 쿠버네티스를 사용해야 하는가?)
  • Security / Built for production (운영 환경에 대한 보안) 
  • Seamless cloud integrations (빈틈없는 클라우드 연동)
  • Native and upstream (네이티브 와 업스트림)
  • AWS 도입 성공사례
    • [Internet gaming] RIOT GAMES
    • [AL/ML] Aurora
    • [Financial Services]
    • [Travel Services] Expedia Group
    • [Insurance] MassMutual
  • Customer Cost Challenges (인프라 비용 절감을 향한 도전)
    • Karpenter – Cost-efficient compute for Kubernetes
    • AWS Controllers for Kubernetes(ACK)
    • AWS Marketplace software with EKS add-ons
키워드
  1. Kubernetes
  2. AWS seamless Integration
  3. Cost optimize
상세내용
Application Modernization

문제점 그리고 기술적 대안

<Problem>

CIO에 의하면 80%의 개발자들이 어플리케이션 유지보수에 시간이 투자되며, 오로지 20% 만이 현대화에 시간이 소요되어 지고 있습니다.

  • 딜로이트(Deloitte)

<고객 수요>

  • 시장에 대한 빠른 진출
  • TCO 비용 절감
  • 높은 퍼포먼스와 확장성
  • 보안 그리고 격리화(Isolation)

<왜 컨테이너를 통한 현대화를 진행하는가?>

  • 이식성 (Portability)
    • 높은 이식성을 바탕으로 종속성을 탈피하여 어디로든 어플리케이션이 이동/이식될 수 있는 특징을 지녔습니다.
  •  인프라 효율성
    • 어플리케이션 구동에 필요한 리소스들만 구성이 되어있는 컨테이너는 가볍고 빠르게 어플리케이션을 구동하고 운영하는데 있어 큰 장점을 제공합니다.
  •  퍼포먼스
    • 빠른 시작/중단 시간
    • 유연한 Scale 작업
  • 운영 효율성
    • 인프라 관리의 복잡성을 제거하여 비즈니스 로직에만 집중할 수 있습니다.
Why AWS Kubernetes

AWS에서 쿠버네티스 서비스를 사용해야 하는 이유는 다음과 같습니다.

편의성

  • 선언적 & 셀프 힐링
  • 유연함 그리고 확장성

지속성

  • 인프라 규모 및 어느 환경(클라우드, 온프레미스) 와 상관없이 동일한 API 환경을 제공합니다. 온 프레미스에서 운영중인 쿠버네티스 환경에서 사용되는 API들에 대하여 AWS에서도 동일하게 제공합니다.

생태환경

  • CNCF 생태환경에 대한 수백가지의 솔루션을 이용하실 수 있습니다.
  • CNCF 커뮤니티 환경을 통해 다양한 사업자들이 제공하는 오픈소스들을 접하실 수 있습니다. 이러한 다양한 선택지를 통해 클라우드 환경에서 많은 이점을 가져가실 수 있습니다

커뮤니티

  • 기업이 운영하는 기술과 대중적으로 많이 사용되는 기술 스택을 동일한 이점을 통해 커뮤니티의 장점을 가져가실 수 있습니다. 많은 기업들이 쿠버네티스 플랫폼을 이용중에 있으며 쿠버네티스 커뮤니티를 활용함으로써 기업의 이익을 극대화 할 수 있습니다.
Why AWS for kubernetes

1. 최우선시하는 보안

  • CVE(Common Vulnerabilities and Exposures) 를 포함한 정기적인 보안 패치 적용

2. 운영환경을 위한 설계

  • Amazon EKS는 4가지에 대한 쿠버네티스 버전을 지원
  • 워커노드 및 마스터 노드에 대한 자동 업그레이드 지원
  • 리전 레벨 확장이 가능하며 기본적으로 모든 클러스터가 고가용성 설계를 내재하고 있습니다.

3. 빈틈없는 Cloud 연동

  • 수많은 AWS 서비스들과 EKS 서비스를 연동할 수 있습니다. 예를 들어 KMS를 통한 접근 제어라던지 데이터 베이스와의 연동작업과 같이 다양한 서비스들과 연동을 통해 한 층 더 높은 레벨의 서비스를 제공합니다.

4. Native and Upstream

  • “쿠버네티스에 동작하는 모든 것은 EKS에서도 동작합니다.”
  • 쿠버네티스의 Native함과 Upstream 호환성을 보존합니다. 고객들이 쿠버네티스 생태환경에서 어떠한 새로운 것을 발견하고 동작을 원할 때, EKS 서비스에서도 동일한 서비스를 제공하는데 노력하고 있습니다.

5. Committed to Open Source

단순 오픈소스를 보는 것이 아닌 오픈소스의 일부가 되는 것에 관심이 있는 고객들과 더 많은 종류의 활동을 하려고 노력하고 있습니다.

AWS에서는 공통 오픈 소스코드에서 발견되는 보안 취약점을 수정하여 다음 업스트림을 제공하기 위한 많은 노력들을 수행하고 있습니다. AWS는 수많은 CNCF 멤버들을 지원하며 쿠버네티스가 발전하기 위해서는 오픈 소스 커뮤니티가 적합하다고 생각합니다.

아마존이 오픈소스에 기여하는 일: 새로운 코드, 문서화, 테스트, 버그 수정, Best Practice 제공, 보안에 대한 대응

<AWS 글로벌한 접근성>

쿠버네티스 워크로드를 AWS환경에서 실행하는 이유 중 큰 요인중 하나는 글로벌한 접근성입니다.

AWS 클라우드는 전 세계적으로 지리학적으로 다른 96개의 가용영역, 30개의 리전으로 확장되어 있으며 향후 15개의 추가 가용영역, 5개의 리전 확장(캐나다, 호주, 이스라엘, 뉴질랜드, 태국)을 계획중에 있으며 이러한 지속적인 영역 확장은 어느 클라우드 사업자들보다 글로벌 서비스의 고가용성과 더불어 낮은 어플리케이션 레이턴시 제공하는데 있어 큰 기대 효과를 가져다 줍니다.

<2/3 이상의 컨테이너들이 AWS 클라우드 환경에서 운영중입니다.>

클라우드 환경에서 실행되는 2/3의 컨테이너들은 AWS에서 동작중에 있습니다. 이러한 환경속에서 발생하는 다양한 이슈들에 대한 트러블 슈팅 정보들은 AWS에 있어 많은 가치가 있다는 것을 시사합니다.

<고객이 목표하는 것>

  • 레거시 어플리케이션 현대화
    • NET 어플리케이션
    • 홈그라운드 리눅스 어플리케이션
    • 단일 구성 아키텍쳐
  • AI / ML
    • 자율주행 자동차 (물체 추적, 센서 융합)
    • 로봇 (비전, 모션 제어)
    • 모델링, 훈련 및 추측(Inference)
  • 데이터 프로세싱
    • 실시간
    • 용량 축소
    • 배치성 작업
  • 웹 어플리케이션
    • 정적인 웹사이트
    • 복잡한 웹 어플리케이션

AWS EKS 도입 성공 사례

<<Internet gaming: RIOT GAMES>>

(Situation)

빠른 주기의 배포, 대규모 스케일에 대한 감당, 글로벌 서비스 접근성의 수요를 보유하고 있습니다.

Riot는 전 세계 대부분 AWS 리전에 대하여 EKS cluster 구성을 통해 운영중에 있습니다. 전 세계적으로 고객군을 보유하고 있으며 높은 인기도에 대응하기 위해 빠른 규모의 확장이 필요로 하게 되었으며 이러한 상황에 대하여 어려운 난관들을 맞이하게 됩니다.

(Results)

VALORANT and Lengends of Runterra는 월간 1천 4백만명의 Active 플레이어 대상으로 EKS를 통해 서비스를 제공중에 있습니다.

<< AI/ML: Aurora >>

(Situation)

셀프 운전 플랫폼인 “Aurora”를 발전시키기 위해서는 “Aurora”는 머신 러닝, 컴퓨터 비전, 시뮬레이션을 위해 자원 집약적인 환경이 필요로 하게 되었습니다. 또한 확장 가능한 환경이 필요로 하기도 하였습니다.

(Results)

일일 천만 태스크를 감당할 수 있도록 시스템이 확장이 가능하게 되었습니다.

미래에 억만 단위의 태스크를 감당할 수 있도록 할 것입니다.

<<Financial Services>>

(Situation)

클라우드가 제공하는 민첩성과 이점을 바탕으로 25만개의 컨테이너를 통해 1만 5천개의 기술들이 실행되고 있습니다. 이러한 클라우드의 혁신을 통해 인프라 관리에 대한 부담을 덜어내고 싶었습니다.

(Results)

기술자들은 안전하고 확장가능한 솔루션을 체험할 수 있게 되었습니다. 어플리케이션 현대화는 근무자들, 데모, POC&MVP 작업에 대하여 표준이 되었습니다.

MassMutual – AWS 도입 여정

MassMutual은 Private 클라우드 솔루션을 대체하여 2015년도부터 AWS를 이용하기 시작하였습니다.

Mutual은 기업 데이터 분석 플랫폼을 클라우드 네이티브 환경에서 구축을 시작하였으며 일부 레거시 데이터 웨어하우스 제품들을 대체하였습니다.

이러한 실험은 인프라 비용 절감과 운영 효율성 향상에 많은 이점을 가져다 주었을 뿐만 아니라 데이터 분석 및 레포트에 있어 보안적인 많은 도움을 주었습니다.

이러한 이점으로 새로운 비즈니스를 클라우드 환경에서 실행했을 뿐만 아니라 기존 운영중인 비즈니스 서비스들도 천천히 클라우드 환경으로 이전하게 되었으며, 온프레미스 Private Cloud 솔루션을 대체를 통해 디지털 전환을 시작하게 되었습니다.

[다음 단계는?]

  • 표준화
  • 보안 그리고 리스크 관리
  • 클라우드 운영 모델 수립

[결과]

  • 전반적인 인프라 비용을 절감하였으며 운영 복잡성이 감소하였습니다.
  • 100개의 비즈니스 어플리케이션을 110개의 EKS 클러스터를 통해 운영중에 있음
  • 150개의 서비스에 대하여 추가적으로 아마존 환경으로 마이그레이션 할 계획

– 표준화

– 보안 그리고 리스크 관리

– 클라우드 운영 모델 수립

Customer Cost Challenges

Allocate costs across teams and departments
Chargeback / showback
Reporting, budget forecasting and cost optimization.

you want to be able to do show back at least let people understand the impact of the workloads they’re running maybe you do charge back if you’re in a larger Enterprise how do you take this on so for us.

<In-cluster EKS cost management with Kubecost>

Licensed Kubecost features available to EKS customers at no additional cost.

  • Granular cost breakdown by deployment, pod, namespace, and other Kubernetes concepts
  • Support included

Multi-cluster cost visibility and unified reporting(roadmap)

  • Integration With AWS Cost and usage reports for accurate pricing
  • AWS Marketplace integration
Karpenter – Cost-efficient compute for Kubernetes

Karpenter is an intelligent and high-performance Kubernetes compute provisioning and management solution.

Karpenter lets you take full advantage of AWS with its deep integration between Kubernetes and Amazon EC2

<Why Karpenter?>

Responds in seconds when application load changes imporve availability

Kubernetes-native CRDs opinionated defaults minimize operational overhead

Intelligently chooses instance types and consolidates pods to lower compute costs

Carpenter works with all of the resource type including CPU memory and the gpus.

Just for Simplicity of today’s demonstration I am just using a single dimensional data that is CPU.

It calculates all the resource requests bin packs those spots and makes easy to Fleet API calls and then Provisions five of these eight x large instances at one dollar twenty cents per hour the top line that you’re seeing on the top section of the screen shows the total number of the notes and the total CPU.

Use by all of the parts and the total number of the CPUs available across all of the nodes and the percentage of CPU across all of the nodes as well more importantly what you see here is the cluster cost which is four thousand four hundred dollars per month at an average rate of six dollars per hour so let’s go ahead and see what happens.

I’m gonna go ahead and scale it down as you can see the kubernetes goes ahead and deletes those spots but as you see here there has not been a major change to the number of the nodes and also you will see number these nodes are left underutilized and absolutely no changes to the class cost of the cluster it it is constant at four thousand four hundred dollars per month. 

That’s where the powerful feature of carpenter which is called workload consolidation comes into picture so before I move on to showing how consolidation Works let’s take a step back and see how Carpenter makes this all happen what you’re seeing here on the screen is a snippet of the provisioner so provisioner is the main crd and when you install Carpenter.

You also configure a provisioner Amazon eks officially supports AWS provider Carpenter also provides the apis and the specification that you can extend to implement your own provider as well that can work with other Cloud providers.

https://aws.amazon.com/ko/about-aws/whats-new/2021/11/aws-karpenter-v0-5/

which would have been impossible doing so manually we started off cluster cost at 4400 and when we enable the workload consolidation.

The workload cluster cost actually dropped down by 30 percent and finally when we added spot and as in

the extreme space the cluster cost actually dropped down to thirteen hundred dollar giving you a 70 drop in the cluster cost.

AWS Controllers for Kubernetes(ACK)

Harness AWS
Create and use AWS resources directly within your cluster;
improve reliability and uptime at virtually any scale.

Cloud-native control
Kubernetes custom resources and controllers allow you to define the AWS resources your applications need directly within the cluster.

Always up to date
ACK generates automatically using the AWS SDKs, this ensures controllers are up to date with the latest features and functionality.

AWS resources directly inside of your cluster in other words you want to be able to do things in more of a kubernetes native way .

ACK has a whole host of different components that are now available or upcoming soon again.

This is all done in open source you can see the GitHub location down below.
github.com/aws-controllers-k8s

Take a look but this gives you a really nice kubernetes native way to launch AWS Services inside of your clusters and can be a great way for teams to take advantage of the power of AWS.

<<AWS Batch Service Compatible>>

Another area we talked about those higher level Services earlier AWS batch is a great example there’s a lot of these kind of data intensive workloads that have been coming onto EKS.

we just recently launched batch support for eks this gives you a fully managed batch computing solution that is EKS cluster.

Aware it is compatible it will segregate workloads from your batch side outside of other clusters that you may have running in EKS.

Fully Managed batch computing
Multi-cluster aware scheduling
Workload-aware scaling and scheduling
Compatible with any EKS cluster

Use preferred monitoring and governance tooling
Batch manages application isolation from other EKS workloads

Production-ready clusters are more than your code

If you’re launching a cluster it takes more than just your software to run a production cluster, 
There’s a host of other things that you want to have in that cluster that you want to be able to take advantage of in that cluster.
(Software 그 이상 service 제공, Monitoring, Networking, Security, Cost management)

AWS Marketplace software with EKS add-ons

what have we been up to we wanted to bring some of the eks add-on Style of easy deployment to clusters but take it into the AWS Marketplace expose it to the full partner ecosystem and that’s what we’ve done.

Marketplace can be accessible inside of eks through the eks apis inside of eks console so it makes it a much easier seamless experience to take full advantage of our partner software suite.

ISV catalog (53:25)
we have a whole host of other partners actively working to launch within the next 60 to 90 days and a whole host of people behind that looking to get on board.

Our goal make it easier for you to get the workloads and the software necessary in your clusters right out of the gates.

Launch partneres, Coming soon

AWS focus areas

Our Focus areas we continue to focus on the community we think it’s incredibly important from a technology perspective best practices.

This is a common common ask for us how do we give you operational best practices how do we drive that Global availability and hybrid support.

we continue to make investments in these key areas as we’re evolving the product when you’re looking to manage kubernetes at scale you want more smaller clusters right for lots of very good reasons.

Contribution
Funding
Security


Project leadership
Operational best practices


Global availability
Hybrid support
AWS innovations like Batch

how do we give you operational best practices
how do we drive that Global availability and hybrid support

we continue to make investments in these key areas as we’re evolving the product.

Managing Kubernetes at scale

Improved isolation
Multiple clusters improve security isolation, tracking, and management capabilities

Everything scales
Cluster creation, updates, and other lifectycle actions scale linearly

Automation and standards are critical
To enable operations at scale

Fully managed control plane
EKS offers a standard, automatically scaled control plane

Managed compute
Automate and standardize compute provisioning for every cluster, including pre- or post-provisioned compute

Operational tools
Standardized tooling deployments

Single pane of glass
EKS console lets you view and troubleshoot the entire Kubernetes API across all of your clusters from a single location, no matter where they run.


AWS Open source technical field community

Leverage AWS expertise for the open source community.
AWS is active across open source ecosystem.

EKS Blueprints

An open-source framework that allows you to configure and deploy complete clusters.

Infrastructure as code with Terraform and AWS CDK
Based on AWS best practices and recommendations
Integrated with popular K8S tools and services
Fully extensible and customizable

Data on EKS

Open-source patterns that help you deploy data workloads on Amazon EKS

Launching on early 2023

IaC templates
Performance benchmark reports
AWS best practices for data workloads
Deployment examples and architectures

AWS Data Lab for containers

Free service what AWS offer, let you go sit down with experts who will help you kind of get the ball really rolling.

Get yourself to a POC go remove some of those obstacles some of those first challenges that you might be facing as you’re trying to deploy new workloads, trying to ramp up new organizations targeting a new piece of technology data Labs.

A great way to do it come with an idea leave with a solution cool tag-line.

great way to get started and free.

Work backwords from big ideas
Focused, real-world solution building
De-risked path to production

AWS customer enablement

AWS Professional Services
A global network with deep AWS expertise

AWS Specialists
Deep domain experts who support customer adoption

AWS Technology Partners
Third-Party software to help accerlate your business outcomes

AWS Consulting Partners
On-demand help from AWS Certified third-party experts.

Professional Services area they can actually offload your teams if you have some work.

You’d like somebody else to take on we have technology Partners who can help with third-party software components that you can leverage outside of just like the open source stuff we’ve been talking about and we have AWS.

Consulting Partners we can put you in touch with other third parties who specialize in Consulting in areas that are familiar to you maybe you need.

Someone in the Telco space maybe you need somebody who’s really done a lot of work in the financial services space and we have those connections and we’re more than happy to take those on help you get started connect you with the right people.

Leave a Comment