阿里云服务器搭建elk环境

简介: elasticsearch、kibana、logstash

最近打算学习elk产品,申请阿里云服务器后,便开始了环境的搭建,需要注意的是本次同一版本为7.9.3。

1、安装elasticsearch

首先创建elk目录

mkdir elk

查看当前目录 pwd

/usr/local/custom/elk

获取源文件,其中-P 表示指定目录 ./表示目录

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-linux-x86_64.tar.gz  -P ./

解压源文件

tar -xzvf elasticsearch-7.9.3-linux-x86_64.tar.gz 

修改配置文件

vim elasticsearch-7.9.3/config/elasticsearch.yml
    node.name: node-1 #节点名称
    #设置绑定的ip,设置为0.0.0.0以后就可以让任何计算机节点访问到了
    network.host: 0.0.0.0
    http.port: 9200 #端口
    #设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可
    cluster.initial_master_nodes: ["node-1"]

因为elasticsearch很耗费内存,所以修改jvm参数

vim elasticsearch-7.9.3/config/jvm.options
    -Xms2g
    -Xmx2g

运行时发现他需要jdk11的版本,而当前我配置的只是jdk8环境,不过好在,下载elasticsearch时自动下载了jdk11,这个目录和es的bin目录同级,所以我们修改启动脚本文件

vim elasticsearch-7.9.3/bin/elasticsearch
    #开头几行
    #配置es自带的jdk11 你安装的位置
        export JAVA_HOME=/usr/local/custom/elk/elasticsearch-7.9.3/jdk
            export PATH=$JAVA_HOME\bin:$PATH

    #添加jdk判断
        if [ -x "$JAVA_HOME/bin/java" ]; then
                JAVA="/usr/local/custom/elk/elasticsearch-7.9.3/jdk/binjava"
        else
                JAVA=`which java`
        fi

再次启动发现报错,不能以root账户启动,所以我们要创建新用户

#新增用户组 elsearch
groupadd elsearch
#用户组新增用户 elsearch
useradd elsearch -g elsearch
#修改用户的密码
passwd elsearch

使用新创建的用户

su elsearch
./elasticsearch

再次启动发现还是报错,错误原因是文件操作权限不够,因此将elk目录分给elsearch用户

chown -R elsearch:elsearch /usr/local/custom/elk/

再次启动,启动完成,然后访问http://xxx:9200/时,无法访问,经过查找后,发现需要开放阿里云端口,在网络和安全组里面配置安全组,我这里配置的是所有端口开放,配置完成后,再次访问,得到如下结果:

