怎么才能找到一个人半天到57.58级

当前位置:
>>>学校从7月5日开始放假,到9月1日开学,假期[]A.58天B.57天C.56天..
学校从7月5日开始放假,到9月1日开学,假期
A.58天&&&B.57天&&&&C.56天&&&D.55天
题型:单选题难度:偏易来源:专项题
马上分享给同学
据魔方格专家权威分析,试题“学校从7月5日开始放假,到9月1日开学,假期[]A.58天B.57天C.56天..”主要考查你对&&年,月,日&&等考点的理解。关于这些考点的“档案”如下:
现在没空?点击收藏,以后再看。
因为篇幅有限,只列出部分考点,详细请访问。
年,月,日
时间单位:日(天)、星期、月、年、世纪。月:大月(31天):一月、三月、五月、七月、八月、十月、十二月;小月:四月、六月、九月、十一月;二月:平年28天,闰年29天。季度:一年有四个季度:1月、2月、3月属于第一季度;4月、5月、6月属于第二季度;7月、8月、9月属于第三季度;10月、11月、12月属于第四季度。年:闰年:通常公历年是4的倍数的是闰年;公历年份是整百数的,须是400的倍数,闰年有366天。平年:通常公历年不是4的倍数的是平年;公历年份是整百数的,不是400的倍数的是平年,平年有365天。时间单位之间的进率:世纪年月;1日(天)=24小时;1星期=7天。闰年的判断方法:公历年份可被4整除为闰年,但是正百的年数必须是可以被400整除的才是闰年。
发现相似题
与“学校从7月5日开始放假,到9月1日开学,假期[]A.58天B.57天C.56天..”考查相似的试题有:
100173610682332400855014935452156一票难求到暴跌67%,奥迪威撤回IPO套牢员工、投资者,创始股东已套现7000多万!
来源:犀牛之星
  3月9日,因IPO终止审查,奥迪威(832491)正式复牌。许是目睹前几日博汇股份复牌暴跌后“受了刺激”,昨日奥迪威并未发布复牌提示性公告,今早“悄悄”复牌。  但未发公告就复牌的奥迪威仍没逃过“回锅肉”的“厄运”。今日9:30,奥迪威迎来第一次竞价撮合,但并未产生交易,当时盘面还竟报出1.88元/股的低价。  零成交的僵局在第二次竞价撮合时被打破,截至今日收盘,奥迪威报收6.35元/股,以67.23%的跌幅领跌今日竞价交易股。  这一场暴跌,300多名股东被深套其中。深扒背后,业绩下滑、撤回IPO、创始股东减持套现7000多万,昔日的明星股,到底怎么了?  曾一票难求 如今300多名股东被套  如果把时间轴拨回到2017年初,可能谁也预料不到奥迪威会有今日的境遇。  资料显示,奥迪威主要从事敏感元器件和传感器及相应模组的研发、设计、生产和销售,自称是国内超声波传感器最大制造商,此前曾获得“2012年福布斯中国最佳潜力企业”称号。  据悉,传感器处于产业链的上游,是整个物联网产业中需求量最大、最基础的环节,随着物联网智能终端与整机市场稳定发展、智能电子产品不断涌现的带动下,传感器产品国产化需求不断增大,也为奥迪威的发展带来了更多机遇。  从业绩表现来看,奥迪威对这些机遇做出了很好的回应。数据显示,2015年、2016年,奥迪威分别实现营收2.67亿元、2.89亿元;实现净利润4956.48万元、5895.42万元。  日,奥迪威更是发布上市辅导公告,正式向IPO发起冲刺。  犀牛君从数家了解到,2017年初的奥迪威在投资圈可谓是香饽饽,数十家知名投资机构争相向其伸出橄榄枝。  “那时它们家的老股真的是一票难求,同时跟我们在抢的至少有四十多家机构。”圈内一位知名投资人向犀牛君透露,当时奥迪威的估值已经高达20亿,很多机构甚至连TS都不需要现场直接成交,“我们当时想投1个亿都投不进去,太抢手了。”  就连达晨也对他们“宠爱有加”,据上述知情人士透露,当初他曾试图与达晨创投交涉高价购买达晨持有的奥迪威老股,却遭婉拒,可见达晨创投对奥迪威的信心有多足。  2010年12月,达晨通过增资的方式入场。彼时,达晨合计出资2700万元,共获得奥迪威544.70万股股票。据股转系统资料显示,达晨先后获得奥迪威分派的2014年度、2015年度和2016年度红利,合计约为350.90万元。  截至日,达晨仍持有奥迪威股票1361.34万股,以今日收盘价6.35元/股来算,合计市值约为8644.51万元。整体来说,达晨目前账面仍浮盈6295.40万元。  不过,奥迪威的大多数股东在这场复牌暴跌之下,苦不堪言。  日,奥迪威发公告称,IPO申请获得证监会受理。此时,其股东户数已从日时的173户,增加到了344户,足足增加了近一倍。  据统计,日至日,奥迪威的成交均价为16.71元/股,与今日早盘报收的6.41元/股对比,期间买入的集邮党们的平均账面浮亏或已高达60%。  被套牢的,还包括奥迪威的员工。2016年8月,奥迪威曾以10.5元/股的价格向35名核心员工发行股份。以今日收盘价来看,员工也被套了。  业绩下滑 创始股东半年套现7000多万  事实上,奥迪威这次撤回IPO申请与它去年上半年业绩下滑不无关系。据了解,2017年上半年,奥迪威实现营收1.21亿元,同比下降6.17%;实现净利润979.58万元,较上年同期减少59.42%。  对于业绩下滑,奥迪威在半中称主要受小排量乘用车购置税税率上涨,以及补贴下降的影响。在下游趋向消化库存、订单需求减缓的情况下,奥迪威汽车电子类营收在2017上半年下降了33%。  奥迪威2016年年报显示,汽车电子收入1.51亿元,占其总营收额52.42%。汽车电子对奥迪威的贡献程度可想而知。另一方面,其新产品订单尚未形成规模,不足以抵消汽车电子收入的降幅,从而导致了奥迪威2017年上半年业绩大幅下滑。  除了业绩暴跌,奥迪威创始股东不断减持也为其蒙上了一层阴影。  据犀牛君统计,2016年12月至2017年5月期间,奥迪威创始股东姜德星陆续进行了8次减持,合计减持股份479.60万股,共套现7180.75万元。  值得注意的是,目前姜德星仍持有奥迪威股份699.07万股,占总股本比例为6.40%,为奥德威第三大股东,减持前原为第二大股东。  奥迪威2017年预计3月26日披露,去年业绩如何,犀牛之星也将持续跟进。
