文档文档

安装 InfluxDB OSS v2

InfluxDB v2 时序平台专为收集、存储、处理和可视化指标和事件而构建。

下载并安装 InfluxDB v2

推荐::在打开和安装软件包和下载的文件之前,请使用 SHA 校验和验证和 GPG 签名验证来确保文件完整且真实。

某些 OS 版本的 InfluxDB 安装说明包括在安装下载的文件之前验证文件的步骤。

有关 SHA 和 GPG 验证的更多信息,请参阅以下内容

为你的 OS 版本选择 InfluxData 密钥对

使用 SHA-256 验证下载完整性

使用 GPG 验证文件完整性和真实性

以下说明包括下载、验证和安装 InfluxDB 的步骤

要安装 InfluxDB,请执行以下操作之一

我们建议使用 Homebrew 在 macOS 上安装 InfluxDB v2。

InfluxDB 和 influx CLI 是单独的软件包

InfluxDB 服务器 (influxd) 和 influx CLI 是单独打包和版本控制的。

你将在稍后的步骤中安装 influx CLI

使用 Homebrew 安装

brew update
brew install influxdb

手动下载并为 macOS 安装

  1. 在你的浏览器或终端中,下载 InfluxDB 软件包。

    InfluxDB v2 (macOS)

    # Download using cURL
    curl --location -O \
    "https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_darwin_amd64.tar.gz"
    
  2. 推荐::验证下载的完整性——例如,在你的终端中输入以下命令

# Use 2 spaces to separate the checksum from the filename
echo "
224926fd77736a364cf28128f18927dda00385f0b6872a108477246a1252ae1b
influxdb2-2.7.11_darwin_amd64.tar.gz"
\
| shasum --algorithm 256 --quiet --check -

替换以下内容

  • 224926fd77736a364cf28128f18927dda00385f0b6872a108477246a1252ae1b:来自 下载页面 的 SHA 校验和
  1. 解包 InfluxDB 二进制文件。

    执行以下操作之一

    • Finder 中,双击下载的软件包文件。
    • 在你的终端(例如,TerminaliTerm2)中,使用 tar 解包文件——例如,输入以下命令将其解压缩到当前目录
    # Unpackage contents to the current working directory
    tar zxvf ./influxdb2-2.7.11_darwin_amd64.tar.gz
    
  2. 可选:将 influxd 二进制文件放在你的 $PATH 中——例如,将二进制文件复制到 /usr/local/bin

    # (Optional) Copy the influxd binary to your $PATH
    sudo cp influxdb2-2.7.11/influxd /usr/local/bin/
    

    influxd 二进制文件放在你的 $PATH (/usr/local/bin) 中后,你可以在终端中输入 influxd 来启动服务器。

    如果你选择不将 influxd 二进制文件移动到你的 $PATH 中,请输入二进制文件的路径来启动服务器——例如

    ./influxdb2-2.7.11/influxd
    

InfluxDB 1.x 和 2.x 都有关联的 influxdinflux 二进制文件。如果 InfluxDB 1.x 二进制文件已在你的 $PATH 中,请就地运行 v2 二进制文件或在将它们放入你的 $PATH 之前重命名它们。如果你重命名二进制文件,则本文档中对 influxdinflux 的所有引用都将指向你重命名的二进制文件。

要在 Linux 上安装 InfluxDB,请执行以下操作之一

InfluxDB 和 influx CLI 是单独的软件包

InfluxDB 服务器 (influxd) 和 influx CLI 是单独打包和版本控制的。

你将在稍后的步骤中安装 influx CLI

