본문 바로가기
CLOUD/AWS

AWS EKS node(managed vs self-managed vs Fargate)

by Rainbound-IT 2021. 8. 11.
반응형

 

AWS의 관리형 Kubernetes를 위한 추가 옵션인 Amazon EKS on AWS Fargate를 도입했습니다. 이 기능을 통해 사용자는 EKS 클러스터에 대한 EC2 인스턴스를 생성 및 관리하지 않고도 Fargate를 통해 Kubernetes 포드를 실행할 수 있습니다.

 

 

개발자는 eksctl을 사용하여 EKS 클러스터를 배포할 수 있습니다. 이 타사 도구는 관리형 제어 평면 및 비관리형 작업자 노드를 포함하여 전체 Kubernetes 인프라를 프로비저닝할 수 있습니다. 필요한 경우 후속 수정을 수행할 수도 있습니다. kubectl을 사용하여 Kubernetes 클러스터에 대해 실제 명령을 실행하고 클러스터 내에서 컨테이너화된 리소스를 관리합니다. Kubernetes 버전에 관계없이 표준 도구입니다.

또는 IT 팀이 EC2 인스턴스에서 자체 호스팅 Kubernetes 환경을 실행할 수 있습니다. Kubernetes 클러스터를 만들고 관리하는 데 도움이 되는 kops와 같은 도구를 사용하여 배포합니다. 이 경우 컨트롤 플레인이 표시되고 사용자가 사용할 수 있으며, 사용자는 전용 EC2 인스턴스에서 실행되는 구성 요소를 볼 수 있습니다. 또한 관리자는 모든 것을 수동으로 패치하고 유지 관리해야 하므로 많은 경우 불편할 수 있습니다.

 

 

 

Amazon EKS 노드 Amazon EKS 클러스터는 세 가지 기본 방법을 사용하여 포드를 예약할 수 있습니다.


자체 관리 노드 

EKS의 "노드"는 Kubernetes 포드를 예약할 수 있는 Amazon EC2 인스턴스입니다. 포드는 EKS 클러스터의 API 엔드포인트에 연결됩니다. 노드는 노드 그룹으로 구성됩니다. 노드 그룹의 모든 EC2 인스턴스는 다음과 같아야 합니다. Amazon 인스턴스 유형Amazon 머신 이미지(IAM)IAM 역할 클러스터에 여러 노드 그룹이 있을 수 있으며, 각 노드 그룹은 서로 다른 유형의 인스턴스 또는 역할이 다른 인스턴스를 나타냅니다.


관리형 노드 그룹 

Amazon EKS는 관리형 노드 그룹에 자동화된 수명 주기 관리를 제공합니다. 이를 통해 한 번의 작업으로 노드를 자동으로 생성, 업데이트 또는 종료할 수 있습니다. EKS는 EKS와 함께 사용하도록 최적화된 Amazon의 최신 Linux AMI를 사용합니다. 노드를 종료하면 EKS는 서비스 중단이 없는지 확인하기 위해 노드를 정상적으로 배출합니다. 관리 목적으로 전체 노드 그룹에 Kubernetes 레이블을 쉽게 적용할 수 있습니다. 관리형 노드는 Amazon EKS 서비스에서 관리하는 EC2 Auto Scaling 그룹을 사용하여 운영됩니다. 그룹을 실행해야 하는 가용성 영역을 정의할 수 있습니다. EKS 콘솔, eksctl, Amazon CLI, Amazon API 또는 CloudFormation을 포함한 Amazon 자동화 도구를 포함하여 관리형 노드 그룹을 시작하는 방법에는 여러 가지가 있습니다.


Amazon Fargate 

서버리스 컨테이너 서비스인 Amazon Fargate를 사용하여 기본 서버 인프라를 관리하지 않고 작업자 노드를 실행할 수 있습니다. Fargate는 사용된 실제 vCPU 및 메모리에 대해서만 비용을 청구합니다. 클러스터 노드에 실제로 필요한 것에 따라 더 많은 컴퓨팅 리소스를 프로비저닝합니다.

 

Managed vs Self-managed Node Groups

Why: AWS introduced managed node groups at re:Invent 2019 to simplify the creation and management of EKS node groups. The original method of creating EKS node groups, by creating an AWS Autoscaling Group configured for EKS, can also still be used. Both types of node groups have advantages and disadvantages.

Managed Node Groups:

Benefits

  • Easier to create
  • Some reduction of user management requirements during node version patching/upgrades by draining nodes of pods and replacing them

Drawbacks and limitations

  • Every node gets a public IP address and must be able to send VPC egress traffic to join the cluster, even if the node is on a private subnet and the EKS cluster has a private Kubernetes API endpoint.
  • Greatly reduced user options for instance and node configuration, such as not allowing custom instance user data (often used for installing third-party monitoring agents or other system daemons) or supporting the addition of automatic node taints. In particular, the inability to modify instance user data has the side effect of leaving customization of the cluster networking unsupported for managed node groups and makes it very difficult to install monitoring agents directly on the nodes.
  • Only Amazon Linux is supported.

Self-managed Node Groups:

Benefits

  • User has much more control over node and network configuration
  • Supports Amazon Linux, Ubuntu, or even custom AMIs for node image

Drawbacks

  • Node group creation is not as automated as it is for managed node groups. Tools like eksctl can automate much of this work, however.
  • Requires manually replacing nodes or migrating to new node groups during node version upgrades. eksctl or other automation can ease this workload.

 

 

 

 

 

Reference

https://cloud.netapp.com/blog/aws-cvo-blg-aws-eks-architecture-clusters-nodes-and-networks

 

AWS EKS Architecture: Clusters, Nodes, and Networks

Learn how Amazon EKS works and discover key components of the AWS EKS Architecture including clusters, nodes, and networking.

cloud.netapp.com

EKS Fargate and Node managed diffrence

 

https://www.mobiquity.com/insights/four-differences-between-eks-fargate-and-node-managed

 

Four differences between EKS Fargate and Node Managed

Four differences between EKS Fargate and Node Managed

www.mobiquity.com

 

 

https://www.stackrox.com/post/2020/03/guide-to-eks-cluster-design-for-better-security/

 

Guide to Designing EKS Clusters for Better Security | StackRox: Kubernetes and container security solution

In this blog post, we will provide a set of guidelines to help you design your EKS clusters without compromising security.

www.stackrox.com

 

 

fargate

 

https://www.slideshare.net/awskr/aws-fargate-on-eks

 

AWS Fargate on EKS 실전 사용하기

2020년 1월 21일 세종대학교에서 열린 AWS Community Day의 발표 내용입니다. Fargate on EKS의 사용 방법과 제약 사항, 특징 등을 설명합니다.

www.slideshare.net

 

eks guide

https://aws.github.io/aws-eks-best-practices/reliability/docs/

 

Home - EKS Best Practices Guides

Amazon EKS Best Practices Guide for Reliability This section provides guidance about making workloads running on EKS resilient and highly-available How to use this guide This guide is meant for developers and architects who want to develop and operate high

aws.github.io

 

반응형

'CLOUD > AWS' 카테고리의 다른 글

AWS EC2 SSH 연결 할때 네트워크 설정  (0) 2021.08.12
AWS 할만한 아키텍처들  (0) 2021.08.11
AWS EKS 애플리케이션 배포(노드생성 및 배포)  (0) 2021.08.11
AWS EKS 와 kubectl 연결 문제  (0) 2021.08.11
AWS CloudFormation  (0) 2021.08.10

댓글