Ինչպես տեղադրել OpenSearch-ը Debian 11-ում
Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար
- Debian 12 (Bookworm)
- Debian 11 (Bullseye)
Այս էջում
- Նախադրյալներ
- Կարգավորման համակարգ
- Բեռնվում է OpenSearch-ը
- OpenSearch-ի կարգավորում
TLS վկայագրերի ստեղծում
- Root CA վկայագրերի ստեղծում
- Ադմինիստրատորի վկայագրերի ստեղծում
- Հանգույցի վկայագրերի ստեղծում
- Հավաստագրերի կարգավորում
OpenSearch-ը համայնքի վրա հիմնված նախագիծ է Amazon-ի կողմից և Elasticsearch-ի և Kibana-ի պատառաքաղ: այն լիովին բաց կոդով որոնման համակարգ է և վերլուծական հավաքակազմ՝ հարուստ հնարավորություններով և նորարարական ֆունկցիոնալությամբ: OpenSearch նախագծի հիմնական բաղադրիչն է OpenSearch-ը (Elasticsearch-ի պատառաքաղ) և OpenSearch Dashboards-ը (Kibana-ի պատառաքաղ): Երկու բաղադրիչներն էլ ապահովում են այնպիսի առանձնահատկություններ, ինչպիսիք են ձեռնարկության անվտանգությունը, զգուշացումը, մեքենայական ուսուցումը, SQL, ինդեքսային վիճակի կառավարումը և այլն:
OpenSearch-ը 100% բաց կոդով է և լիցենզավորված է Apache 2.0-ի լիցենզիայի ներքո: Այն հնարավորություն է տալիս հեշտությամբ ներծծել, ապահովել, որոնել, համախմբել, դիտել և վերլուծել տվյալները մի շարք օգտագործման դեպքերի համար, ինչպիսիք են տեղեկամատյանների վերլուծությունը, հավելվածների որոնումը, ձեռնարկությունների որոնումը և այլն:
Այս ձեռնարկում դուք կտեղակայեք OpenSearch-ը՝ բաց կոդով որոնման, վերլուծության և վիզուալիզացիայի փաթեթը, Debian 11 սերվերում: Այս գործընթացը ներառում է OpenSearch փաթեթի ներբեռնումը և այն ձեռքով տեղադրել ձեր Debian համակարգում: Դուք նաև կստեղծեք անվտանգ SSL/TLS վկայագրեր OpenSearch-ի համար և կապահովեք տեղակայումը նույնականացման և թույլտվության միջոցով:
Բացի դրանից, դուք նաև կտեղակայեք և կտեղադրեք OpenSearch Dashboards-ը՝ բաց կոդով վիզուալիզացիայի գործիք, և այն կկարգավորեք OpenSearch-ով: Ի վերջո, դուք կունենաք տվյալների վերլուծություն և վիզուալիզացիա, որը կտեղադրվի ձեր Debian սերվերում, և դուք պետք է ուղարկեք ձեր տվյալները այնպիսի գործիքների միջոցով, ինչպիսիք են fluentd, Logstash, filebeat և շատ ավելին:
Նախադրյալներ
Այս ուղեցույցը լրացնելու համար դուք պետք է ունենաք հետևյալ պահանջները.
- Debian 11 տեղադրմամբ և առնվազն 8 ԳԲ RAM-ով սերվեր: Այս օրինակն օգտագործում է Debian համակարգ՝ «node1» հոսթի անունով և տեղական IP հասցեով «192.168.5.50»:
- Ոչ արմատային օգտվող, sudo/root ադմինիստրատորի արտոնություններով:
Եթե այս պահանջները պատրաստ են, կարող եք հիմա սկսել OpenSearch-ի տեղադրումը:
Կարգավորման համակարգ
Առաջին քայլում դուք կկարգավորեք և օպտիմիզացրեք ձեր Debian սերվերը OpenSearch-ի տեղակայման համար: Դուք կկարգավորեք համակարգի հոսթի անունը և fqdn, անջատեք հիշողության էջավորումը և փոխանակեք, այնուհետև կավելացնեք հիշողության քարտեզների առավելագույն թիվը:
Հիշողության էջավորումն անջատելը և OpenSearch հոսթում փոխանակելը կբարելավի աշխատանքը: Հիշողության առավելագույն քարտեզների համար դուք պետք է ստեղծեք մի շարք առնվազն «262144» արտադրության համար:
Գործարկեք ստորև «hostnamectl» հրամանը՝ համակարգի հոսթի անունը կարգավորելու համար: Այնուհետև ավելացրեք fqdn կոնֆիգուրացիան «/etc/hosts» ֆայլին: Այս օրինակում հոսթի անունը պետք է լինի 'node1' fqdn 'node1.hwdomain.lan' հետ:
sudo hostnamectl set-hostname node1
echo "192.168.5.50 node1.hwdomain.lan node1" >> /etc/hosts
Այժմ ստուգեք ձեր սերվերի fqdn-ը ստորև նշված hostname հրամանի միջոցով: Օրինակում սերվերի fqdn-ը պետք է լինի «node1.hwdomain.lan»:
hostname -f
Արդյունք:
Հաջորդը, դուք պետք է անջատեք փոխանակումը ձեր համակարգում: Անկախ նրանից, թե դուք օգտագործում եք փոխանակում բաժանման կամ ֆայլի միջոցով, փոխանակման կոնֆիգուրացիան պահվում է «/etc/fstab» ֆայլում:
Գործարկեք ստորև նշված հրամանը՝ ձեր համակարգում փոխանակումն անջատելու համար: «sed» հրամանն այստեղ ընդմիշտ կանջատի փոխանակումը '/etc/fstab' ֆայլի միջոցով՝ ավելացնելով «#» խրախուսումը սկզբում: տողերի փոխանակման կարգավորումներ: «swapoff» հրամանը ընթացիկ նստաշրջանում կանջատի փոխանակումը:
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a
Ստուգեք փոխանակման կարգավիճակը ստորև նշված հրամանի միջոցով: Եթե անջատված է, դուք պետք է ելք ստանաք «0» փոխանակման բաժնում:
free -m
Արդյունք:
Վերջապես, դուք կավելացնեք կազմաձևումը «/etc/sysctl.conf» ֆայլում՝ ձեր համակարգի առավելագույն հիշողության քարտեզները մեծացնելու համար:
Գործարկեք ստորև նշված հրամանը՝ «/etc/sysctl.conf» ֆայլում «vm.max_map_count=262144» պարամետրը ավելացնելու համար: Այնուհետև կիրառեք փոփոխությունները «sysctl -p» հրամանի միջոցով:
sudo echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sudo sysctl -p
Ստուգեք հիշողության առավելագույն քարտեզները՝ գործարկելով ստորև նշված հրամանը: Եթե հաջողվի, ձեր հիշողության առավելագույն քարտեզը պետք է լինի «262144»:
cat /proc/sys/vm/max_map_count
Արդյունք:
Եթե ձեր համակարգը կազմաձևված և օպտիմիզացված է, դուք պատրաստ եք դրա վերևում տեղադրել OpenSearch-ը:
Բեռնվում է OpenSearch-ը
OpenSearch-ը կարող է տեղադրվել բազմաթիվ եղանակներով: Այս օրինակում դուք կտեղադրեք OpenSearch-ը Tarball-ի միջոցով: Այս քայլում դուք կստեղծեք նոր հատուկ համակարգի օգտվող «opensearch», ներբեռնեք OpenSearch tarball փաթեթը, ապա կստեղծեք OpenSearch տեղադրման գրացուցակը ճիշտ թույլտվություններով և սեփականության իրավունքով:
Նախ, ավելացրեք համակարգի նոր օգտվողին «opensearch»՝ օգտագործելով ստորև նշված հրամանը:
sudo adduser --system --shell /bin/bash -U 10001 --no-create-home opensearch
Ավելացրեք «opensearch» նոր խումբ՝ օգտագործելով ներքևում գտնվող groupadd հրամանը: Այնուհետև ավելացրեք ձեր համակարգի «opensearch» օգտատերը «opensearch» խմբին usermod հրամանի միջոցով:
sudo groupadd opensearch
sudo usermod -aG opensearch opensearch
Այժմ ստեղծեք նոր տնային գրացուցակ '/home/opensearch' և փոխեք «/home/opensearch» տնային գրացուցակի սեփականությունը «opensearch»: >' օգտվող:
mkdir -p /home/opensearch
sudo chown -R opensearch /home/opensearch
Արդյունք:
Հաջորդը, ներբեռնեք OpenSource փաթեթը wget հրամանի միջոցով: Ներբեռնումն ավարտվելուց հետո ֆայլը հանեք ներքևում գտնվող tar հրամանի միջոցով: Այս օրինակում դուք կտեղադրեք OpenSearch 2.4.1-ը: Ստուգեք OpenSearch-ի վերջին տարբերակը ներբեռնման պաշտոնական էջում:
wget https://artifacts.opensearch.org/releases/bundle/opensearch/2.4.1/opensearch-2.4.1-linux-x64.tar.gz
tar xf opensearch-2.4.1-linux-x64.tar.gz
OpenSearch փաթեթի արդյունահանումից հետո արդյունահանված գրացուցակը տեղափոխեք '/opt/opensearch': Սա կլինի OpenSearch-ի հիմնական տեղադրման գրացուցակը: Այնուհետև գործարկեք chown հրամանը՝ «/opt/opesearch» գրացուցակի սեփականության իրավունքը փոխելու «opensearch» օգտագործողի:
mv opensearch-2.4.1 /opt/opensearch
sudo chown -R opensearch /opt/opensearch
Արդյունք:
Այժմ, երբ դուք ներբեռնել եք OpenSearch փաթեթը, կարգավորեք նպատակային տեղադրման գրացուցակը «/opt/opensearch»: Հաջորդը, դուք կկարգավորեք և կարգավորեք ձեր OpenSearch տեղադրումը:
OpenSearch-ի կարգավորում
Այս քայլում դուք կկարգավորեք OpenSearch-ը, որպեսզի աշխատի որոշակի IP հասցեով, աշխատի մեկ հանգույցով, միացնեք OpenSearch անվտանգության հավելումները և կստեղծեք առավելագույն կուտակային հիշողություն OpenSearch գործընթացի համար: Այս ամենը կարելի է անել՝ խմբագրելով OpenSearch կազմաձևման ֆայլը '/opt/opensearch/config/opensearch.yml' և OpenSearch JVM ընտրանքների ֆայլը 'config/jvm.options' >.
Տեղափոխեք աշխատանքային գրացուցակը «/opt/opensearch»՝ cd հրամանի միջոցով:
cd /opt/opensearch
Բացեք OpenSearch կազմաձևման ֆայլը 'config/opensearch.yml' օգտագործելով ստորև բերված նանո խմբագրիչ հրամանը:
sudo nano config/opensearch.yml
Ֆայլին ավելացրեք հետևյալ տողերը.
# Bind OpenSearch to interface or IP address
network.host: 192.168.5.50
# OpenSearch deployment type
discovery.type: single-node
# Re-enable security plugins
plugins.security.disabled: false
Ավարտելուց հետո պահպանեք և դուրս եկեք «config/opensearch.yml» ֆայլից:
Մանրամասների պարամետրեր.
- «network.host» պարամետրն օգտագործվում է OpenSearch-ը որոշակի IP հասցեին կապելու համար: Այս օրինակում OpenSearch-ը կաշխատի «192.168.5.50» ներքին IP հասցեով:
- «discovery.type: single-node» պարամետրն օգտագործվում է, երբ ցանկանում եք OpenSearch-ը տեղակայել մեկ հանգույցում:
- «plugins.security.disabled» պարամետրը դրված է «false», ինչը նշանակում է, որ OpenSearch-ի անվտանգության հավելվածը միացված կլինի:
Այնուհետև բացեք «config/jvm.options» ֆայլը՝ օգտագործելով ստորև նշված նանո խմբագրիչ հրամանը:
sudo nano config/jvm.options
Կարգավորեք առավելագույն կուտակային հիշողությունը OpenSearch գործընթացի համար: Այս կարգավորումը կախված է ձեր սերվերի հասանելի հիշողությունից կամ RAM-ից: Այս օրինակը կհատկացնի 2ԳԲ հիշողություն OpenSearch-ի համար:
-Xms2g
-Xmx2g
Ավարտելուց հետո պահպանեք և դուրս եկեք «config/jvm.options» ֆայլից:
Ի վերջո, գործարկեք ստորև նշված հրամանը՝ ձեր ընթացիկ նստաշրջանում «OPENSEARCH_JAVA_HOME» միջավայրի փոփոխական կարգավորելու համար: OpenSearch փաթեթը ներառում էր պահանջվող java և JDK փաթեթները, որոնք հասանելի են '/opt/opensearch/jdk' գրացուցակում:
export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
echo $OPENSEARCH_JAVA_HOME
Ավարտված OpenSearch-ի հիմնական կազմաձևերով: Հաջորդը, դուք կստեղծեք TLS վկայականներ և կապահովեք OpenSearch-ի տեղակայումը:
TLS վկայագրերի ստեղծում
Այս քայլում դուք կստեղծեք բազմաթիվ վկայագրեր, որոնք կօգտագործվեն OpenSearch-ի տեղակայումն ապահովելու համար: Դուք կապահովեք հանգույցից հանգույց հաղորդակցությունը TLS վկայագրերով և կապահովեք REST շերտի տրաֆիկները հաճախորդ-սերվեր հաղորդակցությունների միջև TLS-ի միջոցով:
Ստորև ներկայացված է այն վկայագրերի ցանկը, որոնք կստեղծվեն.
- Root CA վկայագրեր. այս վկայագրերը կօգտագործվեն այլ վկայագրեր ստորագրելու համար:
- Ադմինիստրատորի վկայականներ. այս վկայագրերը կօգտագործվեն՝ ադմինիստրատիվ իրավունքներ ստանալու համար՝ բոլոր առաջադրանքների հետ կապված անվտանգության հավելվածը կատարելու համար:
- Հանգույցի և հաճախորդի վկայագրեր. այս վկայագրերը կօգտագործվեն OpenSearch կլաստերի մեջ գտնվող հանգույցների և հաճախորդների կողմից:
Նախքան սկսելը, գործարկեք ստորև նշված հրամանը՝ ստեղծելու նոր գրացուցակ «/opt/opensearch/config/certs» և տեղափոխեք ձեր աշխատանքային գրացուցակը այնտեղ: Այս գրացուցակը կօգտագործվի TLS վկայագրերը պահելու համար:
mkdir -p /opt/opensearch/config/certs; cd /opt/opensearch/config/certs
Root CA վկայագրերի ստեղծում
Ստեղծեք անձնական բանալի արմատային CA վկայագրերի համար՝ օգտագործելով ստորև:
openssl genrsa -out root-ca-key.pem 2048
Այժմ ստեղծեք ինքնաստորագրված արմատային CA վկայագիր ստորև նշված հրամանի միջոցով: Դուք կարող եք նաև փոխել արժեքները '-subj' պարամետրում ձեր տեղեկություններով:
openssl req -new -x509 -sha256 -key root-ca-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ROOT" -out root-ca.pem -days 730
Դրանով դուք պետք է ստանաք «root-ca-key.pem» արմատային CA-ի մասնավոր բանալին և «root-ca.pem» արմատային CA վկայագիրը:
Արդյունք:
Ադմինիստրատորի վկայագրերի ստեղծում
Ստեղծեք նոր ադմինիստրատորի վկայականի անձնական բանալին «admin-key-temp.pem»՝ օգտագործելով ստորև նշված հրամանը:
openssl genrsa -out admin-key-temp.pem 2048
Վերափոխեք ադմինիստրատորի կանխադրված անձնական բանալին PKCS#8 ձևաչափի: Java հավելվածի համար դուք պետք է փոխարկեք լռելյայն մասնավոր բանալին PKCS#12-ին համատեղելի ալգորիթմի (3DES): Այս դեպքում ձեր ադմինիստրատորի անձնական բանալին պետք է լինի «admin-key.pem»:
openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem
Այնուհետև գործարկեք ստորև նշված հրամանը՝ «admin-key.pem» մասնավոր բանալիից ադմինիստրատորի CSR (Վկայագրի ստորագրման հարցում) ստեղծելու համար: Ձեր ստեղծած CSR-ն այժմ պետք է լինի «admin.csr» ֆայլը:
Քանի որ այս վկայագիրն օգտագործվում է բարձրացված մուտքի նույնականացման համար և կապված չէ որևէ հոսթինգի հետ, դուք կարող եք ցանկացած բան օգտագործել «CN» կազմաձևում:
openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr
Ի վերջո, գործարկեք ստորև նշված հրամանը՝ ադմինիստրատորի CSR-ն արմատային CA վկայականով և անձնական բանալիով ստորագրելու համար: Ադմինիստրատորի վկայագրի ելքը «admin.pem» ֆայլն է:
openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730
Ձեր ադմինիստրատորի վկայականն այժմ պետք է լինի «admin.pem» ֆայլ, որը ստորագրված է արմատային CA վկայագրերով: Իսկ ադմինիստրատորի անձնական բանալին «admin-key.pem» է, որը փոխարկվում է PKCS#8 ձևաչափի:
Արդյունք:
Հանգույցի վկայագրերի ստեղծում
Հանգույցի վկայագրերի ստեղծման գործընթացը նման է ադմինիստրատորի վկայականներին: Բայց դուք կարող եք նշել CN արժեքը ձեր հանգույցի հոսթի անվան կամ IP հասցեով:
Ստեղծեք հանգույցի մասնավոր բանալին՝ օգտագործելով ստորև նշված հրամանը:
openssl genrsa -out node1-key-temp.pem 2048
Փոխակերպեք հանգույցի մասնավոր բանալին PKCS#8 ձևաչափի: Ձեր հանգույցի մասնավոր բանալին այժմ պետք է լինի «node1-key.pem»:
openssl pkcs8 -inform PEM -outform PEM -in node1-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out node1-key.pem
Հաջորդը, ստեղծեք նոր CSR հանգույցի վկայագրի համար: Համոզվեք, որ փոխեք «CN» արժեքը ձեր հանգույցի հյուրընկալողի անունով: Այս վկայագիրը կապված է հոսթների հետ, և դուք պետք է նշեք CN արժեքը ձեր OpenSearch հանգույցի հոսթի անվան կամ IP հասցեի հետ:
openssl req -new -key node1-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=node1.hwdomain.lan" -out node1.csr
Նախքան հանգույցի վկայագիրը ստորագրելը, գործարկեք ստորև նշված հրամանը՝ «node1.ext» SAN ընդլայնման ֆայլ ստեղծելու համար: Սա կպարունակի հանգույցի հոսթի անունը կամ FQDN կամ IP հասցեն
echo 'subjectAltName=DNS:node1.hwdomain.lan' > node1.ext
Ի վերջո, ստորագրեք հանգույցի վկայագրի CSR ֆայլը արմատային CA վկայականով և մասնավոր՝ օգտագործելով ստորև նշված հրամանը:
openssl x509 -req -in node1.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node1.pem -days 730 -extfile node1.ext
Դրանով ձեր հանգույցի վկայականը «node1.pem» ֆայլ է, իսկ մասնավոր բանալին՝ «node1-key.pem»:
Արդյունք:
Հավաստագրերի կարգավորում
Գործարկեք ստորև նշված հրամանը՝ հեռացնելու ժամանակավոր վկայականը, CSR-ն և SAN ընդլայնման ֆայլը:
rm *temp.pem *csr *ext
ls
Փոխարկեք արմատային CA վկայագիրը .crt ձևաչափի:
openssl x509 -outform der -in root-ca.pem -out root-ca.crt
Ավելացրեք արմատային CA վկայականը ձեր Debian համակարգին՝ օգտագործելով ստորև նշված հրամանը: Պատճենեք root-ca.crt ֆայլը '/usr/local/share/ca-certificates/' գրացուցակում և բեռնեք նոր արմատային CA վկայագիրը ձեր համակարգում:
sudo cp root-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
«1 ավելացվել է» ելքը հաստատում է, որ նոր արմատային CA վկայագրերն ավելացվել են ձեր համակարգին:
Ի վերջո, գործարկեք ստորև նշված հրամանը՝ ձեր վկայականների պատշաճ թույլտվությունը և սեփականության իրավունքը կարգավորելու համար: '/opt/opensearch/config/certs' գրացուցակի սեփականատերը պետք է լինի «opensearch» օգտվողը՝ 0700 թույլտվությամբ: Եվ բոլոր վկայագրերի ֆայլերի համար թույլտվությունը պետք է լինի 0600:
sudo chown -R opensearch /opt/opensearch/config/certs
sudo chmod 0700 /opt/opensearch/config/certs
sudo chmod 0600 /opt/opensearch/config/certs/*.pem
sudo chmod 0600 /opt/opensearch/config/certs/*.crt
TLS վկայագրերի ավելացում OpenSearch-ում
Ստեղծված TLS վկայագրերի դեպքում արմատային CA-ն, ադմինիստրատորի վկայականները և հանգույցի վկայագրերն են: Հաջորդիվ դուք վկայականներ կավելացնեք OpenSearch կազմաձևման ֆայլում '/opt/opensearch/config/opensearch.yml': Այս օրինակում դուք կստեղծեք նոր bash սկրիպտ, որը OpenSearch-ին կավելացնի վկայականներ և TLS անվտանգության հավելվածի կարգավորումներ:
Ստեղծեք նոր ֆայլ 'add.sh' օգտագործելով ստորև բերված նանո խմբագրիչ հրամանը:
nano add.sh
Ֆայլին ավելացրեք հետևյալ տողերը. Համոզվեք, որ փոխեք և օգտագործեք ձեր վկայագրի ֆայլերի և թիրախային OpenSearch կազմաձևման ֆայլի ճիշտ ուղին:
#! /bin/bash
# Before running this script, make sure to replace the /path/to your OpenSearch directory,
# and remember to replace the CN in the node's distinguished name with a real
# DNS A record.
echo "plugins.security.ssl.transport.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.enabled: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.allow_default_init_securityindex: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.authcz.admin_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo " - 'CN=A,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.nodes_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo " - 'CN=node1.dns.a-record,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.audit.type: internal_opensearch" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.enable_snapshot_restore_privilege: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.check_snapshot_restore_write_privileges: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.restapi.roles_enabled: [\"all_access\", \"security_rest_api_access\"]" | sudo tee -a /opt/opensearch/config/opensearch.yml
Ավարտելուց հետո պահպանեք և դուրս եկեք ֆայլից:
Այնուհետև «add.sh» ֆայլը դարձրեք գործարկելի և կատարեք այն: OpenSearch-ի համար TLS անվտանգության նոր հավելվածը պետք է ավելացվի «/opt/opensearch/config/opensearch.yml» OpenSearch կազմաձևման ֆայլում:
chmod +x add.sh
./add.sh
Արդյունք:
Եթե ստուգեք OpenSearch կազմաձևման ֆայլը '/opt/opensearch/config/opensearch.yml', ապա դուք պետք է տեսնեք այսպիսի նոր կարգավորումները կազմաձևման ֆայլի ներքևում:
Այս պահին դուք այժմ ավելացրել եք TLS վկայագրեր OpenSearch-ում և միացրել եք անվտանգության հավելումները: Հաջորդ քայլում դուք կապահովեք OpenSearch-ը նույնականացման և թույլտվության միջոցով՝ OpenSearch-ում նոր օգտվող ստեղծելով:
Օգտատիրոջ ստեղծում OpenSearch-ում
Նախքան սկսելը, գործարկեք ստորև նշված հրամանը՝ «OPENSEARCH_JAVA_HOME»-ի միջավայրի փոփոխականը կարգավորելու և OpenSearch անվտանգության գործիքները գործարկելի դարձնելու համար:
export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
chmod 755 /opt/opensearch/plugins/opensearch-security/tools/*.sh
Տեղափոխեք ձեր աշխատանքային գրացուցակը «/opt/opensearch/plugins/opensearch-security/tools» և գործարկեք «hash.sh» սկրիպտը՝ OpenSearch-ի համար հաշված գաղտնաբառ ստեղծելու համար:
cd /opt/opensearch/plugins/opensearch-security/tools
./hash.sh
Մուտքագրեք ձեր գաղտնաբառը և պատճենեք ստեղծված հեշ գաղտնաբառը:
Արդյունք:
Այժմ նորից գործարկեք «hash.sh» սկրիպտը՝ մեկ այլ հեշ գաղտնաբառ ստեղծելու համար, որը կօգտագործվի OpenSearch Dashboards-ի համար: Մուտքագրեք նոր գաղտնաբառը և պատճենեք ստեղծված հեշ գաղտնաբառը:
./hash.sh
Գաղտնաբառի հաշը ստեղծելուց հետո դուք կստեղծեք OpenSearch օգտվող 'internal_users.yml' կազմաձևման ֆայլի միջոցով:
Տեղափոխեք ձեր աշխատանքային գրացուցակը «/opt/opensearch/config/opensearch-security/» և բացեք ֆայլը 'internal_users.yml'՝ օգտագործելով ստորև բերված նանո խմբագրիչի հրամանը:
cd /opt/opensearch/config/opensearch-security/
sudo nano internal_users.yml
Հեռացրեք օգտատիրոջ լռելյայն կարգավորումները և փոխարինեք դրանք հետևյալ տողերով. Համոզվեք, որ փոխեք հեշ գաղտնաբառը ձեր ստեղծած գաղտնաբառով: Դրանով դուք կստեղծեք OpenSearch-ի երկու օգտատեր՝ «admin» և «kibanaserver» օգտվողը, որը կօգտագործվի OpenSearch Dashboards-ի կողմից:
...
...
admin:
hash: "$2y$12$ChrsBPaDAJsuel.HXFi2Ie2Jn1MpdzXA4Nd1jeyXf65N97RDJc3Ky"
reserved: true
backend_roles:
- "admin"
description: "Admin user"
kibanaserver:
hash: "$2y$12$wIeuRDp5txoJ3d6.lyybJOPwoRaizuuBvlKKzAGdAiu.I/qaX8hXu"
reserved: true
description: "Demo OpenSearch Dashboards user"
Ավարտելուց հետո պահպանեք և դուրս եկեք «internal_users.yml» ֆայլից:
Այնուհետև գործարկեք ստորև նշված հրամանը՝ ապահովելու OpenSearch տեղադրման գրացուցակի սեփականությունը «opensearch» օգտվողին: Այնուհետև մուտք գործեք որպես «opensearch» օգտվող:
sudo chown -R opensearch /opt/opensearch
su - opensearch
Տեղափոխեք «/opt/opensearch/bin» գրացուցակը և գործարկեք ձեր OpenSearch տեղադրումը: OpenSearch-ն այժմ պետք է գործարկվի «192.168.5.50» տեղական IP հասցեով՝ «9200» լռելյայն միացքով:
cd /opt/opensearch/bin
./opensearch
Դուք պետք է ստանաք նման արդյունք.
Այժմ բացեք նոր տերմինալ, միացեք ձեր OpenSearch սերվերին, ապա մուտք գործեք որպես «opensearch» օգտվող:
su - opensearch
Տեղափոխեք աշխատանքային գրացուցակը «/opt/opensearch/plugins/opensearch-security/tools» և գործարկեք «securityadmin.sh» սցենարը, ինչպես ստորև: Համոզվեք, որ փոխեք OpenSearch հյուրընկալողի IP հասցեն և ադմինիստրատորի վկայականների ուղին:
Սա կմիանա OpenSearch սերվերին և նոր փոփոխություններ կկիրառի OpenSearch օգտվողների վրա, որոնք դուք կարգավորել եք «internal_users.yml» ֆայլում:
cd /opt/opensearch/plugins/opensearch-security/tools
OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk ./securityadmin.sh -h 192.168.5.50 -p 9200 -cd /opt/opensearch/config/opensearch-security/ -cacert /opt/opensearch/config/certs/root-ca.pem -cert /opt/opensearch/config/certs/admin.pem -key /opt/opensearch/config/certs/admin-key.pem -icl -nhnv
Արդյունք:
Այժմ վերադարձեք առաջին տերմինալ և դադարեցրեք OpenSearch սերվերը՝ սեղմելով 'Ctrl+c' կոճակը: Այնուհետև նորից գործարկեք OpenSearch սերվերը:
./opensearch
Այս պահին OpenSearch սերվերն այժմ աշխատում է նոր օգտվողի կազմաձևով:
Վերադարձեք երկրորդ տերմինալի նստաշրջանին և գործարկեք ստորև նշված հրամանը՝ ձեր OpenSearch սերվերը հաստատելու համար: Դրանով դուք նույնականացնեք որպես OpenSearch օգտվողի «admin» և «kibanaserver»: Նաև համոզվեք, որ փոխեք գաղտնաբառը յուրաքանչյուր օգտագործողի համար:
curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k
Երբ նույնականացումը հաջող էր, դուք պետք է տեսնեք ձեր OpenSearch սերվերի մանրամասները:
Արդյունք - վավերացված է որպես «admin» օգտվող
Արդյունք – վավերացված է որպես «kibanaserver» օգտվող:
Դրանով դուք այժմ հաջողությամբ կարգավորել եք նույնականացումը և թույլտվությունը OpenSearch սերվերում: Այժմ վերադառնաք տերմինալի առաջին նիստին և սեղմեք Ctrl+c դեպի տերմինալ OpenSearch գործընթացի համար:
Հաջորդ քայլում դուք կստեղծեք systemd ծառայության ֆայլ, որը կօգտագործվի OpenSearch սերվերը գործարկելու համար:
Աշխատում է OpenSearch-ը որպես համակարգված ծառայություն
Այս ձեռնարկի համար դուք կգործարկեք OpenSearch սերվերը հետին պլանում՝ որպես համակարգված ծառայություն: Դրան հասնելու համար դուք պետք է ստեղծեք նոր systemd ծառայության ֆայլ, վերաբեռնեք systemd կառավարիչը, այնուհետև կարող եք գործարկել և միացնել OpenSearch-ը systemctl հրամանի օգտակար ծրագրի միջոցով:
Ստեղծեք նոր systemd ծառայության ֆայլ «/etc/systemd/system/opensearch.service»՝ օգտագործելով ստորև բերված նանո խմբագրիչ հրամանը:
sudo nano /etc/systemd/system/opensearch.service
Ֆայլին ավելացրեք հետևյալ տողերը.
[Unit]
Description=OpenSearch
Wants=network-online.target
After=network-online.target
[Service]
Type=forking
RuntimeDirectory=data
WorkingDirectory=/opt/opensearch
ExecStart=/opt/opensearch/bin/opensearch -d
User=opensearch
Group=opensearch
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65535
LimitNPROC=4096
LimitAS=infinity
LimitFSIZE=infinity
TimeoutStopSec=0
KillSignal=SIGTERM
KillMode=process
SendSIGKILL=no
SuccessExitStatus=143
TimeoutStartSec=75
[Install]
WantedBy=multi-user.target
Ավարտելուց հետո պահեք և փակեք ֆայլը:
Հաջորդը, գործարկեք ստորև systemctl հրամանը՝ systemd կառավարիչը վերաբեռնելու և փոփոխությունները կիրառելու համար:
sudo systemctl daemon-reload
Այնուհետև սկսեք և միացրեք OpenSearch ծառայությունը՝ օգտագործելով ստորև systemctl հրամանը: Դրանով, OpenSearch ծառայությունն այժմ պետք է գործարկվի հետին պլանում՝ որպես համակարգված ծառայություն, և այն պետք է միացված լինի, ինչը նշանակում է, որ OpenSearch-ը ավտոմատ կերպով կսկսվի համակարգի գործարկման ժամանակ:
sudo systemctl start opensearch
sudo systemctl enable opensearch
Արդյունք:
Այժմ ստուգեք OpenSearch ծառայությունը՝ համոզվելու համար, որ ծառայությունն աշխատում է: Դուք պետք է տեսնեք ելք, որ OpenSearch ծառայությունն աշխատում է, և այն այժմ միացված է:
sudo systemctl status opensearch
Արդյունք:
Դուք կարող եք նաև հաստատել OpenSearch սերվերը curl հրամանով, որպեսզի նույնականացնեք OpenSearch-ի դեմ:
curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k
Եթե OpenSearch-ն աշխատում է, դուք պետք է վավերացվեք և ստանաք մանրամասներ ձեր OpenSearch տեղադրման մասին:
OpenSearch admin օգտվողի համար:
kibanaserver օգտատիրոջ համար:
Կարող եք նաև ստուգել ձեր համակարգի բաց նավահանգիստների ցանկը ներքևում գտնվող ss հրամանի միջոցով: Դուք պետք է տեսնեք, որ 9200 և 9300 նավահանգիստները բացվում են Java հավելվածի կողմից, որը OpenSearch սերվերն է:
ss -tulpn
Արդյունք:
Դրանով դուք ավարտեցիք OpenSearch-ի տեղադրումը: Եվ հիմա, այն աշխատում է տեղական IP հասցեով 192.168.5.50՝ լռելյայն 9200 պորտով: Այն աշխատում է հետին պլանում՝ որպես systemd ծառայություն և ավտոմատ կերպով կսկսվի համակարգի բեռնման ժամանակ:
OpenSearch Dashboards-ի տեղադրում
Այս քայլում դուք կներբեռնեք OpenSearch Dashboards փաթեթը և ձեռքով կտեղադրեք այն Tarball-ի միջոցով: Դուք նաև կկարգավորեք, թե ինչպես պետք է աշխատի OpenSearch Dashboard-ը և ինչպես միանալ OpenSearch սերվերին օգտվողի անվան և գաղտնաբառի միջոցով:
Ներբեռնեք OpenSearch Dashboards փաթեթը հետևյալ wget հրամանի միջոցով։
wget https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.4.1/opensearch-dashboards-2.4.1-linux-x64.tar.gz
Ներբեռնումն ավարտվելուց հետո հանեք OpenSearch Dashboards փաթեթը ստորև բերված tar հրամանի միջոցով: Դուք պետք է ստանաք նոր գրացուցակ «opensearch-dashboards-2.4.1»:
tar xf opensearch-dashboards-2.4.1-linux-x64.tar.gz
OpenSearch Dashboard գրացուցակը տեղափոխեք «/opt/opensearch-dashboards»: Այնուհետև փոխեք այդ գրացուցակի սեփականության իրավունքը օգտագործողի «opensearch»:
mv opensearch-dashboards-* /opt/opensearch-dashboards
sudo chown -R opensearch /opt/opensearch-dashboards
Հաջորդը, տեղափոխեք ձեր աշխատանքային գրացուցակը «/opt/opensearch-dashboards» և բացեք OpenSearch Dashboards կազմաձևման ֆայլը «config/opensearch_dashboards.yml»՝ օգտագործելով ստորև բերված նանո խմբագրիչի հրամանը:
cd /opt/opensearch-dashboards
sudo nano config/opensearch_dashboards.yml
Անջատեք հետևյալ տողերը և փոխարինեք յուրաքանչյուր պարամետրի արժեքը ձեր կարգավորումներով: Այս օրինակում դուք կգործարկեք OpenSearch Dashboards-ը լռելյայն «5601» միացքում և սերվերի IP հասցեն «192.168.5.50»:
# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use.
server.port: 5601
# Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values.
# The default is 'localhost', which usually means remote machines will not be able to connect.
# To allow connections from remote users, set this parameter to a non-loopback address.
server.host: "192.168.5.50"
Հաջորդը տողի ներքևում ավելացրեք հետևյալ տողերը. Համոզվեք, որ փոխեք «opensearch.hosts», «opensearch.username» և «opensearch.password»-ի պարամետրը ձեր OpenSearch սերվերով: մանրամասներ.
opensearch.hosts: [https://192.168.5.50:9200]
opensearch.ssl.verificationMode: none
opensearch.username: kibanaserver
opensearch.password: kibanapass
Ավարտելուց հետո պահպանեք և դուրս եկեք «config/opensearch_dashboards.yml» ֆայլից:
Այժմ դուք ներբեռնել եք OpenSearch Dashboard-ը և այն կարգավորել եք OpenSearch սերվերին միանալու համար: Հաջորդը, դուք կստեղծեք systemd ծառայության ֆայլ, որը կօգտագործվի OpenSearch Dashboards-ը գործարկելու համար:
OpenSearch Dashboard-ների գործարկումը որպես Systemd Service
Այս քայլում դուք կստեղծեք նոր համակարգային ծառայություն, որը կօգտագործվի OpenSearch Dashboards-ը գործարկելու համար:
Ստեղծեք նոր systemd ծառայության ֆայլ '/etc/systemd/system/opensearch-dashboards.service' օգտագործելով ստորև բերված նանո խմբագրիչ հրամանը:
sudo nano /etc/systemd/system/opensearch-dashboards.service
Ֆայլին ավելացրեք հետևյալ տողերը.
[Unit]
Description=OpenSearch-Dashboards
Wants=network-online.target
After=network-online.target opensearch.service
[Service]
Type=simple
User=opensearch
Environment=NODE_ENV=production
Environment=CONFIG_PATH=/opt/opensearch-dashboards/config/opensearch_dashboards.yml
WorkingDirectory=/opt/opensearch-dashboards
ExecStart=/opt/opensearch-dashboards/bin/opensearch-dashboards
StandardOutput=journal
StandardError=inherit
Restart=on-failure
[Install]
WantedBy=multi-user.target
Ավարտելուց հետո պահպանեք և դուրս եկեք ֆայլից:
Հաջորդը գործարկեք ստորև systemctl հրամանը՝ systemd կառավարիչը վերաբեռնելու և նոր փոփոխությունները կիրառելու համար:
sudo systemctl daemon-reload
Այնուհետև սկսեք և միացրեք OpenSearch Dashboards ծառայությունը՝ օգտագործելով ստորև systemctl հրամանը: Դրանով, OpenSearch Dashboards ծառայությունը պետք է գործարկվի և միացվի, ինչը նշանակում է, որ OpenSearch Dashboard ծառայությունը ավտոմատ կերպով կսկսվի համակարգի գործարկման ժամանակ:
sudo systemctl start opensearch-dashboards
sudo systemctl enable opensearch-dashboards
Ստուգեք OpenSearch Dashboards ծառայությունը՝ օգտագործելով ստորև նշված հրամանը:
sudo systemctl status opensearch-dashboards
«ակտիվ (աշխատող)» ելքը հաստատում է, որ OpenSearch Dashboards ծառայությունն աշխատում է: Իսկ ելքը «...; միացված է;...' հաստատում է, որ ծառայությունը միացված է:
Դրանով, OpenSearch Dashboards-ն այժմ աշխատում է ձեր Debian սերվերում կանխադրված կազմաձևման ֆայլով '/opt/opensearch-dashboards/config/opensearch_dashboards.yml': Այն աշխատում է լռելյայն նավահանգստում 5601 սերվերի IP հասցեով 192.168.5.50
Մուտք գործել OpenSearch Dashboards
Բացեք ձեր վեբ զննարկիչը և այցելեք OpenSearch Dashboards IP հասցեն 5601 պորտով (այսինքն՝ http:192.168.5.50:5601): Այժմ դուք կտեսնեք OpenSearch Dashboards մուտքի էջը:
Մուտքագրեք ձեր ստեղծած օգտվողի անունը և գաղտնաբառը: Այս օրինակում օգտվողը «kibanaserver» է: Այնուհետև սեղմեք «Մուտք գործել» կոճակը՝ հաստատելու և մուտք գործելու OpenSearch Dashboards:
Հաջողության դեպքում դուք պետք է ստանաք հետևյալ էջը «Բարի գալուստ OpenSearch Dashboards» հաղորդագրությամբ: Այժմ կարող եք սեղմել «Ավելացնել տվյալներ»՝ ձեր OpenSearch սերվերին նոր տվյալներ ավելացնելու համար կամ սեղմել «Ուսումնասիրել իմ սեփականը» ավելի ուշ կարգավորումների համար:
Հաջորդը, համոզվելու համար, որ OpenSearch Dashboards-ը միացված է OpenSearch սերվերին, դուք կանեք հետևյալ քայլերը.
Սեղմեք ձախ ընտրացանկի վրա, տեղափոխվեք Կառավարում բաժին և սեղմեք «Dev Tools»:
Այժմ մուտքագրեք «GET /» հարցումը վահանակի վրա և սեղմեք նվագարկման կոճակը: Հաջողության դեպքում դուք պետք է տեսնեք ելքը աջ կողմում՝ ձեր OpenSearch սերվերի մասին մանրամասն տեղեկություններով: Բացի այդ, վերևի աջ կողմում կարող եք տեսնել «200 - OK» HTTP կոդը, որը հաստատում է, որ հարցումը կատարվում է առանց սխալի:
Սա նկատի ունենալով, դուք այժմ ավարտել եք OpenSearch Dashboards-ի տեղադրումը Debian սերվերում Tarball-ի միջոցով: Եվ նաև կազմաձևեց OpenSearch վահանակը OpenSearch սերվերին միանալու համար:
Եզրակացություն
Այս ձեռնարկում դուք տեղադրել եք OpenSearch-ը Tarball-ի միջոցով Debian 11 սերվերի վրա: Դուք նաև ապահովել եք OpenSearch-ը TLS վկայագրերով, միացրել եք նույնականացումը և թույլտվությունը, ինչպես նաև կարգավորել եք օգտվողներին OpenSearch-ում: Բացի այդ, դուք կարգավորել եք OpenSearch-ը, որպեսզի այն աշխատի որպես համակարգային ծառայություն և օպտիմիզացրել եք Debian Linux սերվերը՝ OpenSearch-ը տեղակայելու համար:
Դուք նաև տեղադրել եք OpenSearch Dashboards-ը Tarball-ի միջոցով Debian սերվերի վրա: Դուք կարգավորել եք OpenSearch Dashboards-ը որպես համակարգված ծառայություն գործարկելու համար, OpenSearch Dashboards-ը միացրել եք OpenSearch սերվերին, իսկ նույնականացումը միացված է, և հաջողությամբ հաստատել եք OpenSearch և OpenSearch Dashboards տեղադրումը:
Այս կարգավորումով դուք այժմ կարող եք ավելին ուսումնասիրել OpenSearch-ի մասին՝ տեղադրելով OpenSearch Cluster-ը, կարգավորելով լրացուցիչ նույնականացում և շատ ավելին: Դուք կարող եք ավելին իմանալ OpenSearch-ի մասին OpenSearch-ի պաշտոնական փաստաթղթերից: