在 Linux 服务器上安装 Apache Solr。
Java 必须在服务器上可用。您可以使用geerlingguy.java
角色轻松安装 Java。确保安装的 Java 版本满足 Solr 的最低要求(例如 Solr 6+ 的 Java 8)。
该角色目前已经过测试并可与 Solr 3.x、4.x、5.x、6.x、7.x 和 8.x 配合使用。
下面列出了可用变量以及默认值(请参阅defaults/main.yml
):
solr_workspace: /root
文件将被下载到远程服务器上的此路径,然后再移动到位。
solr_create_user: true
solr_user: solr
solr_group: "{{ solr_user }}"
Solr 将在solr_user
下运行。如果solr_user
是在此角色运行之前创建的,或者如果您使用 Solr 5+ 并且希望 Solr 自己的安装脚本来设置用户,请将solr_create_user
设置为false
。默认情况下, solr_group
等于solr_user
,但可以覆盖它以适合您自己的配置。
solr_version: "8.11.2"
要安装的 Apache Solr 版本。有关完整列表,请参阅可用的 Apache Solr 版本。
solr_mirror: "https://archive.apache.org/dist"
从中下载 Solr tarball 的 Apache 项目镜像。如果下载速度慢或超时,将镜像设置为 Apache 镜像下载站点建议的镜像会很有用。
solr_remove_cruft: false
是否从solr目录中删除不需要的文档和示例。
solr_service_manage: true
solr_service_name: solr
solr_service_state: started
默认情况下,此角色将管理solr
服务,确保它在系统启动时启用并正在运行。您可以通过设置solr_service_state: stopped
来确保 Solr 停止,或者您可以通过设置solr_service_manage: false
完全禁用此角色对solr
服务的管理。在这种情况下,您可能还需要设置solr_restart_handler_enabled: false
(稍后记录)。
solr_install_dir: /opt
solr_install_path: /opt/solr
Apache Solr 将安装的路径。对于 Solr 5+,Solr 的安装脚本将使用solr_install_dir
。对于 Solr < 5,Solr 安装文件将复制到solr_install_path
中。
solr_home: /var/solr
存储本地 Solr 数据(搜索集合和配置)的路径。通常应该位于solr_path
之外,以使 Solr 升级更容易。
solr_port: "8983"
Solr 将运行的端口。
solr_xms: "256M"
solr_xmx: "512M"
JVM 的内存设置。这些应该设置得尽可能高,以获得最佳性能,并减少 Solr 由于 OOM 情况而重新启动的机会。
solr_timezone: "UTC"
运行 solr 的 JVM 的默认时区。当使用数据导入和增量导入(例如:与 MySQL 外部数据源进行比较)时,您可以根据需要覆盖此设置。阅读 Apache Solr 的“使用日期”文档以了解更多背景信息。
solr_opts: "$SOLR_OPTS -Dlog4j2.formatMsgNoLookups=true"
索尔选项。将此选项添加到该角色的部分原因是为了缓解 CVE-2021-44228。
solr_cores:
- collection1
服务器上应存在的核心/集合的列表。将使用 Solr 附带的默认示例配置来创建每一个(如果尚不存在)。请注意,此变量仅在使用 Solr 5+ 时适用。
solr_connect_host: localhost
可访问 Solr 的主机名或 IP 地址。 localhost
在大多数情况下应该可以工作,但在某些特殊情况下,您可能只能通过其他 IP 或主机名访问本地 Solr 实例。
solr_restart_handler_enabled: true
是否应使用restart solr
处理程序。如果您正在构建容器或 AMI,您可能需要禁用配置运行的重启处理程序。
以下变量当前仅适用于 Solr 4 及以下版本的安装:
solr_log_file_path: /var/log/solr.log
将创建 Solr 日志文件的路径。
solr_host: "0.0.0.0"
Solr 将绑定到的主机名或 IP 地址。默认为0.0.0.0
,允许 Solr 监听所有接口。
没有任何。
- hosts: solr-servers
roles:
- geerlingguy.java
- geerlingguy.solr
麻省理工学院/BSD
该角色由 Ansible for DevOps 的作者 Jeff Geerling 于 2014 年创建。