文档文档

安装 InfluxDB OSS v2

InfluxDB v2 时间序列平台专门用于收集、存储、处理和可视化指标和事件。

下载并安装 InfluxDB v2

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

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

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

为您的操作系统版本选择 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 "
964e1de641a43a0e1743aa5ead243e935a05631ba0bc570fb8bff486542173c1
influxdb2-2.7.11_darwin_amd64.tar.gz"
\
| shasum --algorithm 256 --quiet --check -

替换以下内容

  • 964e1de641a43a0e1743aa5ead243e935a05631ba0bc570fb8bff486542173c1:来自 下载页面 的 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. 为您的操作系统版本选择 InfluxData 密钥对.

  2. 运行适用于您的操作系统版本的命令,以安装 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 \
    | 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' \
    | 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. 为您的操作系统版本选择 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:将 InfluxDB UIHTTP API 暴露在主机的 8086 端口上。

  • --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 命名空间、服务和 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 从集群内部转发到 localhost

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

要求

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

  • Raspberry Pi 4+ 或 400
  • 64 位操作系统。推荐::与 64 位 Raspberry Pi 兼容的 Ubuntu 64 位版本 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 的说明进行操作。

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

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

  • http-bind-address=:8086:将端口 8086 (TCP) 用于 InfluxDB UI 和 HTTP API 客户端-服务器通信。
  • 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 开源版本现已发布公开 Alpha 版

InfluxDB 3 开源版本现已可用于 Alpha 测试,根据 MIT 或 Apache 2 许可获得许可。

我们正在发布两个产品作为 Alpha 版的一部分。

InfluxDB 3 Core 是我们的新开源产品。它是用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何入门的更多信息,请查看