安装 InfluxDB OSS v2
InfluxDB v2 时间序列平台专门用于收集、存储、处理和可视化指标和事件。
下载并安装 InfluxDB v2
推荐:: 在打开和安装软件包以及下载的文件之前,请使用 SHA 校验和验证和 GPG 签名验证,以确保文件完整且真实。
某些 OS 版本的 InfluxDB 安装说明包括在安装之前验证下载文件的步骤。
有关 SHA 和 GPG 验证的更多信息,请参阅以下内容
以下说明包括下载、验证和安装 InfluxDB 的步骤
要安装 InfluxDB,请执行以下操作之一
我们建议使用 Homebrew 在 macOS 上安装 InfluxDB v2。
InfluxDB 和 influx CLI 是单独的软件包
InfluxDB 服务器 (influxd
) 和 influx
CLI 是单独打包和版本控制的。
您将在 稍后的步骤 中安装 influx CLI
。
使用 Homebrew 安装
brew update
brew install influxdb
手动下载并为 macOS 安装
在您的浏览器或终端中,下载 InfluxDB 软件包。
# Download using cURL curl --location -O \ "https://download.influxdata.com/influxdb/releases/influxdb2-2.7.11_darwin_amd64.tar.gz"
推荐:: 验证下载的完整性——例如,在您的终端中输入以下命令
# 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 校验和
解包 InfluxDB 二进制文件。
执行以下操作之一
- 在 Finder 中,双击下载的软件包文件。
- 在您的终端(例如,Terminal 或 iTerm2)中,使用
tar
解包文件——例如,输入以下命令将其解压到当前目录
# Unpackage contents to the current working directory tar zxvf ./influxdb2-2.7.11_darwin_amd64.tar.gz
可选:将
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 都有关联的 influxd
和 influx
二进制文件。 如果 InfluxDB 1.x 二进制文件已在您的 $PATH
中,请就地运行 v2 二进制文件或在将它们放入您的 $PATH
之前重命名它们。 如果您重命名二进制文件,则本文档中对 influxd
和 influx
的所有引用都指的是您重命名的二进制文件。
要在 Linux 上安装 InfluxDB,请执行以下操作之一
InfluxDB 和 influx CLI 是单独的软件包
InfluxDB 服务器 (influxd
) 和 influx
CLI 是单独打包和版本控制的。
您将在 稍后的步骤 中安装 influx CLI
。
使用 systemd 将 InfluxDB 作为服务安装
运行适用于您的操作系统版本的命令,以安装 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
启动 InfluxDB 服务
sudo service influxdb start
安装 InfluxDB 软件包会在
/lib/systemd/system/influxdb.service
创建一个服务文件,以在启动时将 InfluxDB 作为后台服务启动。要验证服务是否正确运行,请重新启动您的系统,然后在您的终端中输入以下命令
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 服务。
编辑
/etc/default/influxdb2
服务配置文件,将配置指令分配给influxd
命令行标志——例如,添加一个或多个<ENV_VARIABLE_NAME>=<COMMAND_LINE_FLAG>
行,如下所示ARG1="--http-bind-address :8087" ARG2="--storage-wal-fsync-delay=15m"
编辑
/lib/systemd/system/influxdb.service
文件,将变量传递给ExecStart
值ExecStart=/usr/bin/influxd $ARG1 $ARG2
手动下载并安装 influxd 二进制文件
如有必要,请为您的系统调整示例文件路径和实用程序。
在您的浏览器或终端中,下载适用于您的系统架构(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
推荐:: 验证下载的二进制文件的真实性——例如,在您的终端中输入以下命令。
在为您的系统运行命令之前,请将
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]
提取下载的二进制文件——例如,为您的系统输入以下命令
# amd64 tar xvzf ./influxdb2-2.7.11_linux_amd64.tar.gz
# arm64 tar xvzf ./influxdb2-2.7.11_linux_arm64.tar.gz
可选:将提取的
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
系统要求
- Windows 10
- 64 位 AMD 架构
- Powershell 或 Windows Subsystem for Linux (WSL)
命令行示例
使用 Powershell 或 WSL 执行 influx
和 influxd
命令。 本文档中的命令行示例使用 influx
和 influxd
,就像安装在系统 PATH
上一样。 如果这些二进制文件未安装在您的 PATH
上,请将提供的示例中的 influx
和 influxd
分别替换为 ./influx
和 ./influxd
。
InfluxDB 和 influx CLI 是单独的软件包
InfluxDB 服务器 (influxd
) 和 influx
CLI 是单独打包和版本控制的。
您将在 稍后的步骤 中安装 influx CLI
。
将下载的存档解压缩到 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 配置和数据。 将您的数据持久化到容器外部的文件系统可确保如果您删除容器,您的数据不会被删除。
为您的系统安装 Docker Desktop。
从
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 UI 和 HTTP 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
命令与容器内的 influx
和 influxd
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
以下说明使用 minikube 或 kind,但这些步骤在任何 Kubernetes 集群中都应类似。InfluxData 还提供 Helm charts。
启动本地集群
# with minikube minikube start
# with kind kind create cluster
通过运行以下命令应用 示例 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 清单!确保 Pod 正在运行
kubectl get pods -n influxdb
确保服务可用
kubectl describe service -n influxdb influxdb
您应该在命令输出中的
Endpoints
之后看到一个 IP 地址。将端口 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 OSS,在 64 位系统上运行
- 具有 免费套餐 帐户的 InfluxDB Cloud
- 具有付费 按使用量付费 帐户且资源限制放宽的 InfluxDB Cloud。
启动 InfluxDB
如果 InfluxDB 尚未运行,请按照说明在您的系统上启动 InfluxDB
要启动 InfluxDB,请运行 influxd
守护程序
influxd
(macOS Catalina 及更高版本)授权 influxd 二进制文件
macOS 要求下载的二进制文件由注册的 Apple 开发者签名。目前,当您首次尝试运行 influxd
时,macOS 将阻止其运行。
要手动授权 influxd
二进制文件,请按照您的 macOS 版本的说明允许下载的应用程序。
在 macOS Ventura 上运行 InfluxDB
- 按照前面的说明尝试启动
influxd
。 - 打开系统设置,然后单击隐私与安全性。
- 在安全性标题下,有一条关于“influxd”被阻止的消息,单击仍然允许。
- 出现提示时,输入您的密码以允许设置。
- 关闭系统设置。
- 尝试启动
influxd
。 - 将出现一个提示,消息为“macOS 无法验证“influxd”的开发者…”。单击打开。
在 macOS Catalina 上运行 InfluxDB
- 尝试启动
influxd
。 - 打开系统偏好设置,然后单击安全性与隐私。
- 在通用选项卡下,有一条关于
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 防火墙阻止了此应用的某些功能。
- 选择专用网络,例如我的家庭或工作网络。
- 单击允许访问。
要使用 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 镜像)同时包含两者。
此页是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供有关 InfluxDB 和本文档的反馈和错误报告。要获得支持,请使用以下资源
拥有年度合同或支持合同的客户可以联系 InfluxData 支持。