使用 systemd 将 InfluxDB 安装为服务

  1. 为你的 OS 版本选择 InfluxData 密钥对.

  2. 运行适用于你的 OS 版本的命令以安装 InfluxData 密钥,添加 InfluxData 仓库,并安装 influxdb

    在运行命令之前,请将校验和和密钥文件名替换为前面步骤中的密钥对。

    # Ubuntu and Debian
    # Add the InfluxData key to verify downloads and add the repository
    curl --silent --location -O \
    https://repos.influxdata.com/influxdata-archive.key
    echo "943666881a1b8d9b849b74caebf02d3465d6beb716510d86a39f6c8e8dac7515  influxdata-archive.key" \
    | sha256sum --check - && cat influxdata-archive.key \
    | gpg --dearmor \
    | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive.gpg > /dev/null \
    && echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive.gpg] https://repos.influxdata.com/debian stable main' \
    | sudo tee /etc/apt/sources.list.d/influxdata.list
    # Install influxdb
    sudo apt-get update && sudo apt-get install influxdb2
    
    # RedHat and CentOS
    # Add the InfluxData key to verify downloads
    curl --silent --location -O \
    https://repos.influxdata.com/influxdata-archive.key \
    && echo "943666881a1b8d9b849b74caebf02d3465d6beb716510d86a39f6c8e8dac7515  influxdata-archive.key" \
    | sha256sum --check - && cat influxdata-archive.key \
    | gpg --dearmor \
    | tee /etc/pki/rpm-gpg/RPM-GPG-KEY-influxdata > /dev/null
    
    # Add the InfluxData repository to the repository list.
    cat <<EOF | tee /etc/yum.repos.d/influxdata.repo
    [influxdata]
    name = InfluxData Repository - Stable
    baseurl = https://repos.influxdata.com/stable/${basearch}/main
    enabled = 1
    gpgcheck = 1
    gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-influxdata
    EOF
    
    # Install influxdb
    sudo yum install influxdb2
    
  3. 启动 InfluxDB 服务

    sudo service influxdb start
    

    安装 InfluxDB 软件包会在 /lib/systemd/system/influxdb.service 创建一个服务文件,以便在启动时将 InfluxDB 作为后台服务启动。

  4. 要验证服务是否正确运行,请重启你的系统,然后在你的终端中输入以下命令

    sudo service influxdb status
    

    如果成功,输出如下

    ● influxdb.service - InfluxDB is an open-source, distributed, time series database
       Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enable>
       Active: active (running)
    

有关 InfluxDB 以服务形式运行时在磁盘上存储数据的位置的信息,请参阅 文件系统布局

将配置选项传递给服务

你可以使用 systemd 自定义 InfluxDB 配置选项 并将它们传递给 InfluxDB 服务。

  1. 编辑 /etc/default/influxdb2 服务配置文件,将配置指令分配给 influxd 命令行标志——例如,添加一个或多个 <ENV_VARIABLE_NAME>=<COMMAND_LINE_FLAG> 行,如下所示

    ARG1="--http-bind-address :8087"
    ARG2="--storage-wal-fsync-delay=15m"
    
  2. 编辑 /lib/systemd/system/influxdb.service 文件,将变量传递给 ExecStart

    ExecStart=/usr/bin/influxd $ARG1 $ARG2
    

手动下载并安装 influxd 二进制文件

