原理可以参考https://docs.nats.io/running-a-nats-service/configuration/gateways
Cluster内部server实例的连接是使用—route 参数(一般使用4222端口)
Cluster之间增加了—gateway 参数,主要是为了通过合并减少cluster间连接数量和传输内容。
nats cluster的helm部署文件:
https://github.com/nats-io/k8s
1、增加外部访问配置
除client(内部一般使用4222)需要配置外部访问外,还需要增加gateway的外部访问(本例使用7522),可以使用nodeport或者ingress。
2、在helm中增加cluster和gateway配置
说明:本cluster访问也要配置进去,使用service方式访问。
使用nats-box测试:
kubectl exec -it nats-server-box-7b7755fcdd-t42rs – sh
常用命令:
nats stream ls #查看所有streamnats stream add TEST1 --subjects="test1.*" --replicas=1 #添加名称为TEST1的streamnats stream rm TEST1 #删除名称为TEST1的streamnats pub test1.001 "version1.0" #发布subjectnats sub test1.* #订阅subject