ubuntu nsq安装与配置

前端之家收集整理的这篇文章主要介绍了ubuntu nsq安装与配置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

NSQ官网

http://nsq.io/{:target=”_blank”}

Golang中国官网

https://www.golangtc.com/{:target=”_blank”}

1.安装Go环境

  • go 1.7+
  • go官网下载安装包: go1.9.linux-amd64.tar.gz
  • 解压到/usr/local/中tar -C /usr/local -xzf go1.9.linux-amd64.tar.gz
  • 配置环境变量,编辑当前用户的~/.bashrc,增加
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=~/go/path
  • 执行source ~/.bashrc使得环境变量生效
  • 执行go version验证是否安装成功

2.二进制安装(无需Go环境)

  • nsq官网下载二进制linux安装包:nsq-1.0.0-compat.linux-amd64.go1.8.tar.gz
  • 解压到家目录tar -C ~ -xzf nsq-1.0.0-compat.linux-amd64.go1.8.tar.gz
  • 给bin目录下文件添加执行权限
cd ~/nsq-1.0.0-compat.linux-amd64.go1.8
sudo chmod -R u+x bin/

进入bin目录
- 打开一个终端,启动nsqlookupd

nohup ./nsqlookupd &
  • 打开另一个终端,启动nsqd
nohup ./nsqd --lookupd-tcp-address=127.0.0.1:4160 &
  • 打开另一个终端,启动nsqadmin
nohup ./nsqadmin --lookupd-http-address=127.0.0.1:4161 &

http://127.0.0.1:4171

  • 打开另外一个终端,启动nsq_to_file,将消息写入/tmp文件的日志文件文件名默认由主题topic+主机+日期时间戳组成
nohup ./nsq_to_file @H_404_150@-@H_404_150@-topic=test @H_404_150@-@H_404_150@-output@H_404_150@-dir=/tmp @H_404_150@-@H_404_150@-lookupd@H_404_150@-http@H_404_150@-address=127.0.0.1:4161 &
  • 使用curl命令,发布一条消息
curl -d 'hello world' 'http://127.0.0.1:4151/pub?topic=test'

3.相关概念

  • nsqlookupd:管理nsqd节点拓扑信息并提供最终一致性的发现服务的守护进程
  • nsqd:负责接收、排队、转发消息到客户端的守护进程,并且定时向nsqlookupd服务发送心跳
  • nsqadmin:nsq的web统计界面,可实时查看集群的统计数据和执行一些管理任务
  • utilities:常见基础功能、数据流处理工具,如nsq_stat、nsq_tail、nsq_to_file、nsq_to_http、nsq_to_nsq、to_nsq


3.附:开启和关闭nsq shell脚本

进入bin目录,创建data目录

mkdir data

开启nsq

sudo chmod -R u+x nsq_start.sh
./nsq_start.sh

nsq_start.sh

#!/bin/sh
#服务启动
#lookupd:151 152
#更改 --data-path 所指定的数据存放路径,否则无法运行
echo '删除日志文件'
rm -f nsqlookupd.log
rm -f nsqd1.log
rm -f nsqd2.log
rm -f nsqadmin.log

echo '启动nsqlookupd服务'
nohup ./nsqlookupd >nsqlookupd.log 2>&1 &

echo '启动nsqd服务'
#nohup ./nsqd --lookupd-tcp-address=0.0.0.0:4160 -tcp-address="0.0.0.0:4153" --data-path=./data1 >nsqd1.log 2>&1 &
nohup ./nsqd --lookupd-tcp-address=0.0.0.0:4160 -tcp-address="0.0.0.0:4154" -http-address="0.0.0.0:4155" --data-path=./data >nsqd2.log 2>&1 &
echo '启动nsqdadmin服务'
nohup ./nsqadmin --lookupd-http-address=127.0.0.1:4161 >nsqadmin.log 2>&1 &

关闭nsq

sudo chmod -R u+x nsq_shutdown.sh
./nsq_shutdown.sh

nsq_shutdown.sh

#!/bin/sh
#服务停止
ps -ef | grep nsq| grep -v grep | awk '{print $2}' | xargs kill -2

猜你在找的Ubuntu相关文章