ElasticSearch
Installation
CentOS
- Insatall java
sudo dnf install java-1.8.0-openjdk.x86_64
- Confirm java installed
java -version
- Add repo
bash
cd yum.repos.d/
vi elasticsearch.repo
- Add in code below
properties
[Elasticsearch-7]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
- Install
sudo yum install --enablerepo=elasticsearch elasticsearch
- Configure
/etc/elasticsearch/elasticsearch.yml
properties
cluster.name: cluster-name
node.name: node-1
cluster.initial_master_nodes: ["node-1"]
- Enable service
bash
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
sudo systemctl status elasticsearch.service
sudo netstat -pnltu | grep elastic
sudo netstat -pnltu | grep elasticsearch
sudo netstat -pnltu
- Enable firewall
bash
sudo firewall-cmd --add-port=9200/tcp --permament
sudo firewall-cmd --add-port=9200/tcp --permanent
sudo firewall-cmd --add-port=9
sudo firewall-cmd --reload
- Test
curl -X GET "http://localhost:9200/"
Nodejs example
javascript
const elasticsearch = require('@elastic/elasticsearch')
async function search() {
const client = new elasticsearch.Client(
{
cloud: {
id: '<your cloud id>'
},
log: 'trace',
auth: {
username: '<username>',
password: '<password>',
},
}
)
const result = await client.search(
{
index: '<index>',
from: 1,
size: 10,
}, {
ignore: [404],
maxRetries: 3
}
)
console.log(JSON.stringify(result))
}
search()