{"id":13655016,"url":"https://github.com/geerlingguy/ansible-role-solr","last_synced_at":"2025-04-12T20:46:04.898Z","repository":{"id":14603714,"uuid":"17320881","full_name":"geerlingguy/ansible-role-solr","owner":"geerlingguy","description":"Ansible Role - Apache Solr","archived":false,"fork":false,"pushed_at":"2025-01-31T03:25:48.000Z","size":172,"stargazers_count":103,"open_issues_count":4,"forks_count":123,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-04T00:10:11.311Z","etag":null,"topics":["ansible","apache","index","java","lucene","role","search","solr"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/geerlingguy/solr/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/geerlingguy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"geerlingguy","patreon":"geerlingguy"}},"created_at":"2014-03-01T18:09:41.000Z","updated_at":"2025-02-08T00:08:50.000Z","dependencies_parsed_at":"2024-01-25T05:22:57.513Z","dependency_job_id":"cd45d8fb-a8ab-44f5-bab8-a26868924ae9","html_url":"https://github.com/geerlingguy/ansible-role-solr","commit_stats":null,"previous_names":[],"tags_count":62,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-solr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-solr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-solr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-solr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/geerlingguy","download_url":"https://codeload.github.com/geerlingguy/ansible-role-solr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248631696,"owners_count":21136559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","apache","index","java","lucene","role","search","solr"],"created_at":"2024-08-02T03:00:54.878Z","updated_at":"2025-04-12T20:46:04.879Z","avatar_url":"https://github.com/geerlingguy.png","language":"Shell","funding_links":["https://github.com/sponsors/geerlingguy","https://patreon.com/geerlingguy"],"categories":["role","Search Engines"],"sub_categories":["Caching"],"readme":"# Ansible Role: Apache Solr\n\n[![CI](https://github.com/geerlingguy/ansible-role-solr/actions/workflows/ci.yml/badge.svg)](https://github.com/geerlingguy/ansible-role-solr/actions/workflows/ci.yml)\n\nInstalls [Apache Solr](http://lucene.apache.org/solr/) on Linux servers.\n\n## Requirements\n\nJava must be available on the server. You can easily install Java using the `geerlingguy.java` role. Make sure the Java version installed meets the minimum requirements of Solr (e.g. Java 8 for Solr 6+).\n\nThis role is currently tested and working with Solr 3.x, 4.x, 5.x, 6.x, 7.x, and 8.x.\n\n## Role Variables\n\nAvailable variables are listed below, along with default values (see `defaults/main.yml`):\n\n    solr_workspace: /root\n\nFiles will be downloaded to this path on the remote server before being moved into place.\n\n    solr_create_user: true\n    solr_user: solr\n    solr_group: \"{{ solr_user }}\"\n\nSolr will be run under the `solr_user`. Set `solr_create_user` to `false` if `solr_user` is created before this role runs, or if you're using Solr 5+ and want Solr's own installation script to set up the user. By default, `solr_group` equals `solr_user`, but it can be overwritten to fit your own configuration.\n\n    solr_version: \"8.11.2\"\n\nThe Apache Solr version to install. For a full list, see [available Apache Solr versions](http://archive.apache.org/dist/lucene/solr/).\n\n    solr_mirror: \"https://archive.apache.org/dist\"\n\nThe Apache Project mirror from which the Solr tarball will be downloaded. In case of slow download speed or timeouts it is useful to set the mirror to the one suggested by Apache's [mirror download site](https://www.apache.org/dyn/closer.cgi/lucene/solr/).\n\n    solr_remove_cruft: false\n\nWhether to remove unneccessary documentation and examples from the solr directory.\n\n    solr_service_manage: true\n    solr_service_name: solr\n    solr_service_state: started\n\nBy default, this role will manage the `solr` service, ensuring it is enabled at system boot and is running. You can ensure Solr is stopped by setting `solr_service_state: stopped`, or you can disable this role's management of the `solr` service entirely by setting `solr_service_manage: false`. You may also want to set `solr_restart_handler_enabled: false` (documented later) in this case.\n\n    solr_install_dir: /opt\n    solr_install_path: /opt/solr\n\nThe path where Apache Solr will be installed. For Solr 5+, the `solr_install_dir` will be used by Solr's installation script. For Solr \u003c 5, the Solr installation files will be copied in place in the `solr_install_path`.\n\n    solr_home: /var/solr\n\nThe path where local Solr data (search collections and configuration) will be stored. Should typically be outside of the `solr_path`, to make Solr upgrades easier.\n\n    solr_port: \"8983\"\n\nThe port on which Solr will run.\n\n    solr_xms: \"256M\"\n    solr_xmx: \"512M\"\n\nMemory settings for the JVM. These should be set as high as you can allow for best performance and to reduce the chance of Solr restarting itself due to OOM situations.\n\n    solr_timezone: \"UTC\"\n\nDefault timezone of JVM running solr. You can override this if needed when using dataimport and delta imports (ex: comparing against a MySQL external data source). Read through Apache Solr's [Working with Dates](https://cwiki.apache.org/confluence/display/solr/Working+with+Dates) documentation for more background.\n\n    solr_opts: \"$SOLR_OPTS -Dlog4j2.formatMsgNoLookups=true\"\n\nSolr options. This option was added to the role in part to mitigate [CVE-2021-44228](https://solr.apache.org/security.html#apache-solr-affected-by-apache-log4j-cve-2021-44228).\n\n    solr_cores:\n      - collection1\n\nA list of cores / collections which should exist on the server. Each one will be created (if it doesn't exist already) using the default example configuration that ships with Solr. Note that this variable only applies when using Solr 5+.\n\n    solr_connect_host: localhost\n\nThe hostname or IP address on which Solr will be reachable. `localhost` should work in most circumstances, but there are special cases where you may only be able to access the local Solr instance via another IP or hostname.\n\n    solr_restart_handler_enabled: true\n\nWhether the `restart solr` handler should be used or not. If you're building containers or AMIs, you might need to disable the restart handler for a provisioning run.\n\n### Variables used only for Solr \u003c 5.\n\nThe following variables are currently only applied to installations of Solr 4 and below:\n\n    solr_log_file_path: /var/log/solr.log\n\nPath where Solr log file will be created.\n\n    solr_host: \"0.0.0.0\"\n\nThe hostname or IP address to which Solr will bind. Defaults to `0.0.0.0` which allows Solr to listen on all interfaces.\n\n## Dependencies\n\nNone.\n\n## Example Playbook\n\n    - hosts: solr-servers\n      roles:\n        - geerlingguy.java\n        - geerlingguy.solr\n\n## License\n\nMIT / BSD\n\n## Author Information\n\nThis role was created in 2014 by [Jeff Geerling](https://www.jeffgeerling.com/), author of [Ansible for DevOps](https://www.ansiblefordevops.com/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeerlingguy%2Fansible-role-solr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeerlingguy%2Fansible-role-solr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeerlingguy%2Fansible-role-solr/lists"}