Ինչպես տեղադրել Apache Solr-ը AlmaLinux 9-ում


Այս էջում

  1. Նախադրյալներ
  2. Java OpenJDK 11-ի տեղադրում
  3. Apache Solr-ի տեղադրում
  4. Apache Solr-ի տեղադրման օպտիմիզացում
  5. Կարգավորեք Ulimits-ը և Firewalld-ը
  6. Ապահովելով Apache Solr-ը հիմնական իսկորոշմամբ
  7. Ստեղծեք առաջին ինդեքսը
  8. Եզրակացություն

Apache Solr-ը կամ Solr-ը ձեռնարկության մակարդակի որոնման հարթակ է, որը հիմնված է Apache Lucene գրադարանի վրա: SOlr-ը նշանակում է Searching On Lucene with Replication-ը և Java-ով գրված անվճար, բաց կոդով որոնման հարթակ է: Solr-ը արդյունաբերության ամենահայտնի որոնման հարթակներից մեկն է և առաջարկում է բարձր հասանելիություն՝ կրկնօրինակման և ավտոմատ ձախողման և վերականգնման միջոցով:

Solr-ը ձեռնարկատիրական հավելվածներ ստեղծելու համար շատ լայնածավալ և հուսալի որոնման հարթակ է և առաջարկում է բարձր արդյունավետություն: Այն աջակցում է բաշխված ինդեքսավորմանը և առաջարկում է սխալների հանդուրժողականություն: Որոշ խոշոր ինտերնետային ընկերություններ, ինչպիսիք են Adobe-ը, Netflix-ը, Instagram-ը, Magento-ն և Bloomberg-ը, օգտագործում են Apache Solr-ը որպես որոնման հարթակ իրենց արտադրանքի համար:

Այս ձեռնարկում դուք կսովորեք, թե ինչպես տեղադրել Apache Solr-ը AlmaLinux 9 սերվերի վրա: Դուք նաև կստեղծեք MaxHeapMemory-ը Solr-ի համար, սահմաններ կսահմանեք և կստեղծեք հիմնական նույնականացում Solr-ի համար:

Նախադրյալներ

Այս ուղեցույցը լրացնելու համար համոզվեք, որ ունեք հետևյալը.

  • AlmaLinux 9 սերվեր՝ առնվազն 2/4 ԳԲ հիշողությամբ: Այս օրինակը օգտագործում է AlmaLinux՝ հոսթի անունով almalinux9 և 8 ԳԲ հիշողությամբ:
  • Ոչ արմատային օգտատեր՝ sudo/root ադմինիստրատորի արտոնություններով:

Java OpenJDK 11-ի տեղադրում

Այս գրելու պահին Apache Solr-ի վերջին տարբերակը v9.x է և պահանջվում է Java JRE (Java Runtime Environment) առնվազն v11 կամ ավելի բարձր: Այս առաջին քայլում դուք կտեղադրեք Java OpenJDK 11-ը AlmaLinux հավելվածի հոսքի պահոցի միջոցով:

Մուտքագրեք հետևյալ dnf հրամանը՝ Java OpenJDK 11-ը ձեր AlmaLinux սերվերում տեղադրելու համար: Երբ ձեզ հուշում են, մուտքագրեք y՝ հաստատելու համար և սեղմեք ENTER:

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

Java OpenJDK-ի տեղադրումից հետո գործարկեք հետևյալ հրամանը՝ ստուգելու Java տարբերակը և համոզվելու, որ տեղադրումը հաջող է:

java --version

Հետևյալ ելքը հաստատում է, որ Java OpenJDK 11-ը տեղադրված է:

Apache Solr-ի տեղադրում

Java OpenJDK 11-ը տեղադրելուց հետո դուք կսկսեք Apache Solr-ի տեղադրումը: Apache Solr-ի մի քանի երկուական փաթեթներ հասանելի են բազմաթիվ օպերացիոն համակարգերի համար, ներառյալ Linux, macOS և Windows:

Այս բաժնում դուք կտեղադրեք Apache Solr-ը ձեր AlmaLinux սերվերի վրա պաշտոնական երկուական փաթեթի միջոցով:

Apache Solr-ը ներբեռնելուց առաջ տեղադրեք հետևյալ փաթեթները ձեր AlmaLinux սերվերում՝ օգտագործելով ստորև նշված հրամանը:

sudo dnf install curl lsof chkconfig -y

Հաջորդը, ներբեռնեք Apache Solr-ի երկուական փաթեթը 9.2.1՝ օգտագործելով հետևյալ curl հրամանը:

curl -qO https://downloads.apache.org/solr/solr/9.2.1/solr-9.2.1.tgz

Գործարկեք հետևյալ հրամանը՝ «solr-9.2.1.tgz» Apache Solr երկուական փաթեթից հանելու տեղադրողի սցենարը:

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

