環境准備
1. 三台服務器
10.1.34.215
10.1.34.216
10.1.34.217
2. 全部關閉防火牆和selinux
systemctl stop firewalld && systemctl stop firewalld
sed -i 's/=enforcing/=disabled/g' /etc/selinux/config && setenforce 0
3. 全部配置系統環境
vim /etc/security/limits.conf 添加以下四行 注:星號不可少
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
此處有可能會涉及到啟動報錯
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
報錯的話 將數值改一下即可
vim /etc/sysctl.conf 添加這行
vm.max_map_count=655360
source /etc/profile 刷新環境
4. 全部安裝java環境
這里注意查看一下centos有沒有原生的jdk
rpm -qa | grep jdk
yum -y remove +上面出來的兩段 分別刪除
然后解壓自己的java配置環境變量
vim /etc/profile
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_251
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
這塊注意一個配置完之后 java進行一個軟連接
ln -s /usr/local/jdk/jdk1.8.0_251/bin/java /usr/local/bin/java
5. 安裝node.js
因為head插件是用node.js開發的,所以需要此環境
https://nodejs.org/en/download/releases/ 選擇先前的版本較好注意選擇xz版本的
tar -Jxf node-v10.15.3-linux-x64.tar.xz
vim /etc/profile
PATH=$PATH:/usr/local/node/node-v10.15.3-linux-x64/bin
source /etc/profile
node -v
6. 安裝head插件 10.1.34.215
wget https://github.com/mobz/elasticsearch-head/archive/master.zip
unzip master.zip && mv elasticsearch-head-master/ /usr/local/elasticsearch-head
cd /usr/local/elasticsearch-head
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install -g grunt-cli
cnpm install -g grunt
cnpm install grunt-contrib-clean
cnpm install grunt-contrib-concat
cnpm install grunt-contrib-watch
cnpm install grunt-contrib-connect
cnpm install grunt-contrib-copy
cnpm install grunt-contrib-jasmine
vim /usr/local/elasticsearch-head/Gruntfile.js
后台啟動grunt server &
cd /usr/local/elasticsearch-head
nohup grunt server & / npm run start & 或者nohup npm run start >/dev/null 2>&1 &
打開瀏覽器訪問10.1.34.215:9100,可以看到head頁面
7. 准備安裝包 自己對應版本
下載es
https://www.elastic.co/cn/downloads/past-releases#elasticsearch
下載kibana
https://www.elastic.co/cn/downloads/past-releases#kibana
下載logstash
https://www.elastic.co/cn/downloads/past-releases#logstash
8. elasticsearch安裝
全部創建用戶elk
useradd elk
全部安裝elasticsearch
tar zxf elasticsearch-6.7.1.tar.gz
chown -R elk:elk /usr/local/elasticsearch/elasticsearch-6.7.1 給elk用戶增加es權限
全部修改配置
vim /usr/local/elasticsearch/config/elasticsearch.yml
解決bootstrap.memory_lock: true
報錯
vim /etc/security/limits.conf
baoshan soft memlock unlimited
baoshan hard memlock unlimited
vim /etc/sysctl.conf
vm.swappiness=0
reboot 重啟
切換到elk用戶
切換到es安裝目錄
./bin/elastcsearch -d 后台啟動
期間如果報error='Cannot allocate memory' (errno=12)# There is insufficient memory for the Java Runtime Environment to continue.
或者elasticsearch啟動過程中被自動killed
到es安裝目錄下
cd config
vim jvm.options
9. 安裝kibana
解壓安裝包
config目錄下修改
vim kibana.yml添加以下內容
server.port: 5601 #監聽端口
server.host: "0.0.0.0" #監聽IP
elasticsearch.hosts: ["http://10.1.34.215:9200","http://10.1.34.216:9200","http://10.1.34.217:9200"] # 集群es地址
logging.dest: /usr/local/kibana/logs/kibana.log #日志路徑
kibana.index: ".kibana" #默認索引
然后增加日志輸出文件
mkdir /usr/local/kibana/logs && touch /usr/local/kibana/logs/kibana.log
后台啟動 ./bin/kibana &
10. 安裝logstash
解壓安裝包
切換到config下修改logstash.yml
path.data: /usr/local/logstash/logstash-6.3.2/data
path.logs: /usr/local/logstash/logstash-6.3.2/logs
logstash啟動時需要指定輸入與輸出的方式,此處要實現的效果是從Rabbitmq中獲取數據輸出至es中存儲,因此創建rabbitmq.conf
文件:
cd ogstash-6.3.2/
touch rabbitmq.conf
指定配置文件並啟動:./bin/logstash -f rabbitmq.conf
,訪問http://ip:9600
出現一些關於logstash的配置信息即表示安裝成功
11.安裝RabbitMQ
下載RabbitMQ的rpm:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.14/rabbitmq-server-3.6.14-1.el7.noarch.rpm
yum -y install rabbitmq-server-3.6.14-1.el7.noarch.rpm
注:如果報:Requires: socat則更新源
wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo
yum install socat
啟動rabbitmq服務:
后台運行:service rabbitmq-server start
安裝插件
啟動web管理界面
rabbitmq-plugins enable rabbitmq_management
如果提示找不到,使用查看插件名稱
rabbitmq-plugins list
增加訪問用戶,默認用戶guest只能本地訪問。
rabbitmqctl add_user admin admin
設置角色:
rabbitmqctl set_user_tags admin administrator
設置默認vhost("/")訪問權限
rabbitmqctl set_permissions -p "/" admin "." "." ".*"
瀏覽器訪問:http://IP:15672
用戶名admin,密碼admin進行登錄
最好登錄console的時候,刪除默認賬戶guest
rabbitmqctl delete_user guest
注意本機用的時候關閉防火牆
登錄進去rabbmq之后可以去看一下隊列 應該有上面rabbitmq.conf里設置的那一個隊列了
至此環境搭建完畢,可以與java后台進行關聯