Installing InfluxDB begins with understanding its role as a purpose-built time series database for high‑availability ingestion and analysis of metrics and events. This guide walks through preparation, deployment, and initial configuration so your environment is ready for fast, scalable data collection.
Choosing the right InfluxDB edition and platform
InfluxDB is available as InfluxDB OSS, InfluxDB Cloud, and InfluxDB Enterprise, each with different operational models and feature sets. For local development, learning, and many edge scenarios, InfluxDB OSS provides a complete open source stack including Flux, retention policies, and continuous queries. If you require multi-tenancy, enhanced security, or enterprise support, evaluate the enterprise or cloud offerings against your compliance, scalability, and budget requirements. Consider OS support, architecture (x86_64 or ARM), and whether you prefer binary packages, containers, or infrastructure as code templates when planning your installation.
Package managers, binaries, and container images
On Linux, you can install InfluxDB using native package managers for simplified updates and service integration. For Debian and Ubuntu, add the InfluxData repository and install the influxdb package; on RHEL, CentOS, and Fedora, use the corresponding yum or dnf repository. Alternatively, download the platform-specific tarball, extract the binaries, and manage services with systemd or your init system. On macOS, Homebrew provides a reliable installation flow, while Windows users can leverage scoop or the MSI installer. For consistent environments across development and production, pull the official InfluxDB Docker image and leverage container orchestration when deploying at scale.
Installing InfluxDB OSS on Linux with APT and systemd
To install InfluxDB OSS on Debian‑based systems, first add the official repository and GPG key, then update your package index and install. The package configures a systemd unit, enabling the daemon to start on boot and integrate with standard service management tools. After installation, verify the unit status, inspect logs for any startup issues, and confirm the default HTTP API port is reachable. This approach ensures automatic restarts, logging integration, and manageable updates through your distribution’s patch workflow.
Step‑by‑step APT installation and service checks
Begin by installing required utilities, adding the InfluxData repository, and importing the signing key, then update and install influxdb. Enable and start the service, and use systemctl and journalctl to confirm healthy operation. Create a basic retention policy and user to validate write and query capabilities, ensuring authentication is enabled before exposing the instance to a network. These steps form a reliable baseline for both single‑node deployments and initial cluster testing.
Installing on macOS and Windows for development
On macOS, use Homebrew to install InfluxDB with a straightforward tap and brew install workflow, then start the service via the brewed launch agent or run influxd manually for quick experimentation. On Windows, the MSI provides an intuitive installer that configures paths and services, while scoop offers a command‑line alternative familiar to scripting users. For both platforms, verify the process is listening on the default ports and that the influx CLI can connect locally before creating databases and users. Keep development instances isolated and avoid running production workloads on desktop environments without additional hardening.
Running InfluxDB with Docker and Kubernetes
Using Docker, pull the official image and run with mapped ports and a data volume to persist metrics across restarts. Define environment variables for initial admin setup, or supply a configuration file to tune storage, compaction, and HTTP settings. In Kubernetes, deploy via Helm or raw manifests, leveraging StatefulSets for stable network identities and persistent volumes for high‑performance storage. Configure resource limits, node selectors, and affinity rules to align with cluster capacity, and expose services through Ingress or LoadBalancer depending on your networking strategy.