Single Instance
Deploy Bindplane Server to Kubernetes
Architecture
When Bindplane is deployed as a StatefulSet, it has the following architecture.
Bindplane as a Single pod.
Deployed as a StatefulSet.
BBolt storage backend using a persistent volume claim.
Prometheus time series database
Deployed as a StatefulSet.
Persistent storage using a persistent volume claim.
Prometheus is deployed and managed by the chart using observIQ's Prometheus image.
Single transform agent pod, for live preview.
Prerequisites
System Requirements
Storage class which supports persistent volume claims (When running as a StatefulSet).
See the instance sizing guidelines for recommended disk capacity.
Installation
Add the Bindplane Helm chart to your workstation.
helm repo add "bindplane" \
"https://observiq.github.io/bindplane-op-helm"
helm repo update
Create a values.yaml
file, which will be used to configure your Helm deployment.
Add the initial options. Make sure to set the following:
config.username
: Your basic auth username for the Administrator project.config.password
: Your basic auth password for the Administrator project.config.sessions_secret
: A random uuid. You can useuuidgen
to create one.
config:
# These options should be configured by
# the user.
username: ''
password: ''
sessions_secret: ''
backend:
type: bbolt
bbolt:
volumeSize: '120Gi'
resources:
# Request 2 cores and allow cpu bursting.
# Request fixed amount of memory, 8Gb.
requests:
cpu: '2000m'
memory: '8192Mi'
limits:
memory: '8192Mi'
Deploy Bindplane to the bindplane
namespace using Helm and your previously created values.yaml
configuration file.
helm repo update
helm upgrade \
--values="values.yaml" \
--namespace=bindplane \
--create-namespace \
--install \
bindplane \
bindplane/bindplane
After a few moments, check the namespace by running kubectl -n bindplane get pod
. You will see three pods:
Bindplane
Prometheus
Live Preview transform agent.
NAME READY STATUS RESTARTS AGE
bindplane-0 1/1 Running 0 3m42s
bindplane-prometheus-0 1/1 Running 0 3m42s
bindplane-transform-agent-f5c6fb575-5cgtr 1/1 Running 0 3m42s
Frequently Asked Questions
Q: Why is the StatefulSet limited to one pod?
A: Bindplane is limited to a single instance when configured with local storage. See the Bindplane Deployment Installation documentation for details on how to deploy Bindplane using a scalable architecture.
Last updated
Was this helpful?