接下来,我们一起看看如何部署一个单节点的 nats 服务器,这样后续学习 nats 的功能和特性的时候,会更加的清晰,那我们一起看看如何部署单节点的nats服务,后面在学习如何部署集群版的 nats

1、二进制方式部署

先说下这里使用的环境是:

cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)

1.1、下载及运行

https://github.com/nats-io/nats-server/releases 下载最新版本的nats-server版本。这里用 v2.10.3

rpm包主要用于redhat及分支如redhat,centos,Fedora等

而deb包主要用于debian及分支如debian,ubuntu等。

这里使用压缩包的方式按照,方便更新部署位置以及配置。

# 下载安装包
wget https://github.com/nats-io/nats-server/releases/download/v2.10.3/nats-server-v2.10.3-linux-amd64.tar.gz # 解压
tar -zxvf nats-server-v2.10.3-linux-amd64.tar.gz

得到解压后的文件夹后,进入里面,运行可执行文件,即可启动一个 nats 服务。

# 运行
./nats-server

nats 单节点的部署还是十分简单的,几乎没有任何难度。

1.2、配置文件简介

nats 也支持在启动时通过命令行参数来指定配置,不过这样每次都需要指定,不如写入到配置文件方便,所以这里只说配置文件的方式。

nats 的配置还是有很多参数的,尤其是新版本的功能更加丰富,配置的参数也多了。

想要更加详细的了解 nats 的参数,可以直接去看官网 Configuring NATS Server,里面有更加详细全面的介绍。

下面简单将一些常用到的参数。

vim gnastd.conf

port: 4242   # 供客户端连接的监听端口
net: apcera.me # 监听的网络地址 http_port: 8222 # HTTP监控端口 # 客户端连接的认证信息
authorization {
user: derek
password: T0pS3cr3t
timeout: 1
} # 集群定义
cluster { host: '127.0.0.1' # 主机地址
port: 4244 # 路由连接的入站(inbound)端口 # 路由连接的认证信息
authorization {
user: route_user
password: T0pS3cr3tT00!
timeout: 0.5
} # Routes are actively solicited and connected to from this server.
# Other servers can connect to us if they supply the correct credentials
# in their routes definitions from above.
routes = [
nats-route://user1:pass1@127.0.0.1:4245
nats-route://user2:pass2@127.0.0.1:4246
]
} # 日志选项
debug: false
trace: true
logtime: false
log_file: "/tmp/gnatsd.log" # PID进程文件
pid_file: "/tmp/gnatsd.pid" # 一些系统属性 # 客户端最大连接数
max_connections: 100 # 最大协议控制行
max_control_line: 512 # 最大的有效负载
max_payload: 65536 # 慢消费者阀值
max_pending: 10000000

1.3、将 nats 使用systemd 管理

使用 命令行启动 nats 服务,在终端连接断开后,nats 服务就挂掉了,可以使用 systemd 管理。

vim /lib/systemd/system/nats.service

[Unit]
Description=nats-server daemon
After=syslog.target network.target
Wants=network.target [Service]
ExecStart=/opt/nats/nats-server -c /opt/nats/nats.yml
Restart= on-failure [Install]
WantedBy=multi-user.target

2、docker 方式部署单节点

1、docker pull nats, 自动获取linux版本的image

2、使用 docker image命令,查看显示本地的image list

3、创建容器,并运行nats 单节点

docker run -d -it --name nats-server -p 4222:4222 -p 6222:6222 -p 8222:8222 nats

-p: 映射端口
-it: 一般搭配使用,显示容器的shell映射到当前的shell
-d: 后台运行
--name: 别名

4、使用 docker ps 命令,查看容器的运行情况

