Recherche de site Web

Comment installer Apache Solr sur un serveur Ubuntu 24.04


Comment installer Apache Solr sur un serveur Ubuntu 24.04

Sur cette page

  1. Conditions préalables
  2. Préparation d’Ubuntu Server
  3. Installation de Java OpenJDK
  4. Installation d’Apache Solr
  5. Configuration d’Apache Solr
  6. Sécurisation d’Apache Solr avec l’authentification
  7. Création de la première collection dans Apache Solr
  8. Conclusion

Apache Solr est une plate-forme de recherche open source basée sur Apache Lucene, conçue pour créer de puissantes capacités de recherche et d’indexation d’applications. Il fournit une recherche avancée en texte intégral, une recherche à facettes, une indexation en temps réel et une recherche distribuée, ce qui en fait un choix populaire pour la création de moteurs de recherche et de systèmes de récupération de données.

Solr est hautement évolutif et optimisé pour de grands volumes de données, souvent utilisé dans les environnements d’entreprise pour des tâches telles que la recherche de sites Web, le commerce électronique et l’analyse du Big Data. Son API de type REST permet une intégration facile avec d’autres systèmes et prend en charge des fonctionnalités telles que la mise en évidence des suggestions de requêtes et la recherche géospatiale. La flexibilité, les performances et le support communautaire de Solr en ont fait une solution de premier plan pour les organisations ayant besoin d'une fonctionnalité de recherche robuste.

Dans ce guide, vous allez apprendre à installer Apache Solr sur le serveur Ubuntu 24.04. En plus de cela, vous apprendrez également à sécuriser Apache Solr avec BasicAuthentication et à créer la première collection avec la ligne de commande solr.

Conditions préalables

Pour commencer avec ce guide, assurez-vous d’avoir les éléments suivants :

  • Un serveur Ubuntu 24.04
  • Un utilisateur non root avec des privilèges d’administrateur

Préparation d’Ubuntu Server

Avant d'installer Apache Solr, préparons et configurons notre système Ubuntu en augmentant les shmmax et nr_hugepages dans le paramètre kernel, puis en augmentant le nombre maximal de fichiers et de processus ouverts par défaut.

Exécutez la commande ci-dessous pour augmenter le shmmax et le nr_hugepages sur votre serveur Ubuntu.

sudo echo 4294967295 > /proc/sys/kernel/shmmax
sudo echo 1536 > /proc/sys/vm/nr_hugepages

Exécutez maintenant la commande ci-dessous pour modifier le fichier /etc/security/limits.conf.

sudo nano /etc/security/limits.conf

Augmentez le nombre maximal de fichiers et de processus ouverts pour l’utilisateur solr avec la configuration suivante.

solr soft nofile 65000
solr hard nofile 65000
solr soft nproc 65000
solr hard nproc 65000

Enregistrez le fichier et quittez l’éditeur.

Installation de Java OpenJDK

Maintenant que vous avez configuré votre système, installons Java OpenJDK sur notre système. L'Apache Solr nécessite l'installation d'au moins Java 11 sur votre système, et pour ce guide, nous utiliserons le package default-jdk qui offre la dernière version stable de Java OpenJDK.

Tout d’abord, mettez à jour l’index de votre package Ubuntu avec ce qui suit.

sudo apt update

Installez maintenant le package default-jdk à l’aide de la commande ci-dessous. Entrez Y pour confirmer l’installation.

sudo apt install default-jdk

Une fois l’installation terminée, vérifiez la version de Java à l’aide de la commande suivante.

java --version

Vous pouvez voir ci-dessous que Java 21 est installé.

Installation d’Apache Solr

Maintenant que votre système Ubuntu est configuré et que Java OpenJDK est installé, commençons l'installation d'Apache Solr. Dans ce guide, vous allez installer Apache Solr à l'aide du script d'installation fourni par le package Solr.

Pour commencer, exécutez la commande ci-dessous pour installer des outils de base tels que curl, lsof et bc.

sudo apt install curl lsof bc

Téléchargez maintenant le package binaire Apache Solr avec la commande wget ci-dessous.

wget https://www.apache.org/dyn/closer.lua/solr/solr/9.7.0/solr-9.7.0.tgz?action=download

Renommez le package Apache Solr et extrayez le programme d’installation install_solr_service.sh script à l’aide de la commande ci-dessous.

mv solr-9.7.0.tgz?action=download solr-9.7.0.tgz
tar -xf tar xzf solr-9.7.0.tgz solr-9.7.0/bin/install_solr_service.sh --strip-components=2

Exécutez maintenant le script install_solr_service.sh pour installer Apache Solr.

sudo bash ./install_solr_service.sh solr-9.7.0.tgz

