在 Windows 上运行 TICK Stack

导航至

我们偶尔会收到使用 Windows 的开发者,或是在我们的研讨会或活动中使用 Windows 的参与者的请求。对于除 Telegraf 之外的所有组件,Windows 支持都被认为是“实验性的”,但完整的 TICK Stack 仍然可以在该平台上构建和运行,并且我们在下载页面上为 Windows 提供了二进制文件。因此,虽然 Windows 不是官方支持的操作系统,并且不建议在生产环境中使用,但我们希望为那些仍然希望在该平台上启动并运行的冒险开发者提供一些额外的资源。这篇文章将详细介绍如何在 Windows 上本地安装和配置,然后简要介绍运行 TICK Stack 的一些替代方法,例如虚拟机或 Docker。

编者注:如果您对 InfluxData 在 Windows 上的官方支持感兴趣,您可以随时联系我们的销售团队!我们确信我们可以找到解决方案。

以下说明已使用 Microsoft 的 Windows 10 开发环境虚拟机 进行测试。

安装

在 Windows 上,入门的最佳方法是从下载页面获取 Windows 存档,并将其内容解压到 C:\Program Files\<Program Name>。您最终将得到以下四个目录

  • C:\Program Files\Chronograf
  • C:\Program Files\InfluxDB
  • C:\Program Files\Kapacitor
  • C:\Program Files\Telegraf

运行

如果您已将应用程序安装在上述目录中,则每个应用程序都应使用其默认配置启动。

首先,让我们启动 InfluxDB。运行应用程序的一种方法是双击可执行文件,但如果出现问题,窗口将在程序退出后立即关闭,您可能没有时间阅读显示的任何错误。

相反,我们将为每个应用程序打开一个命令提示符,并使用下面每个部分中的命令来运行各个应用程序。您可以通过打开“开始”菜单并键入 cmd.exe 来启动命令提示符。

InfluxDB

对于 InfluxDB,我们将运行 influxd.exe 可执行文件;末尾的 “d” 代表 “daemon”(守护进程),表示这是一个长期运行的服务器进程。切换到 InfluxDB 目录并启动应用程序

C:\Users\User>cd "C:\Program Files\InfluxDB\"

C:\Program Files\InfluxDB>influxd.exe

如果您想运行 Influx 命令行界面,可以使用 influx.exe 命令。如果您使用默认配置,它应该会自动连接。

Kapacitor

Kapacitor 也有 kapacitord.exe 和 kapacitor.exe 可执行文件;同样,“d” 表示哪个是我们的长期运行服务器进程,而另一个是 CLI。在它自己的命令提示符窗口中启动它

C:\Users\User>cd "C:\Program Files\Kapacitor\"

C:\Program Files\Kapacitor>kapacitord.exe

Telegraf

Telegraf 是一个单独的二进制文件,但需要一个配置文件才能启动。如果您已按照之前所述安装了 Telegraf 下载的内容,它将自动找到配置。有关更多配置选项,请参阅以下各节。

要运行 Telegraf,您可以使用以下命令

C:\Users\User>cd "C:\Program Files\Telegraf\"

C:\Program Files\Telegraf>telegraf.exe

Chronograf

Chronograf 有两个二进制文件,chronograf.exe 和 chronoctl.exe;第一个是 Chronograf 服务器本身。

以下是运行 Chronograf 的命令

C:\Users\User>cd "C:\Program Files\Chronograf\"

C:\Program Files\Chronograf>chronograf.exe

配置

对于大多数用户来说,默认配置足以开始使用,每个应用程序在启动时都会公开以下端口

应用程序 端口
InfluxDB 8086 HTTP API 端点
Kapacitor 9092 HTTP API 端点
Chronograf 8888 Web GUI

让我们启动 Chronograf 并完成使一切设置和工作所需的最后步骤。

首先,我们需要连接到 InfluxDB 实例。首次导航到 http://localhost:8888 的 Chronograf 时,您应该看到以下页面

提供的默认值应该适用于我们,因此我们可以单击“添加连接”,之后我们应该看到 Chronograf 的主界面。我们此时也想连接我们的 Kapacitor 实例;首先,导航到页面的“KAPACITOR”部分。

然后,在 “Influx 1” 旁边,单击 “添加 Kapacitor 连接”。

同样,默认值应该对我们足够,所以单击 “连接”。

就这样!我们应该可以开始了。如果未提供配置文件,InfluxDB 和 Kapacitor 都使用默认配置,而 Chronograf 根本不使用配置文件。如前所述,Telegraf 在 C:\Program Files\Telegraf\ 目录中查找其配置文件。

