当前位置: 首页 > news >正文

扁平化 公司网站电子商务企业网站建设计划书

扁平化 公司网站,电子商务企业网站建设计划书,建设网站流程,wordpress数据表格ELK Filebeat 分布式日志管理平台部署 1、前言1.1日志分析的作用1.2需要收集的日志1.3完整日志系统的基本特征 2、ELK概述2.1ELK简介2.2为什么要用ELK?2.3ELK的组件 3、ELK组件详解3.1Logstash3.1.1简介3.1.2Logstash命令常用选项3.1.3Logstash 的输入和输出流3.1.4Logstash配… ELK Filebeat 分布式日志管理平台部署 1、前言1.1日志分析的作用1.2需要收集的日志1.3完整日志系统的基本特征 2、ELK概述2.1ELK简介2.2为什么要用ELK?2.3ELK的组件 3、ELK组件详解3.1Logstash3.1.1简介3.1.2Logstash命令常用选项3.1.3Logstash 的输入和输出流3.1.4Logstash配置文件 3.2ElasticSearch3.3Kiabana3.4Filebeat3.4.1简介3.4.2filebeat 结合 logstash 带来好处 3.5缓存/消息队列redis、kafka、RabbitMQ等3.6Fluentd 4、ELK的工作原理5、部署ELKLogstash作为日志收集器ELK Elasticsearch 集群部署在Node1、Node2节点上操作ELK Logstash 部署在 Apache 节点上操作ELK Kiabana 部署在 Node1 节点上操作FilebeatELK 部署 1、前言 在运维中日志是非常重要的工具用于记录系统、应用程序或设备的运行状态、事件和异常情况。 1.1日志分析的作用 1故障排除和问题诊断 日志是排查故障和诊断问题的关键信息源。 通过分析日志文件可以查找和定位系统故障、错误和异常帮助运维人员迅速找出问题的根本原因并采取正确的修复措施。 2性能分析和优化 通过监视和分析系统日志可以了解系统的性能瓶颈、资源消耗情况和关键指标。 运维人员可以根据日志中的数据优化系统配置、调整资源分配以提高系统的性能和响应能力。 3安全监控和威胁检测 日志可以帮助监控系统的安全性并检测潜在的安全威胁。 通过分析日志可以发现异常登录、未授权访问、恶意行为等安全问题并及时采取措施进行应对和防范。 4运营分析和规划 通过日志分析可以更好地了解用户需求进行容量规划制定有效的运维策略和决策。 5合规性和审计 通过记录和保留日志可以应对合规性规定并提供必要的审计跟踪以满足法规和行业标准的要求。 因此对于任何系统或应用程序设置合适的日志记录和日志分析机制是非常重要的一环。 1.2需要收集的日志 系统日志为监控做准备要收集tomcat系统日志tomcat所在节点的日志。 服务日志比如数据库mysql收集慢查询日志、错误日志、普通日志要收集tomcat服务日志。 业务日志业务日志必须收集业务口子日志在log4jlog4j是由java环境开发的跑在tomcat上。 1.3完整日志系统的基本特征 收集能够采集多种来源的日志数据传输能够稳定的把日志数据解析过滤并传输到存储系统存储存储日志数据分析支持UI分析警告能够提供错误报告监控机制 2、ELK概述 2.1ELK简介 ELK平台是一套完整的日志集中处理解决方案。 将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用 完成更强大的用户对日志的查询、排序、统计需求。 2.2为什么要用ELK? 集中化管理日志后日志的统计和检索的效率降低。 ELK 提供了一个完整的日志管理和分析解决方案能够帮助用户更好地理解数据、监控系统性能并进行故障排除。 2.3ELK的组件 基础组件Elasticsearch、Logstash、Kibana 扩展组件Filebeat、Fluentd 3、ELK组件详解 3.1Logstash 3.1.1简介 Logstash 实现了数据的收集和处理。 Logstash 是一个可扩展的数据收集、转换和传输工具。 它可以从各种来源如日志文件、消息队列、数据库等收集数据并将其转换为统一的格式然后发送到 Elasticsearch 进行存储和分析。 Logstash 提供了丰富的输入插件font和输出插件可以与各种数据源和目标进行集成。 它还具有强大的过滤功能可以对数据进行处理、过滤和转换以满足不同的业务需求。 3.1.2Logstash命令常用选项 #Logstash 命令常用选项-f通过这个选项可以指定 Logstash 的配置文件根据配置文件配置 Logstash 的输入和输出流-e从命令行中获取输入、输出后面跟着字符串该字符串可以被当作 Logstash 的配置如果是空则默认使用 stdin 作为输入stdout 作为输出-t测试配置文件是否正确然后退出。3.1.3Logstash 的输入和输出流 1、定义输入和输出流 #输入采用标准输入 #输出采用标准输出类似管道 #新版本默认使用 rubydebug 格式输出 logstash -e input { stdin{} } output { stdout{} }2、使用 rubydebug 输出详细格式显示 #codec 为一种编解码器 logstash -e input { stdin{} } output { stdout{ codecrubydebug } }3.1.4Logstash配置文件 Logstash 配置文件基本由三部分组成input、output 以及 filter。 filter部分选择性添加可以没有。 input部分 表示从数据源采集数据。 常见的数据源如Kafka、日志文件等。 file beats kafka redis stdin #基本格式 input {...}filter部分 数据处理层包括对数据进行格式化处理、数据类型转换、数据过滤等支持正则表达式。 #基本格式 filter {...}ouput部分 表示将Logstash收集的数据经由过滤器处理之后输出到Elasticsearch。 elasticsearch stdout #基本格式 output {...}在每个部分中也可以指定多个访问方式 #举个例子若要指定两个日志来源文件则格式如下 input {file { path /var/log/messages type syslog}file { path /var/log/httpd/access.log type apache} }3.2ElasticSearch Elasticsearch 提供了强大的搜索和分析引擎。 Elasticsearch 是一个分布式、实时的搜索和分析引擎。 它基于 Lucene 搜索引擎库构建具有分布式搜索、实时数据分析、高性能和高可伸缩性的特点。 Elasticsearch 可以存储和索引大规模的数据(比如日志并提供快速的全文搜索、条件过滤、聚合和分析功能。 3.3Kiabana Kibana 提供了可视化和交互式分析的界面。 Kibana 是一个针对Elasticsearch的开源数据分析及可视化平台用来搜索、查看交互存储在Elasticsearch索引中的数据。 使用Kibana可以通过各种图表进行高级数据分析及展示创建自定义仪表盘font来展示关键指标和监控警报。 3.4Filebeat 3.4.1简介 轻量级的开源日志文件数据搜集器。 通常在需要采集数据的客户端安装 Filebeat并指定目录与日志格式Filebeat 就能快速收集数据并发送给 logstash 进行解析或是直接发给 Elasticsearch 存储。 性能上相比运行于 JVM 上的 logstash 优势明显是对它的替代。 常应用于 EFLK 架构当中。 3.4.2filebeat 结合 logstash 带来好处 1通过 Logstash 具有基于磁盘的自适应缓冲系统该系统将吸收传入的吞吐量从而减轻 Elasticsearch 持续写入数据的压力 2从其他数据源例如数据库S3对象存储或消息传递队列中提取 3将数据发送到多个目的地例如S3HDFSHadoop分布式文件系统或写入文件 4使用条件数据流逻辑组成更复杂的处理管道。 3.5缓存/消息队列redis、kafka、RabbitMQ等 对高并发日志数据进行流量削峰和缓冲。 对高并发日志数据进行流量削峰和缓冲。 3.6Fluentd Fluentd是一个流行的开源数据收集器。 由于 logstash 太重量级的缺点Logstash 性能低、资源消耗比较多等问题随后就有 Fluentd 的出现。 相比较 logstashFluentd 更易用、资源消耗更少、性能更高在数据处理上更高效可靠受到企业欢迎成为 logstash 的一种替代方案常应用于 EFK 架构当中。 在 Kubernetes 集群中也常使用 EFK 作为日志数据收集的方案。 在 Kubernetes 集群中一般是通过 DaemonSet 来运行 Fluentd以便它在每个 Kubernetes 工作节点上都可以运行一个 Pod。 它通过获取容器日志文件、过滤和转换日志数据然后将数据传递到 Elasticsearch 集群在该集群中对其进行索引和存储。 4、ELK的工作原理 1在所有需要收集日志的服务器上部署Logstash或者先将日志进行集中化管理在日志服务器上在日志服务器上部署 Logstash。 2Logstash 收集日志将日志格式化并输出到 Elasticsearch 群集中。 3Elasticsearch 对格式化后的数据进行索引和存储。 4Kibana 从 ES 群集中查询数据生成图表并进行前端数据的展示。 综上所述 logstash作为日志搜集器从数据源采集数据并对数据进行过滤格式化处理然后交由Elasticsearch存储kibana对日志进行可视化处理。 5、部署ELKLogstash作为日志收集器 ELK Elasticsearch 集群部署在Node1、Node2节点上操作 环境准备#关闭防火墙 systemctl stop firewalld setenforce 0#设置Java环境 java -version更改主机名、配置域名解析Node1节点192.168.190.100 hostnamectl set-hostname node1 su echo 192.168.190.100 node1 /etc/hosts echo 192.168.190.200 node2 /etc/hostsNode2节点192.168.190.200 hostnamectl set-hostname node2 su echo 192.168.190.100 node1 /etc/hosts echo 192.168.190.200 node2 /etc/hosts Apache节点192.168.190.101 hostnamectl set-hostname apache su部署 Elasticsearch 软件安装elasticsearch—rpm包 #上传elasticsearch-6.7.2.rpm到/opt目录下 cd /opt rpm -ivh elasticsearch-6.7.2.rpm修改elasticsearch主配置文件 cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak vim /etc/elasticsearch/elasticsearch.yml --17--取消注释指定集群名字 cluster.name: my-elk-cluster --23--取消注释指定节点名字Node1节点为node1Node2节点为node2 node.name: node1 node.master: true #是否master节点false为否 node.data: true #是否数据节点false为否 --33--取消注释指定数据存放路径 path.data: /var/lib/elasticsearch --37--取消注释指定日志存放路径 path.logs: /var/log/elasticsearch --43--取消注释避免es使用swap交换分区 bootstrap.memory_lock: true --55--取消注释设置监听地址0.0.0.0代表所有地址 network.host: 0.0.0.0 --59--取消注释ES 服务的默认监听端口为9200 http.port: 9200 #指定es集群提供外部访问的接口 transport.tcp.port: 9300 #指定es集群内部通信接口 --68--取消注释集群发现通过单播实现指定要发现的节点 discovery.zen.ping.unicast.hosts: [192.168.190.100:9300, 192.168.190.200:9300]es 性能调优参数 需重启生效 #优化最大内存大小和最大文件描述符的数量 vim /etc/security/limits.conf ......soft nofile 65536 hard nofile 65536 soft nproc 32000 hard nproc 32000 soft memlock unlimited hard memlock unlimitedvim /etc/systemd/system.conf DefaultLimitNOFILE65536 DefaultLimitNPROC32000 DefaultLimitMEMLOCKinfinity优化elasticsearch用户拥有的内存权限 由于ES构建基于lucene, 而lucene设计强大之处在于lucene能够很好的利用操作系统内存来缓存索引数据以提供快速的查询性能。lucene的索引文件segements是存储在单文件中的并且不可变对于OS来说能够很友好地将索引文件保持在cache中以便快速访问因此我们很有必要将一半的物理内存留给lucene ; 另一半的物理内存留给ESJVM heap )。所以 在ES内存设置方面可以遵循以下原则 1.当机器内存小于64G时遵循通用的原则50%给ES50%留给操作系统供lucene使用 2.当机器内存大于64G时遵循原则建议分配给ES分配 4~32G 的内存即可其它内存留给操作系统供lucene使用vim /etc/sysctl.conf #一个进程可以拥有的最大内存映射区域数参考数据分配 2g/2621444g/41943048g/8388608 vm.max_map_count262144sysctl -p sysctl -a | grep vm.max_map_count启动elasticsearch是否成功开启 systemctl start elasticsearch.service systemctl status elasticsearch.service查看节点信息 浏览器访问 http://192.168.190.100:9200 、 http://192.168.190.200:9200 查看节点 Node1、Node2 的信息。浏览器访问 http://192.168.190.100:9200/_cluster/health?pretty 、 http://192.168.190.200:9200/_cluster/health?pretty查看群集的健康情况可以看到 status 值为 green绿色 表示节点健康运行。#使用上述方式查看群集的状态对用户并不友好可以通过安装 Elasticsearch-head 插件可以更方便地管理群集。安装 Elasticsearch-head 插件 Elasticsearch 在 5.0 版本后Elasticsearch-head 插件需要作为独立服务进行安装需要使用npm工具NodeJS的包管理工具安装。 安装 Elasticsearch-head 需要提前安装好依赖软件 node 和 phantomjs。 node是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 phantomjs是一个基于 webkit 的JavaScriptAPI可以理解为一个隐形的浏览器任何基于 webkit 浏览器做的事情它都可以做到。编译安装 node #上传软件包 node-v8.2.1.tar.gz 到/opt yum install gcc gcc-c make -ycd /opt tar zxvf node-v8.2.1.tar.gzcd node-v8.2.1/ ./configure make make install安装 phantomjs #上传软件包 phantomjs-2.1.1-linux-x86_64.tar.bz2 到 cd /opt tar jxvf phantomjs-2.1.1-linux-x86_64.tar.bz2 cd /opt/phantomjs-2.1.1-linux-x86_64/bin cp phantomjs /usr/local/bin安装 Elasticsearch-head 数据可视化工具 #上传软件包 elasticsearch-head-master.zip 到/opt cd /opt unzip elasticsearch-head-master.zip cd /opt/elasticsearch-head/ npm install //安装依赖包修改 Elasticsearch 主配置文件 vim /etc/elasticsearch/elasticsearch.yml ...... --末尾添加以下内容-- http.cors.enabled: true #开启跨域访问支持默认为 false http.cors.allow-origin: * #指定跨域访问允许的域名地址为所有systemctl restart elasticsearch启动 elasticsearch-head 服务 #必须在解压后的 elasticsearch-head 目录下启动服务进程会读取该目录下的 gruntfile.js 文件否则可能启动失败。 cd /usr/local/src/elasticsearch-head/ npm run start 通过 Elasticsearch-head 查看 Elasticsearch 信息 通过浏览器访问 http://192.168.190.100:9100/ 地址并连接群集。如果看到群集健康值为 green 绿色代表群集很健康。插入索引 #通过命令插入一个测试索引索引为 index-demo类型为 test。 curl -X PUT localhost:9200/index-demo/test/1?prettypretty -H content-Type: application/json -d {user:zhangsan,mesg:hello world} //输出结果如下 { _index : index-demo, _type : test, _id : 1, _version : 1, result : created, _shards : { total : 2, successful : 2, failed : 0 }, created : true }浏览器访问 http://192.168.190.100:9100/ 查看索引信息可以看见索引默认被分片5个并且有一个副本。 点击“数据浏览”会发现在node1上创建的索引为 index-demo类型为 test 的相关信息。ELK Logstash 部署在 Apache 节点上操作 更改主机名 hostnamectl set-hostname apache关闭防火墙 systemctl stop firewalld setenforce 0安装Apahce服务httpd yum -y install httpd systemctl start httpd安装logstash #上传软件包 logstash-6.7.2.rpm 到/opt目录下 cd /opt rpm -ivh logstash-6.7.2.rpm systemctl start logstash.service systemctl enable logstash.service ln -s /usr/share/logstash/bin/logstash /usr/local/bin/使用 Logstash 将信息写入 Elasticsearch 中 logstash -e input { stdin{} } output { elasticsearch { hosts[192.168.190.100:9200] } }cd /etc/logstash/conf.d/ vim system.confinput {file{path /var/log/messagestype systemstart_position beginning} } output {elasticsearch { hosts [192.168.190.100:9200,192.168.190.200:9200] index system-%{YYYY.MM.dd} } } chmod r /var/log/messages #让 Logstash 可以读取日志logstash -f system.conf浏览器访问 http://192.168.190.100:9100/ 查看索引信息ELK Kiabana 部署在 Node1 节点上操作 安装 Kiabana #上传软件包 kibana-6.7.2-x86_64.rpm 到/opt目录 cd /opt rpm -ivh kibana-6.7.2-x86_64.rpm设置 Kibana 的主配置文件 vim /etc/kibana/kibana.yml --2--取消注释Kiabana 服务的默认监听端口为5601 server.port: 5601 --7--取消注释设置 Kiabana 的监听地址0.0.0.0代表所有地址 server.host: 0.0.0.0 --28--取消注释配置es服务器的ip如果是集群则配置该集群中master节点的ip elasticsearch.url: [http://192.168.80.10:9200,http://192.168.80.11:9200] --37--取消注释设置在 elasticsearch 中添加.kibana索引 kibana.index: .kibana --96--取消注释配置kibana的日志文件路径需手动创建不然默认是messages里记录日志 logging.dest: /var/log/kibana.log创建日志文件启动 Kibana 服务 touch /var/log/kibana.log chown kibana:kibana /var/log/kibana.logsystemctl start kibana.service systemctl status kibana.servicenetstat -natp | grep 5601将 Apache 服务器的日志访问的、错误的添加到 Elasticsearch 并通过 Kibana 显示 vim /etc/logstash/conf.d/apache_log.conf input {file{path /etc/httpd/logs/access_logtype accessstart_position beginning}file{path /etc/httpd/logs/error_logtype errorstart_position beginning} } output {if [type] access {elasticsearch {hosts [192.168.190.100:9200,192.168.190.200:9200]index apache_access-%{YYYY.MM.dd}}}if [type] error {elasticsearch {hosts [192.168.190.100:9200,192.168.190.200:9200]index apache_error-%{YYYY.MM.dd}}} } cd /etc/logstash/conf.d/ logstash -f apache_log.conf浏览器访问 http://192.168.190.100:9100 查看索引是否创建FilebeatELK 部署 在 Node1 节点上操作 1安装 Filebeat #上传软件包 filebeat-6.7.2-linux-x86_64.tar.gz 到/opt目录 tar zxvf filebeat-6.7.2-linux-x86_64.tar.gz mv filebeat-6.7.2-linux-x86_64/ /usr/local/filebeat设置 filebeat 的主配置文件 cd /usr/local/filebeatvim filebeat.yml filebeat.inputs:type: log #指定 log 类型从日志文件中读取消息 enabled: true paths:/var/log/messages #指定监控的日志文件/var/log/*.log tags: [sys] #设置索引标签 fields: #可以使用 fields 配置选项设置一些参数字段添加到 output 中service_name: filebeatlog_type: syslogfrom: 192.168.80.13
http://www.huolong8.cn/news/450097/

