Come installare Apache Solr su Rocky Linux

26 gen 2022 7 min di lettura
Come installare Apache Solr su Rocky Linux
Indice dei contenuti

Introduzione

Apache Solr o Solr è una piattaforma di ricerca gratuita e open source basata sulla libreria Apache Lucene. Solr è l'acronimo di Searching On Lucene with Replication, è una piattaforma di ricerca di livello aziendale scritta in Java.

Solr è una piattaforma di ricerca altamente scalabile e affidabile con indicizzazione a tolleranza di errore e distribuita. Inoltre, viene fornito con replica e failover e ripristino automatizzati.

Nella maggior parte dei casi, Solr viene utilizzato per creare applicazioni di livello aziendale che offrono prestazioni elevate. Solr è utilizzato da alcuni grandi siti Internet come Adobe, Bloomberg, AT&T, Magento, Netflix, Instagram, ecc.

In questa guida imparerai come installare Apache Solr sul sistema Rocky Linux, abilitare l'autenticazione di base Solr, impostare il limite massimo di file aperti e il limite massimo di processi per la distribuzione di Solr e come creare il primo core Solr dalla riga di comando.

Se desideri installare Apache Solr su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh root@IP_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh nome_utente@IP_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Prerequisiti

Prima di iniziare, assicurati di avere i seguenti requisiti:

  • Sistema operativo: Rocky Linux 8.5 (Ossidiana Verde)
  • Memoria: 2 GB per il test
  • CPU: 2
  • Privilegi di root

Installare Java OpenJDK

Per installare Solr sul sistema Linux, è necessario almeno Java OpenJDK 1.8 o successivo. Rocky Linux fornisce più versioni di Java OpenJDK e, in questo esempio, installerai Java OpenJDK 1.11 per l'installazione di Solr.

Eseguire il comando DNF di seguito per installare Java OpenJDK 1.11 sul sistema Rocky Linux:

sudo dnf install java-11-openjdk java-11-openjdk-devel

Digitare ' y ' per confermare l'installazione e premere ' Invio ' per continuare.

Se l'installazione di java viene completata, verifica l'installazione utilizzando il comando seguente:

java --version

Di seguito è riportato l'output simile che otterrai.

openjdk 11.0.13 2021-10-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mixed mode, sharing)

Hai completato l'installazione di Java OpenJDK 1.11 sul sistema Rocky Linux e sei pronto per scaricare e installare Solr sul tuo sistema.

Installare Solr su Rocky Linux

In questo passaggio, installerai l'ultima versione di Solr (la versione corrente è 8.11) sul sistema Rocky Linux. Installerai Solr utilizzando lo script di installazione incluso nel pacchetto Solr.

1Modificare la directory di lavoro corrente in '/opt' e scaricare il codice binario Solr utilizzando il comando seguente:

cd /opt/
wget https://downloads.apache.org/lucene/solr/8.11.0/solr-8.11.0.tgz

Al termine del processo di download, estrarre lo script di installazione dal pacchetto Solr:

tar xzf solr-8.11.0.tgz solr-8.11.0/bin/install_solr_service.sh --strip-components=2

Ora vedrai lo script di installazione di Solr 'install_solr_service.sh'.

Eseguire lo script di installazione come di seguito per installare Solr:

tar xzf solr-8.11.0.tgz solr-8.11.0/bin/install_solr_service.sh --strip-components=2

Ora lo script di installazione installerà Solr nei seguenti dettagli:

  • La directory di installazione è ' /opt/solr '.
  • La directory dei dati di Solr sarà disponibile nella directory ' /var/solr '.
  • Solr verrà eseguito come utente di sistema ' solr '.
  • Definire lo script systemd per Solr con lo script ' solr '.
  • Solr è ora in esecuzione sulla porta predefinita ' 8083 '.

Vedrai un messaggio di avviso sul limite di file e sul limite di processo per Solr, lo risolverai nel passaggio successivo. E il Solr è ora attivo e funzionante sulla porta '8983'.

Verifica la porta ' LISTEN ' sul tuo sistema usando il comando seguente:

ss -aplnt | grep java

Se l'installazione di Solr è corretta, vedrai che la porta '8983' è ora utilizzata dall'applicazione Java:

LISTEN 0      50     [::ffff:127.0.0.1]:7983            *:*    users:(("java",pid=4512,fd=48))
LISTEN 0      50                      *:8983            *:*    users:(("java",pid=4512,fd=157))

Ora uccidi il processo Solr usando il seguente comando:

pkill java
kill -9 PID

PID è l'ID di processo dell'applicazione Solr. Puoi vedere il PID dell'applicazione Solr dal comando ss in alto.

Quindi, ricaricare il gestore di sistema per applicare il nuovo file di servizio systemd:

sudo systemctl daemon-reload

Successivamente, avviare e abilitare il servizio ' solr ' utilizzando il comando seguente:

sudo systemctl enable --now solr

Verifica il servizio ' solr ' utilizzando il comando seguente:

sudo systemctl status solr

Ora vedrai che il servizio 'solr' è 'active (exited)'. Il servizio 'solr' è in esecuzione, ma systemd non riesce a trovare alcun demone da monitorare.

Hai terminato l'installazione di base di Solr sul sistema Rocky Linux.

Impostare un limite per i file aperti e il massimo dei processi per l'utente Solr

Come puoi vedere in alto, durante l'installazione di Solr hai ricevuto un messaggio di avviso sul limite di file aperti e sul limite di processo. Solr ha richiesto il limite minimo di file aperti e il limite massimo di processi a " 65000 ".

