02、NATS单节点部署
接下来,我们一起看看如何部署一个单节点的 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单节点部署的更多相关文章
- Ubuntu下用devstack单节点部署Openstack
一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803 8G内存 ...
- HyperLedger Fabric 1.4 单机单节点部署(10.2)
单机单节点指在一台电脑上部署一个排序(Orderer)服务.一个组织(Org1),一个节点(Peer,属于Org1),然后运行官方案例中的example02智能合约例子,实现转财交易和查询功能.单机单 ...
- .netcore consul实现服务注册与发现-单节点部署
原文:.netcore consul实现服务注册与发现-单节点部署 一.Consul的基础介绍 Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分 ...
- Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)
0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...
- 恒天云单节点部署指南--OpenStack H版本虚拟机单节点部署解决方案
本帖是openstack单节点在虚拟机上部署的实践.想要玩玩和学习openstack的小伙伴都看过来,尤其是那些部署openstack失败的小伙伴.本帖可以让你先领略一下openstack的魅力.本I ...
- Presto0.157版本单节点部署教程
因为Presto版本的更新速度较快,所以最好按照对应版本的教程进行部署,博主之前看错了版本号,拿0.100版本的教程来部署0.157版本,结果导致部署失败. 官网:https://prestodb.i ...
- MongoDB 3.2复制集单节点部署(四)
MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 3.2版本进行复制集实验(但MongoDB配置文件 ...
- MongoDB 2.6复制集单节点部署(三)
MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 2.6版本进行复制集实验(但MongoDB配置文件 ...
- K8S二进制单节点部署
一.常见的k8s部署方式 1.inikube: Minikube是一个工具,可以在本地快速运行一个单节点微型K8s,仅用于学习预览K8s的一些特性使用 部署地址: https://kubernetes ...
- 单节点部署Hadoop教程
搭建HDFS 增加主机名 我这里仅仅增加了master主机名 [root@10 /xinghl/hadoop/bin]$ cat /etc/hosts 127.0.0.1 localhost 10.0 ...
随机推荐
- click与addEventListener和removeEventListener事件与移除正确的移除事件详解
1. onclick事件 es5 普通事件就是直接触发事件,相同的事件会被覆盖掉.代码如下: let demoDiv=document.querySelector(".demo") ...
- Linux挂载新磁盘到根目录
1.添加磁盘到需要挂载的机器上2.lsblk查看硬盘挂载情况,sdb,sdc为我新挂载的磁盘 3.fdisk -l查看挂载之前的分区情况, 4.为新硬盘创建分区 fdisk /dev/sdb,终端会提 ...
- TienChin-课程管理-课程搜索
后端 新建 CourseVO.java: /** * CourseVO类是一个课程的值对象,用于存储课程的相关信息. * 它包含了课程的名称.类型.适用对象.最低价格和最高价格等属性. */ publ ...
- NLP涉及技术原理和应用简单讲解【二】:paddle(分布式训练、AMP自动混合精度训练、模型量化、模型性能分析)
参考链接: https://www.paddlepaddle.org.cn/documentation/docs/zh/guides/06_distributed_training/cluster_q ...
- win10 局域网共享文件创建方法
win10 局域网共享文件创建方法 1.先在桌面文件夹,我命名为"xxxx",然后将文件放在该文件里. 2.右击共享文件夹,找到属性选项,点击"属性".再点击& ...
- 1.14 手工插入ShellCode反弹
PE格式是 Windows下最常用的可执行文件格式,理解PE文件格式不仅可以了解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,而有些技术必须建立在了解PE文件格式的基础上,如 ...
- Load-balanced-online-OJ-system 负载均衡的OJ系统项目
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 本项目Github地址 - ...
- 【Linux】常用基本指令大汇总系列(篇一)【超详细的图解保姆教程】
常用基本指令大汇总系列(篇一) 大家好,欢迎大家来到我的博客.从今天开始,博主就要开启一个全新的系列了!Linux操作系统常用基本指令汇总系列,当大家按顺序学完这个系列,在Linux上编写基本的C语言 ...
- Oracle-创建用户不带C##(Oracle 19c)
由于oracle从12c开始引入了容器(PDB和CDB).租户的概念.直接连接sysdba用户创建新用户时,会默认在CDB中创建公有用户,用户名需要以"C##"或"c## ...
- MySQL架构体系介绍
一.MySQL的完整架构体系 MySQL完整的架构体系: (1)Connectors 指的是不同语言中与SQL的交互. (2)Connection Pool 管理缓冲用户连接,线程处理等需要缓存的需求 ...