본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

Kubergrunt

0

Kubergrunt는 Gruntwork에서 유지 관리하는 독립형 Go 바이너리로, Terraform, Helm, Kubectl 사이의 격차를 해소하기 위한 명령어 모음을 제공합니다.

개발데이터베이스코딩

소개

Kubergrunt는 Gruntwork에서 유지 관리하는 독립형 Go 바이너리로, Terraform, Helm, Kubectl 사이의 격차를 해소하기 위한 명령어 모음을 제공합니다. 이 도구는 Amazon EKS 클러스터 관리를 위한 다양한 기능을 포함하며, 특히 kubectl 인증 설정, Helm 및 TLS 인증서 관리, 쿠버네티스 시크릿 생성을 지원합니다. Windows 사용자를 포함한 여러 플랫폼에서 사용할 수 있으며, Chocolatey를 통해 간편하게 설치할 수 있습니다.

상세정보

EKS 클러스터 인증 및 설정

kubergrunt eks verify 명령어를 사용하면 EKS 클러스터가 ACTIVE 상태인지 및 Kubernetes API 서버 엔드포인트가 응답하는지 확인할 수 있습니다. –wait 옵션을 추가하면 클러스터가 준비될 때까지 재시도를 수행하며, 최대 재시도 횟수와 간격을 구성할 수 있습니다.

kubectl 인증 구성

kubergrunt eks configure 명령어는 eks-cluster-arn을 기반으로 kubectl을 설정하여 특정 EKS 클러스터에 인증할 수 있도록 합니다. 이 과정은 kubergrunt eks token 명령어를 활용하여 AWS IAM 자격 증명을 통해 인증 토큰을 가져옵니다.

TLS 인증서 및 시크릿 관리

kubergrunt tls gen 명령어는 새로운 TLS 인증서 키 쌍을 생성하고, 이를 쿠버네티스 시크릿으로 저장할 수 있습니다. CA 키 쌍 생성 및 기존 CA를 사용한 서명된 TLS 키 쌍 발급이 모두 지원되며, 네임스페이스와 시크릿 이름을 지정할 수 있습니다.

다운로드·설치 방법

Windows 사용자는 Chocolatey를 통해 kubergrunt를 설치할 수 있습니다. 관리자 권한으로 명령 프롬프트를 열고 다음 명령을 실행합니다:

choco install kubergrunt

이 명령은 최신 버전의 kubergrunt 바이너리를 다운로드하고 설치합니다. 설치 후에는 kubergrunt –version 명령을 통해 버전을 확인할 수 있습니다.

기본 사용법/명령어

EKS 클러스터 인증을 위한 기본 워크플로우는 다음과 같습니다. 먼저, AWS CLI를 통해 인증이 되어 있어야 합니다. 그 후 다음 순서로 명령을 실행합니다:

  1. kubergrunt eks verify –eks-cluster-arn –wait (클러스터 준비 상태 확인)
  2. kubergrunt eks configure –eks-cluster-arn (kubectl 구성)
  3. 이제 kubectl 명령을 통해 클러스터와 상호작용할 수 있습니다.

TLS 시크릿을 생성하려면 다음 예시를 따를 수 있습니다:

# CA 키 쌍 생성
kubergrunt tls gen
–namespace kube-system
–secret-name ca-keypair
–ca
–tls-common-name kiam-ca
–tls-org Gruntwork
–tls-org-unit IT
–tls-city Phoenix
–tls-state AZ
–tls-country US
–secret-annotation “gruntwork.io/version=v1”

# 서명된 TLS 키 쌍 생성
kubergrunt tls gen
–namespace kube-system
–secret-name tls-keypair
–ca-secret-name ca-keypair
–tls-common-name kiam-server
–tls-org Gruntwork
–tls-org-unit IT
–tls-city Phoenix
–tls-state AZ
–tls-country US
–secret-annotation “gruntwork.io/version=v1”

지원 환경·시스템 요구사항

kubergrunt는 Windows, macOS, Linux에서 실행할 수 있는 독립형 바이너리로 제공됩니다. Windows에서는 Chocolatey를 통해 설치할 수 있으며, 다른 플랫폼에서는 GitHub 릴리스 페이지에서 바이너리를 다운로드하거나 Go를 통해 소스에서 빌드할 수 있습니다. 이 도구는 Go로 작성되었으며, 외부 의존성이 최소화되어 있습니다.

최신 버전·업데이트

현재 버전은 0.7.3이며, 최신 릴리스 정보와 변경 사항은 GitHub 저장소의 Releases 페이지에서 확인할 수 있습니다. 이 프로젝트는 시맨틱 버저닝을 따르며, v1.0.0 이전에는 API가 불안정할 수 있음을 명시하고 있습니다.

시스템 요구사항

별도의 시스템 요구사항이 등록되지 않았습니다.