柬埔寨网站建设,婚恋网站排名,网站漏洞扫描工具,网站怎样做关键词优化安装部署elk7.10.0详细教程 一、安装jdk 11环境二、安装elasticsearch 7.10.0三、安装kibana 7.10.0四、安装logstash 7.10.0五、安装ik7.10.0分词六、开启安全功能1. 开启用户名密码登录2. 开启es安全加密通信3. 开启Kibana安全功能 七、注意事项和常见错误八、其它操作及命令… 安装部署elk7.10.0详细教程 一、安装jdk 11环境二、安装elasticsearch 7.10.0三、安装kibana 7.10.0四、安装logstash 7.10.0五、安装ik7.10.0分词六、开启安全功能1. 开启用户名密码登录2. 开启es安全加密通信3. 开启Kibana安全功能 七、注意事项和常见错误八、其它操作及命令 【背景】 整个elk安装是基于ubuntu 22.04和jdk 11环境。elk均在一台测试机器上安装单节点服务。elk均采用 *.deb方式安装需要服务器能联网。elk每个版本都要对应一致避免冲突或者其它未知异常。
一、安装jdk 11环境
如果需要卸载其它版本jdk命令如下
sudo apt-get purge openjdk-17-jdk*
sudo apt-get purge openjdk-17-jre*
# 最后检查下是否卸载完成
java -version
javac -version开始安装jdk 11 环境命令如下
#1. 更新apt 软件包仓库缓存
sudo apt update
#2. 安装 openjdk-11-jdk
sudo apt install -y openjdk-11-jdk
#3. 测试是否安装成功
java -version
javac -version二、安装elasticsearch 7.10.0
安装elasticsearch
# 1. 下载安装包
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-amd64.deb
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-amd64.deb.sha512# 2.安装
shasum -a 512 -c elasticsearch-7.10.0-amd64.deb.sha512
# 输出应显示 elasticsearch-7.10.0-amd64.deb: OK 表示验证成功
sudo dpkg -i elasticsearch-7.10.0-amd64.deb# 3. 查看安装文件的权限确保所有者都是elasticsearch如果不是可以授权
sudo chown -R elasticsearch:elasticsearch /usr/share/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/log/elasticsearch
sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch备份elasticsearch.yml配置文件
# 1.备份文件后修改elasticsearch.yml配置文件
sudo cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
sudo vim /etc/elasticsearch/elasticsearch.yml修改elasticsearch.yml配置文件
# 设置集群名称
cluster.name: myes
# 设置节点名称
node.name: node-1
# 设置绑定地址如果需要远程访问
network.host: 0.0.0.0 # 注意生产环境建议使用具体IP而非0.0.0.0
# 设置HTTP端口
http.port: 9200
# 发现设置单节点配置
discovery.type: single-node启动并测试验证 es启动需要用非root用户启动。
sudo systemctl daemon-reload #重新加载服务配置文件
sudo systemctl enable elasticsearch.service #开启自启动
sudo systemctl start elasticsearch.service #启动
sudo systemctl stop elasticsearch.service #停止
sudo systemctl restart elasticsearch.service #重启
sudo systemctl status elasticsearch.service #查看服务状态如下图表示已经正常启动服务了 6. 访问验证 如若需要可安装curl命令sudo apt install curl 服务器访问sudo curl http://localhost:9200 【注意】如果远程访问链接需要防火墙开发端口9200/9300详见命令如下防火墙操作命令 以上基本安装完成后续可根据需要设置安全访问配置。因es需要较高的系统资源如下配置6、7可根据需求修改。
修改配置文件 limits.conf、sysctl.conf可根据需求修改
# 1. 编辑文件 limits.conf
sudo vim /etc/security/limits.conf
# 添加以下内容设置 nofile 和 nproc 限制
elasticsearch soft nofile 65536
elasticsearch hard nofile 65536
elasticsearch soft nproc 4096
elasticsearch hard nproc 4096# 2. 编辑 sysctl.conf
sudo vim /etc/sysctl.conf
# 添加以下内容调整虚拟内存和最大映射数
vm.max_map_count262144# 3. 使配置生效
sudo sysctl -p修改jvm.options 文件可根据需求修改
sudo vim /etc/elasticsearch/jvm.options
# 修改以下内容7.10.0版本中默认1G8.x版本默认更大
-Xms1g # 初始堆大小
-Xmx1g # 最大堆大小修改完成后重启验证 重启服务sudo systemctl restart elasticsearch.service 查看状态 sudo systemctl status elasticsearch.service 访问链接sudo curl http://localhost:9200
三、安装kibana 7.10.0
下载并安装文件
# 1. 下载安装文件
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.10.0-amd64.deb
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.10.0-amd64.deb.sha512# 2. 安装
shasum -a 512 -c kibana-7.10.0-amd64.deb.sha512
# 输出应显示 kibana-7.10.0-amd64.deb: OK
sudo dpkg -i kibana-7.10.0-amd64.deb先备份后在修改kibana.yml文件
sudo cp /etc/kibana/kibana.yml /etc/kibana/kibana.yml.bak
sudo vim /etc/kibana/kibana.yml # 如下就是kibana.yml要修改的参数
# 设置服务器端口和地址
server.port: 5601
server.host: 0.0.0.0 # 允许远程访问生产环境建议使用具体IP
# 设置 Elasticsearch 连接地址
elasticsearch.hosts: [http://localhost:9200] # 指向你的 ES 地址
# 中文汉化
i18n.locale: zh-CN# 可选设置 Elasticsearch 用户名和密码如果 ES 启用了安全认证
# elasticsearch.username: kibana_system
# elasticsearch.password: your_password
其它配置
# kibana默认1G内存可根据实际情况修改
sudo vim /etc/default/kibana
NODE_OPTIONS--max-old-space-size512 # 调整为512MB启动服务验证
sudo systemctl daemon-reload
sudo systemctl enable kibana.service
sudo systemctl start kibana.service
sudo systemctl resrart kibana.service
sudo systemctl status kibana.service【注意】远程访问需要防火墙开放端口5601 以上基本安装完成根据需要设置安全认证和用户名密码。目前尚未开启所以配置文件也注释了。
四、安装logstash 7.10.0
因logstash文件篇幅较长单独编写【ubuntu 22.04 安装部署logstash 7.10.0教程】
五、安装ik7.10.0分词
安装ik分词
# 安装命令
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/7.10.0检测es插件文件权限 安装完成后重新授权es的文件夹如果elasticsearch的文件权限出现变动则重新授权否则es启动可能会失败。 授权命令sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch/ 重启启动es验证es和ik分词 sudo systemctl restart elasticsearch.service sudo systemctl status elasticsearch.service 如下是验证ik分词示意图 如果有其它分词需求可以手动分词处理
六、开启安全功能
1. 开启用户名密码登录
首先在es中配置文件中添加如下配置然后重启服务
# 编辑配置文件
sudo vim /etc/elasticsearch/elasticsearch.yml
# 添加配置参数开启登录
xpack.security.enabled: true
# 重启服务
sudo systemctl restart elasticsearch设置内置用户密码
# 系统内置用户列举如下
# apm_system, beats_system ,elastic ,kibana_system, logstash_system, remote_monitoring_user
# 设置用户密码命令
# 交互式设置-手动设置
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
# 系统生成-自动设置推荐生产环境
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords auto验证测试es用户名密码 验证命令sudo curl -u elastic:密码 http://localhost:9200 配置kibana 使用内置用户连接es服务
# 修改kibana配置
sudo vim /etc/kibana/kibana.yml
# 设置用户名密码
elasticsearch.username: kibana_system
elasticsearch.password: your_password
# 重启kibana服务
sudo systemctl restart kibana.service验证访问kibana页面 访问http://ip:5601 用户名密码elastic/密码 隐藏式用户名密码登录 大致理解为如果不想将用户名和密码放入文件中就将它们存储在密钥库中实际类似将用户名密码加密存储到密钥中 在配置文件采用参数占位符的样式。
# 操作命令[--allow-root] 是因为直接执行出现警告报错需要允许root才能执行。有兴趣的小伙伴可以去除该命令试试。
sudo /usr/share/kibana/bin/kibana-keystore create --allow-root
sudo /usr/share/kibana/bin/kibana-keystore add elasticsearch.username --allow-root
sudo /usr/share/kibana/bin/kibana-keystore add elasticsearch.password --allow-root# 查看存储的秘钥名称
./bin/kibana-keystore list# 重新授权文件权限变动可以不操作
sudo chown -R kibana:kibana /etc/kibana/# 添加以下配置到kibana.yml中告诉 Kibana 从密钥库读取凭证
elasticsearch.username: ${elasticsearch.username}
elasticsearch.password: ${elasticsearch.password}2. 开启es安全加密通信
开启前访问链接是 http://localhost:9200开启安全加密后是 https://localhost:9200。保证数据在传输过程中安全性。
#1. 生成证书
# 直接回车不输入密码证书生成后的位置/usr/share/elasticsearch/
sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca
sudo /usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12#2. 将证书移位置并赋权
sudo mkdir /etc/elasticsearch/certs/
sudo mv /usr/share/elasticsearch/*.p12 /etc/elasticsearch/certs/
sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch/certs/elastic*.p12#3. 配置证书路径到配置文件中如下是elasticsearch.yml配置项
# 开启安全访问用户名密码
xpack.security.enabled: true
# 开启加密通信集群节点之间
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
# [certs/elastic-certificates.p12] 该路径采用相对路径也可以使用绝对路径
xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12# HTTP 安全设置https外部客户端与集群通信
xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.http.ssl.truststore.path: certs/elastic-certificates.p12#4. 验证测试
sudo curl -k -u elastic:密码 https://localhost:9200
# 或者页面访问https://localhost:92003. 开启Kibana安全功能
TODO - 待完善
#1. 将es的证书复制到kibana目录然后授权
sudo mkdir /etc/kibana/certs
sudo cp /etc/elasticsearch/certs/elastic-* /etc/kibana/certs
sudo chown -R kibana:kibana /etc/kibana/certs#2. 修改kibana配置文件后重启
# 连接Elasticsearch的URL使用HTTPS
elasticsearch.hosts: [https://localhost:9200]
# 信任ES证书
elasticsearch.ssl.certificateAuthorities: [/etc/kibana/certs/elastic-stack-ca.p12]
elasticsearch.ssl.verificationMode: certificate #3. 验证测试
#页面访问http://ip:5601七、注意事项和常见错误
es中 常见的是文件授权问题对elasticsearch没有赋权,如下授权查看日志地址: sudo tail -100f /var/log/logstash/logstash-plain.log路径或文件授权: sudo chown -R elasticsearch:logstash /etc/elasticsearch/
八、其它操作及命令
用户登录操作命令
# 将edy用户加入到elasticsearch组
sudo usermod -aG elasticsearch edy# ubuntu修改root用户登录将如下配置项修改为yes再重启ssh
# 编辑
sudo vim /etc/ssh/sshd_config
# 修改配置项
PermitRootLogin yes
# 重启
systemctl restart ssh
卸载jdk其它版本
# 卸载jdk其它版本
sudo apt-get purge openjdk-17-jdk*
sudo apt-get purge openjdk-17-jre*
#运行测试java -version
查询日志排错命令
# 查询日志方便排错
sudo journalctl -u elasticsearch -f
sudo journalctl -u kibana -f
sudo journalctl -u logstash -f卸载logstash操作命令
# 卸载 通过deb安装的logstash
#先停止
sudo systemctl stop logstash
#apt安装卸载sudo apt remove --purge logstash忽略
#deb安装的卸载
sudo dpkg -r logstash
sudo dpkg --purge logstash
#手动删除文件保证卸载干净
sudo rm -rf /etc/logstash /var/lib/logstash /var/log/logstash /usr/share/logstash
# 手动再次删除用户和组
sudo deluser logstash
sudo delgroup logstash
sudo apt autoremove
#验证是否卸载完成
dpkg -l | grep logstash
ls -l /etc/logstash防火墙操作命令
# 查看状态
sudo ufw status
# 启用防火墙
sudo ufw enable
# 开发单个端口如开启端口22
sudo ufw allow 22/tcp
# 或直接使用服务名称如 ssh、http、https
sudo ufw allow ssh
# 开放端口范围如 6000-6007
sudo ufw allow 6000:6007/tcp
# 允许特定ip访问
sudo ufw allow from 192.168.1.100 to any port 22
# 通过端口删除规则
sudo ufw delete allow 22
# 重置防火墙