Skip to content

Digitalist-Open-Cloud/pinpoint-kubernetes

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pinpoint Helm Chart

Version: 1.0.0 Type: application AppVersion: 2.5.4

A Helm chart for deploying Pinpoint APM on Kubernetes.


✨ Features

  • Deploys Pinpoint Collector, Web, Agent, HBase, MySQL, Redis, and Zookeeper
  • Optional: Deploys Pinpoint Batch (for alarms) and Flink (for inspection) modules.
  • Quickstart test application for easy validation
  • Configurable resources, persistence, and service types
  • Flexible customization via values.yaml or CLI

🛠 Prerequisites

  • Kubernetes 1.21+
  • Helm 3.2.0+
  • Persistent storage provisioner (for MySQL, HBase, Zookeeper)

🚀 Quick Start

  1. Clone the repository:

    git clone https://github.com/pinpoint-apm/pinpoint-kubernetes.git
    cd pinpoint-helm
  2. Update chart dependencies:

    helm dependency update
  3. Install the chart:

    helm install pinpoint . -n pinpoint --create-namespace
  4. Monitor pods:

    kubectl get pods -n pinpoint -w

🛠️ Configuration

The most important parameters in values.yaml:

  • Global Settings:
    • global.pinpointVersion: Sets the version for all Pinpoint components.
  • Component Toggles:
    • web.enabled, collector.enabled, hbase.enabled: Enable or disable core components.
    • mysql.enabled, zookeeper.enabled, redis.enabled: Enable or disable dependencies.
    • batch.enabled, flink.enabled: Enable optional modules for alarms and inspection.
    • quickstart.enabled: Deploy a test application to verify the installation.
  • Scaling & Performance:
    • web.replicaCount, collector.replicaCount: Set the number of replicas for Web and Collector pods.
    • web.resources,collector.resources: Configure CPU and memory requests/limits.
  • Security & Passwords:
    • mysql.auth.rootPassword, mysql.auth.password: Set passwords for the MySQL database.
    • web.config.adminPassword: Set the admin password for the Pinpoint Web UI.
    • web.config.security.enable: Enable or disable the login screen for the Web UI.
  • Persistence & Storage:
    • hbase.persistence.size: Set the PVC size for HBase data storage.
    • mysql.primary.persistence.size: Set the PVC size for the MySQL database.
    • zookeeper.persistence.size: Set the PVC size for Zookeeper data. Network & Access:
    • web.ingress.enabled: Enable to create a Kubernetes Ingress for the Web UI.
    • web.ingress.hosts: Configure the hostname(s) to access the UI.

See values.yaml for all options.


🛠️ Customize Values

You can customize the deployment by editing values.yaml or using --set on the command line. Example:

helm install pinpoint . -n pinpoint \
  --set mysql.auth.rootPassword=MyRootPass \
  --set web.replicaCount=2 \
  --set collector.resources.limits.cpu=500m

Or create your own values file:

cp values.yaml my-values.yaml
# Edit my-values.yaml as needed
helm install pinpoint . -n pinpoint -f my-values.yaml

🧹 Uninstallation

Remove the pinpoint release:

helm uninstall pinpoint -n pinpoint

📄 License

This project is licensed under the Apache 2.0 License.


📚 References

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Smarty 100.0%