JDK8
做個記錄,以防以后忘記能夠查看。
1.elastic是java編寫的,先搭建運行環境,6.6.2版本必須要jdk8以上版本才可運行,先官網下載jdk,上傳服務器
https://www.oracle.com/technetwork/java/javase/downloads/index.html
2.yum安裝一些常用的編譯器和工具
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel vim ntsysv
3.安裝jdk
rpm -ivh jdk-8u192-linux-x64.rpm
4.查看是否安裝成功
[root@admin software]# java -version
java version "1.8.0_192"
Java(TM) SE Runtime Environment (build 1.8.0_192-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.192-b12, mixed mode)
Elasticsearch
傳送門
https://www.elastic.co/downloads/elasticsearch
5.解壓elastic
tar -xvf elasticsearch-6.6.2.tar.gz
6.elastic對權限有嚴格控制,不能有root啟動,先添加一個用戶
useradd es
chown -R es:es elasticsearch-6.6.2 --擁有者
chmod 770 elasticsearch-6.6.2 --權限
7.切換用戶
su es
8.切換目錄
cd elasticsearch-6.6.2/bin
./elasticsearc
9.啟動發現一個錯誤
這是因為虛擬內存不足,我們到elasticsearch的config下修改為
保存啟動
我們驗證一下,克隆一個窗口。
[root@admin ~]# curl "localhost:9200"
出現elastic的信息,證明我們成功了
10.這僅僅只能服務器內網訪問,要想瀏覽器也能訪問,必須修改elastic配置,Ctrl+C停止運行的elastic
vi ../config/elasticsearch.yml
11.重新啟動,竟然報錯了,我們一個一個解決
第一是進程打開文件數太小了,第二個是線程數量太小,第三是內存數量太小,第四個是說攔截安裝,這是因centos6不支持secComp,檢測失敗。因為我是虛擬機安裝的,發現自己只給虛擬機1g內存,線程數肯定是不夠的,先關閉虛擬機,提高虛擬機硬件配置,內存調為2048m,重新啟動虛擬機。
[root@admin ~]# vi /etc/security/limits.conf
添加
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
[root@admin limits.d]# vi /etc/security/limits.d/90-nproc.conf
修改為
編輯 /etc/sysctl.conf,追加以下內容:
vm.max_map_count=655360
解決最后一個問題
[root@admin config]# vi elasticsearch.yml
全部完成后,切換用戶,啟動elastic。記得在訪問時先關閉防火牆,瀏覽器訪問
給大家推薦一個elastic超好用的工具======>elasticsearch-head,傳送門
https://files.cnblogs.com/files/dslx/chromeFOR.COM_elasticsearch-head_v0.1.3.zip
es分布式搭建
配置elasticsearch.yml
#允許跨域訪問 http.cors.enabled: true http.cors.allow-origin: "*" #集群名字 cluster.name: huangweicheng #這個節點的名稱 node.name: master #告訴這個節點,他就指揮官,master node.master: true
啟動,看節點能不能正常啟動
正常啟動,可以看到他的節點名字已經變成我們命名的,現在我們部署另外兩個節點
創建一個文件夾專門存儲隨從節點,兩個節點一人一個文件夾
mkdir es_slave
將elasticsearch6.6.2復制兩份到這個文件夾下
現在修改下兩個節點的 elasticsearch.yml
bootstrap.memory_lock: false bootstrap.system_call_filter: false network.host: 10.105.9.119 http.port: 8200 cluster.name: huangweicheng node.name: slave1 discovery.zen.ping.unicast.hosts: ["10.105.9.119"]
記得端口號一定要不同,把兩個文件夾的擁有者改為 es,然后分別啟動。
搭建完成。。。。