elk介绍这里不再赘述,本系列教程多以实战干货为主,关于elk工作原理介绍,详情查看官方文档

一、环境规划

主机名 IP 角色 节点名
centos01 10.10.0.10 es node-10
centos02 10.10.0.11 es node-11
centos03 10.10.0.12 es node-12

这里三台机器配置均为2C4G配置,生产中根据日志量选配合的机器。

二、安装部署

es镜像官网:https://hub.docker.com/_/elasticsearch

2.1 创建宿主机映射目录

## 三台es主机都需要创建
[root@centos01 ~]# mkdir /var/lib/elasticsearch
[root@centos01 ~]# mkdir /etc/elasticsearch/

2.2 修改内核参数

## 三台机器都需要操作
[root@centos01 ~]# echo "vm.max_map_count=262144" > /etc/sysctl.conf
[root@centos01 ~]# sysctl -p
vm.max_map_count =

2.3 编辑es配置文件

vim /etc/elasticsearch/elasticsearch.yml

10服务器:

[root@centos01 elasticsearch]# cat elasticsearch.yml
#集群名称
cluster.name: ES-Cluster
#节点名
node.name: node-10
#设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,
#指绑定这台机器的任何一个ip
network.host: 0.0.0.0
#设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,
#值必须是个真实的ip地址
network.publish_host: 10.10.0.10
#设置对外服务的http端口,默认为9200
http.port: 9200
#设置节点之间交互的tcp端口,默认是9300
transport.tcp.port: 9300
#是否允许跨域REST请求
http.cors.enabled: true
#允许 REST 请求来自何处
http.cors.allow-origin: "*"
#节点角色设置
node.master: true
node.data: true
#有成为主节点资格的节点列表
discovery.seed_hosts: ["10.10.0.10","10.10.0.11","10.10.0.12"]
cluster.initial_master_nodes: ["node-10","node-11","node-12"]
#集群中一直正常运行的,有成为master节点资格的最少节点数(默认为1)
# (totalnumber of master-eligible nodes / 2 + 1)
discovery.zen.minimum_master_nodes: 2
xpack.security.enabled: false 

11服务器:

[root@centos02 elasticsearch]# cat elasticsearch.yml
#集群名
cluster.name: ES-Cluster #节点名
node.name: node-11 #设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,
#指绑定这台机器的任何一个ip
network.host: 0.0.0.0 #设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,
#值必须是个真实的ip地址
network.publish_host: 10.10.0.11 #设置对外服务的http端口,默认为9200
http.port: 9200 #设置节点之间交互的tcp端口,默认是9300
transport.tcp.port: 9300 #是否允许跨域REST请求
http.cors.enabled: true #允许 REST 请求来自何处
http.cors.allow-origin: "*" #节点角色设置
node.master: true
node.data: true #有成为主节点资格的节点列表
discovery.seed_hosts: ["10.10.0.10","10.10.0.11","10.10.0.12"]
cluster.initial_master_nodes: ["node-10","node-11","node-12"] #集群中一直正常运行的,有成为master节点资格的最少节点数(默认为1)
# (totalnumber of master-eligible nodes / 2 + 1)
discovery.zen.minimum_master_nodes: 2
xpack.security.enabled: false

12服务器:

[root@centos03 elasticsearch]# cat elasticsearch.yml
#集群名
cluster.name: ES-Cluster #节点名
node.name: node-12 #设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,
#指绑定这台机器的任何一个ip
network.host: 0.0.0.0 #设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,
#值必须是个真实的ip地址
network.publish_host: 10.10.0.12 #设置对外服务的http端口,默认为9200
http.port: 9200 #设置节点之间交互的tcp端口,默认是9300
transport.tcp.port: 9300 #是否允许跨域REST请求
http.cors.enabled: true #允许 REST 请求来自何处
http.cors.allow-origin: "*" #节点角色设置
node.master: true
node.data: true #有成为主节点资格的节点列表
discovery.seed_hosts: ["10.10.0.10","10.10.0.11","10.10.0.12"]
cluster.initial_master_nodes: ["node-10","node-11","node-12"] #集群中一直正常运行的,有成为master节点资格的最少节点数(默认为1)
# (totalnumber of master-eligible nodes / 2 + 1)
discovery.zen.minimum_master_nodes: 2
xpack.security.enabled: false

2.4 启动服务

三台节点都运行docker命令,部署es服务,以一台为例

## 需要修改宿主机es映射目录权限,容器中默认运行es服务的用户uid:gid 为1000
[root@centos01 ~]# groupadd -g 1000 elasticsearch
[root@centos01 ~]# useradd -u 1000 -g elasticsearch  -s /sbin/nologin -c "es user" elasticsearch
[root@centos01 ~]# chown -R : /var/lib/elasticsearch/
[root@centos01 ~]# docker run -d --name es -p : -p : \
-v /etc/elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /var/lib/elasticsearch/data:/usr/share/elasticsearch/data \
-v /var/lib/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
elasticsearch:7.0.

三、安装head插件查看集群状态

[root@centos01 ~]# docker run -d --name es-head -p : mobz/elasticsearch-head:

浏览器访问:http://10.10.0.10:9100

可以看到,集群总共有三个节点,其中node-10服务器已经被选为master节点。

Docker部署ELK 7.0.1集群之Elasticsearch安装介绍的更多相关文章

  1. Docker部署ELK 7.0.1集群之Logstash安装介绍

    1.下载镜像 [root@vanje-dev01 ~]# docker pull logstash: 2.安装部署 2.1  创建宿主映射目录 [root@vanje-dev01 ~]# mkdir ...

  2. Docker部署ELK 7.0.1集群之Kibana安装介绍

    1.下载镜像 [root@vanje-dev01 ~]# docker pull kibana: 2.安装部署 2.1 创建宿主机映射目录 [root@vanje-dev01 ~]# mkdir /e ...

  3. kubeadm部署kubernetes-1.12.0 HA集群-ipvs

    一.概述 主要介绍搭建流程及使用注意事项,如果线上使用的话,请务必做好相关测试及压测. 1.基础环境准备 系统:ubuntu TLS 16.04  5台 docker-ce:17.06.2 kubea ...

  4. 01篇ELK日志系统——升级版集群之elasticsearch集群的搭建

    [ 前言:以前搭了个简单的ELK日志系统,以我个人的感觉来说,ELK日志系统还是非常好用的.以前没有弄这个ELK日志系统的时候,线上的项目出了bug,报错了,要定位错误是什么,错误出现在哪个java代 ...

  5. hbase-2.0.4集群部署

    hbase-2.0.4集群部署 1. 集群节点规划: rzx1 HMaster,HRegionServer rzx2 HRegionServer rzx3 HRegionServer 前提:搭建好ha ...

  6. Docker:docker搭建redis6.0.8集群

    下载redis镜像 #拉取镜像 docker pull redis:6.0.8 查看版本 #查看版本 docker inspect redis 生成redis.conf配置文件 #在 /home/re ...

  7. 被一位读者赶超,手摸手 Docker 部署 ELK Stack

    被一位读者赶超,容器化部署 ELK Stack 你好,我是悟空. 被奇幻"催更" 最近有个读者,他叫"老王",外号"茴香豆泡酒",找我崔更 ...

  8. 超快速使用docker在本地搭建hadoop分布式集群

    超快速使用docker在本地搭建hadoop分布式集群 超快速使用docker在本地搭建hadoop分布式集群 学习hadoop集群环境搭建是hadoop入门的必经之路.搭建分布式集群通常有两个办法: ...

  9. 使用 Docker 一步搞定 ZooKeeper 集群的搭建

    背景 原来学习 ZK 时, 我是在本地搭建的伪集群, 虽然说使用起来没有什么问题, 但是总感觉部署起来有点麻烦. 刚好我发现了 ZK 已经有了 Docker 的镜像了, 于是就尝试了一下, 发现真是爽 ...

随机推荐

  1. ESP8266 tcp透传AP+STA

    AP 建立WIFI,接受STA连接,串口数据和TCP互传 #include <ESP8266WiFi.h> const char *ssid = "esp8266_666&quo ...

  2. 2019-2020-1 20199302《Linux内核原理与分析》第八周作业

    一.上课学习笔记 1.shell作用:①运行程序 ②重定向(输入/输出重定向) ③可编程(写脚本) 执行一个c程序时,如果切进另一个进程,会进入该进程而切不回原进程,所以需要为调用的进程创一个子进程. ...

  3. LOJ P10008 家庭作业 题解

    每日一题 day45 打卡 Analysis 这道题跟LOJ P10004 一样,但是数据范围不同,不允许O(n²) 的贪心算法通过. 我们可以加一个limit 来判断这个截止期限已经不行了,所以以后 ...

  4. js之大文件分段上传、断点续传

    文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...

  5. Interesting Vertices

    Interesting Vertices(前向星+思维+dfs回溯) 参考博客:https://blog.csdn.net/I_believe_CWJ/article/details/10247201 ...

  6. 编译.tex文件时出现的问题

    Error: “the second byte of the cjk code is out of range” 发生在使用pdflatex和bibtex时.可能是.bib文档中出现了中文字符,包括中 ...

  7. element ui分页器的使用

    <el-pagination layout="total, prev, pager, next, jumper" :current-page="pageInfo.p ...

  8. 刷题3:给定一个数组 nums,判断 nums 中是否存在三个下标 a,b,c数相加等于targe且a,b,c不相等

    题目: 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,下标 ,a ,b , c 对应数相加等于 targe 找出所有满足条件且不重复的三元组下标 解析: ...

  9. 网络营销CPA、CPS、CPM、CPT、CPC 是什么

    网络营销之所以越来越受到重视一个主要的原因就是因为“精准”.相比较传统媒体的陈旧广告形式,网络营销能为广告主带来更为确切的效果与回报,更有传统媒体所没有的即时互动性.很多企业借助于精准的网络营销成为人 ...

  10. python之psutil模块

    简述 psutil是一个跨平台库(http://code.google.com/p/psutil/) ,能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系 ...