一、背景唯品会日志系统dragonfly1.0是基于EFK构建,于2014年服务至今已长达7年,支持物理机日志采集,容器日志采集,特殊分类日志综合采集等,大大方便了全公司日志的存储和查询。随着公司的业务发展,日志应用场景逐渐遇到了一些瓶颈,主要表现在应用数量和打印的日志越来越多,开发需要打印更多日志,定位业务问题,做出运营数据分析;另外外部攻击问题和审计要求,需要更多安全相关的日志数据要上报并且能够提供半年以上的保存时长,以应对潜在的攻击和攻击发生时调查原因和受影响面。ELK的架构的缺点显现,ES集群规模达260台机器,需要的硬件和维护成本高达千万,如果通过扩容的方法去满足上述业务场景,ES
一、背景唯品会日志系统dragonfly1.0是基于EFK构建,于2014年服务至今已长达7年,支持物理机日志采集,容器日志采集,特殊分类日志综合采集等,大大方便了全公司日志的存储和查询。随着公司的业务发展,日志应用场景逐渐遇到了一些瓶颈,主要表现在应用数量和打印的日志越来越多,开发需要打印更多日志,定位业务问题,做出运营数据分析;另外外部攻击问题和审计要求,需要更多安全相关的日志数据要上报并且能够提供半年以上的保存时长,以应对潜在的攻击和攻击发生时调查原因和受影响面。ELK的架构的缺点显现,ES集群规模达260台机器,需要的硬件和维护成本高达千万,如果通过扩容的方法去满足上述业务场景,ES
问题:慢查询搜索平台的公共集群,由于业务众多,对业务的es查询语法缺少约束,导致问题频发。业务可能写了一个巨大的查询直接把集群打挂掉,但是我们平台人力投入有限,也不可能一条条去审核业务的es查询语法,只能通过后置的手段去保证整个集群的稳定性,通过slowlog分析等,下图中cpu已经100%了。昨天刚好手头有一点点时间,就想着能不能针对这些情况,把影响最坏的业务抓出来,进行一些改善,于是昨天花了2小时分析了一下,找到了一些共性的问题,可以通过平台来很好的改善这些情况。首先通过slowlog抓到一些耗时比较长的查询,例如下面这个索引的查询耗时基本都在300ms以上:{"from":0,"si
问题:慢查询搜索平台的公共集群,由于业务众多,对业务的es查询语法缺少约束,导致问题频发。业务可能写了一个巨大的查询直接把集群打挂掉,但是我们平台人力投入有限,也不可能一条条去审核业务的es查询语法,只能通过后置的手段去保证整个集群的稳定性,通过slowlog分析等,下图中cpu已经100%了。昨天刚好手头有一点点时间,就想着能不能针对这些情况,把影响最坏的业务抓出来,进行一些改善,于是昨天花了2小时分析了一下,找到了一些共性的问题,可以通过平台来很好的改善这些情况。首先通过slowlog抓到一些耗时比较长的查询,例如下面这个索引的查询耗时基本都在300ms以上:{"from":0,"si
使用这个简单的方法来迁移一个网站以及管理防火墙配置。你有过把一个WordPress网站迁移到一台新主机上的需求吗?我曾经迁移过好多次,迁移过程相当简单。当然,的的市场时候我都不会用通用的推荐方法,这次也不例外——我用更简单的方法,这才是我推荐的方法。这个迁移方法没有破坏性,因此如果出于某些原因你需要还原到原来的服务器上,很容易可以实现。一个WordPress网站的组成部分运行一个基于WordPress的网站有三个重要组成部分:WordPress本身,一个web服务器,如Apache(我正在用),以及MariaDB。MariaDB是MySQL的一个分支,功能相似。业界有大量的Web服务器,由于我
使用这个简单的方法来迁移一个网站以及管理防火墙配置。你有过把一个WordPress网站迁移到一台新主机上的需求吗?我曾经迁移过好多次,迁移过程相当简单。当然,的的市场时候我都不会用通用的推荐方法,这次也不例外——我用更简单的方法,这才是我推荐的方法。这个迁移方法没有破坏性,因此如果出于某些原因你需要还原到原来的服务器上,很容易可以实现。一个WordPress网站的组成部分运行一个基于WordPress的网站有三个重要组成部分:WordPress本身,一个web服务器,如Apache(我正在用),以及MariaDB。MariaDB是MySQL的一个分支,功能相似。业界有大量的Web服务器,由于我
把MySQL放进Docker,总共需要几步?本次就通过社区版容器安装2个mysql实例,看一下部署有多简单。1、安装docker操作系统我使用的Centos7x64系统,而Docker目前看仅CentOS7及以上版本。本次采用Docker仓库进行安装,具体步骤如下:1.1设置仓库因本机首次安装Docker,所以需要先设置Docker仓库,以后的安装可以直接从仓库安装。/*安装所需的软件包*/yuminstall-yyum-utils\device-mapper-persistent-data\lvm2使用以下命令来设置稳定的仓库yum-config-manager\>--add-repo\>h
把MySQL放进Docker,总共需要几步?本次就通过社区版容器安装2个mysql实例,看一下部署有多简单。1、安装docker操作系统我使用的Centos7x64系统,而Docker目前看仅CentOS7及以上版本。本次采用Docker仓库进行安装,具体步骤如下:1.1设置仓库因本机首次安装Docker,所以需要先设置Docker仓库,以后的安装可以直接从仓库安装。/*安装所需的软件包*/yuminstall-yyum-utils\device-mapper-persistent-data\lvm2使用以下命令来设置稳定的仓库yum-config-manager\>--add-repo\>h