태그 보관물: Helm

The official Kubernetes Helm Chart for Pinpoint APM.

Helm 차트는 Pinpoint의 모든 구성 요소와 종속성을 모듈식 구조로 구성합니다.

  • 핵심 구성 요소: web , collector,hbase
  • 종속성(Bitnami에서): mysql , zookeeper,redis
  • 메트릭 프로필 구성 요소: kafka , pinot(각각의 공식 차트에서)

이 global.metric.enabled매개변수는 배포 아키텍처를 정의하는 마스터 스위치입니다. true(기본값)으로 설정하면 차트는 기존 Flink 및 Batch 모듈 대신 Kafka, Pinot, Telegraf를 배포합니다. 이를 통해 Pinpoint 3.x에 도입된 강력한 실시간 메트릭 분석 및 URI 통계 기능을 사용할 수 있습니다.

설치: 시작해 봅시다

설치 및 실행은 간단합니다. 먼저 저장소를 복제하고 Helm 종속성을 업데이트해야 합니다.

# 1. 저장소 복제 
# 이 명령은 공식 Pinpoint Kubernetes 저장소를 로컬 머신에 복제합니다.
 git clone https://github.com/pinpoint-apm/pinpoint-kubernetes.git
cd pinpoint-kubernetes

# 2. Helm 종속성 업데이트 
# 이 명령은 Chart.yaml에 지정된 종속 차트(예: mysql, zookeeper 등)를 가져옵니다.
 helm dependency update

최신 “메트릭 프로파일” 설치(권장):

이 모드는 Kafka와 Pinot을 사용하여 Pinpoint의 최신 기능을 모두 제공합니다.

# 3. 메트릭 프로필 모드로 차트 설치 
# 이 명령은 릴리스 이름이 'pinpoint'인 Pinpoint 차트를 
# 'pinpoint'라는 새 네임스페이스에 설치합니다. 메트릭 프로필은 기본적으로 활성화되어 있습니다.
 helm install pinpoint . -n pinpoint --create-namespace

레거시 “클래식 모드” 설치:

기존 APM 추적만 필요한 경우 Flink와 Batch를 사용하여 클래식 스택을 배포할 수 있습니다.

# 3. 클래식 모드에서 차트 설치 
# 'global.metric.enabled'를 'false'로 설정하면 Helm은 
Kafka와 Pinot 대신 Flink와 Batch 구성 요소를 포함하는 클래식 스택을 배포합니다.
 helm install pinpoint . -n pinpoint --create-namespace --set global.metric.enabled=false

설치가 완료되면 다음을 사용하여 Pinpoint 웹 UI에 액세스할 수 있습니다 port-forward.

# 4. 웹 UI에 액세스합니다. 
# 이 명령은 로컬 포트 ​​8080에서 
Kubernetes 클러스터 내부에서 실행되는 pinpoint-web 서비스로 트래픽을 전달합니다.
 kubectl port-forward svc/pinpoint-web 8080:8080 -n pinpoint

이제 http://localhost:8080브라우저에서 Pinpoint 대시보드를 볼 수 있습니다.

Enter 키를 누르거나 클릭하여 이미지를 전체 크기로 보세요.

웹 UI

구성 및 프로덕션 팁

프로덕션 수준의 배포에서는 values.yaml파일을 사용자 지정하는 것이 중요합니다.

  • 지속성: 모든 상태 저장 구성 요소(HBase, MySQL, Zookeeper, Kafka, Pinot)를 설정하고 enabled: true적절한 .을 선택하세요 storageClassName.
  • 리소스:requests/limits 예상 부하에 따라 각 구성 요소의 CPU와 메모리를 정의합니다 . 이는 클러스터 안정성에 필수적입니다.
  • Ingress: 웹 UI를 외부에 노출하려면 web.ingress.enabled=true호스트 이름과 TLS 인증서(Kubernetes 비밀을 통해)를 설정하고 구성합니다.
  • 자격 증명: Helm --set플래그나 사용자 정의 값 파일을 사용하여 MySQL, Redis 및 기타 구성 요소의 기본 비밀번호를 항상 변경하세요.

Installing Helm on Ubuntu for Kubernetes

Ubuntu에 Helm을 설치하려면:

1. 다음 명령을 사용하여 최신 버전의 Helm을 다운로드합니다.

wget https://get.helm.sh/helm-v3.4.1-linux-amd64.tar.gz

다운로드가 완료되면 단말기에서 확인 메시지를 출력합니다.

터미널에서 Helm을 다운로드합니다.

2. 다음으로 Linux tar 명령 을 사용하여 Helm 파일의 압축을 풉니다 .

tar xvf helm-v3.4.1-linux-amd64.tar.gz

출력에는 압축이 풀린 4개의 파일이 표시됩니다.

3. linux-amd64/helm파일을 /usr/local/bin디렉터리로 이동합니다.

sudo mv linux-amd64/helm /usr/local/bin

명령이 올바르게 실행된 경우 출력이 없습니다.

투구 풀기.

4. 다음 명령을 사용하여 다운로드한 파일을 제거합니다.

rm helm-v3.4.1-linux-amd64.tar.gz

5. linux-amd64다음을 실행하여 공간을 정리할 디렉터리를 제거합니다.

rm -rf linux-amd64

프로세스가 성공적으로 완료되면 출력이 없습니다.

필요하지 않은 파일을 제거합니다.

6. 마지막으로 소프트웨어 버전을 확인하여 Helm을 성공적으로 설치했는지 확인합니다.

helm version

터미널은 소프트웨어의 버전 번호와 GitCommit, GitTreeState 및 GoVersion의 릴리스 번호를 인쇄합니다.

Helm 설치 완료를 확인합니다.

 

수동으로 최신 버젼의 chart 정보를 레파지토리에 갱신 할 수 있습니다.

$ helm repo add stable https://charts.helm.sh/stable
$ helm repo update