如何在CentOS 7 / Fedora 31/30/29上安装ELK Stack
<blockquote><p>原文地址:https://computingforgeeks.com/how-to-install-elk-stack-on-centos-fedora/</p>
<p>原作者: Josphat Mutai</p>
<p>译者:高行行</p>
</blockquote>
<p>如何在 CentOS 7 / Fedora 31/30/29 上安装 ELK Stack?“ <strong>ELK</strong> ”是 <code>Elasticsearch, Logstash, and Kibana</code> 的缩写。</p>
<ul>
<li><strong>Elasticsearch</strong>:这是一个开源的、基于 REST 和 JSON 的搜索引擎。它具有可扩展性、易用性和灵活性</li>
<li><strong>Logstash</strong> :这是一个服务器端数据处理管道,它同时从多个来源中采集数据,转换数据,然后将其发送到类似 Elasticsearch 的“存储”中。</li>
<li><strong>Kibana</strong> 允许用户使用图表可视化 Elasticsearch 中的数据。</li>
</ul>
<p>对于 RHEL 8,请参阅:</p>
<p>如何在 RHEL / CentOS 8 上安装 ELK Stack</p>
<p>请按照以下步骤在 CentOS 7 / Fedora 31/30/29 Linux 上安装和配置 ELK stack 工具。</p>
<h2 id="步骤-1安装-java">步骤 1:安装 Java</h2>
<p>由于 Elasticsearch 依赖 Java,因此你需要在 CentOS 7 / Fedora 系统上安装 Java。</p>
<pre><code class="language-bash">sudo yum -y install java-openjdk-devel java-openjdk
</code></pre>
<h2 id="步骤-2添加-elk-存储库">步骤 2:添加 ELK 存储库</h2>
<p>安装 Java 后,添加提供 ELK 堆栈软件包的 ELK 堆栈存储库。</p>
<p><strong>对于 Elasticsearch 7.x</strong></p>
<pre><code class="language-bash">cat <<EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo
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
EOF
</code></pre>
<p><strong>对于 Elasticsearch 6.x</strong></p>
<pre><code class="language-bash">cat <<EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
</code></pre>
<p>添加仓库后,导入 GPG 密钥:</p>
<pre><code class="language-shell">sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
</code></pre>
<p>清除并更新你的 YUM 软件包索引。</p>
<pre><code class="language-bash">sudo yum clean all
sudo yum makecache
</code></pre>
<h2 id="步骤-3安装和配置-elasticsearch">步骤 3:安装和配置 Elasticsearch</h2>
<p>Elasticsearch 存储库已准备就绪,可以使用。你可以使用以下命令安装 Elasticsearch:</p>
<pre><code class="language-bash">sudo yum -y install elasticsearch
</code></pre>
<p>确认软件包安装。</p>
<pre><code class="language-bash">$ rpm -qi elasticsearch
Name : elasticsearch
Epoch : 0
Version : 7.0.1
Release : 1
Architecture: x86_64
Install Date: Mon 06 May 2019 09:59:57 PM EAT
Group : Application/Internet
Size : 571521653
License : Elastic License
Signature : RSA/SHA512, Mon 29 Apr 2019 05:14:11 PM EAT, Key ID d27d666cd88e42b4
Source RPM: elasticsearch-7.0.1-1-src.rpm
Build Date: Mon 29 Apr 2019 04:06:59 PM EAT
Build Host: packer-virtualbox-iso-1553723689
Relocations : /usr
Packager : Elasticsearch
Vendor : Elasticsearch
URL : https://www.elastic.co/
Summary : Elasticsearch is a distributed RESTful search engine built for the cloud. Reference documentation can be found at https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html and the 'Elasticsearch: The Definitive Guide' book can be found at https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html
Description :
Elasticsearch subproject :distribution:packages
</code></pre>
<p>你可以通过编辑文件来设置 JVM 选项(例如内存限制): <code>/etc/elasticsearch/jvm.options</code></p>
<p>下面的示例设置总堆空间的初始/最大大小</p>
<pre><code class="language-bash">-Xms1g
-Xmx1g
</code></pre>
<p>如果你的系统内存较少,则可以将其配置为使用较小的内存。</p>
<pre><code class="language-bash">-Xms256m
-Xmx512m
</code></pre>
<p>启动并设置为开机时启用 elasticsearch 服务:</p>
<pre><code class="language-bash">$ sudo systemctl enable --now elasticsearch.service
Synchronizing state of elasticsearch.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable elasticsearch
Created symlink /etc/systemd/system/multi-user.target.wants/elasticsearch.service → /usr/lib/systemd/system/elasticsearch.service.
</code></pre>
<p>测试以验证其是否正常运行:</p>
<pre><code class="language-bash">$ curl http://127.0.0.1:9200
{
"name" : "localhost.localdomain",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "7fyD4TuqQ7yxog0fCnPXuA",
"version" : {
"number" : "7.5.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "e9ccaed468e2fac2275a3761849cbee64b39519f",
"build_date" : "2019-11-26T01:06:52.518245Z",
"build_snapshot" : false,
"lucene_version" : "8.3.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
</code></pre>
<p>创建一个测试的索引:</p>
<pre><code class="language-bash">$ curl -X PUT "http://127.0.0.1:9200/mytest_index"
{"acknowledged":true,"shards_acknowledged":true,"index":"mytest_index"}
</code></pre>
<h2 id="步骤-4安装和配置-kibana">步骤 4:安装和配置 Kibana</h2>
<p>从添加的 Elasticsearch 存储库下载并安装 Kibana。</p>
<pre><code class="language-bash">sudo yum -y install kibana
</code></pre>
<p>成功安装后,配置 Kibana:</p>
<pre><code class="language-bash">$ sudo vim /etc/kibana/kibana.yml
server.host: "0.0.0.0"
server.name: "kibana.example.com"
elasticsearch.url: "http://localhost:9200"
</code></pre>
<p>根据需要更改其他设置,然后启动 kibana 服务:</p>
<pre><code class="language-bash">sudo systemctl enable --now kibana
</code></pre>
<p>访问 <strong>http://ip-address:5601</strong> 以打开 Kibana 信息中心:</p>
<p><img src="https://img2018.cnblogs.com/blog/1854059/201912/1854059-20191225231253557-1531828839.png" alt="" loading="lazy"></p>
<p>如果你有活动的防火墙服务,请允许使用 TCP <code>5601</code> 端口</p>
<pre><code class="language-bash">sudo firewall-cmd --add-port=5601/tcp --permanent
sudo firewall-cmd --reload
</code></pre>
<h2 id="步骤-5安装和配置-logstash">步骤 5:安装和配置 Logstash</h2>
<p>最后安装的是针对 Logstash 的。它将充当客户端系统的集中式日志服务器,该服务器运行诸如filebeat之类的代理 。</p>
<pre><code class="language-bash">sudo yum -y install logstash
</code></pre>
<p>Logstash 自定义配置可以放在 <code>/etc/logstash/conf.d/</code>目录下。</p>
<p>有关更多详细信息,请 参阅 Logstash 配置手册 。</p>
<h2 id="步骤-6安装其他-elk-工具-锦上添花">步骤 6:安装其他 ELK 工具-锦上添花</h2>
<p>可以安装的其他 ELK 工具包括:</p>
<ul>
<li><strong>Filebeat</strong>:用于日志的轻量型采集器。通过提供一种转发和汇总日志与文件的轻量级方法,让简单的事情不再繁杂。</li>
<li><strong>Metricbeat</strong>:用于从系统和服务收集指标。Metricbeat 能够以一种轻量型的方式,输送各种系统和服务统计数据,从 CPU 到内存,从 Redis 到 Nginx,不一而足。</li>
<li><strong>Packetbeat</strong>:轻量型网络数据采集器。用于深挖网线上传输的数据,了解应用程序动态。Packetbeat 是一款轻量型网络数据包分析器,能够将数据发送至 Logstash 或 Elasticsearch。</li>
<li><strong>Heartbeat</strong>:用于正常运行时间监视的轻量型采集器。它通过主动探测帮助你监视服务的可用性</li>
<li><strong>Auditbeat</strong>:轻量型审计日志采集器,可帮助你审核系统上用户和进程的活动</li>
</ul>
<p>这些工具可以通过 <code>yum</code> 软件包管理器使用它们各自的名称一起进行安装。下面的示例将安装所有ELK插件工具。</p>
<pre><code class="language-bash">sudo yum install filebeat auditbeat metricbeat packetbeat heartbeat-elastic
</code></pre>
<p>有关每种工具的配置和进一步的阅读,请参考官方的 ELK Stack 文档 以及 资源和培训。</p>
<p>更多指南:</p>
<p>在 Ubuntu 上使用 Elasticsearch 6 安装 Graylog 3</p>
<p>在 CentOS / RHEL 8 上安装 Graylog 3</p>
<p>在 CentOS 7 上安装 Elasticsearch 7</p>
<blockquote>
<p>本文由博客一文多发平台 OpenWrite 发布!<br>
个人公众号《骇客与画家》,欢迎关注</p>
</blockquote><br><br>
来源:https://www.cnblogs.com/gaohanghang/p/12099617.html
頁:
[1]