栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

docker+elk安装配置

docker+elk安装配置

docker配置单机版es+kibana 1. 下载elasticsearch+kibana镜像
docker pull elasticsearch:7.6.2
docker pull kibana:7.6.2
2. 配置es挂载
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
mkdir -p /mydata/elasticsearch/plugins
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
chmod -R 777 /mydata/elasticsearch/
3. 启动elasticsearch单机版
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 
-e "discovery.type=single-node" 
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" 
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data 
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins 
-d elasticsearch:7.6.2 
4. 设置开机启动elasticsearch
docker update elasticsearch --restart=always
5. 启动kibana
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://192.168.32.128:9200 -p 5601:5601 -d kibana:7.6.2
6. 设置开机启动kibana
docker update kibana --restart=always
7. 测试elasticsearch是否启动成功
// 浏览器输入
http://101.200.129.34:9200/

  返回结果如下

{
    "name": "f68eb23d364e",
    "cluster_name": "elasticsearch",
    "cluster_uuid": "9gglpP0HTfyOTRAaSe2rIg",
    "version": {
        "number": "7.6.2",
        "build_flavor": "default",
        "build_type": "docker",
        "build_hash": "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
        "build_date": "2020-03-26T06:34:37.794943Z",
        "build_snapshot": false,
        "lucene_version": "8.4.0",
        "minimum_wire_compatibility_version": "6.8.0",
        "minimum_index_compatibility_version": "6.0.0-beta1"
    },
    "tagline": "You Know, for Search"
}
8. 测试kibana是否启动成功
// 浏览器输入
http://101.200.129.34:5601
9. 配置X-pack做安全验证(可不配置) 配置elasticsearch.yml
http.host: 0.0.0.0
 
# Uncomment the following lines for a production cluster deployment
#transport.host: 0.0.0.0
#discovery.zen.minimum_master_nodes: 1
 
#Password config
 
xpack.security.enabled: true   #这一步是开启x-pack插件
进入es docker容器设置账号密码

  注意下面的操作是默认的账号:

  elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user。

  设置的内容为指定账号的密码。

docker exec -it 容器ID /bin/bash    # 进入容器

[root@f18d8bc7b8f5 elasticsearch]# cd bin 
[root@f18d8bc7b8f5 bin]# ls
elasticsearch           elasticsearch-croneval       elasticsearch-migrate        elasticsearch-setup-passwords    elasticsearch-syskeygen  x-pack-watcher-env
elasticsearch-certgen   elasticsearch-env            elasticsearch-node           elasticsearch-shard              elasticsearch-users
elasticsearch-certutil  elasticsearch-env-from-file  elasticsearch-plugin         elasticsearch-sql-cli            x-pack-env
elasticsearch-cli       elasticsearch-keystore       elasticsearch-saml-metadata  elasticsearch-sql-cli-7.6.2.jar  x-pack-security-env
[root@f18d8bc7b8f5 bin]# elasticsearch-setup-passwords interactive     #此步为手动设置密码
 
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y
 
Enter password for [elastic]:    #在这里设置密码,注意最少六位,下面也一样
Reenter password for [elastic]: 
Passwords do not match.
Try again.
Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [apm_system]: 
Reenter password for [apm_system]: 
Enter password for [kibana]: 
Reenter password for [kibana]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Enter password for [remote_monitoring_user]: 
Reenter password for [remote_monitoring_user]: 
Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]
[root@f18d8bc7b8f5 bin]# exit     #退出容器

  以上的密码设置完成之后,无论是访问elasticsearch还是通过kibana都需要进行输入账号和密码。

设置kibana账号密码
docker exec -it kibana容器ID /bin/bash
bash-4.2$ vi /opt/kibana/config/kibana.yml
# 添加配置内容,上面设置的账号密码
elasticsearch.username: "kibana"
elasticsearch.password: "lzoilchem"
i18n.locale: "zh-CN"

  重启kibana服务

docker restart kibana容器ID

  重启kibana之后就会出现以下的情况

搭建logstash

  注意:虽然配置的kibana的账号,但是需要登陆elastic的账号才能登陆成功

  前面的步骤参考docker安装单机版es+kibana

docker pull logstash:7.6.2

  创建/mydata/logstash目录,并创建配置文件 logstash.conf

mkdir -p /mydata/logstash
cd /mydata/logstash
touch logstash.conf

  拷贝如下配置到 logstash.conf

input {
  tcp {
    mode => "server"
    host => "0.0.0.0"
    port => 4560
    codec => json_lines
  }
}
filter{
  if [type] == "record" {
    mutate {
      remove_field => "port"
      remove_field => "host"
      remove_field => "@version"
    }
    json {
      source => "message"
      remove_field => ["message"]
    }
  }
}
output {
  elasticsearch {
    hosts => "192.168.32.128:9200"
    user => "elastic"
    password => "lzoilchem"
    index => "springboot-logstash-%{+YYYY.MM.dd}"
  }
}

  运行docker

docker run --restart=always --name logstash -p 4560:4560 
-v /mydata/logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf 
-d logstash:7.6.2
# 安装json_lines插件
docker exec -it logstash /bin/bash
#此命令需要在容器中运行
logstash-plugin install logstash-codec-json_lines
exit
docker restart logstash

  设置配置文件

  docker exec -it logstash /bin/bash

  vi /opt/logstash/config/logstash.yml

// 0.0.0.0:允许任何IP访问
http.host: "0.0.0.0"
xpack.management.elasticsearch.username: elastic
xpack.management.elasticsearch.password: lzoilchem
// 配置elasticsearch集群地址
xpack.monitoring.elasticsearch.hosts: [ "http://192.168.32.128:9200" ]
// 允许监控
xpack.monitoring.enabled: true
// 启动时读取配置文件指定
path.config: /mydata/logstash/logstash.conf

  查看日志信息

docker logs -f -t --tail=10 logstash
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/672297.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号