Vous pouvez voir ci-dessous l’installation détaillée d’Apache Solr.

  • Le répertoire d’installation par défaut se trouve dans le répertoire /opt/solr.
  • Le nouvel utilisateur solr est créé automatiquement.
  • Le nouveau fichier de service solr.service est créé pour la gestion du service Apache Solr.

Vérifiez maintenant l’état du solr avec la commande ci-dessous. Vous pouvez voir solr avec le statut active(exited), ce qui signifie que le service est en cours d'exécution, mais systemd ne trouve aucun fichier à surveiller.

sudo systemctl status solr

Vous pouvez également vérifier les ports ouverts sur votre système à l’aide de la commande ss ci-dessous. Apache Solr doit fonctionner sur le port 8893.

ss -tulpn

Configuration d’Apache Solr

Maintenant qu'Apache Solr est installé, configurons-le en modifiant les paramètres d'Apache Solr dans le script /etc/default/solr.in.sh. Ensuite, augmentez le tas de mémoire maximal par défaut et l’adresse IP utilisée pour exécuter Apache Solr.

Ouvrez le fichier de configuration Solr /etc/default/solr.in.sh à l’aide de l’éditeur vim.

sudo vim /etc/default/solr.in.sh

Modifiez l’option de SOLR_HEAP par défaut avec l’allocation de mémoire maximale pour Apache Solr. Dans cet exemple, nous allons utiliser 4 Go de RAM.

SOLR_HEAP="4g"

Entrez votre adresse IP dans les options SOLR_HOST et SOLR_JETTY_HOST. Dans cet exemple, Apache Solr s’exécutera sur l’adresse IP locale 192.169.10.60.

SOLR_HOST="192.168.10.15"
SOLR_JETTY_HOST="192.168.10.15"

Exécutez maintenant la commande systemctl ci-dessous pour redémarrer le service Apache Solr et appliquer vos modifications.

sudo systemctl restart solr

Vous pouvez vérifier le port ouvert et l’adresse IP utilisée par Apache Solr à l’aide de la commande ss ci-dessous.

ss -tulpn

Sécurisation d’Apache Solr avec l’authentification

Après avoir configuré Apache Solr, l’étape suivante consiste à sécuriser votre déploiement. Dans cet exemple, nous allons utiliser l'authentification de base pour sécuriser Apache Solr. Cela peut être fait en créant un nouveau fichier /var/solr/data/security.json.

Créez une nouvelle configuration /var/solr/data/security.json avec l’éditeur vim.

sudo vim /var/solr/data/security.json

Insérez la configuration ci-dessous pour configurer l’authentification pour Apache Solr et créer un nouvel utilisateur solr avec le mot de passe solrRocks.

{
 "authentication":{
 "blockUnknown": true,
 "class":"solr.BasicAuthPlugin",
 "credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="},
 "realm":"My Solr users",
 "forwardCredentials": false
 },
 "authorization":{
 "class":"solr.RuleBasedAuthorizationPlugin",
 "permissions":[{"name":"all", "role":"admin"}],
 "user-role":{"solr":"admin"}
 }
}

Enregistrez le fichier et quittez l’éditeur.

Exécutez maintenant la commande systemctl ci-dessous pour redémarrer le service solr et appliquer vos modifications.

sudo systemctl restart solr

Ensuite, ouvrez votre navigateur Web et rendez-vous sur votre http://192.168.10.60:8983/ d’installation Apache Solr. Vous serez redirigé vers la page de connexion d'Apache Solr.

Entrez l'utilisateur solr et le mot de passe solrRocks et vous obtiendrez le tableau de bord Apache Solr.

Création de la première collection dans Apache Solr

À ce stade, vous avez configuré et sécurisé Apache Solr. Vous allez maintenant créer la première collection dans Apache Solr à partir de la ligne de commande.

Ouvrez à nouveau le fichier /etc/default/solr.in.sh avec l’éditeur vim.

sudo vim /etc/default/solr.in.sh

Décommentez les lignes SOLR_AUTH_TYPE et SOLR_AUTHENTICATION_OPTS, et laissez les deux par défaut.

SOLR_AUTH_TYPE="basic"
SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"

Enregistrez le fichier et quittez l’éditeur.

Exécutez maintenant la commande suivante pour redémarrer le service Apache Solr.

sudo systemctl restart solr

Ensuite, exécutez la commande ci-dessous pour créer votre première collection portant le nom my_first_index.

su - solr -c "/opt/solr/bin/solr create -c my_first_index -n MyIndex"

Passez maintenant au tableau de bord Apache Solr et vous verrez la nouvelle collection my_first_index a été créée.

Conclusion

Félicitations! Vous avez terminé l'installation d'Apache Solr sur le serveur Ubuntu 24.04. Vous l’avez installé avec Java OpenJDK 21, configuré pour qu’il s’exécute sur une adresse IP locale et sécurisé avec BasicAuthentication. Enfin, vous avez créé la première collection à l’aide de la ligne de commande Solr.