{
  "name" : "node-1",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "ZnYK6DJYSduRxhEh_jF6jg",
  "version" : {
    "number" : "7.9.3",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "c4138e51121ef06a6404866cddc601906fe5c868",
    "build_date" : "2020-10-16T10:36:16.141335Z",
    "build_snapshot" : false,
    "lucene_version" : "8.6.2",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

至此,elasticsearch环境就搭建好了。这里需要注意的是,最开始云服务器是没有开启防火墙的,如果开启了防火墙,那你需要在虚拟机里面开放端口。

2、安装kibana

同样在elk目录下执行获取源文件操作

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.9.3-linux-x86_64.tar.gz -P ./

解压源文件

tar -xzvf kibana-7.9.3-linux-x86_64.tar.gz

修改配置文件

vim /kibana-7.9.3/config/kibana.yml 
    #端口 2 line
        server.port: 5601
    #地址 7 line 同样让所有地址可以访问
        server.host: "0.0.0.0"
    #被可视化的es地址  28 line
        elasticsearch.hosts: ["http://localhost:9200"]

由于我们前面开放了所有端口,所以本次就不用再次配端口了。然后我们切换elsearch用户,运行kibana发现报错,原来还是文件操作权限不够,我们重新分配文件权限,因为我下载是root用户操作的,下载的文件是属于root的。

chown -R elsearch:elsearch /usr/local/custom/elk/

再次启动访问http://xxx:5601/出现页面,支持配置完成。

3、安装logstash

安装这个非常简单,按照如下命令操作即可

#1、获取源文件
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.9.3.tar.gz -P ./


#2、解压源文件
tar -xzvf logstash-7.9.3.tar.gz 

#3、备份
cp logstash-sample.conf logstash.conf
mv logstash-sample.conf logstash-sample.conf.bak

#4、修改logstash.conf
    见后面配置列表

#5、启动logstash
./bin/logstash -f ./config/logstash.conf 

配置列表如下

input {
  file {
    #数据源路径
    path => "/usr/local/custom/elk/source/movies.csv"
    start_position => "beginning"
    #记录导入的数据源情况
    sincedb_path => "/usr/local/custom/elk/logstash-7.9.3/log/db_path.log"
  }
}
filter {
  csv {
    separator => ","
    columns => ["id","content","genre"]
  }

  mutate {
    split => { "genre" => "|" }
    remove_field => ["path", "host","@timestamp","message"]
  }

  mutate {

    split => ["content", "("]
    add_field => { "title" => "%{[content][0]}"}
    add_field => { "year" => "%{[content][1]}"}
  }

  mutate {
    convert => {
      "year" => "integer"
    }
    strip => ["title"]
    remove_field => ["path", "host","@timestamp","message","content"]
  }

}
output {
   elasticsearch {
     hosts => "http://localhost:9200"
     index => "movies"
     document_id => "%{id}"
   }
  stdout {}
}

至此,我们就搭建好了elk的环境了,后续将会持续更新相关学习笔记。

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9月前
|
人工智能 缓存 监控
构建高效MCP客户端:应对多服务器环境的完整指南
本文深入探讨了在多服务器环境下构建高效、可靠的Model Context Protocol(MCP)客户端的关键技术与最佳实践。内容涵盖MCP基础架构、连接管理、请求路由、容错机制、会话管理、性能监控及安全认证等核心设计,提供了完整的实现类与部署配置示例,助力开发者构建高性能MCP客户端,提升AI模型与工具集成的效率与稳定性。
|
12月前
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
742 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
10月前
|
弹性计算 关系型数据库 Nacos
低配阿里云 ECS 如何 docker 环境部署 NACOS : 单机版模式
NACOS 单机版 Docker 安装指南。使用指定端口和 custom.env 配置文件启动 Nacos 服务,适用于 2.X 版本,包含 gRPC 支持及 MySQL 数据源配置。 -e MODE=standalone \
759 5
|
监控 安全 Linux
RHEL 环境下 Subversion 服务器部署与配置
【10月更文挑战第18天】在RHEL环境下部署Subversion服务器需依次完成安装Subversion、创建版本库、配置服务器、启动服务、客户端连接及备份维护等步骤。确保遵循安全最佳实践,保障数据安全。
349 1
|
10月前
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
455 0
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
Node.js 是一种高效的 JavaScript 运行环境,基于 Chrome V8 引擎,支持在服务器端运行 JavaScript 代码。本文介绍如何在阿里云上一键部署 Node.js 环境,无需繁琐配置,轻松上手。前提条件包括 ECS 实例运行中且操作系统为 CentOS、Ubuntu 等。功能特点为一键安装和稳定性好,支持常用 LTS 版本。安装步骤简单:登录阿里云控制台,选择扩展程序管理页面,安装 Node.js 扩展,选择实例和版本,等待创建完成并验证安装成功。通过阿里云的公共扩展,初学者和经验丰富的开发者都能快速进入开发状态,开启高效开发之旅。
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
535 28
|
监控 应用服务中间件 Apache
不同服务器环境301重定向具体实施步骤
本文详细介绍301重定向配置方法,涵盖Apache、Nginx、IIS服务器环境及WordPress、Cloudflare等平台工具的实现方式。提供具体规则示例与操作步骤,包括单页、整站和批量路径重定向。同时,强调验证与监控的重要性,列出测试清单及搜索引擎通知方法,并针对常见问题如重定向循环、参数丢失等提供解决方案。最后总结最佳实践原则,确保SEO权重传递与用户体验优化。
679 17
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!