This article is available in French.
1. Le serveur #
Trois façons de l'installer.
Options #
| Mode | Usage | Remarques |
|---|---|---|
| Docker Compose | Test, formation, petits environnements | Serveur, PostgreSQL, Prometheus et transform agent en conteneurs |
| Machine virtuelle (paquet Linux) | Production simple | Service systemd, PostgreSQL externe |
| Kubernetes (Helm) | Production, haute disponibilité | Plusieurs serveurs, PostgreSQL et bus d'événements gérés |
| Bindplane Cloud | Ne pas héberger le serveur | Les collecteurs se connectent à wss://app.bindplane.com/v1/opamp |
À savoir : Le serveur exige une licence (variable BINDPLANE_LICENSE), y compris pour l'offre gratuite : créez un compte sur le site de Bindplane et récupérez la clé sur la page de téléchargement.Docker Compose #
services:
bindplane:
image: ghcr.io/observiq/bindplane-ee:1.89.5
ports: ["3001:3001"]
environment:
BINDPLANE_LICENSE: ${BINDPLANE_LICENSE}
BINDPLANE_USERNAME: admin
BINDPLANE_PASSWORD: ${BINDPLANE_PASSWORD}
BINDPLANE_REMOTE_URL: http://localhost:3001
BINDPLANE_SESSION_SECRET: ${BINDPLANE_SESSION_SECRET}
BINDPLANE_LOG_OUTPUT: stdout
BINDPLANE_ACCEPT_EULA: "true"
BINDPLANE_PROMETHEUS_ENABLE: "true"
BINDPLANE_PROMETHEUS_ENABLE_REMOTE: "true"
BINDPLANE_PROMETHEUS_HOST: prometheus
BINDPLANE_PROMETHEUS_PORT: "9090"
BINDPLANE_TRANSFORM_AGENT_ENABLE_REMOTE: "true"
BINDPLANE_TRANSFORM_AGENT_REMOTE_AGENTS: transform:4568
BINDPLANE_STORE_TYPE: postgres
BINDPLANE_POSTGRES_HOST: postgres
BINDPLANE_POSTGRES_PORT: "5432"
BINDPLANE_POSTGRES_DATABASE: bindplane
BINDPLANE_POSTGRES_USERNAME: bindplane
BINDPLANE_POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
depends_on: [postgres, prometheus, transform]
postgres:
image: postgres:16
environment: { POSTGRES_DB: bindplane, POSTGRES_USER: bindplane, POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}" }
volumes: ["bindplane:/var/lib/postgresql/data"]
prometheus:
image: ghcr.io/observiq/bindplane-prometheus:1.89.5
volumes: ["prometheus:/prometheus"]
transform:
image: ghcr.io/observiq/bindplane-transform-agent:1.89.5-bindplane
volumes: { bindplane: {}, prometheus: {} }cat > .env <<EOF
BINDPLANE_LICENSE=<votre clé>
BINDPLANE_PASSWORD=$(openssl rand -hex 12)
BINDPLANE_SESSION_SECRET=$(uuidgen)
POSTGRES_PASSWORD=$(openssl rand -hex 12)
EOF
docker compose up -d && docker compose logs -f bindplaneErreur Courante :$(uuidgen)écrit directement dans le fichier Compose n'est pas évalué : générez les secrets dans le fichier.envcomme ci-dessus. Changez aussi le mot de passeadminpar défaut des exemples.
Le transform agent sert à l'interface pour prévisualiser l'effet des processeurs ; Prometheus stocke les mesures de débit. Utilisez la dernière version publiée des images, en gardant la même pour les trois images observiq.
2. Les collecteurs BDOT #
Linux, Docker, Kubernetes.
Connexion #
Dans l'interface, Collectors > Install Collectors génère la commande d'installation pour la plateforme choisie, avec deux paramètres clés :
| Paramètre | Rôle |
|---|---|
OPAMP_ENDPOINT | Adresse OpAMP du serveur : ws://<serveur>:3001/v1/opamp (ou wss:// avec TLS) |
OPAMP_SECRET_KEY | Clé secrète qui autorise le collecteur à se connecter |
OPAMP_LABELS | Labels du collecteur (env=prod,team=web) : ils servent à cibler fleets et étapes de rollout |
Docker #
docker run -d --name bdot \
-e OPAMP_ENDPOINT=ws://bindplane:3001/v1/opamp \
-e OPAMP_SECRET_KEY=<clé> \
-e OPAMP_LABELS=env=lab,team=web \
-e MANAGER_YAML_PATH=/etc/otel/storage/manager.yaml \
-v bdot-storage:/etc/otel/storage \
-p 4317:4317 -p 4318:4318 \
ghcr.io/observiq/bindplane-agent:1.84.0Kubernetes #
Créez une configuration de plateforme Kubernetes, puis Install Collectors fournit un manifeste à appliquer. Trois modes : Kubernetes Node (DaemonSet, un collecteur par nœud, pour les logs et métriques des nœuds), Kubernetes Cluster (Deployment d'un pod, pour les événements et métriques du cluster) et Kubernetes Gateway (Deployment ou StatefulSet extensible).
kubectl apply -f bindplane-node-collector.yaml
kubectl -n bindplane-agent get podÀ savoir : Les collecteurs sont déployés dans le namespacebindplane-agent. Si le serveur tourne dans le même cluster,OPAMP_ENDPOINTpeut viser le service :ws://bindplane.default.svc.cluster.local:3001/v1/opamp.
3. La CLI #
Tout ce que fait l'interface, en ligne de commande.
Commandes essentielles #
bindplane profile set lab --remote-url http://localhost:3001 --username admin --password "$BINDPLANE_PASSWORD"
bindplane profile use lab
bindplane get agents # collecteurs connectés
bindplane get configurations
bindplane get configuration web-logs --export --output yaml > web-logs.yaml
bindplane apply -f web-logs.yaml # créer ou mettre à jour
bindplane rollout start web-logs # déployer la nouvelle version
bindplane rollout status web-logsBonne Pratique : Exportez les configurations créées dans l'interface et versionnez-les dans Git : bindplane apply dans une CI les recrée à l'identique sur un autre serveur (préproduction, production).À savoir : Les options de connexion des profils peuvent varier selon la version : bindplane profile set --help les liste.My progress
Sign in to track your progress and take notes. Sign in
Recommended Articles
Understanding the concept of score
The concept of score allows Elasticsearch to rank your documents by relevance during a search.
Understanding the Elastic Common Schema (ECS)
As always in our consulting engagements, we recommend that companies harmonise and standardise: k...
License consumption types
Understand the evolution of billing in Dynatrace: the difference between the old licensing model ...
Grafana Alloy: The importance of Self-Monitoring
Discover why and how to configure Grafana Alloy so that it monitors itself, collecting its own lo...
Grafana Alloy: Understanding and exploiting the User Interface (UI)
Discover how to enable, secure, and use Grafana Alloy's built-in web interface to visualize your ...
Grafana Alloy: Introduction and Architecture
Discover the fundamental concepts of Grafana Alloy, the transition from the static Agent to Alloy...
Grafana Alloy: Syntax and Configuration (Alloy Language: River)
As part of a Grafana training or observability training, master the declarative syntax of Grafana...
Grafana Alloy: Metrics Collection (Prometheus & Ecosystem)
Learn how to configure Grafana Alloy to collect, transform, and forward metrics using the Prometh...
Grafana Alloy: Log Management with Loki
Discover how to configure Grafana Alloy to read log files, journald, or network streams, process ...