02、NATS单节点部署的更多相关文章

  1. Ubuntu下用devstack单节点部署Openstack

    一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803  8G内存 ...

  2. HyperLedger Fabric 1.4 单机单节点部署(10.2)

    单机单节点指在一台电脑上部署一个排序(Orderer)服务.一个组织(Org1),一个节点(Peer,属于Org1),然后运行官方案例中的example02智能合约例子,实现转财交易和查询功能.单机单 ...

  3. .netcore consul实现服务注册与发现-单节点部署

    原文:.netcore consul实现服务注册与发现-单节点部署 一.Consul的基础介绍     Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分 ...

  4. Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)

    0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...

  5. 恒天云单节点部署指南--OpenStack H版本虚拟机单节点部署解决方案

    本帖是openstack单节点在虚拟机上部署的实践.想要玩玩和学习openstack的小伙伴都看过来,尤其是那些部署openstack失败的小伙伴.本帖可以让你先领略一下openstack的魅力.本I ...

  6. Presto0.157版本单节点部署教程

    因为Presto版本的更新速度较快,所以最好按照对应版本的教程进行部署,博主之前看错了版本号,拿0.100版本的教程来部署0.157版本,结果导致部署失败. 官网:https://prestodb.i ...

  7. MongoDB 3.2复制集单节点部署(四)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 3.2版本进行复制集实验(但MongoDB配置文件 ...

  8. MongoDB 2.6复制集单节点部署(三)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 2.6版本进行复制集实验(但MongoDB配置文件 ...

  9. K8S二进制单节点部署

    一.常见的k8s部署方式 1.inikube: Minikube是一个工具,可以在本地快速运行一个单节点微型K8s,仅用于学习预览K8s的一些特性使用 部署地址: https://kubernetes ...

  10. 单节点部署Hadoop教程

    搭建HDFS 增加主机名 我这里仅仅增加了master主机名 [root@10 /xinghl/hadoop/bin]$ cat /etc/hosts 127.0.0.1 localhost 10.0 ...

随机推荐

  1. [转帖]服务器稳定性测试-LTP压力测试方法及工具下载

    简介 LTP(LinuxTest Project)是SGI.IBM.OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性.健壮性和稳定性.LTP测试套件是测试L ...

  2. [转帖]SpecCPU2017 测试cpu性能

    https://www.bbsmax.com/A/GBJrxP1Ed0/ SpecCPU介绍见: https://blog.csdn.net/qq_36287943/article/details/1 ...

  3. [转帖]Springboot容器化镜像设置堆内存大小

    参考资料:Best Practices: Java Memory Arguments for Containers - DZone Java 有三种方式设置最大堆内存大小: 1. -Xmx 2. -X ...

  4. 公司内部自建DNS的办法 使用私有域名的方法

    最近总是有一个需求,需要自己弄一些服务器域名之类的. 修改hosts总是比较麻烦,所以想了一个简单办法, 自己搭建一个dns服务器, 本来想用最简单的 dnsmasq 但是发现总是不成功, 然后找了另 ...

  5. ABP vNext系列文章10---分布式事务集成netcore.Cap

    最近项目中要用到分布式事务功能,调研了DTM和Cap,最终确定用Cap来实现,Cap支持最终一致性,项目中采用MQ作为消息中间件,数据库用的mysql,集成步骤如下: 1.在需要发布消息的服务中引入如 ...

  6. 从零开始配置 vim(14)——目录管理插件

    我们在介绍vim目录管理的时候提到 vim自带一个 叫做 netrw的工具来管理目录.但是它自身的功能有限,而且样式也丑.今天我们将使用其他强大的插件来替代 netrw,增强目录管理功能 nvim-t ...

  7. TienChin 渠道管理-配置校验失败信息

    新建 ValidationMessages.properties: channel.name.notnull=渠道名称不能为空 channel.type.notnull=渠道类型不能为空 channe ...

  8. 从嘉手札<2024-1-29>

    补一下以前的几篇日记 2018-4-6 当一个人不在纠结没有什么 而是开始珍视他所拥有的一切的时候 才算得上真正的成熟 个人的意志 不能因受到社会的压力而软弱 也不能受到自然的压力而萎缩 而应当如冬日 ...

  9. 东吴名贤传<一>骆统传

    骆俊,字孝远,会稽郡乌伤县人(今义乌市),少有才干,察孝廉,补尚书郎,擢拜陈相,为东汉末年陈王刘宠的国相,时袁术僭号,兄弟忿争,天下鼎沸,群贼并起,陈与比界,奸慝四布,俊厉威武,保疆境,贼不敢犯.养济 ...

  10. 爆了!Sealos 三天支持 1000 个帕鲁私服

    Sealos 的帕鲁私服模板从第一天发布之后就起了 100 多个私服,第二天直接上到 500 多个,第三天直接上千,还在加速增长中.来讲讲我们只用一个晚上怎么做到上线一个专属可用区的,还有一些帕鲁实践 ...