Ձեր ընթացիկ գրացուցակում դուք պետք է տեսնեք Apache Solr տեղադրիչի սցենարը 'install_solr_service.sh':

Նկար

Հաջորդը, տեղադրեք Apache Solr-ը` գործարկելով տեղադրողի սցենարը 'install_solr_service.sh' այսպես.

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

Երբ տեղադրումը հաջող է, ստացված արդյունքը պետք է նման լինի հետևյալին.

Apache Solr-ն աշխատում է լռելյայն 8983 նավահանգստում SOLR_HOME գրացուցակով /var/solr/data: Եվ այս պահին այն աշխատում է PID-ով (Process ID) 12084:

Այժմ գործարկեք հետևյալ հրամանը՝ դադարեցնելու ընթացիկ Apache Solr գործընթացը, որն աշխատում է PID 12084 վրա:

kill -9 12084

Այնուհետև կարող եք սկսել Apache Solr ծառայությունը՝ օգտագործելով ստորև նշված հրամանը:

sudo service solr start

Վերջապես, ստուգեք Apache Solr ծառայությունը, օգտագործելով հետևյալ հրամանը.

sudo service solr status

Եթե Apache Solr-ը գործարկվի, նմանատիպ ելք կցուցադրվի ձեր տերմինալում:

Apache Solr-ի տեղադրման օպտիմիզացում

Այս բաժնում դուք կկարգավորեք և օպտիմալացնեք, թե ինչպես պետք է աշխատի Apache Solr-ը: Այս օրինակում Apache Solr-ը կաշխատի առավելագույն կույտային հիշողությամբ 4 ԳԲ և «192.168.10.15» ներքին IP հասցեով:

Նախ, ավելացրեք shmmax և nr_hugepages արժեքները՝ գործարկելով հետևյալ հրամանը։

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

Բացեք «/etc/default/solr.in.sh» ֆայլը՝ օգտագործելով nano editor հրամանը:

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

Անջատեք SOLAR_HEAP պարամետրը և փոխեք արժեքը առավելագույն կույտային հիշողության միջոցով, որը ցանկանում եք օգտագործել: Համոզվեք, որ կարգավորեք արժեքը ձեր սերվերի ընդհանուր հիշողության հետ:

SOLR_HEAP="4g"

Հեռացրեք SOLR_JETTY_HOST և SOLR_HOST պարամետրերը և փոխեք արժեքը ձեր ներքին IP հասցեով: Այս օրինակում Apache Solr-ը կաշխատի «192.168.10.15»:

SOLR_HOST="192.168.10.15"
SOLR_JETTY_HOST="192.168.10.15"

Պահպանեք փոփոխությունները և փակեք խմբագրիչը, երբ ավարտեք:

Հաջորդը, գործարկեք հետևյալ հրամանը՝ Apache Solr ծառայությունը վերագործարկելու և փոփոխությունները կիրառելու համար:

sudo service solr restart

Վերջապես, գործարկեք հետևյալ հրամանը՝ Apache Solr կարգավիճակը ստուգելու համար: Եթե Apache Solr-ի կոնֆիգուրացիան հաջող է, դուք պետք է տեսնեք, որ առավելագույն կույտային հիշողությունը փոխված է: Այս օրինակում այն փոխվել է 4 ԳԲ-ի:

sudo service solr status

Կարգավորեք Ulimits-ը և Firewalld-ը

Apache Solr-ը գործարկելու համար մեկ այլ կարևոր համակարգի կոնֆիգուրացիա է առավելագույն գործընթացների և առավելագույն բաց ֆայլերի կազմաձևումը, որը պահանջում է առնվազն 65000: Դրան հասնելու համար դուք պետք է փոփոխեք «/etc/security/limits.conf» ֆայլը: Եվ դրանից հետո դուք նույնպես պետք է տեղադրեք firewalld և բացեք 8983 նավահանգիստը Apache Solr-ի համար:

Բացեք «/etc/security/limits.conf» ֆայլը՝ օգտագործելով ստորև բերված nano editor հրամանը:

sudo nano /etc/security/limits.conf

Տողի վերջում ավելացրեք հետևյալ կոնֆիգուրացիան.

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

Պահպանեք ֆայլը և փակեք խմբագրիչը:

Այժմ գործարկեք հետևյալ հրամանը՝ ստուգելու ձեր համակարգի առավելագույն գործընթացները և առավելագույն բաց ֆայլերը: Եթե հաջողվի, դուք պետք է տեսնեք 65.000 արժեքը երկու կարգավորումներում:

sudo -H -u solr bash -c "ulimit -aH"

Այժմ գործարկեք հետևյալ հրամանը՝ համոզվելու, որ ulimit կոնֆիգուրացիան հաջողված է:

sudo service solr restart

Ulimit նախազգուշական հաղորդագրությունները անհետանում են, ինչը հաստատում է, որ կազմաձևումը հաջող է:

Հաջորդը, բացեք 8983 նավահանգիստը firewall-ում՝ օգտագործելով ստորև նշված հրամանը:

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

Այնուհետև վերաբեռնեք firewall-ը՝ փոփոխությունները կիրառելու և firewall-ի կանոնների ցանկը ստուգելու համար:

sudo firewall-cmd --reload
sudo firewall-cmd --list-all

Եթե firewall-ի կազմաձևումը հաջող է, դուք պետք է տեսնեք 8983 նավահանգիստը firewall ցուցակի կանոններում:

Ի վերջո, գործարկեք ձեր վեբ զննարկիչը և նավարկեք դեպի ձեր սերվերի IP հասցեն, որին հաջորդում է 8983 նավահանգիստը (այսինքն՝ http://192.168.10.15:8983/): Դուք պետք է ստանաք Apache Solr վահանակը հետևյալ կերպ.

Ապահովելով Apache Solr-ը հիմնական իսկորոշմամբ

Լռելյայնորեն, Apache Solr-ը տեղադրված է առանց նույնականացման: Այն ապահովելու համար դուք կարող եք օգտագործել բազմաթիվ մեթոդներ, ինչպիսիք են Հիմնական նույնականացումը, Kerberos վավերացումը, JWT վավերացումը և կանոնների հիման վրա նույնականացումը: Այս օրինակում դուք կապահովեք Apache Solr-ը հիմնական նույնականացման միջոցով:

Ստեղծեք նոր ֆայլ security.json Apache Solr տվյալների գրացուցակի տակ /var/solr/data/ օգտագործելով ստորև բերված նանո խմբագրիչը:

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

Տեղադրեք հետևյալ կոնֆիգուրացիան՝ solr նոր օգտվող ստեղծելու համար 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"}
  }
}

Պահպանեք և դուրս եկեք խմբագրից, երբ ավարտեք:

Հաջորդը, գործարկեք հետևյալ հրամանը՝ Apache Solr-ը վերագործարկելու և փոփոխությունները կիրառելու համար:

sudo service solr restart

Այս պահին Apache Solr-ն այժմ գործում է և աշխատում է հիմնական նույնականացումով:

Այժմ վերադառնանք վեբ զննարկիչին և թարմացրեք Apache Solr կառավարման վահանակը: Կամ կարող եք պարզապես այցելել, այսինքն՝ http://192.168.10.15:8983/: Հաջողության դեպքում դուք պետք է ստանաք Apache Solr մուտքի էջը հետևյալ կերպ.

Մուտքագրեք Apache Solr օգտվողի solr և գաղտնաբառը SolrRocks, ապա սեղմեք Մուտք: Եթե նույնականացումը հաջող է, դուք պետք է ստանաք Apache Solr վահանակը:

Բացի դրանից, սեղմեք Անվտանգություն մենյուի վրա և կնկատեք, որ Apache Solr-ն աշխատում է միացված basic_auth հավելվածով:

Ստեղծեք առաջին ինդեքսը

Եթե ամեն ինչ կազմաձևված է, դուք պատրաստ եք ստեղծել առաջին Solr ինդեքսը:

Նախ, բացեք ֆայլը /etc/default/solr.in.sh՝ օգտագործելով հետևյալ նանո խմբագրիչ հրամանը:

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

Հեռացրեք SOLR_AUTH_TYPE պարամետրը և SOLR_AUTHENTICATION_OPTS-ը:

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

Պահպանեք և դուրս եկեք ֆայլից, երբ ավարտեք:

Այժմ գործարկեք հետևյալ հրամանը՝ Apache Solr-ը վերագործարկելու և փոփոխությունները կիրառելու համար:

sudo service restart solr

Հաջորդը, ստեղծեք նոր Solr ինդեքս, որը կոչվում է test_core՝ օգտագործելով հետևյալ հրամանը.

su - solr -c "/opt/solr/bin/solr create -c test1_core -n Test1Core"

Ստեղծվելուց հետո դուք պետք է ստանաք «Ստեղծված է նոր միջուկ test1_core»:

Վերադառնալ Apache-ի վեբ կառավարման վահանակ, սեղմեք Հիմնական ադմինիստրատոր և դուք պետք է հասանելի ստանաք test1_core:

Եզրակացություն

Շնորհավորում եմ: Դուք այժմ հաջողությամբ տեղադրել եք Apache Solr-ը AlmaLinux 9 սերվերի վրա: Դուք նաև կարգավորել եք ulimit-ը՝ Apache Solr-ն օպտիմալացնելու և firewalld-ը՝ Apache Solr-ն ապահովելու համար: Վերջապես, դուք նաև ակտիվացրել եք հիմնական նույնականացումը Apache Solr-ում, մուտք եք գործել Apache Solr վեբ կառավարման վահանակ և ստեղծել եք առաջին Solr ինդեքսը: