我现在遇到一个 devops 问题,解决不了了,想上来找找思路
是这样的,我的一个 sidekiq service 会 call 到一个 rabbitmq 。不是 sidekiq 用 rabbitmq 实现。sidekiq 依然用 redis ,就是其中一个功能去 call rabbitmq 。
本地测试完全 ok ,是用我自己电脑的 sidekiq 去 call 远程的 rabbitmq
我 deploy 到 azure ,就发生 bunny 报错说, connection rejected 。我只有一个用户名密码,这个绝对没错。
azure 云端情况又有点复杂。 有两个 app service 在一个 resource group 里,同样的 networking 设定,连内部 ip 都是完全一样的
目前我能 ssh 到一个 app service a ,测试从 a 发消息到 rabbitmq ,完全没问题
但是 sidekiq 在 app service b 里,目前不能 ssh 到 b 。理论上讲,a 和 b 应该完全一样的网络设定
通过 b 的 azure bash 功能,我能 tcpping 到 rabbitmq 的远程端口。所以,b 到 rabbitmq 的网络应该没什么问题。
问题在于,一样的用户名和密码,我在本地跑一切顺利。部署到 azure app service b ,就报 connection rejected 。
我在程序中输出了一些 debug info ,绝对就是卡在连接这一步,用户名密码对的,就是不能连接
1
blackshadow 2022-10-25 14:08:44 +08:00
会啊,默认的 guest 账户,初始化的参数是只允许 127.0.0.1 访问; 创建的账户,需要设置 ip ;
|