一、Nginx
1、简介
Nginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在高连接并发的情况下,Nginx是Apache服务器不错的替代品。
2、安装步骤
系统平台:CentOS release 6.6 64位
● 安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
● 安装PCRE
下载PCRE安装包,下载地址:
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
解压安装包
tar zxvf pcre-8.35.tar.gz
进入安装包目录
cd pcre-8.35
编译安装
./configure
make && make install
查看pcre版本
pcre-config --version
● 下载 Nginx,下载地址:https://nginx.org/en/download.html
命令:
wget http://nginx.org/download/nginx-1.9.9.tar.gz
● 解压安装包
命令:
tar zxvf nginx-1.9.9.tar.gz
● 编译安装
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.35
make
make install
● 查看nginx版本
/usr/local/nginx/sbin/nginx -v
● 启动 Nginx
/usr/local/nginx/sbin/nginx
● 常用命令
/usr/local/nginx/sbin/nginx -s reload # 重新载入配置文件
/usr/local/nginx/sbin/nginx -s reopen # 重启 Nginx
/usr/local/nginx/sbin/nginx -s stop # 停止 Nginx
3、埋点采集配置
● 参数格式
log_format 写法:
log_format soshash.log.format '$remote_addr - $remote_user [$time_local] $request'
'$status $body_bytes_sent $http_referer '
'$http_user_agent $http_x_forwarded_for';
二、Flume
1、简介
Flume是一种提供高可用、高可靠、分布式海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于采集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接收方的能力,用一句话概括,Flume是实时采集日志的数据采集引擎。
2、安装步骤
● 下载地址
wget https://mirrors.bfsu.edu.cn/apache/flume/1.9.0/apache-flume-1.9.0-bin.tar.gz
下载完成后,将文件解压到任意目录
在/etc/profile文件中增加设置
export FLUME_HOME=/usr/local/flume/apache-flume-1.9.0-bin
export FLUME_CONF_DIR=$FLUME_HOME/conf
export PATH=$FLUME_HOME/bin:$PATH
3、配置
● flume-env.sh
修改conf下的flume-env.sh,没有的话复制(cp)flume-env.sh.template,在里面配置JAVA_HOME为jdk的根目录
export JAVA_HOME=/usr/java/jdk1.8.0_60
1
● 自定义conf文件
复制flume-conf.properties.template至自定义文件
cp flume-conf.properties.template flume-nginx-logger.conf
以采集Nginx日志打印控制台为例
4、自定义拦截器
埋点数据上行时,SDK对数据进行加密,Flume对数据进行解密,拦截器使用maven项目实现。
主要是实现interceptor接口,并实现其方法,接口名为:org.apache.flume.interceptor.Interceptor
SDK上行数据如下:
maven项目pom.xml
三、Kafka
1、简介
是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等。
主要应用场景:日志收集系统和消息系统
2、安装步骤
● Zookeeper
如系统未安装Zookeeper,先下载Zookeeper并启动
下载地址:https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.2/
解压并进入配置目录:
cd apache-zookeeper-3.6.2-bin/conf
重命名zoo_sample.cfg文件:
mv zoo_sample.cfg zoo.cfg
进入bin目录并启动:
./zkServer.sh start
出现以下信息,启动成功
● kafka
下载地址:
wget https://mirrors.bfsu.edu.cn/apache/kafka/2.7.0/kafka_2.13-2.7.0.tgz
解压并进入kafka目录:cd kafka_2.13-2.7.0
启动:
bin/kafka-server-start.sh config/server.properties
● 创建话题"test"
bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
● 列出话题列表,可以查看创建的话题
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
● 发送信息
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
● 启动消费者
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
● 常用命令
kafka启动(需要先启动zk):
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
bin/kafka-server-start.sh -daemon config/server.properties
kafka停止:
bin/kafka-server-stop.sh
bin/zookeeper-server-stop.sh
3、配置
● server.properties
advertised.listeners=PLAINTEXT://:你的ip:9092
————————————————
版权声明:本文为小象数据版权所有,转载请注明出处,更多信息请搜索小象用户行为分析
本文暂时没有评论,来添加一个吧(●'◡'●)