相关文章:

  • 网站备案信息可以改吗西部数码 网站管理
  • 城市建设管理网站要怎么做网络推广
  • 网站建设管理招聘竞争对手网站
  • 温岭网站建设制作怎么制作代码
  • 商派商城网站建设方案怎么在百度做公司网站
  • php怎么做网站快西安企业建站系统模板
  • 建设商务网站公司商务网站制作公司
  • 惠州做网站好的公司深圳营销型网站建设报价
  • 网站做集群html类似wordpress
  • 培训网站开发机构秋林 做网站
  • 广东网站备案要求html可以用什么软件写
  • 网站关键词库如何做wordpress兼容html5
  • 网站建设与制作区别建设视频网站需要什么知识
  • 高清网站推广免费下载网站模板怎么弄
  • 低价自适应网站建设优化建站放射科网站建设
  • 昆明网站建设kmdtkj湖北住房城乡建设厅网站首页
  • 青岛做商城网站广州公司营销型网站建设
  • 中考网络应用服务平台官网荆州seo优化
  • 微网站开发一般费用多少钱便宜购 网站建设
  • 有没有做微场景的网站禹州做网站的
  • 免费网站建站排名国家城乡住房建设部网站
  • 删除百度收录的网站网站会员和discuz会员同步
  • 网站空间多少钱一年万荣网站建设
  • 罗湖附近公司做网站建设哪家效益快动漫设计与制作学校
  • 江苏省电力建设一公司网站做一个网站维护多少钱
  • 企业网站建设需要提供什么材料网站放假通知
  • 中国建设手机银行网站专业网站设计是什么
  • 中国网站排名网官网centos7搭建wordpress
  • 30岁转行做网站设计做网站推广的工资
  • 网站建设简称什么建设银行租房网站首页