责任编辑:Robot&RF13015
机会早知道
已有&0&条评论
最近访问股
以下为您的最近访问股
服务日期05月05日-05月05日
¥5000348人购买
服务日期03月24日-03月24日
¥1200191人购买
服务日期03月20日-03月20日
¥1888170人购买
服务日期06月01日-06月01日
¥1268115人购买
服务日期05月01日-05月01日
¥158098人购买
服务日期03月16日-03月16日
¥168895人购买
服务日期06月30日-07月31日
¥99895人购买
服务日期04月28日-04月28日
¥188888人购买
服务日期06月08日-07月07日
¥108886人购买
服务日期06月06日-06月06日
¥88874人购买
服务日期03月15日-03月15日
¥61860人购买
服务日期03月18日-03月18日
¥88842人购买
服务日期06月22日-07月31日
¥100827人购买
服务日期06月09日-06月09日
¥80027人购买
服务日期06月21日-07月31日
¥28823人购买
个股净流入
个股净流出
证券名称最新价格涨跌幅净流入金额(万)
13.689.97%14.998.62%89354.5333.622.88%80584.365.872.80%57514.42
<span class="mh-title"
style="color: #小时点击排行
目标涨幅最大
目标股票池
股票简称投资评级最新价目标价
买入17.6522.25买入29.3035.00买入29.3030.00买入57.27--【图文】2018春沪科版七年级数学下册同步训练57-58_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
您可以上传图片描述问题
联系电话:
请填写真实有效的信息,以便工作人员联系您,我们为您严格保密。
2018春沪科版七年级数学下册同步训练57-58
总评分4.1|
浏览量963412
用知识赚钱
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢7×24小时QQ咨询
游戏服务器
光之同盟【牧师 女 人类 57.76级 】死亡牧师57.76刷一天就58,战功2800,带云朵。
大家都在看
浏览:34次
保障服务:
◆◆该帐号注册资料已经过5173专业审核,信息属实。
◆◆购买保险,如有商品被找回、封号等,保险公司将对您赔付。
该商品已停止出售,您可以选择。
5173资料初步验证结果
仅针对本次验证,实际情况请以交易验证为准
5173帐号点评
此帐号已绑定手机,请在交易时联系客服替换手机,建议在交易成功后通过各种绑定来提高帐号的安全性数
帐号安全级别
星级代表帐号注册资料的完善程度,资料越齐全,帐号安全程度越高。
购买帐号如何不被卖家找回?
1、建议您挑选大卖家提供的帐号,如五星大卖家经过5173认证,帐号安全不易被找回。2、挑选带有安全保障服务的帐号…
找不到客服或者客服不在线怎么办?
1、在您下单购买后,可以自主选择一位客服为您服务;如果中断了流程您还可以进入我的5173→我是买家→我购买的商品 …
什么是过户?
1、过户就是将卖家帐号的注册邮箱、身份证等信息更改为买家资料的一种服务。2、您只需要购买时选择过户服务…
如何验证真假客服?
1、在5173首页“真假客服验证”处,输入客服QQ号即可验证客服真假;真客服QQ必定为纯数字,如带有下划线…
其它信息角色模式:死亡战功:2800其他描述:55武器差4000W
免责声明:5173仅提供平台服务,商品信息真实性及合法性由卖家自行负责,购买即表示您同意。购买帐号后,请您立即修改注册资料,以免被找回。
商品已成功加入收藏!
您已收藏过该商品,请勿重复添加。
很抱歉,购物车已满。
购物车最多能放置 20 件商品,请您
后再添加。亿级PV的ELK集群实践之路
时间: 19:22:07
&&&& 阅读:25
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&前言
笔者多年前便维护过ELK,但是由于站点日志流量及服务器数量并不是很多基本都是单机搞定。
然而光Web服务器就400+,Nginx日志大小每天50G+,加上其他业务系统日志,之前单机ELK显然不足以支撑现有的业务场景。
目前的业务采用阿里云+自建机房的模式,阿里云做为线上业务,自建机房做为灾备中心,尽可能的将线上日志实时传输到自建机房进行数据分析。
1.日志集中处理
笔者一开始是在每台机器通过filebeat+logstash的方式将日志进行收集和处理后发送到elasticsearch,logstash本身java应用比较耗费内存,而且维护成本较高。
后来采用rsyslog的方式将所有服务器存储到单台阿里云服务器,再通过rsyslog转发到自建机房,基本实现了毫秒级的同步。
起初是通过Logstash直接往Elasticsearch存储日志,一旦遇到需要重启或者维护Elasticsearch集群的时候这时日志将无处安放,难免造成日志丢失.
引入Redis后即便elasticsearch在维护期间也可以先将数据缓存下来。将Logstash-shipper和Logstash-indexer划清了界限。
&3.集群多实例
自建机房预备了3台内存为256G服务器部署ELK集群,但是官方建议jvm的内存不要超过32G,大概原因是一旦jvm设置超过32G将会采用不同的算法,这种算法会耗费更多系统资源。
比如设置为48G的情况下性能甚至不及20G,具体解释参考官方链接。
https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html
所以为了不浪费资源我在每台机器上部署了两个Elasticsearch节点,共6个node.
4.收集日志类型
nginx-access.log
nginx-error.log
php-error.log
php-slow.log
action.log 前面几个都好理解,这个日志是开发采集用户后台管理操作关键行为的json格式日志。
5.服务器规划
主机名和公网IP均做了化名处理.ELK stak3台物理机跑了6个Elasticsearch集群node,6个logstash-indexer,1个logstash-shipper,1个redis,1个kibana,1个nginx.
rsyslog-relay
8core 16G 1T
收集所有服务器所需日志,集中存储转发。
系统为centos7.3
16core 256G 9.8T
rsyslog-server
logstash-shipper
elk01-indexer
elk01-indexer2
elk01-elasticsearch
elk01-elasticsearch2
3台服务器配置均相同
系统均为centos7.3
磁盘为12块1.8T 10k的sas盘,做Raid 0+1.
16core 256G 9.8T
elk02-indexer
elk02-indexer2
elk02-elasticsearch
elk02-elasticsearch2
16core 256G 9.8T
elk03-indexer
elk03-indexer2
elk03-elasticsearch
elk03-elasticsearch2
将日志集中存储到本地机房,Centos7.3自带的rsyslog为V7版本,先升级到V8。因为V8的rsyslog-relp有日志重传机制,可防止数据丢失。
卸载原有版本,添加v8 yum源,安装新版本。
[root@rsyslog-relay ~]# rpm -qa|grep rsyslog
rsyslog-<span style="color: #.4.<span style="color: #-<span style="color: #.el7.x86_64[root@rsyslog-relay ~]# yum remove -y rsyslog-<span style="color: #.4.<span style="color: #-<span style="color: #.el7.x86_64vim /etc/yum.repos.d/rsyslog_v8.repo
[rsyslog_v8]
baseurl = http://rpms.adiscon.com/v8-stable/epel-$releasever/$basearch
enabled = <span style="color: #
gpgcheck = <span style="color: #
gpgkey = http://rpms.adiscon.com/RPM-GPG-KEY-Adiscon
name = Rsyslog version <span style="color: # repository[root@rsyslog-relay ~]#yum install rsyslog rsyslog-relp -y
rsyslog客户端配置
nginx的文件名根据业务区分为后台管理访问日志,前台访问日志,支付日志,但是根据类型打上了nginx-access和nginx-error两个标签。
配置文件路径为/etc/rsyslog.conf
1 $ModLoad imuxsock
2 $ModLoad imjournal
3 $ModLoad imfile
4 $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
5 $IncludeConfig /etc/rsyslog.d/*.conf
6 *.mail.authpriv.cron.none
/var/log/messages
7 authpriv.*
/var/log/secure
-/var/log/maillog
/var/log/cron
<span style="color: # *.emerg
:omusrmsg:*
<span style="color: # uucp,news.crit
/var/log/spooler
<span style="color: # local7.*
/var/log/boot.log
<span style="color: #
<span style="color: # ##########Start Nginx Log File#################
<span style="color: # $InputFileName /var/log/nginx/access-admin.log
<span style="color: # $InputFileTag site-web1-nginx-access:
<span style="color: # $InputFileStateFile site-web1-nginx-access
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $InputFileName /var/log/nginx/error-admin.log
<span style="color: # $InputFileTag site-web1-nginx-error:
<span style="color: # $InputFileStateFile site-web1-nginx-error
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $InputFileName /var/log/nginx/access-frontend.log
<span style="color: # $InputFileTag site-web1-nginx-access:
<span style="color: # $InputFileStateFile site-web1-nginx-access
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $InputFileName /var/log/nginx/error-frontend.log
<span style="color: # $InputFileTag site-web1-nginx-error:
<span style="color: # $InputFileStateFile site-web1-nginx-error
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $InputFileName /var/log/nginx/access-pay.log
<span style="color: # $InputFileTag site-web1-nginx-access:
<span style="color: # $InputFileStateFile site-web1-nginx-access
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $InputFileName /var/log/nginx/error-pay.log
<span style="color: # $InputFileTag site-web1-nginx-error:
<span style="color: # $InputFileStateFile site-web1-nginx-error
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: # ######################End Of Nginx Log File################
<span style="color: #
<span style="color: # ######################Start Of Action Log File#############
<span style="color: # $InputFileName /var/log/php-fpm/action_log.log
<span style="color: # $InputFileTag site-web1-action:
<span style="color: # $InputFileStateFile site-web1-action
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: # ######################End Of Action Log File###############
<span style="color: #
<span style="color: # #####################Start PHP Log File###################
<span style="color: # $InputFileName /var/log/php-fpm/www-slow.log
<span style="color: # $InputFileTag site-web1-php-slow:
<span style="color: # $InputFileStateFile site-web1-php-slow
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: # $InputFileReadMode 2
<span style="color: #
<span style="color: # $InputFileName /var/log/php-fpm/error.log
<span style="color: # $InputFileTag site-web1-php-error:
<span style="color: # $InputFileStateFile site-web1-php-error
<span style="color: # $InputFileSeverity debug
<span style="color: # $InputRunFileMonitor
<span style="color: # $InputFilePollInterval 1
<span style="color: #
<span style="color: # $WorkDirectory /var/lib/rsyslog
<span style="color: # $ActionQueueType LinkedList
<span style="color: # $ActionQueueFileName srvrfwd
<span style="color: # $ActionResumeRetryCount -1
<span style="color: # $ActionQueueSaveOnShutdown on
<span style="color: # ####################End Of PHP log File#####################
<span style="color: #
<span style="color: # ###################Start Log Forward##############################################
<span style="color: # if $programname == ‘site-web1-nginx-access‘ then @@阿里云rsyslog服务器内网地址:514
<span style="color: # if $programname == ‘site-web1-nginx-error‘ then @@阿里云rsyslog服务器内网地址:514
<span style="color: # if $programname == ‘site-web1-php-slow‘ then @@阿里云rsyslog服务器内网地址:514
<span style="color: # if $programname == ‘site-web1-php-error‘ then @@阿里云rsyslog服务器内网地址:514
<span style="color: # if $programname == ‘site-web1-action‘ then @@阿里云rsyslog服务器内网地址:514
<span style="color: # ###################End Of log Forward##############################################
rsyslog阿里云中继服务器配置(rsyslog-relay)
1.主配置文件路径为/etc/rsyslogconf,每台服务器对应的配置文件通过include的方式放置在
/etc/rsyslog.d/,文件名以.conf结尾,对应主配置文件的第7行。
1 $ModLoad omrelp
2 $ModLoad imudp
3 $UDPServerRun 514
4 $ModLoad imtcp
5 $InputTCPServerRun 514
6 $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
7 $IncludeConfig /etc/rsyslog.d/*.conf
8 $umask 0022
9 *.mail.authpriv.cron.none
/var/log/messages
<span style="color: # authpriv.*
/var/log/secure
<span style="color: # mail.*
-/var/log/maillog
<span style="color: # cron.*
/var/log/cron
<span style="color: # *.emerg
:omusrmsg:*
<span style="color: # uucp,news.crit
/var/log/spooler
<span style="color: # local7.*
/var/log/boot.log
<span style="color: # *.* :omrelp:本地机房rsyslog服务器:20514
2.每台服务器配置文件,如site-web1的示例如下:
1 $template site-web1-nginx-access,"/data/rsyslog/nginx/site/site-web1-nginx-access.log"
2 $template site-web1-nginx-error,"/data/rsyslog/nginx/site/site-web1-nginx-error.log"
3 $template site-web1-php-slow,"/data/rsyslog/php/site/site-web1-php-slow.log"
4 $template site-web1-php-error,"/data/rsyslog/php/site/site-web1-php-error.log"
5 $template site-web1-action,"/data/rsyslog/php/site/site-web1-action.log"
7 if $programname == ‘site-web1-nginx-access‘ then ?site-web1-nginx-access
8 if $programname == ‘site-web1-nginx-error‘ then ?site-web1-nginx-error
9 if $programname == ‘site-web1-php-slow‘ then ?site-web1-php-slow
<span style="color: # if $programname == ‘site-web1-php-error‘ then ?site-web1-php-error
<span style="color: # if $programname == ‘site-web1-action‘ then ?site-web1-action
本地机房rsyslog配置(elk01)
/etc/rsyslog.conf主配置文件如下,另外/etc/rsyslog.d/里面的站点配置文件跟中继服务器里面的一模一样。
1 $ModLoad imrelp
2 $ModLoad omrelp
3 $InputRELPServerRun 20514
4 $WorkDirectory /var/lib/rsyslog
5 $DirCreateMode 0755
6 $FileCreateMode 0644
7 $FileOwner logstash
8 $DirOwner logstash
9 $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
<span style="color: # $IncludeConfig /etc/rsyslog.d/*.conf
<span style="color: # $OmitLocalLogging on
<span style="color: # $IMJournalStateFile imjournal.state
<span style="color: # *.mail.authpriv.cron.none
/var/log/messages
<span style="color: # authpriv.*
/var/log/secure
<span style="color: # mail.*
-/var/log/maillog
<span style="color: # cron.*
/var/log/cron
<span style="color: # *.emerg
:omusrmsg:*
<span style="color: # uucp,news.crit
/var/log/spooler
<span style="color: # local7.*
/var/log/boot.log
<span style="color: # $PrivDropToGroup logstash
至此所有服务器日志都通过rsyslog集中收集了.
均是通过yum方式安装的最新6.x版本,根据规划elk01上安装的nginx及elk02上安装的redis均是采用yum方式安装,就不在一一赘述。
elasticsearch yum源
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
autorefresh=1
type=rpm-md
logstash yum源
[logstash-<span style="color: #.x]
name=Elastic repository for <span style="color: #.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=<span style="color: #
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=<span style="color: #
autorefresh=<span style="color: #
type=rpm-md
kibana yum源
[kibana-<span style="color: #.x]
name=Kibana repository for <span style="color: #.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=<span style="color: #
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=<span style="color: #
autorefresh=<span style="color: #
type=rpm-md
logstash-shipper配置
logstash安装后配置文件路径默认为/etc/logstash,拷贝一份做为logstash-shipper的配置文件目录.
cp -r /etc/logstash /etc/logstash-shipperchown -R logstash.logstash /etc/logstash-shipper
主配置文件/etc/logstash-shipper/logstash.yml
path.data: /var/lib/logstash-shipper
path.config: /etc/logstash-shipper/conf.d
path.logs: /var/log/logstash/shipper
创建相关目录并授权予logstash用户
mkdir -p /var/lib/logstash-shipper && chown logstash.logstash /var/lib/logstash-shippermkdir -p /var/log/logstash/shipper && chown logstash.logstash /var/log/logstash/shipper
站点配置文件/etc/logstash-shipper/conf.d/shipper.conf
截至目前站点配置有3千多行,全部贴出来略显冗余,这里挑一个站的配置供参考。
path =& "/data/rsyslog/php/site/site-*-php-error.log"
type =& "site-php-error"
sincedb_path =& "/data/sincedb/site"
path =& "/data/rsyslog/php/site/site-*-php-slow.log"
type =& "site-php-slow"
sincedb_path =& "/data/sincedb/site"
path =& "/data/rsyslog/nginx/site/site-*-nginx-error.log"
type =& "site-nginx-error"
sincedb_path =& "/data/sincedb/site"
path =& "/data/rsyslog/nginx/site/site-*-nginx-access.log"
type =& "site-nginx-access"
sincedb_path =& "/data/sincedb/site"
path =& "/data/rsyslog/php/site/site*action.log"
type =& "site-action"
sincedb_path =& "/data/sincedb/site"
host =& "elk02内网地址"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "server-log"
服务器启动脚本:/etc/systemd/system/logstash-shipper.service
Description=logstash-shipper
Type=simple
User=logstash
Group=logstash
# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
# Prefixing the path with ‘-‘ makes it try to load, but if the file doesn‘t
# exist, it continues onward.
EnvironmentFile=-/etc/default/logstash
EnvironmentFile=-/etc/sysconfig/logstash
ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash-shipper"
Restart=always
WorkingDirectory=/
Nice=<span style="color: #
LimitNOFILE=<span style="color: #384
WantedBy=multi-user.target
logstash-indexer配置
每台服务器均跑了两个indexer
logstash-indexer1
拷贝配置文件目录
cp -r /etc/logstash /etc/logstash-indexerchown -R logstash.logstash /etc/logstash-indexer
主配置文件/etc/logstash-indexer/logstash.yml
path.data: /var/lib/logstash
path.config: /etc/logstash-indexer/conf.d
path.logs: /var/log/logstash/indexer
创建相关目录并授权予logstash用户
mkdir -p /var/log/logstash/indexer && chown logstash.logstash /var/log/logstash/indexer
每个日志类型都对应了一个配置文件,放置在/etc/logstash-indexer/conf.d
/etc/logstash-indexer/conf.d
├── action.conf
程序自定义的用户行为日志
├── nginx_access.conf
nginx访问日志
├── nginx_error.conf
nginx错误日志
├── php_error.conf
php错误日志
└── php_slow.conf
php-slow日志
各配置文件如下
action.conf
host =& "elk02内网ip"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "kosun-log"
if [type] =~ ‘^.+action‘ {
gsub =& [ "message", "^.+-action: ", "" ]
source =& "message"
match =& ["time", "yyyy-MM-dd HH:mm:ss"]
target =& "@timestamp"
"locale" =& "en"
timezone =& "Asia/Shanghai"
remove_field =& ["time"]
if [type] =~ ‘^.+action‘ {
elasticsearch {
hosts =& ["elasticsearch:9200"]
index =& "logstash-action-%{+YYY.MM.dd}"
nginx-access
host =& "elk02内网地址"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "kosun-log"
if [type] =~ ‘^.+nginx-access‘ {
fingerprint {
method =& "SHA1"
=& "^.+nginx-access"
match =& [ "message" , "%{COMBINEDAPACHELOG} %{DATA:msec} %{QUOTEDSTRING:x_forward_ip} %{DATA:server_name} %{DATA:request_time} %{DATA:upstream_response_time} %{DATA:scheme} %{GREEDYDATA:extra_fields}" ]
overwrite =& [ "message" ]
match =& ["timestamp", "dd/MMM/yyyy:HH:mm:ss.SSS Z"]
#target =& "@timestamp"
"locale" =& "en"
timezone =& "Asia/Shanghai"
gsub =& ["agent", "\"", ""]
gsub =& ["referrer", "\"", ""]
gsub =& ["x_forward_ip", "\"", ""]
gsub =& ["extra_fields", "\"", ""]
if [extra_fields] =~ /^{.*}$/ {
gsub =& ["extra_fields", "\"","",
"extra_fields", "\\x0A","",
"extra_fields", "\\x22",‘\"‘,
"extra_fields", "(\\)",""
source =& "extra_fields"
target =& "extra_fields_json"
source =& "clientip"
fields =& ["city_name","location"]
if [type] =~ ‘^.+nginx-access‘ {
elasticsearch {
hosts =& ["elasticsearch:9200"]
index =& "logstash-%{type}-%{+YYYY.MM.dd}"
document_type =& "%{type}"
# flush_size =& <span style="color: #000
# idle_flush_time =& <span style="color: #
sniffing =& true
template_overwrite =& true
document_id =& "%{fingerprint}"
nginx-error
host =& "elk02内网地址"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "kosun-log"
if [type] =~ ‘^.+nginx-error‘ {
fingerprint {
method =& "SHA1"
=& "^.+nginx-error"
match =& {
"message" =& [
"(?&timestamp&\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}) \[%{DATA:err_severity}\] (%{NUMBER:pid:int}#%{NUMBER}: \*%{NUMBER}|\*%{NUMBER}) %{DATA:err_message}(?:, client: (?&clientip&%{IP}|%{HOSTNAME}))(?:, server: %{IPORHOST:server})(?:, request: %{QS:request})?(?:, host: %{QS:client_ip})?(?:, referrer: \"%{URI:referrer})?",
"%{DATESTAMP:timestamp} \[%{DATA:err_severity}\] %{GREEDYDATA:err_message}"
match =& ["timestamp" , "YYYY/MM/dd HH:mm:ss"]
"locale" =& "en"
timezone =& "Asia/Shanghai"
remove_field =& [ "timestamp" ]
if [type] =~ ‘^.+nginx-error‘ {
elasticsearch {
hosts =& ["elasticsearch:9200"]
index =& "logstash-nginx-error-%{+YYY.MM.dd}"
document_id =& "%{fingerprint}"
host =& "elk02内网地址"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "kosun-log"
if [type] =~ ‘^.+php-error‘ {
elasticsearch {
hosts =& ["elasticsearch:9200"]
index =& "logstash-php-error-%{+YYY.MM.dd}"
host =& "elk02内网地址"
port =& "<span style="color: #79"
db =& "<span style="color: #"
data_type =& "list"
key =& "kosun-log"
if [type] =~ ‘^.+slow‘ {
multiline {
pattern =& "\[\d{2}-"
negate =& true
what =& "previous"
if [type] =~ ‘^.+slow‘ {
elasticsearch {
hosts =& ["elasticsearch:9200"]
index =& "logstash-php-slow-%{+YYY.MM.dd}"
服务启动脚本/etc/systemd/system/logstash-indexer.service
Description=logstash-indexer
Type=simple
User=logstash
Group=logstash
# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
# Prefixing the path with ‘-‘ makes it try to load, but if the file doesn‘t
# exist, it continues onward.
EnvironmentFile=-/etc/default/logstash
EnvironmentFile=-/etc/sysconfig/logstash
ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash-indexer"
Restart=always
WorkingDirectory=/
LimitNOFILE=16384
WantedBy=multi-user.target
  logstash-indexer2的配置文件一样,只需修改相应的目录和启动脚本即可。
Elasticsearch集群部署
每台服务器跑了两个elasticsearch实例,一个为yum安装,一个为源码包解压。
yum默认安装的配置文件位于/etc/elasticsearch
以elk01为例elasticsearch实例1配置
修改jvm.options里面的内存设置为31g
主配置文件/etc/elasticsearch/elasticsearch.yml
#============================cluster setting==============================
cluster.name:elk
cluster.routing.allocation.same_shard.host: true
#============================node setting=================================
node.name: elk01
node.master: true
node.data: true
#============================path setting=================================
path.data: /data/es-data
path.logs: /var/log/elasticsearch
#============================memory setting===============================
bootstrap.memory_lock: false
#============================network setting==============================
network.host: elk01内网地址
http.port: <span style="color: #00
transport.tcp.port: <span style="color: #00
#============================thread_pool setting==========================
thread_pool.search.queue_size: <span style="color: #000
#============================discovery setting============================
discovery.zen.ping.unicast.hosts: ["elk01:9300", "elk02:9300", "elk03:9300"]
discovery.zen.minimum_master_nodes: <span style="color: #
#============================gateway setting==============================
gateway.recover_after_nodes: <span style="color: #
gateway.recover_after_time: 5m
gateway.expected_nodes: <span style="color: #
indices.recovery.max_bytes_per_sec: 800mb
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: false
xpack.monitoring.enabled: true
xpack.graph.enabled: false
xpack.watcher.enabled: false
创建数据目录并授权
mkdir -p /data/es-data && chown elasticsearch.elasticsearch /data/es-data
服务启动脚本,yum安装自带,无需修改/usr/lib/systemd/system/elasticsearch.service
elk01 elasticsearch实例2配置
该实例是用源码包做的
下载源码包,解压,移动到指定目录,授权
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.2.ziptar xf elasticsearch-6.1.2.zipmv elasticsearch-6.1.2 /usr/local/chown -R elasticsearch.elasticsearch /usr/local/elasticsearch-6.1.2
修改/usr/local/elasticsearch-6.1.2/config/jvm.options 内存设置31g
配置文件/usr/local/elasticsearch-6.1.2/config/elasticsearch.yml
#============================cluster setting==============================
cluster.name: elk
cluster.routing.allocation.same_shard.host: true
#node.max_local_storage_nodes: <span style="color: #
#============================node setting=================================
node.name: elk01-<span style="color: #
node.master: false
node.data: true
#============================path setting=================================
path.data: /data/es-data2
path.logs: /var/log/elasticsearch2
#============================memory setting===============================
bootstrap.memory_lock: false
#============================network setting==============================
network.host: elk01内网ip
http.port: <span style="color: #01
transport.tcp.port: <span style="color: #01
#============================thread_pool setting==========================
thread_pool.search.queue_size: <span style="color: #000
#============================discovery setting============================
discovery.zen.ping.unicast.hosts: ["elk01:9300", "elk02:9300", "elk03:9300"]
discovery.zen.minimum_master_nodes: <span style="color: #
#============================gateway setting==============================
gateway.recover_after_nodes: <span style="color: #
gateway.recover_after_time: 5m
gateway.expected_nodes: <span style="color: #
indices.recovery.max_bytes_per_sec: 800mb
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: false
xpack.monitoring.enabled: true
xpack.graph.enabled: false
xpack.watcher.enabled: false
创建相关目录并授权
mkdir -p /data/es-data2 && chown elasticsearch.elasticsearch /data/es-data2
mkdir -p /var/log/elasticsearch2 elasticsearch.elasticsearch /var/log/elasticsearch2
服务启动脚本/etc/init.d/elasticsearch2
#!/bin/bash
# elasticsearch &summary&
# chkconfig:
<span style="color: #45 <span style="color: # <span style="color: #
# description: Starts and stops a single elasticsearch instance on this system
### BEGIN INIT INFO
# Provides: Elasticsearch
# Required-Start: $network $named
# Required-Stop: $network $named
# Default-Start: <span style="color: # <span style="color: # <span style="color: # <span style="color: #
# Default-Stop: <span style="color: # <span style="color: # <span style="color: #
# Short-Description: This service manages the elasticsearch daemon
# Description: Elasticsearch is a very scalable, schema-free and high-performance search solution supporting multi-tenancy and near realtime search.
### END INIT INFO
# init.d / servicectl compatibility (openSUSE)
if [ -f /etc/rc.status ]; then
. /etc/rc.status
# Source function library.
if [ -f /etc/rc.d/init.d/functions ]; then
. /etc/rc.d/init.d/functions
# Sets the default values for elasticsearch variables used in this script
ES_HOME="/usr/share/elasticsearch2"
MAX_OPEN_FILES=<span style="color: #536
MAX_MAP_COUNT=<span style="color: #2144
ES_PATH_CONF="/etc/elasticsearch2"
PID_DIR="/var/run/elasticsearch2"
# Source the default env file
ES_ENV_FILE="/etc/sysconfig/elasticsearch"
if [ -f "$ES_ENV_FILE" ]; then
. "$ES_ENV_FILE"
exec="$ES_HOME/bin/elasticsearch"
prog="elasticsearch"
pidfile="$PID_DIR/${prog}.pid"
export ES_JAVA_OPTS
export JAVA_HOME
export ES_PATH_CONF
export ES_STARTUP_SLEEP_TIME
lockfile=/var/lock/subsys/$prog
# Ensure that the PID_DIR exists (it is cleaned at OS startup time)
if [ -n "$PID_DIR" ] && [ ! -e "$PID_DIR" ]; then
mkdir -p "$PID_DIR" && chown elasticsearch:elasticsearch "$PID_DIR"
if [ -n "$pidfile" ] && [ ! -e "$pidfile" ]; then
touch "$pidfile" && chown elasticsearch:elasticsearch "$pidfile"
cd $ES_HOME
echo -n $"Starting $prog: "
# if not running, start it up here, usually something like "daemon $exec"
#daemon --user elasticsearch --pidfile $pidfile $exec -p $pidfile -d
su - elasticsearch -c "${exec} -p ${pidfile} -d"
[ $retval -eq <span style="color: # ] && touch $lockfile
return $retval
echo -n $"Stopping $prog: "
# stop it here, often "killproc $prog"
killproc -p $pidfile -d <span style="color: #400 $prog
[ $retval -eq <span style="color: # ] && rm -f $lockfile
return $retval
restart() {
reload() {
force_reload() {
rh_status() {
# run checks to determine if the service is running or use generic status
status -p $pidfile $prog
rh_status_q() {
rh_status &/dev/null <span style="color: #&&<span style="color: #
case "$1" in
rh_status_q && exit <span style="color: #
$<span style="color: #
rh_status_q || exit <span style="color: #
$<span style="color: #
$<span style="color: #
rh_status_q || exit <span style="color: #
$<span style="color: #
force-reload)
force_reload
condrestart|try-restart)
rh_status_q || exit <span style="color: #
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit <span style="color: #
elasticsearch均添加了hosts文件解析到本机内网IP
配置文件/etc/kibana/kibana.yml
egrep -v ‘^$|#‘ /etc/kibana/kibana.yml
server.port: <span style="color: #01
server.host: "<span style="color: #.0.0.0"
elasticsearch.url: "http://elasticsearch:9200"
elasticsearch.requestTimeout: <span style="color: #00000
Nginx server配置
listen <span style="color: #;
server_name 域名;
access_log /var/log/nginx/access-elk.
error_log /var/log/nginx/error-elk.
location ~ /.well-known/acme-challenge {
content_by_lua_block {
auto_ssl:challenge_server()
location / {
return <span style="color: #1 https://$host$request_
listen <span style="color: #3 ssl http2;
server_name 域名;
ssl_certificate_by_lua_block {
auto_ssl:ssl_certificate()
ssl_certificate /etc/nginx/ssl/elk.
ssl_certificate_key /etc/nginx/ssl/elk.
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
ssl_prefer_server_
ssl_session_cache shared:SSL:16m;
ssl_dhparam /etc/nginx/ssl/dhparam.
access_log /var/log/nginx/acess-elk.
error_log /var/log/nginx/error-elk.
allow 开放访问IP段;
location / {
proxy_pass http://elasticsearch:5601;
proxy_set_header Host $
到这里配置部署篇基本已经完成,后续篇幅将介绍日常运维中常见的操作。
比如一键部署脚本,配置增删,批量部署,index,shard,常见操作,性能监控,优化,扩容......
先上个现在集群运行1个星期左右的x-pack监控截图,共采集2,448,834,111条记录,3T数据,日均约3亿条。
这篇博文断断续续大概花了将近1个星期整理完,本来想详细到每行配置文件都加上注解,熟话说万事开头难,好歹在博客园也开了个头了。
&此时网易云音乐随机到一首乔杉唱的《塑料袋》颇有共鸣,突然觉得他是个被喜剧耽误了的胖歌手。标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:https://www.cnblogs.com/david-qing/p/8527811.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!

我要回帖

更多关于 只能升级到ios8才能看 的文章

 

随机推荐