filebeat

k8s之pod控制器

六月ゝ 毕业季﹏ 提交于 2019-11-28 12:56:36
Pod控制器类型: ReplicationController à Replicaset Replicaset:维持用户期望的pod副本数 标签选择器:以便选定由自己选定管理的pod副本 pod资源模板:完成pod资源的新建 特点:管理无状态的pod资源,精确反映用户所定义的目标数量 K8s不建议直接使用Replicaset,而是使用Deployment Deployment:工作在replicaset上,通过控制replicaset来控制pod Deployment具备replicaset功能,还具有滚动更新,回滚,等更多强大机制,还提供声明式配置功能,管理群体,而不关注单个节点 DaemSet:确保集群中的每一个node只运行一个特定的pod副本,实现系统级的后台任务,也具有标签选择器,也可以指定部分满足条件的node运行一个pod副本,比如监控具有ssd存储的node节点 以上共同的特点:pod服务无状态,pod服务必须是守护进程类的, Job:一次性作业,任务完成,pod退出 Cronjob:周期性运行,每一次完成,pod退出 Statefulset:管理有状态的运用pod,每一个pod运用,每一个pod副本,都是单独管理, 备注: TPR: third party resource, 1.2 ~ 1.7版本 支持第三方资源 CDR: custom defined

k8s之pod控制器