如有必要,请调整示例文件路径和实用程序以适应你的系统。

  1. 在你的浏览器或终端中,下载适用于你的系统架构(AMD64 或 ARM)的 InfluxDB 二进制文件。

    InfluxDB v2 (amd64) InfluxDB v2 (arm)

    # Use curl to download the amd64 binary.
    curl --location -O \
    https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_linux_amd64.tar.gz
    
    # Use curl to download the arm64 binary.
    curl --location -O \
    https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_linux_arm64.tar.gz
    
  2. 为你的 OS 版本选择 InfluxData 密钥对.

  3. 推荐::验证下载的二进制文件的真实性——例如,在你的终端中输入以下命令。

    在为你的系统运行命令之前,请将 https://repos.influxdata.com/influxdata-archive.key 替换为前面步骤中的密钥 URL。

    # amd64
    # Download and import the key
    curl --silent --location https://repos.influxdata.com/influxdata-archive.key \
    | gpg --import - 2>&1 \
    | grep 'InfluxData Package Signing Key <support@influxdata.com>' \
    &&
    # Download and verify the binary's signature file
    curl --silent --location "https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_linux_amd64.tar.gz.asc" \
    | gpg --verify - influxdb2-2.7.11_linux_amd64.tar.gz \
    2>&1 | grep 'InfluxData Package Signing Key <support@influxdata.com>'
    
    # arm64
    # Download and import the key
    curl --silent --location https://repos.influxdata.com/influxdata-archive.key \
    | gpg --import - 2>&1 \
    | grep 'InfluxData Package Signing Key <support@influxdata.com>' \
    &&
    # Download and verify the binary's signature file
    curl --silent --location "https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_linux_arm64.tar.gz.asc" \
    | gpg --verify - influxdb2-2.7.11_linux_arm64.tar.gz \
    2>&1 | grep 'InfluxData Package Signing Key <support@influxdata.com>'
    

    如果成功,输出类似于以下内容

    gpg: Good signature from "InfluxData Package Signing Key <support@influxdata.com>" [unknown]
    
  4. 解压下载的二进制文件——例如,为你的系统输入以下命令

    # amd64
    tar xvzf ./influxdb2-2.7.11_linux_amd64.tar.gz
    
    # arm64
    tar xvzf ./influxdb2-2.7.11_linux_arm64.tar.gz
    
  5. 可选:将解压后的 influxd 可执行二进制文件放在你的系统 $PATH 中。

    # amd64
    sudo cp ./influxdb2-2.7.11/usr/bin/influxd /usr/local/bin/
    
    # arm64
    sudo cp ./influxdb2-2.7.11/usr/bin/influxd /usr/local/bin/
    

    如果你选择不将 influxd 二进制文件移动到你的 $PATH 中,请输入二进制文件的路径来启动服务器——例如

    ./influxdb2-2.7.11/usr/bin/influxd
    

系统要求

命令行示例

使用 PowershellWSL 执行 influxinfluxd 命令。本文档中的命令行示例使用 influxinfluxd,就像安装在系统 PATH 上一样。如果这些二进制文件未安装在你的 PATH 上,请在提供的示例中将 influxinfluxd 分别替换为 ./influx./influxd

InfluxDB 和 influx CLI 是单独的软件包

InfluxDB 服务器 (influxd) 和 influx CLI 是单独打包和版本控制的。

你将在稍后的步骤中安装 influx CLI

InfluxDB v2 (Windows)

将下载的存档解压到 C:\Program Files\InfluxData\ 中,并根据需要重命名文件。

Expand-Archive .\influxdb2-2.7.11-windows.zip -DestinationPath 'C:\Program Files\InfluxData\'
mv 'C:\Program Files\InfluxData\influxdb2-2.7.11' 'C:\Program Files\InfluxData\influxdb'

在容器中安装和设置 InfluxDB

以下步骤展示了如何使用 Docker CLI 设置和运行 InfluxDB。但你也可以 使用 Docker Compose

以下指南使用 Docker 挂载的 来持久化 InfluxDB 配置和数据。将你的数据持久化到容器外部的文件系统可确保在删除容器时不会删除你的数据。

  1. 为你的系统安装 Docker Desktop

  2. influxdb Docker Hub 镜像启动 Docker 容器——例如,在你的终端中,输入带有初始设置选项和文件系统挂载的命令行标志的 docker run influxdb:2 命令。

如果你没有指定 InfluxDB 初始设置选项,你可以稍后在运行的容器中使用 UI 或 CLI 手动设置

docker run \
 --name influxdb2 \
 --publish 8086:8086 \
 --mount type=volume,source=influxdb2-data,target=/var/lib/influxdb2 \
 --mount type=volume,source=influxdb2-config,target=/etc/influxdb2 \
 --env DOCKER_INFLUXDB_INIT_MODE=setup \
 --env DOCKER_INFLUXDB_INIT_USERNAME=
ADMIN_USERNAME
\
--env DOCKER_INFLUXDB_INIT_PASSWORD=
ADMIN_PASSWORD
\
--env DOCKER_INFLUXDB_INIT_ORG=
ORG_NAME
\
--env DOCKER_INFLUXDB_INIT_BUCKET=
BUCKET_NAME
\
influxdb:2

