我正试图在我的kubernetes集群上设置一个基本的NATS服务,根据他们的文档这里。我执行了以下代码:
$ helm install test-nats nats/nats
NAME: test-nats
LAST DEPLOYED: Thu Jul 14 13:18:09 2022
NAMESPACE: default
STATUS: deployed
REVISION: 1
NOTES:
You can find more information about running NATS on Kubernetes
in the NATS documentation website:
https://docs.nats.io/nats-on-kubernetes/nats-kubernetes
NATS Box has been deployed into your cluster, you can
now use the NATS tools within the container as follows:
kubectl exec -n default -it deployment/test-nats-box -- /bin/sh -l
nats-box:~# nats-sub test &
nats-box:~# nats-pub test hi
nats-box:~# nc test-nats 4222
Thanks for using NATS!
$ kubectl exec -n default -it deployment/test-nats-box -- /bin/sh -l
_ _
_ __ __ _| |_ ___ | |__ _____ __
| '_ \ / _` | __/ __|_____| '_ \ / _ \ \/ /
| | | | (_| | |_\__ \_____| |_) | (_) > <
|_| |_|\__,_|\__|___/ |_.__/ \___/_/\_\
nats-box v0.11.0
test-nats-box-84c48d46f-j7jvt:~#现在,到目前为止,一切都符合他们的起点指南。然而,当我尝试测试连接时,我遇到了麻烦:
test-nats-box-84c48d46f-j7jvt:~# nats-sub test &
test-nats-box-84c48d46f-j7jvt:~# /bin/sh: nats-sub: not found
test-nats-box-84c48d46f-j7jvt:~# nats-pub test hi
/bin/sh: nats-pub: not found看起来没有找到这些命令,但是在我执行helm install时应该已经安装了它们。这里发生了什么事?
发布于 2022-07-20 13:04:05
我已经在我的kubernetes集群上复制了这个设置,并成功地部署了nats框,并启动了一个客户订户程序,在该程序中,订阅者监听主题,发布者发送关于特定主题的消息。
1.创建订阅服务器
在shell或命令提示符会话中,启动客户端订阅程序。
nats sub < subject>这里,< subject >是一个值得倾听的主题。它有助于使用独特和深思熟虑的主题字符串,因为您需要确保消息到达正确的订阅者,即使使用通配符。
例如:
nats sub msg.test您应该看到消息:侦听msg.test。
2.创建发布者并发布消息
创建NATS发布服务器并发送消息。
nats pub < subject> < message>其中< subject>是主题名称,< message>是要发布的文本。
例如:
nats pub msg.test nats-message-1您会注意到,发布者发送消息并打印:已发布的msg.test:'NATS消息‘。
订阅者接收消息并打印:在msg.test上接收到的#1:'NATS消息‘。
在这里,您提供了错误的语法nats-sub和nats-pub,这是不推荐的。尝试使用上面的命令来给出精确的结果。
发布于 2022-07-15 10:36:25
我也有同样的问题。nats-sub和nats-pub似乎被废弃了,您需要使用nats sub和nats pub。
https://stackoverflow.com/questions/72975213
复制相似问题