小白linux centos安装配置nsq全过程

首次在linux上安装nsq遇到了好多坑,记录下来方便查看

一、安装nsq:全程安装官方文档来:http://nsq.io/deployment/installing.html

1、官方文档里有最新的nsq安装包地址,获取到地址后在linux上下载,如:wget https://s3.amazonaws.com/bitly-downloads/nsq/nsq-0.3.8.linux-amd64.go1.6.2.tar.gz

2、官方文档介绍要想安装nsq需要先安装:1.4以上版本的golong和gpm

  • golang (version 1.4+ is required)
  • gpm (dependency manager)
     2.1、golong安装:

             2.1.1、先从http://golangtc.com/download里获取go的最新安装包地址,然后在linux上进行下载,如:wget http://golangtc.com/static/go/1.7.3/go1.7.3.linux-amd64.tar.gz

             2.1.2、解压缩后安装:
                         解压:tar zxvf go1.5beta1.Linux-amd64.tar.gz

                         移动到自定义的目录:mv go /usr/local(可选,主要是方便维护)

             2.1.3、go环境变量配置
                         打开环境变量配置文件:
sudo vim /etc/profile

然后在文件的最后追加以下配置:

export GOROOT=/usr/local/go

export GOPATH=$GOROOT/bin

export PATH=$PATH:$GOPATH

配置好环境变量后再让它马上生效

source /etc/profile

2.1.4、检查go是否安装成功:go version     若打印出了版本号则说明go安装成功

     2.2、gpm安装:在linux使用yum直接安装即可:yum install gpm      安装中间可能会让确认,直接输入y即可

3、官方文档介绍编译nsq方法:

gpm install
go get github.com/nsqio/nsq/...

到此nsq已成功安装

二、测试:全程依然参考官方文档:http://nsq.io/overview/quick_start.html

1、 打开一个终端,启动nsqlookupd:nsqlookupd

2、再打开一个终端,启动nsq:nsqd –lookupd-tcp-address=127.0.0.1:4160

这种方式broadcast_address使用的是hostname,可能会出现一下错误: ERR    1 [test/nsq_to_file] (ALYBJ211-180:4150) error connecting to nsqd - dial tcp: lookup ALYBJ211-180: no such host

解决此问题需要在启动nsqlookupd和nsqd时设置tcp、http、broadcast的ip

启动nsqlookupd:

nsqlookupd -tcp-address=127.0.0.1:4160 -http-address=127.0.0.1:4161 -broadcast-address="127.0.0.1"

启动nsqd:

nsqd -broadcast-address="127.0.0.1" -http-address="127.0.0.1:4151" --lookupd-tcp-address=127.0.0.1:4160 -tcp-address="127.0.0.1:4150"
3、再打开一个终端,启动nsqadmin
nsqadmin –lookupd-http-address=127.0.0.1:4161
4、创建一个topic并且发布一条消息,由于nsq支持http协议发布消息,我们可以直接使用curl命令。
curl -d ‘hello world 1’ ‘http://127.0.0.1:4151/put?topic=test’
5、再开一个终端来处理消息数据流,将消息写入/tmp文件加下的日志文件,文件名默认由主题topic+主机+日期时间戳组成。
nsq_to_file –topic=test –output-dir=/tmp –lookupd-http-address=127.0.0.1:4161

output-dir是自定义的nsq log的存放文件夹地址,
6、我们再发布两条消息,看看日志文件中的变化。
curl -d ‘hello world 2’ ‘http://127.0.0.1:4151/put?topic=test’
curl -d ‘hello world 3’ ‘http://127.0.0.1:4151/put?topic=test’

cd /tmp   进入到日志文件夹下打开日志文件查看,会发现消息写进到了里面

7、浏览器查看结果:

http://192.168.1.111:4171/

此处为自己linux机器的ip地址



  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值