Q100593:最佳 Flix 6 服务器设置

关注

概括

本文介绍如何设置Flix服务器以方便维护,以便在需要时添加新服务器和升级Flix版本变得尽可能简单。

更多信息

下面您将找到此类设置的要求列表,然后介绍如何设置Flix以便将每个服务器的日志文件正确保存在已知位置,介绍如何创建服务以便Flix在计算机重新启动时自动重新启动的步骤、如何轻松升级到新的Flix版本,以及如何添加更多Flix服务器。最后将显示完整的设置示例。

要求

在开始之前,请先了解以下要求(大多数是所有Flix安装的要求):

  1. Flix需要已安装在网络卷上。您可以在此处了解如何进行Flix服务器的基本安装: 安装Flix服务器
  2. Flix需要配置为使用浮动许可证服务器。
  3. Flix需要配置为使用共享存储来存储其资产。
  4. 您的 MySQL 5.7 服务器需要允许来自远程主机的连接。您可以在此知识库文章中了解如何执行此操作: Q100551:在 Red Hat/CentOS 6/7 上安装 MySQL 5.7
  5. 每个服务器的主机名需要可由服务器本身和所有客户端解析。
  6. Flix服务器需要让其防火墙打开端口 8080(客户端通信的默认端口)、9091(文件传输的默认端口)、9876(服务器到服务器通信的默认端口,此端口不需要仅对Flix服务器开放给Flix客户端)、3306(默认用于与 MySQL 通信,此端口仅需要在 MySQL 服务器上开放)或您配置Flix使用的任何其他端口。

Flix日志文件

Flix服务器从网络位置运行时,日志文件有被输出到同一目录的风险。为了防止不同服务器覆盖彼此的日志文件,请在 config.yml 文件中添加 log_file 选项并将其指向本地位置。例如:

log_file: /var/log/ flix _server.log

如果您想将所有日志文件保存在同一网络目录中,您可以在每个服务器上使用命令行标志指定日志文件,如下所示

--log-file /mnt/logs/`hostname`.flix_server.log

创建Flix服务

接下来,我们将创建一个服务文件,以便Flix在服务器重新启动后自动启动。本文更详细地解释了如何执行此操作:

Q100566:在 CentOS 7 中创建Flix 6 服务


我们需要添加挂载点服务,并确保Flix设置为在该服务启动后启动,否则Flix可能会在挂载卷之前尝试启动,但会失败。
我们需要告诉服务flix可执行文件的完整路径并为其提供主机名。

ExecStart=/PATH/TO/ flix _server -hostname `hostname` -config-file /PATH/TO/config.yml

当我们像本例一样将主机名放在反引号中时,服务将从系统设置中提取它正在运行的服务器的主机名。您需要确保在服务器上运行“hostname”命令返回客户端计算机能够解析的主机名。这允许我们在所有服务器上使用相同的配置文件,而不必在每个服务器上单独指定主机名。
仅当您的 config.yml 文件位于flix _server 所在目录以外的目录中时,才需要 -config-file 。如果将每个Flix版本保存在其自己的目录中,这将非常有用。
如果Flix每次都要求您迁移资源文件,您还可以在 ExecStart 行的末尾添加 -skip-migration 标志。

保存服务文件并将其添加到启动服务中,运行:

systemctl enable flix _server.service

然后可以随时通过运行以下命令启动该服务:

systemctl start flix _server

要停止它,请运行:

systemctl stop flix _server

轻松升级

为了更轻松地升级到新版本的Flix ,您可以使用符号链接。
例如,您可以从foundry创建一个指向 /mnt/ foundry / flix flix符号链接。然后您可以将Flix服务指向从 /mnt/ foundry / flix启动(在这种情况下,您的服务文件中的 ExecStart 命令将如下所示:

ExecStart=/mnt/ foundry / flix / flix _server_production/ flix _server -hostname `hostname` -config-file /mnt/ foundry / flix /config.yml

例如,如果从flix _6.3.3 升级到flix _6.3.4 flix则只需替换符号链接,以便 /mnt/ foundry / flix指向foundry 。如果您不执行此符号链接切换,则每次都需要更新每个Flix服务器上的 ExecStart 路径。

Flix添加到其他服务器

要将Flix添加到其他服务器,只需将相同的挂载点添加到新服务器,将flix _server.service 文件复制到相同位置,例如 /etc/systemd/system/,然后通过运行以下命令启用该服务:

systemctl enable flix _server

然后启动服务:

systemctl start flix _server

Flix服务将以“hostname”命令从服务文件中提取的主机名以及 config.yml 文件中的所有其他配置选项启动。

例子

这是一个在我们的环境中如何工作的示例。

我们在所有服务器上安装了共享网络卷/mnt/ foundry / 。我从我们的网站下载了最新的Flix服务器到/mnt/ foundry / flix并解压它。它创建了一个名为flix _server_6.3.5_82 的目录。我使用以下命令创建了一个符号链接:

ln -s flix _server_6.3.5_82 flix _server_production

我创建了一个 config.yml 文件并将其保存flix foundry下。它包含了:

mysql_username: user
mysql_password: Password
mysql_hostname: mysqlhostname
floating_license_hostname: licenseserver
floating_license_port: 4101
asset_directory: /mnt/ foundry / flix /assets
shared_storage: True
log_file: /var/log/ flix _server.log

接下来,我通过运行以下命令来测试我的配置文件:

/mnt/ foundry / flix / flix _server_production/ flix _server -config-file /mnt/ foundry / flix /config.yml

一旦我确定配置工作正常,我创建了一个服务文件 - /etc/systemd/system/ flix _service.service 。它看起来像这样:

[Unit]
Description=Flix-Service
After=mnt-foundry.mount

[Service] Type=forking ExecStart=/mnt/ foundry / flix / flix _server_production/ flix _server -hostname `hostname` -config-file /mnt/ foundry / flix /config.yml
[Install] WantedBy=multi-user.target

我通过使用系统服务命令启动它:

systemctl start flix _service

它工作没有任何问题,因此我通过运行以下命令将服务设置为随系统启动(以便它在重新启动后启动):

systemctl enable flix _service

为了添加额外的Flix服务器,我在每台新服务器上执行了以下操作:

  1. Flix卷挂载到 /mnt/ foundry

  2. 从我配置的服务器复制服务文件 - /etc/systemd/system/ flix _service.service

  3. 设置服务随系统启动 - systemctl enable flix

  4. 启动服务-systemctl start flix

延伸阅读

您可以在此处详细了解如何创建Flix 6 服务:

Q100566:在 CentOS 7 中创建Flix 6 服务

我们的学习门户上提供了有关如何安装Flix 6 服务器的分步说明:

Flix 6 - 安装服务器

有关如何在 CentOS 6/7 上设置 MySQL 的信息,请参见此处:

Q100551:在 Red Hat/CentOS 6/7 上安装 MySQL 5.7

有关Flix工作原理的更多技术信息可在此处找到:

Flix技术概述

    我们很遗憾听到

    请告诉我们