时光总嘲笑我的痴心妄想 提交于 2019-11-28 12:56:20
1.生产中,很少会跑一个自主式pod, 一般由控制器去创建pod,其配置文件中内嵌了pod的创建方式 . pod控制器 :ReplicaSet、Deployment、DaemonSet、Job、Cronjob、StatefulSet ReplicaSet :代用户创建指定数量的pod副本数量,确保pod副本数量符合预期状态,并且支持滚动式自动扩容和缩容功能. ReplicaSet主要由三个组件组成: a.用户期望的pod副本数量; b.标签选择器,判断哪个pod归自己管理; c.pod资源模板,当现存的pod数量不足,会根据pod资源模板进行新建. 帮助用户管理无状态的pod资源,精确反应用户定义的目标数量,但RelicaSet不是直接使用的控制器,而是使用Deployment; Deployment :工作在ReplicaSet之上,用于管理无状态应用,目前来说最好的控制器.支持滚动更新和回滚功能,还提供声明式配置; DaemonSet :用于确保集群中的每一个节点只运行特定的pod副本,通常用于实现系统级后台任务,比如ELK中负责收集日志filebeat,特性:服务是无状态的,服务必须是守护进程; Job :只要完成就立即退出,不需要重启或重建; Cronjob :周期性任务控制,不需要持续后台运行; StatefulSet :管理有状态应用. 2. ReplicaSet(rs

elk相关启动脚本-shell编写

天涯浪子 提交于 2019-11-28 08:39:00
elasticsearch-restart : #!/bin/bash PID=`ps -ef|grep elasticsearch|grep -vE 'grep|controller|elasticsearch-restart'|awk '{print $2}'` kill -9 $PID >/dev/null 2>&1 sleep 1 nohup elasticsearch -d >/data/soft/elasticsearch/nohup.out 2>&1 & if [ ! -z $PID ] then echo SUCCESS! fi filebeat-restart : #!/bin/bash PID=`ps -ef|grep filebeat|grep -vE 'grep|filebeat-restart'|awk '{print $2}'` kill -9 $PID >/dev/null 2>&1 sleep 1 nohup filebeat -c /data/soft/filebeat/filebeat.yml >/data/soft/filebeat/nohup.out 2>&1 & if [ ! -z $PID ] then echo SUCCESS! fi kibana-restart : #!/bin/bash PID=`ps -ef|grep

FILEBEAT+ELK日志收集平台搭建流程

非 Y 不嫁゛ 提交于 2019-11-28 08:37:34
filebeat+elk 日志收集平台搭建流程 1、 整体简介: 模式:单机 平台:Linux - centos - 7 ELK:elasticsearch、logstash、kibana三款开源软件的集合。 FILEBEAT:代替logstash的采集功能,轻量、耗用小。 目前收集的有nginx日志、java日志[单行|多行]。 都是通过在客户端的生成日志配置文件中定义好初步json格式,然后利用filebeat采集到logstash,存储到elasticsearch,最后通过kibana在浏览器页面中展示出来。 elasticsearch、logstash、kibana 如果是root安装,默认会创建(elasticsearch、logstash、kibana)三个单独用户来独立运行。用www用户安装好后默认是以www用户运行。本文演示用的是www。 2、 软件环境安装: (1)、java环境: Elasticsearch需要安装Java 8的环境。 如果没有下载jdk1.8的软件包,可以直接安装java-1.8.0-openjdk。 (2)、下载elasticsearch(Linux版本)的二进制包并解压: $ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.0.tar

docker方式部署elk日志搜索平台

大兔子大兔子 提交于 2019-11-28 06:20:02
Docker部署ELKF操作文档 前提介绍 1、之前搭建elk+f+k使用原生系统软件安装方式,由于docker镜像日趋成熟,docker官网和elastic官网都有相关镜像和各自安装文档可供参考,各个版本也在定期更新,这次决定换用docker方式进行搭建安装。 Docker(elk)的hub网站链接及文档: https://hub.docker.com/r/sebp/elk https://elk-docker.readthedocs.io/ 2、搭建前准备: [由于公司资源有限,开一台虚拟机放置elk所有插件,若有足够资源,可考虑使用分布式部署及es集群方式] 空余主机一台(内存>=6G): Linux Centos7.6 用到的主要软件有: Elasticsearch7.0.0 (搜索引擎-server端) Kibana7.0.0 (图形化web界面-server端) Logstash7.0.0 (log的汇总与收集-server端) Filebeats7.0.1 (log收集-client端) 或 Metricbeat-7.0.1(client端) 一、安装docker及elk相关软件 yum list | grep docker yum makecache fast ###移除旧版本### yum remove docker docker-client docker

ELK原理与介绍

假装没事ソ 提交于 2019-11-28 06:17:12
为什么用到ELK: 一般我们需要进行日志分析场景:直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大的场景中,此方法效率低下,面临问题包括 日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化的日志管理,所有服务器上的日志收集汇总。 常见解决思路是建立集中式日志收集系统,将所有节点上的日志统一收集,管理,访问。 一般大型系统是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,问题出现时,大部分情况需要根据问题暴露的关键信息,定位到具体的服务器和服务模块,构建一套集中式日志系统,可以提高定位问题的效率。 一个完整的集中式日志系统,需要包含以下几个主要特点: 收集-能够采集多种来源的日志数据 传输-能够稳定的把日志数据传输到中央系统 存储-如何存储日志数据 分析-可以支持 UI 分析 警告-能够提供错误报告,监控机制 ELK提供了一整套解决方案,并且都是开源软件, 之间互相配合使用,完美衔接,高效的满足了很多场合的应用。目前主流的一种日志系统。 ELK简介: ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash

ELK+Beats日志分析系统部署

落爺英雄遲暮 提交于 2019-11-28 06:17:01
一、 名词介绍: E:ElasticSearch 搜索,简称es L:Logstash 管理日志和事件的工具 K:Kibana 功能强大的数据显示客户端 Beats 轻量级数据传输组件,这里我们主要使用FileBeat 二、 应用包准备: elasticsearch-6.1.2.tar.gz logstash-6.1.2.tar.gz kibana-6.1.2-linux-x86_64.tar.gz filebeat-6.1.2-linux-x86_64.tar.gz jdk-7 以上 三、 部署安装: 1.集群部署 如果 logstash 压力很大,那么可以考虑 filebeat 和 logstash 之间引入 redis 或 kafka 作为缓冲。 以后可以使用集群部署,目前先采用如下部署方式: elasticsearch+ logstash+ kibana 于同一台机器,假设 ip 为: 192.168.1.228 filebeat 和应用服务器或其他需要做日志处理的服务器一起部署 2. 安装JDK 1.7 省略安装步骤,推荐1.7+版本以上 java –version 设置java的环境变量,比如 vim ~/.bashrc >> export JAVA_HOME= /home/xiel/Java/jdk1.7.0_45 export JRE_HOME=${JAVA

ELK beats平台介绍

柔情痞子 提交于 2019-11-28 06:16:22
原文链接: http://www.tuicool.com/articles/mYjYRb6 beats是一个代理,将不同类型的数据发送到elasticsearch。beats可以直接将数据发送到elasticsearch,也可以通过logstash将数据发送elasticsearch。 beats有三个典型的例子:Filebeat、Topbeat、Packetbeat。Filebeat用来收集日志,Topbeat用来收集系统基础设置数据如cpu、内存、每个进程的统计信息,Packetbeat是一个网络包分析工具,统计收集网络信息。这三个是官方提供的。后续会慢慢介绍这三个beat。 ELK的目标是建立一个平台,可以很容易的创建新的beats。为了这个目录,开发了libbeat,该Go库包含了所有beats公共部分来处理任务,如批量插入到elasticsearch,安全的发送事件到logstash,logstash和elasticsearch多节点的负载均衡,异步或同步的发送事件模式。该libbeat平台还提供了检测机制,当下游服务器负载高或者网络拥堵,自动的降低发送速率。 架构图如下: 简而言之,libbeat可以将一切事件安全的可靠地有效的发送到logstash和elasticsearch。不仅如此,对于其它事情也兼顾到如配置、CLI标记和日志。因此当你创建新的beat时

elkjilu

懵懂的女人 提交于 2019-11-28 05:29:48
1. filebeat的下载安装配置 下载:https://www.elastic.co/cn/downloads/beats/filebeat windows10 启动:在安装包解压目录下 filebeat -e -c filebeat .yml 2.配置文件调整 filebeat.yml 启动当前配置 enabled: true 多行配置 multiline.pattern: ^\[ multiline.negate: true multiline.match: after #不会从头读取日志,而是从尾部读取,等价于tail (tail -f) tail_files: true #==================== Elasticsearch template setting ========================== #setup.template 区域指定索引的模板 用来设置ES的映射 #模板的名称 setup.template.name: boling-ad-server #模板的模式 setup.template.pattern: boling-ad-server-* #kinana 索引的配置 setup.dashboards.index: boling-ad-server-* #描述字段的YAML文件路径(发送到ES的字段定义)

filebeat过滤

£可爱£侵袭症+ 提交于 2019-11-28 04:24:57
合并多行以[为头 multiline: pattern: '^\[' negate: true match: after ------------------------------------------------ 过滤掉某行 exclude_lines: ['^#']---------------------------- # cat filebeat.yml filebeat.prospectors: - type: log paths: - /data/log/tomcat/localhost_access_log.*.txt exclude_lines: ['^#'] fields: tag: accesslog-121 - type: log paths: - /data/log/tomcat/catalina.out exclude_lines: ['^#'] fields: tag: catalina-121 filebeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: true output.redis: hosts: ["127.0.0.1"] port: 6380 key: "tomcat121-autoschedulecore-access-list"------