如果默认配置由于某种原因不适合您,您可以参考以下各节,了解有关如何自定义配置的更多信息。

InfluxDB

InfluxDB 的配置可以通过配置文件或环境变量来设置。配置文件中的任何参数也可以表示为环境变量。

下载中包含一个默认配置文件,如果您从存档中解压所有文件,该文件将最终位于 C:\Program Files\InfluxDB 中;但是,此文件指定了一些 Unix 文件位置,并且默认情况下不被 InfluxDB 使用。

您可以使用 $INFLUXDB_CONFIG_PATH 环境变量或 -config 参数来指定 InfluxDB 在哪里查找其配置文件,该参数用于 influxd.exe 可执行文件。

在没有配置文件的情况下启动 InfluxDB 将导致 Influx 使用其默认设置。

您还可以参考 InfluxDB 配置文档 以获取更多详细信息。

Chronograf

Chronograf 不使用配置文件,尽管它的大多数设置仍然可以使用命令行标志进行更改。键入 chronograf.exe \h 以获取您可以使用的完整参数列表,或查看 Chronograf 文档

Kapacitor

与 InfluxDB 类似,您可以在下载中找到一个示例配置,但是当您启动应用程序时,它不会自动加载。

您可以通过多种方式控制 Kapacitor 的配置;通过配置文件、环境变量、访问 HTTP API 或提供命令行参数。

您可以使用 KAPACITOR_CONFIG_PATH 环境变量或 -config 参数来指定配置文件的位置,该参数用于 kapacitord.exe

您可以在 Kapacitor 文档 中找到有关使用 API 或环境变量来控制配置的更多信息。

Telegraf

Windows 上的 Telegraf 在以下几个位置查找配置文件。 $TELEGRAF_CONFIG_PATH/.telegraf/telegraf.conf,C:\Program Files\Telegraf\telegraf.conf.

如果您想为配置文件指定位置,可以按如下方式使用 -config 选项启动 Telegraf

C:\Program Files>telegraf -config "C:\<Path to your config>"

同样,更深入的了解可以在 Telegraf 配置文档 中找到。

数据

InfluxDB 和 Kapacitor 都需要将数据存储在磁盘上。在 Windows 上,这些文件最终位于用户主目录的子目录中。InfluxDB 创建 .influxdb,而 Kapacitor 创建 .kapacitor

influx.exe 命令行客户端还将数据写入用户的主目录,形式为 .influx_history 文件。

默认情况下,Chronograf 将其配置存储在 C:\Program Files\Chronograf\ 中名为 chronograf-v1 的文件中。

Windows 服务

在 Windows 上,长期运行的程序(如服务器)通常作为 Windows 服务运行。

目前,只有 Telegraf 支持作为 Windows 服务运行。您可以使用存储库中的说明进行设置。

我们目前没有计划支持在 Windows 上以服务形式运行 InfluxDB,但如果您绝对需要此功能,则可以使用 Microsoft 的这些说明 设置用户定义的服务。

替代方案

  • 从源代码编译: 如果您有兴趣更改应用程序,并可能为社区做出贡献,则需要从 GitHub 下载源代码并自行编译。您只需要一个最新版本的 Go!
  • Docker: InfluxData 提供了一个 Docker sandbox,其中包含 Bash 和 Windows Batch 脚本,可帮助您启动并运行,以及一个 Docker-compose 文件。如果您是 Docker for Windows 用户,这是一个很好的起点。
  • 虚拟机: 如果您需要在 Linux 环境中运行 TICK Stack(可能是为了匹配您的部署环境),但您只有一台 Windows 机器,则 VM 是一个不错的选择。Hyper-V 和 VirtualBox 都允许您在 Windows 上运行 VM,而 Vagrant 可以帮助您创建可重现的环境。我们有一篇 博客文章 ,其中包含有关使用 Vagrant 的更多详细信息,但您需要更新说明以使用最新版本的 TICK Stack。
  • 适用于 Linux 的 Windows 子系统: 这是另一种未经充分测试的方法,我们希望在未来更多地探索它。Windows 现在为 Linux 内核提供了一个兼容层,这意味着许多 Linux 应用程序可以直接在 Windows 上运行。InfluxDB 可以通过一些工作成功安装并在 WSL 中运行。

咨询我们!

如果您正在使用 Windows 并且有具体问题,请随时发布到我们的 社区网站 或在 Twitter 上联系我们 @InfluxDB