ansible 部署 elk 集群

这篇具有很好参考价值的文章主要介绍了ansible 部署 elk 集群。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、安装ansible
1) 配置自己的yum 源
[root@node-4 ~]# cat /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl= http://192.168.100.20/openstack/centos
gpgcheck=0
enabeld=1
[ansible]
name=ansible
gpgcheck=0
enabled=1
baseurl= http://192.168.100.20/openstack/ansible
2) 下载ansible  修改配置 
[root@node-4 ~]# vi /etc/ansible/hosts
[node_1]
node1 node_name=node1
[node_2]
node2 node_name=node2
[node_3]
node3 node_name=node3
[root@node-4 ~]# ansible all -m ping
node2 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}
node3 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}
node1 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}
3) 创建部署的目录 
[root@node-4 ~]# mkdir install_elk
[root@node-4 ~]# cd install_elk/
[root@node-4 install_elk]# mkdir -p roles/{elk,kibana,logstash}/{tasks,files,templates,vars}
二、编写role
1) 搭建elasticserch
[root@node-4 install_elk]# tree roles/
roles/
├── elk
│   ├── files
│   │   ├── elasticsearch-6.0.0.rpm
│   │   ├── hosts
│   │   ├── limits.conf
│   │   ├── local.repo
│   │   └── sysctl.conf
│   ├── tasks
│   │   └── main.yaml
│   ├── templates
│   │   └── elasticsearch.yml.j2
│   └── vars
├── kibana
│   ├── files
│   │   ├── kibana-6.0.0-x86_64.rpm
│   │   └── kibana.yml
│   ├── tasks
│   │   └── main.yaml
│   ├── templates
│   └── vars
└── logstash
    ├── files
    │   ├── logstash-6.0.0.rpm
    │   ├── logstash.service
    │   ├── logstash.yml
    │   └── test.conf
    ├── tasks
    │   └── main.yaml
    ├── templates
    └── vars
15 directories, 15 files
root@node-4 ~]# cd install_elk/roles/elk/files/
[root@node-4 files]# cp /etc/hosts .
[root@node-4 files]# cp /etc/yum.repos.d/local.repo .
[root@node-4 files]# cp /etc/security/limits.conf .
[root@node-4 files]# cp /etc/sysctl.conf .
[root@node-4 files]# cp /root/elasticsearch-6.0.0.rpm .
[root@node-4 files]# ls
elasticsearch-6.0.0.rpm  hosts  limits.conf  local.repo  sysctl.conf
 #这里 我提前下载了 下 elastcisearch 的包
[root@node-4 files]# mv /etc/elasticsearch/elasticsearch.yml ../templates/elasticsearch.yml.j2 
[root@node-4 roles]# cat elk/templates/elasticsearch.yml.j2
cluster.name: my-application
node.name: {{node_name}}
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.zen.ping.unicast.hosts: ["node1","node2","node3"]
discovery.zen.minimum_master_nodes: 2
[root@node-4 elk]# vi tasks/main.yaml
[root@node-4 elk]# vi tasks/main.yaml
- name: stop selinux
  shell: setenforce 0