该命令传递以下参数

  • --publish 8086:8086:在主机的 8086 端口上公开 InfluxDB UIHTTP API

  • --mount type=volume,source=influxdb2-data,target=/var/lib/influxdb2:创建一个名为 influxdb2-data 的卷,映射到 InfluxDB 数据目录,以将数据持久化在容器外部。

  • --mount type=volume,source=influxdb2-config,target=/etc/influxdb2:创建一个名为 influxdb2-config 的卷,映射到 InfluxDB 配置目录,以便在容器外部提供配置。

  • --env DOCKER_INFLUXDB_INIT_MODE=setup:环境变量,用于在创建容器时调用初始组织、用户、Bucket 和令牌的自动设置。

  • --env DOCKER_INFLUXDB_INIT_<SETUP_OPTION>:初始设置选项的环境变量——将以下内容替换为你自己的值

    • ADMIN_USERNAME:初始用户的用户名——具有 API Operator 令牌的管理员用户。
    • ADMIN_PASSWORD:初始用户的密码。
    • ORG_NAME:初始组织的名称。
    • BUCKET_NAME:初始Bucket的名称。

如果成功,该命令将启动 InfluxDB,并使用用户、组织、Bucket 和Operator 令牌进行初始化,并记录到 stdout。

你可以在 /etc/influxdb2/influx-configs 文件中查看 Operator 令牌,并使用它授权创建 All Access 令牌

要在分离模式下运行 InfluxDB 容器,请在 docker run 命令中包含 --detach 标志。

有关更多 InfluxDB 配置选项,请参阅 influxdb Docker Hub 镜像 文档。

在容器中运行 InfluxDB CLI 命令

当你使用 influxdb Docker Hub 镜像启动容器时,它也会在容器中安装 influx CLI。在容器中设置并运行 InfluxDB 后,你可以使用 Docker CLI docker exec 命令与容器内部的 influxinfluxd CLI 进行交互。

语法