Per risolvere questi messaggi di avviso, è necessario modificare la configurazione '/etc/security/limits.conf' e definire il limite massimo di file aperti e il limite massimo di processi per l'utente 'solr'.

Modifica la configurazione '/etc/security/limits.conf ' utilizzando nano editor:

sudo nano /etc/security/limits.conf

Copia e incolla la seguente configurazione in fondo alla riga:

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

Salva la configurazione ed esci.

Successivamente, verifica i limiti del file aperto e il numero massimo di utenti elaborati utilizzando quanto segue:

sudo -u solr ulimit -a

E vedrai il limite di file aperti e il limite massimo di processi utente a "65000".

Ora riavvia il servizio 'solr' usando il comando seguente:

sudo systemctl restart solr

Ora hai completato la configurazione del limite massimo di file aperti e dei limiti massimi di processi per l'applicazione Solr.

Verificare l'installazione di Solr

Per verificare l'installazione di Solr, è necessario aggiungere la porta '8983' al firewalld, quindi è possibile accedere al dashboard dell'applicazione Web Solr.

Eseguire il comando firewall-cmd di seguito per aggiungere la porta '8983' a firewalld e ricaricare:

sudo firewall-cmd --add-port=8983/tcp --permanent
sudo firewall-cmd --reload

Ora apri il tuo browser web e digita l'indirizzo IP del server con la porta '8983':

http://192.168.1.1:8983/

Vedrai la dashboard Solr.

Non ci sono autenticazione e autorizzazione abilitate nell'installazione Solr predefinita. Passa alla fase successiva per proteggere la distribuzione di Solr con autenticazione e autorizzazione.

Proteggere Solr con l'autenticazione di base

In questo passaggio imparerai come abilitare l'Autenticazione di base per Solr.

Per abilitare l'autenticazione di base Solr, è necessario creare un nuovo file di configurazione "security.json" e definire il modulo di autenticazione e autorizzazione. La configurazione 'security.json' deve trovarsi nella directory dei dati Solr '/var/solr/data'.

Inoltre, puoi controllare la directory dei dati di Solr dalla dashboard di Solr.

Cambia la tua directory di lavoro in '/var/solr/data' e crea un nuovo file di configurazione 'security.json' usando nano editor:

cd /var/solr/data/
sudo -u solr nano security.json

Copia e incolla la seguente configurazione:

{
  "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"}
  }
}

Salva la configurazione ed esci.

Questo creerà un nuovo utente amministratore 'solr' con la password' SolrRocks'

Quindi, riavvia il servizio 'solr' per applicare una nuova configurazione utilizzando il comando systemctl riportato di seguito:

sudo systemctl restart solr

Per verificare l'autenticazione Solr, torna al tuo browser web e digita l'indirizzo IP del server con la porta Solr '8983':

http://192.168.1.1:8983/

Ora verrai reindirizzato alla pagina di accesso di Solr.

Digita il nome utente 'solr' e la password 'SolrRocks', quindi fai clic sul pulsante 'Login'.

E vedrai la dashboard di Solr.

Nella sezione "Sicurezza", vedrai un plug-in di autenticazione e autorizzazione dettagliato con il nome utente e i ruoli che stai attualmente utilizzando.

Ora hai protetto l'installazione di Solr con il plug-in di autenticazione di base.

Creare il Primo Solr Core

In Solr, il termine core si riferisce a un singolo indice Lucene ed è possibile creare più core in un'unica distribuzione Solr.

Ogni core contiene registri delle transazioni e file di configurazione come solrconfig.xml, file di schema, ecc. Inoltre, puoi indicizzare i dati con strutture diverse su ciascun core e possono essere presentati a diverse applicazioni/audience.

Puoi creare il core utilizzando la riga di comando 'solr' o utilizzando il dashboard di amministrazione di Solr.

In questo passaggio imparerai come creare un core usando la riga di comando 'solr'.

Prima di creare un core, è necessario configurare le credenziali Solr.

Cambia la tua directory di lavoro in '/opt/solr/bin' e copia la configurazione predefinita 'solr.in.sh.orig' in 'solr.in.sh':

cd /opt/solr/bin/
cp solr.in.sh.orig solr.in.sh

Modifica la configurazione 'solr.in.sh' usando nano editor:

sudo nano solr.in.sh

Decommenta l'opzione 'SOLR_AUTH_TYPE ' e cambia il valore in 'basic'. Questo dirà al comando 'solr' di utilizzare il plug-in di autenticazione di base:

SOLR_AUTH_TYPE="basic"

Decommentare l'opzione 'SOLR_AUTHENTICATION_OPTS' e modificare il valore con l'utente e la password Solr come di seguito:

SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"

Salva la configurazione ed esci.

Quindi, crea un nuovo core usando il comando solr di seguito. In questo esempio, creerai un nuovo core con il nome 'new_core' e il nome di configurazione 'ConfigName':

su - solr -c "/opt/solr/bin/solr create -c new_core -n ConfigName"

Ora torna alla dashboard di amministrazione Solr per verificare il core Solr.

Vedrai i dettagli core.

E hai creato un core Solr usando la riga di comando "solr".

Conclusione

Congratulazioni! Hai imparato l'installazione di Solr sul sistema Rocky Linux. Inoltre, hai imparato come proteggere la distribuzione di Solr con il plug-in di autenticazione di base e hai imparato come creare il core dalla riga di comando "solr".

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.