- name: rm  repo
  shell: rm -rf /etc/yum.repos.d/*
- name: cp hosts
  copy: src=hosts dest=/etc
- name: cp local.repo
  copy: src=local.repo dest=/etc/yum.repos.d/
- name: cp limit.conf
  copy: src=limit.conf dest=/etc/security/
- name: cp sysctl.con
  copy: src=sysctl.conf dest=/etc/
- name: shell sysctl
  shell: sysctl -p
- name: yum java
  shell: yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
- name: cp elk
  copy: src=elasticsearch-6.0.0.rpm dest=/root/
- name: yum elk
  yum: name=/root/elasticsearch-6.0.0.rpm
- name: copy elk.conf
  template: src=elasticsearch.yml.j2 dest=/etc/elasticsearch/elasticsearch.yml
- name:  start elk
  shell: systemctl restart elasticsearch
[root@node-4 install_elk]# cat roles/elk/files/limits.conf
* soft nofile 65536  #这里仅显示最后部分 (在最后添加 这两个)
* hard nofile 65536
[root@node-4 files]# cat sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
vm.max_map_count = 262144
2) 编写logstash
[root@node-4 roles]# cat logstash/files/logstash.service
[Unit]
Description=logstash
[Service]
ExecStart=/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
#Restart=on-failure
[Install]
WantedBy=multi-user.target
[root@node-4 roles]# cat logstash/files/logstash.yml
pipeline:
  batch:
    size: 125
    delay: 5
path.data: /var/lib/logstash
path.config: /etc/logstash/conf.d/*.conf
http.host: "0.0.0.0"
http.port: 9600-9700
log.level: info
path.logs: /var/log/logstash
[root@node-4 roles]# cat logstash/files/test.conf # 注意缩进
[root@node-4 roles]#  cat logstash/files/test.conf
input{
file{
path => "/var/log/messages"
start_position => "beginning"
}
 
}
output{
elasticsearch{
hosts => ["177.16.1.113:9200"]
index => "amessage-%{+YYYY.MM.dd}"
}
}
[root@node-4 roles]# cat logstash/tasks/main.yaml
- name: cp logstash
  copy: src=logstash-6.0.0.rpm dest=/root/
- name: yum logstash-6.0.0.rpm
  yum: name=/root/logstash-6.0.0.rpm
- name: cp test.conf
  copy: src=test.conf dest=/etc/logstash/conf.d/
- name: cp logstash.yml
  copy: src=logstash.yml dest=/etc/logstash/
- name: cp service
  copy: src=logstash.service dest=/etc/systemd/system/
- name: start logstash
  shell: systemctl daemon-reload && systemctl restart logstash
3) 编写kibana 
[root@node-4 roles]# cat kibana/files/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.url: "http://177.16.1.113:9200"
[root@node-4 roles]# cat kibana/tasks/main.yaml
- name: cp kibana-6.0.0-x86_64.rpm
  copy: src=kibana-6.0.0-x86_64.rpm dest=/root
- name: yum kibana-6.0.0-x86_64.rpm
  yum: name=kibana-6.0.0-x86_64.rpm
- name: cp kibana.yml
  copy: src=kibana.yml dest=/etc/kibana/
- name: start kibana
  shell: systemctl restart kibana
三、编写出口加运行结果
[root@node-4 install_elk]# vi install_elk.yaml
---
- hosts: all
  remote_user: root
  roles:
  - elk
- hosts: node_1
  remote_user: root
  roles:
  - kibana
- hosts: node_2
  remote_user: root
  roles:
  - logstash
[root@node-4 install_elk]# ansible-playbook install_elk.yaml
PLAY [all] *********************************************************************
TASK [Gathering Facts] *********************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [elk : stop selinux] ******************************************************
changed: [node2]
changed: [node3]
changed: [node1]
TASK [elk : rm  repo] **********************************************************
changed: [node2]
changed: [node3]
changed: [node1]
TASK [elk : cp hosts] **********************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [elk : cp local.repo] *****************************************************
changed: [node2]
changed: [node1]
changed: [node3]
TASK [elk : cp limits.conf] ****************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [elk : cp sysctl.con] *****************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [elk : shell sysctl] ******************************************************
changed: [node3]
changed: [node2]
changed: [node1]
TASK [elk : yum java] **********************************************************
changed: [node2]
changed: [node3]
changed: [node1]
TASK [cp elk] ******************************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [yum elk] *****************************************************************
ok: [node2]
ok: [node1]
ok: [node3]
TASK [copy elk.conf] ***********************************************************
ok: [node2]
ok: [node3]
ok: [node1]
TASK [start elk] ***************************************************************
changed: [node3]
changed: [node1]
changed: [node2]
PLAY [node_1] ******************************************************************
TASK [Gathering Facts] *********************************************************
ok: [node1]
TASK [cp kibana-6.0.0-x86_64.rpm] **********************************************
ok: [node1]
TASK [yum kibana-6.0.0-x86_64.rpm] *********************************************
ok: [node1]
TASK [cp kibana.yml] ***********************************************************
ok: [node1]
TASK [start kibana] ************************************************************
changed: [node1]
PLAY [node_2] ******************************************************************
TASK [Gathering Facts] *********************************************************
ok: [node2]
TASK [cp logstash] *************************************************************
ok: [node2]
TASK [yum logstash-6.0.0.rpm] **************************************************
ok: [node2]
TASK [logstash : cp test.conf] *************************************************
ok: [node2]
TASK [cp logstash.yml] *********************************************************
ok: [node2]
TASK [logstash : cp service] ***************************************************
ok: [node2]
TASK [start logstash] **********************************************************
changed: [node2]
PLAY RECAP *********************************************************************
node1                      : ok=18   changed=7    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node2                      : ok=20   changed=7    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node3                      : ok=13   changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

到这里就结束了 感谢大家的观看 你们的点赞是我们最大的动力

编辑:开拓者-陈果

审核:开拓者-少伟文章来源地址https://www.toymoban.com/news/detail-786454.html

到了这里,关于ansible 部署 elk 集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ansible部署kafka集群

    其中一台作为Ansible的母机并命名为ansible,另外三台云主机命名为node1、node2、node3,通过附件中的/ansible/ansible.tar.gz软件包在ansible节点安装Ansible服务;使用这一台母机,编写Ansible脚本(在/root目录下创建example目录作为Ansible工作目录,部署的入口文件命名为cscc_install.yaml),编

    2024年01月22日
    浏览(34)
  • ELK集群部署---Kibana的部署

    1.  环境规划: 主机名 IP地址 角色 node1 192.168.56.111 ElasticSearch(master) Zookeeper Kafka node2 192.168.56.112 ElasticSearch(slave) Kibana Zookeeper Kafka node3 192.168.56.113 ElasticSearch(slave) Zookeeper Kafka node4 192.168.56.114 Logstash Filebeat 2.  安装Kibana: 3.  配置Kibana: 4.  启动Kibana: 5.  访问Kibana,\\\" http://

    2024年02月10日
    浏览(26)
  • 8版本ELK集群部署

    elasticsearch官网地址:Elasticsearch:官方分布式搜索和分析引擎 | Elastic 第一步: 环境配置(每一台都做) 配置主机名、配置IP地址、每台主机配置/etc/hosts名称解析 192.168.11.128 es1 192.168.11.130 es2 192.168.11.138 es3 将Linux系统的软硬限制最大文件数改为65536,将所有用户的最大线程数修

    2024年02月06日
    浏览(31)
  • Ansible部署MariaDB galera集群(多主)

    MariaDB Galera集群是一套基于同步复制的、多主的MySQL集群解决方案,使用节点没有单点故障,可用性高,读写性能高,可扩展性好。 主要特点 : 同步复制,主备无延迟 多主架构允许多个节点成为集群中的主节点,并且所有主节点都可以处理写入请求,这意味着你可以在任何

    2024年02月14日
    浏览(32)
  • ansible部署zookeeper和kafka集群

    节点 IP ansible 192.168.200.75 node1 192.168.200.76 node2 192.168.200.77 node3 192.168.200.78 基础环境配置就不过多赘述了 主机名、主机解析、免密访问、ansible下载、配置ansible主机、防火墙、selinux、配置centos2009镜像、配置ftp远程。均已配置 在ansible节点的/root目录下创建example目录,作为Ansib

    2024年02月09日
    浏览(34)
  • ELK集群部署---LogStash,Filebeat的部署

    1.  环境规划: 主机名 IP地址 角色 node1 192.168.56.111 ElasticSearch(master) Zookeeper Kafka node2 192.168.56.112 ElasticSearch(slave) Kibana Zookeeper Kafka node3 192.168.56.113 ElasticSearch(slave) Zookeeper Kafka node4 192.168.56.114 Logstash Filebeat

    2023年04月18日
    浏览(32)
  • 【Ambari】Ansible自动化部署大数据集群

    目录 一.版本说明和介绍信息 1.1 大数据组件版本 1.2 Apache Components 1.3 Databases支持版本 二.安装包上传和说明 三.服务器基础环境配置 3.1global配置修改 3.2主机名映射配置 3.3免密用户名密码配置 3.4 ansible安装 四. 安装Ambari-server 4.1 安装ambari-server 4.2 检查REPO源 五、HDP 安装

    2024年04月15日
    浏览(54)
  • kubersphere部署elk集群无tls

    elasticsearch.yml 测试 补充 kibana.yml 测试 logstash.yml logstash.conf 测试 https://blog.csdn.net/qq_20143059/article/details/112992016

    2024年02月12日
    浏览(29)
  • ELK 企业级日志分析系统的概念、ELK Elasticsearch 集群部署

    1、ELK 简介 ELK平台是一套完整的日志集中处理解决方案,将 ==ElasticSearch、Logstash 和 Kiabana ==三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。 ElasticSearch 是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。 E

    2024年02月16日
    浏览(38)
  • centos7.6部署ELK集群(一)之elasticsearch7.7.0集群部署

    32.3. 部署es7.7.0 32.3.1. 下载es(各节点都做) wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.7.0-linux-x86_64.tar.gz 32.3.2. 解压至安装目录(各节点都做) tar -xvf elasticsearch-7.7.0-linux-x86_64.tar.gz -C /vmdata/ 32.3.3. 创建es用户并设置密码(各节点都做) ES 7.x 开始不再允许以任何方

    2023年04月17日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包