docker exec -it <CONTAINER_NAME> <CLI_NAME> <COMMAND>`

示例

# List CLI configurations
docker exec -it influxdb2 influx config ls
# View the server configuration
docker exec -it influxdb2 influx server-config
# Inspect server details
docker exec -it influxdb2 influxd inspect -d

管理挂载卷中的文件

要在你的本地文件系统和卷之间复制文件(例如 InfluxDB 服务器 config.yml 文件),请使用 docker container cp 命令

在 Kubernetes 集群中安装 InfluxDB

以下说明使用 minikubekind,但这些步骤在任何 Kubernetes 集群中都应该类似。InfluxData 还提供了 Helm charts

  1. 安装 minikubekind

  2. 启动本地集群

    # with minikube
    minikube start
    
    # with kind
    kind create cluster
    
  3. 通过运行以下命令应用 示例 InfluxDB 配置

    kubectl apply -f https://raw.githubusercontent.com/influxdata/docs-v2/master/static/downloads/influxdb-k8-minikube.yaml
    

    这将创建一个 influxdb Namespace、Service 和 StatefulSet。还会创建一个 PersistentVolumeClaim 来存储写入 InfluxDB 的数据。

    重要提示:在运行 kubectl apply -f <url> 之前,请务必检查 YAML 清单!

  4. 确保 Pod 正在运行

    kubectl get pods -n influxdb
    
  5. 确保服务可用

    kubectl describe service -n influxdb influxdb
    

    在命令输出的 Endpoints 后,您应该看到一个 IP 地址。

  6. 将端口 8086 从集群内部转发到本地主机

    kubectl port-forward -n influxdb service/influxdb 8086:8086
    

要求

要在 Raspberry Pi 上运行 InfluxDB,您需要

  • Raspberry Pi 4+ 或 400
  • 64 位操作系统。 推荐::与 64 位 Raspberry Pi 兼容的 64 位版本的 Ubuntu Ubuntu Desktop 或 Ubuntu Server。

安装 Linux 二进制文件

按照 Linux 安装说明 在 Raspberry Pi 上安装 InfluxDB。

监控您的 Raspberry Pi

使用 InfluxDB Raspberry Pi 模板 轻松配置 Raspberry Pi 的系统指标收集和可视化。

监控 32 位 Raspberry Pi 系统

如果您有 32 位 Raspberry Pi,请使用 Telegraf 收集数据并发送到

启动 InfluxDB

如果 InfluxDB 尚未运行,请按照说明在您的系统上启动 InfluxDB

要启动 InfluxDB,请运行 influxd 守护程序

influxd

(macOS Catalina 及更高版本)授权 influxd 二进制文件

macOS 要求下载的二进制文件必须由注册的 Apple 开发者签名。目前,当您首次尝试运行 influxd 时,macOS 将阻止其运行。

要手动授权 influxd 二进制文件,请按照您的 macOS 版本的说明允许下载的应用程序。

在 macOS Ventura 上运行 InfluxDB
  1. 按照上述说明尝试启动 influxd
  2. 打开系统设置,然后单击隐私与安全性
  3. 安全性标题下,有一条关于“influxd”被阻止的消息,单击仍然允许
  4. 出现提示时,输入您的密码以允许该设置。
  5. 关闭系统设置
  6. 尝试启动 influxd
  7. 出现提示,消息为“macOS 无法验证“influxd”的开发者…”。单击打开
在 macOS Catalina 上运行 InfluxDB
  1. 尝试启动 influxd
  2. 打开系统偏好设置,然后单击安全性与隐私
  3. 通用选项卡下,有一条关于 influxd 被阻止的消息。单击仍然打开

我们正在更新构建过程,以确保发布的二进制文件由 InfluxData 签名。

“打开文件过多”错误

运行 influxd 后,您可能会在日志输出中看到如下错误

too many open files

要解决此错误,请按照推荐步骤增加您的操作系统版本的文件和进程限制,然后重启 influxd

如果 InfluxDB 作为 systemd 服务安装,systemd 会管理 influxd 守护程序,无需进一步操作。如果二进制文件是手动下载并添加到系统 $PATH 中,请使用以下命令启动 influxd 守护程序

influxd

Powershell 中,导航到 C:\Program Files\InfluxData\influxdb 并运行 influxd 守护程序以启动 InfluxDB

cd -Path 'C:\Program Files\InfluxData\influxdb'
./influxd

授予网络访问权限

首次启动 InfluxDB 时,Windows Defender 会出现以下消息

Windows Defender 防火墙阻止了此应用的某些功能。

  1. 选择专用网络,例如我的家庭或工作网络
  2. 单击允许访问

要使用 Docker CLI 启动现有容器,请输入以下命令

docker start influxdb2

influxdb2 替换为您的容器名称。

要启动新容器,请按照说明在容器中安装和设置 InfluxDB

要使用 Kubernetes 启动 InfluxDB,请按照说明在 Kubernetes 集群中安装 InfluxDB

如果成功,您可以在 http://localhost:8086 查看 InfluxDB UI。

InfluxDB 以默认设置启动,包括以下内容

  • http-bind-address=:8086:为 InfluxDB UI 和 HTTP API 客户端-服务器通信使用端口 8086 (TCP)。
  • reporting-disabled=false:将 InfluxDB 遥测信息发送回 InfluxData。

要覆盖默认设置,请在启动 InfluxDB 时指定 配置选项 – 例如

配置端口或地址

选择退出遥测报告

有关 InfluxDB v2 默认设置以及如何覆盖它们的更多信息,请参阅 InfluxDB 配置选项

安装并初始化 InfluxDB 后,开始写入和查询数据。

下载、安装和配置 influx CLI

推荐::安装 influx CLI,它提供了一种从命令行与 InfluxDB 交互的简单方法。有关详细的安装和设置说明,请参阅使用 influx CLI

InfluxDB 和 influx CLI 是单独的软件包

InfluxDB 服务器 (influxd) 和 influx CLI 是单独打包和版本控制的。某些安装方法(例如,InfluxDB Docker Hub 镜像)同时包含两者。


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在一样使用它,而无需更改任何代码。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、近实时数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 构建在 Core 的基础上,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费套餐可供非商业家庭或业余爱好者使用。

有关更多信息,请查看