搭建本地yum repo

pass

指定特定repo 安装,比如安装wget。(指定特定repo 是为了从最快的repo安装)

yum --disablerepo=\* --enablerepo=os install wget

安装 EPEL

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm

安装JDK 8,配置JAVA_HOME

pass

安装es,启动

pass
nohup ./elasticsearch --cluster.name sflow --node.name sflow1 &

准备数据,数据格式如下:

TAG,SRC_MAC,DST_MAC,VLAN,COS,IN_IFACE,OUT_IFACE,SRC_IP,DST_IP,SRC_MASK,DST_MASK,SRC_PORT,DST_PORT,PROTOCOL,PACKETS,BYTES
10019,52:54:00:6f:d0:9e,52:54:00:58:86:ec,2662,31,3,2,42.120.83.55,42.120.83.125,24,24,15113,17359,ipv6-route,12,2070
10084,52:54:00:04:bd:01,52:54:00:18:dc:b2,1122,81,2,3,42.120.85.119,42.120.85.196,24,24,12110,14868,rsvp,19,4404

创建index,index设计如下

index name 格式为 "sflow_routerIP_interfaceID_direction"

  • 统一前缀可以跨indices调用
  • 一个index存储一个interface的一个方向,缩小单个index的数据量

mapping设计

  • not_analyzed 目的是可以精确匹配,不计算score,提升速度。(ES 是全文搜索引擎,默认模糊匹配并且计算匹配score)
  • 增加IP_PAIRE 字段对应 SRC_IP+DST_IP。目的是测试不同方式多字段聚合效率(对比script方式)

template设计

  • 把mapping 放入template
  • 统一前缀(sflow_)的 index将自动采用template

template如下:

curl -XPUT localhost:9200/_template/template_sflow -d '
{
"template" : "sflow_*",
"mappings" : {
"sflow" : {
"properties" : {
"@timestamp": { "index": "analyzed", "type": "date" },
"SRC_MAC" : { "type" : "string", "index" : "not_analyzed"},
"DST_MAC" : { "type" : "string", "index" : "not_analyzed"},
"IP_PAIRE" : { "type" : "string", "index" : "not_analyzed"},
"SRC_IP" : { "type" : "ip", "index" : "not_analyzed"},
"DST_IP" : { "type" : "ip", "index" : "not_analyzed"},
"SRC_PORT" : { "type" : "integer", "index" : "not_analyzed"},
"DST_PORT" : { "type" : "integer", "index" : "not_analyzed"},
"VLAN" : { "type" : "integer", "index" : "not_analyzed" },
"PROTOCOL" : { "type" : "string", "index" : "not_analyzed" },
"BYTES" : { "type" : "long", "index" : "not_analyzed" },
"PACKETS" : { "type" : "long", "index" : "not_analyzed" }
}
}
}
}
'

导入数据

pass

查询曲线

  1. 某端口,某方向,一段时间曲线

  2. 某端口,某方向,某tag,一段时间曲线

  3. 某端口,某方向,多tag,一段时间曲线

  4. 一组端口,某方向,一段时间曲线

  5. 一组端口,某方向,某tag,一段时间曲线

  6. 一组端口,某方向,多tag,一段时间曲线

查询topN

  1. 某端口,某方向,某tag,一段时间topN

  2. 某端口,某方向,多tag,一段时间topN

  3. 一组端口,某方向,某tag,一段时间topN

  4. 一组端口,某方向,多tag,一段时间topN

查询某个点的time series data

删除数据

  1. 删除某端口某段时间
  2. 删除某组端口某段时间
  3. 删除某个index
  4. 删除某组index

CentOS 7 es搭建测试的更多相关文章

  1. Centos vsftpd服务器搭建

    Centos vsftpd服务器搭建 时间:2016-07-18 1.最为简单的vsftpd服务器搭建 1.安装vsftpd 1.yum 安装 yum install vsftpd 2.rpm文件安装 ...

  2. 在CentOS 6上搭建私有的Docker Registry

    在CentOS 6上搭建私有的Docker Registry v2Registry概念 :Registry是一个无状态的, 高可扩展的服务器端应用程序, 用于存储和分发Docker Image. 依赖 ...

  3. Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

    标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...

  4. Tsung CentOS 操作系统下搭建tsung性能测试环境_Part 2

    CentOS 操作系统下搭建tsung性能测试环境_Part 2 by:授客 QQ:1033553122 --------------------接CentOS 操作系统下搭建tsung性能测试环境_ ...

  5. CentOS 7下搭建配置SVN服务器

    CentOS 7下搭建配置SVN服务器 1. 安装 CentOS通过yum安装subversion. $ sudo yum install subversion subversion安装在/bin目录 ...

  6. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  7. 基于CentOS与VmwareStation10搭建hadoop环境

    基于CentOS与VmwareStation10搭建hadoop环境     目 录 1. 概述.... 1 1.1. 软件准备.... 1 1.2. 硬件准备.... 1 2. 安装与配置虚拟机.. ...

  8. 用docker搭建测试环境--docker的基本操作

    上一篇文章中最后执行了docker pull centos的指令,经过一段时间的等待,会从hub.docker.com上下载docker官方最新的centos的images,接下来熟悉一下docker ...

  9. Linux常用命令及搭建测试环境

    题外话:三大操作系统------Linux.Unix.Windows,Unix系统如常见的Mac OS,Linux的很多命令跟Unix是通用的,所以就有一些开发人猿喜欢用苹果的原因.Linux发行版特 ...

随机推荐

  1. AlertDialog的实现

    课程Demo 重点解析自定义对话框 public class MainActivity extends AppCompatActivity { private Button bt1; private ...

  2. scala如何在任意方法中打印当前线程栈信息(StackTrace)

    1.以wordcount为例 package org.apache.spark.examples import org.apache.spark.{SparkConf, SparkContext} / ...

  3. apache反向代理配置

    apache简单的反向代理配置 Proxypass /api /http://locahost:3000 反向代理-1.jpg

  4. php常用的一些代码

    1.获取用户真实ip function getIP() { if (getenv("HTTP_X_FORWARDED_FOR")) { // 这个提到最前面,作为优先级,nginx ...

  5. JavaScript回文数

    基本解决方案 function palindrome(str) { return str.replace(/[\W_]/g, '').toLowerCase() === str.replace(/[\ ...

  6. sql中递归查询

    with AA as ( select * from tb_ClientBranch_Category where BRANCH_MOM_NAME='北京易华录信息技术股份有限公司' union al ...

  7. 谈谈JVM垃圾回收机制及垃圾回收算法

    一.垃圾回收机制的意义 Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理.由于有个垃圾回收机制 ...

  8. vue之package.json文件解析

    1.package.json是什么? 什么是Node.js的模块(Module)?在Node.js中,模块是一个库或框架,也是一个Node.js项目.Node.js项目遵循模块化的架构,当我们创建了一 ...

  9. 第2节 mapreduce深入学习:13、mapreduce的整个运行过程(多看几遍)

    两个问题: 1.mapTaks的个数怎么确认:与block块相关2.reducetask的个数怎么确认:没法确认,需要反复的设置尝试,找到最优值.  手动进行设置 job.setNumReduceTa ...

  10. zay大爷的神仙题目 D1T3-膜你抄

    依旧是外链 锦鲤抄 [题目背景] 你在尘世中辗转了千百年 却只让我看你最后一眼 火光描摹容颜燃尽了时间 别留我一人,孑然一身 凋零在梦境里面. ——银临&云の泣<锦鲤抄> [问题描 ...