커뮤니티 추가 기능
커뮤니티 추가 기능
AWS API를 사용해 Kubernetes Metrics Server 같은 커뮤니티 추가 기능을 설치할 수 있습니다. 커뮤니티 추가 기능을 Amazon EKS 추가 기능으로 설치해 여러 클러스터에서 소프트웨어를 유지 관리하는 복잡성을 줄이도록 선택할 수 있습니다.
예를 들어 AWS API, CLI, Management Console을 사용해 커뮤니티 추가 기능을 설치할 수 있습니다. 클러스터 생성 중에 커뮤니티 추가 기능을 설치할 수 있습니다.
커뮤니티 추가 기능은 기존 Amazon EKS 추가 기능과 같은 방식으로 관리합니다. 커뮤니티 추가 기능은 기존 추가 기능과 달리 고유한 지원 범위를 가집니다.
참고
커뮤니티 추가 기능 사용은 사용자의 재량에 달려 있습니다. 사용자와 AWS 사이의 공동 책임 모델의 일부로, 이러한 타사 플러그인에 대해 클러스터에 무엇을 설치하는지 이해할 것으로 기대됩니다. 또한 커뮤니티 추가 기능이 클러스터 보안 요구를 충족하는지도 사용자 책임입니다. 자세한 내용은 EKS에 배포된 소프트웨어 지원을 참조하세요.
커뮤니티 추가 기능은 AWS가 빌드하지 않습니다. AWS는 커뮤니티 추가 기능의 버전 호환성만 검증합니다. 예를 들어 클러스터에 커뮤니티 추가 기능을 설치하면 AWS는 클러스터의 Kubernetes 버전과 호환되는지 확인합니다.
중요하게, AWS는 커뮤니티 추가 기능에 대해 전체 지원을 제공하지 않습니다. AWS는 AWS API로 수행되는 수명 주기 작업(예: 추가 기능 설치 또는 추가 기능 삭제)만 지원합니다.
커뮤니티 추가 기능에 대한 지원이 필요하면 기존 프로젝트 리소스를 활용하세요. 예를 들어 프로젝트의 저장소에 GitHub 이슈를 만들 수 있습니다.
출처: 문서
본문
추가 기능 유형 결정
AWS CLI를 사용해 Amazon EKS 추가 기능의 유형을 결정할 수 있습니다.
다음 CLI 명령을 사용해 추가 기능에 대한 정보를 가져옵니다. metrics-server를 원하는 추가 기능 이름으로 바꿀 수 있습니다.
aws eks describe-addon-versions --addon-name metrics-server
CLI 출력에서 owner 필드를 검토합니다.
{
"addons": [
{
"addonName": "metrics-server",
"type": "observability",
"owner": "community",
"addonVersions": [
owner 값이 community이면 추가 기능은 커뮤니티 추가 기능입니다. AWS는 추가 기능 설치, 업데이트, 제거에 대한 지원만 제공합니다. 추가 기능 자체의 기능과 동작에 관한 질문이 있다면 GitHub 이슈 같은 커뮤니티 리소스를 사용하세요.
커뮤니티 추가 기능 설치 또는 업데이트
다른 Amazon EKS 추가 기능과 같은 방식으로 커뮤니티 추가 기능을 설치하거나 업데이트합니다.
- Amazon EKS 추가 기능 생성
- Amazon EKS 추가 기능 업데이트
- 클러스터에서 Amazon EKS 추가 기능 제거
사용 가능한 커뮤니티 추가 기능
Amazon EKS에서 다음 커뮤니티 추가 기능을 사용할 수 있습니다.
- Kubernetes Metrics Server
- kube-state-metrics
- Prometheus Node Exporter
- Cert Manager
- External DNS
- Fluent Bit
Kubernetes Metrics Server
Kubernetes Metrics Server는 Kubernetes 내장 자동 스케일링 파이프라인을 위한 확장 가능하고 효율적인 컨테이너 리소스 메트릭 소스입니다. Kubelets에서 리소스 메트릭을 수집하고 Horizontal Pod Autoscaler와 Vertical Pod Autoscaler가 사용하도록 Metrics API를 통해 Kubernetes apiserver에 노출합니다.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | metrics-server |
| 네임스페이스 | kube-system |
| 문서 | GitHub Readme |
| 서비스 계정 이름 | 없음 |
| 관리형 IAM 정책 | 없음 |
| 사용자 지정 IAM 권한 | 없음 |
kube-state-metrics
클러스터 수준 메트릭을 생성하고 노출하는 추가 기능 에이전트.
Kubernetes API의 Kubernetes 객체 상태는 메트릭으로 노출될 수 있습니다. kube-state-metrics라는 추가 기능 에이전트는 Kubernetes API 서버에 연결하고 클러스터의 개별 객체 상태에서 생성된 메트릭이 포함된 HTTP 엔드포인트를 노출할 수 있습니다. 레이블과 주석 같은 객체 상태, 시작 및 종료 시간, 객체가 현재 있는 상태 또는 단계(phase) 등 객체 상태에 대한 다양한 정보를 노출합니다.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | kube-state-metrics |
| 네임스페이스 | kube-state-metrics |
| 문서 | Kubernetes Docs의 Kubernetes Object States용 메트릭 |
| 서비스 계정 이름 | 없음 |
| 관리형 IAM 정책 | 없음 |
| 사용자 지정 IAM 권한 | 없음 |
Prometheus Node Exporter
Go로 작성되고 플러그 가능한 메트릭 수집기가 포함된 *NIX 커널이 노출하는 하드웨어 및 OS 메트릭용 Prometheus 익스포터. Prometheus Node Exporter는 광범위한 하드웨어 및 커널 관련 메트릭을 노출합니다.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | prometheus-node-exporter |
| 네임스페이스 | prometheus-node-exporter |
| 문서 | Prometheus Docs의 Node Exporter로 Linux 호스트 메트릭 모니터링 |
| 서비스 계정 이름 | 없음 |
| 관리형 IAM 정책 | 없음 |
| 사용자 지정 IAM 권한 | 없음 |
Cert Manager
Cert Manager를 사용해 인증서의 생성과 갱신을 관리할 수 있습니다.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | cert-manager |
| 네임스페이스 | cert-manager |
| 문서 | Cert Manager Docs |
| 서비스 계정 이름 | 없음 |
| 관리형 IAM 정책 | 없음 |
| 사용자 지정 IAM 권한 | 없음 |
External DNS
External DNS EKS 추가 기능을 사용해 Kubernetes 리소스를 통해 Route53 DNS 레코드를 관리할 수 있습니다.
External DNS 권한은 관리하려는 호스팅 영역에 대한 route53:ChangeResourceRecordSets, route53:ListHostedZones, route53:ListResourceRecordSets로 축소할 수 있습니다.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | external-dns |
| 네임스페이스 | external-dns |
| 문서 | GitHub Readme |
| 서비스 계정 이름 | external-dns |
| 관리형 IAM 정책 | arn:aws:iam::aws:policy/AmazonRoute53FullAccess |
| 사용자 지정 IAM 권한 | 없음 |
Fluent Bit
Fluent Bit은 가볍고 고성능인 로그 프로세서이자 포워더입니다. 다양한 소스에서 데이터/로그를 수집하고 통합한 뒤 Amazon CloudWatch Logs, Amazon S3, Amazon Data Firehose를 포함한 여러 대상으로 보낼 수 있습니다. Fluent Bit은 성능과 리소스 효율을 염두에 두고 설계되어 Kubernetes 환경에 이상적입니다.
이 추가 기능은 기본 구성에서 IAM 권한이 필요하지 않습니다. 그러나 AWS 출력 위치를 구성한다면 이 추가 기능에 IAM 권한을 부여해야 할 수 있습니다. 자세한 내용은 Pod Identities를 사용해 Amazon EKS 추가 기능에 IAM 역할 할당을 참조하세요.
| 속성 | 값 |
|---|---|
| 추가 기능 이름 | fluent-bit |
| 네임스페이스 | fluent-bit |
| 문서 | Fluent Bit Documentation |
| 서비스 계정 이름 | fluent-bit |
| 관리형 IAM 정책 | 없음 |
| 사용자 지정 IAM 권한 | 없음 |
고지 사항 보기(View Attributions)
커뮤니티 추가 기능에 대한 오픈 소스 고지 사항과 라이선스 정보를 다운로드할 수 있습니다.
고지 사항을 다운로드하려는 추가 기능의 이름과 버전을 결정합니다.
다음 명령을 이름과 버전으로 업데이트합니다.
curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions///attributions.zip
예를 들면:
curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions/kube-state-metrics/v2.14.0-eksbuild.1/attributions.zip
명령을 사용해 파일을 다운로드합니다.
이 zip 파일을 사용해 라이선스 고지 사항에 대한 정보를 봅니다.