目的
在Ubuntu 18.04 Bionic Beaver上安装ELK
发行版
Ubuntu 18.04
要求
具有root特权的Ubuntu 18.04的有效安装
困难
简单
约定
什么是ELK
如果您要管理大量数据日志,那么ELK堆栈正是您所需要的。 ELK堆栈将Elasticsearch,Logstash和Kibana组合成一个简单但功能强大的开源堆栈,使您可以通过便捷的图形Web界面管理大量记录的数据。这三个工具都是由Elastic开发的,因此可以完美地协同工作,并且很容易在Ubuntu系统上进行设置。
安装依赖项
首先安装依赖项。这些都是相当普遍的,尽管您需要考虑一些注意事项。当然,这些是Nginx-based,因此,请禁用Apache或切换端口(如果正在使用)。
Logstash不支持Java 10,可从openjdk-11-jre
。如果在系统上安装了它,请将其删除。使用旧版本,直到Logstash得到支持。
$ sudo apt install openjdk-8-jre apt-transport-https wget nginx
添加弹性存储库
Elastic为基于Debian的系统提供了完整的存储库,其中包括所有三个软件。您只需要将其添加到系统中即可。首先导入其GPG密钥。
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
接下来,添加存储库。在以下位置创建文件/etc/apt/sources.list.d/elastic.list
,然后将以下行粘贴到其中。
deb https://artifacts.elastic.co/packages/6.x/apt stable main
保存该文件,然后退出。更新公寓。
$ sudo apt update
安装Elasticsearch和Kibana
现在您可以安装Elasticsearch和Kibana。它们可以通过Apt获得,因此请像平常一样获得它们。
$ sudo apt install elasticsearch kibana
您需要在以下位置编辑Kibana配置文件/etc/kibana/kibana.yml
告诉主机服务器是localhost
。该行已经在那里。取消注释。
server.host: "localhost"
重新启动Kibana并启动Elasticsearch,两者都准备就绪。
$ sudo systemctl restart kibana
$ sudo systemctl start elasticsearch
设置Nginx
Kibana是通过Nginx提供服务的,因此您需要设置基本的Nginx配置以使其能够为您的Kibana实例提供服务。首先为Kibana创建密码。这样,您的服务器就无法在Internet上公开访问。使用OpenSSL生成密码,并将其放入/etc/nginx/htpasswd.kibana
。您可以将用户名更改为所需的任何名称。在这种情况下,admin
。
$ echo "admin:`openssl passwd -apr1 YourPassword`" | sudo tee -a /etc/nginx/htpasswd.kibana
拥有密码后,创建一个Nginx配置,类似于下面的配置/etc/nginx/sites-available
。确保使用您的实际服务器URL或IP。默认值应适用于其他所有情况。
server {
listen 80;
server_name your-site.com;
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/htpasswd.kibana;
location / {
proxy_pass http://localhost:5601;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
配置完成后,删除现有的默认配置,并在其中创建一个新的符号链接。sites-enabled
对于Kibana。
$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/kibana /etc/nginx/sites-enabled/kibana
重新启动Nginx以使更改生效。
$ sudo systemctl restart nginx
安装Logstash
您需要做的最后一件事是安装Logstash。只需使用您的软件包管理器进行安装即可。
$ sudo apt install logstash
登录到Kibana
打开浏览器,然后转到在Nginx配置中分配给Kibana实例的地址。应该提示您输入为Kibana设置的用户名和密码。输入它们。
您会看到Kibana仪表板出现,可以正常使用。您可以开始使用Kibana并设置您的首选项。
总结思想
您的ELK堆栈可在Ubuntu上完全运行。 ELK可以帮助您管理日志,而Kibana特别提供了一些出色的工具来帮助您可视化和组织数据。