• springcloud+nacos+dubbo服务器部署问题


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 roydon_ 2024-04-21 18:14 采纳率: 79.2% 浏览 2 首页/ 运维 / springcloud+nacos+dubbo服务器部署问题 服务器spring cloud springcloud+nacos+dubbo2.7.8服务器部署问题dubbo部署到服务器默认注册到nacos的地址为服务器内网,之后我在配置类指定了注册ip如下:dubbo:protocol:host但现在使用nohup启动服务报错:nohup java -jar niuyin-service-member.jar > /home/niuyin/log-member 2>&1 & 请问该如何部署呢 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    2条回答 默认 最新

    • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-21 18:20
      关注

      引自免费微信小程序:皆我百晓生

      从您提供的信息来看,您在部署Spring Cloud、Nacos和Dubbo时遇到了一些问题。根据您的日志输出,主要问题是Dubbo试图绑定到一个无效的IP地址(/8.1.1.227:20880)导致了失败。这可能是因为您在配置文件中设置的host值不正确。

      首先,确保您在服务器上运行的服务能访问到您配置的Nacos服务器,并且Nacos服务器的配置也正确无误。其次,检查您的Dubbo服务的配置。您已经设置了dubbo:protocol:host8.0.227:0, 这看起来像是一个错误的IP地址格式。正确的配置应该是一个有效的IP地址,例如localhost或服务器的实际IP地址。

      以下是针对这个问题的建议:

      1. 确保Nacos服务器正常运行并监听在8848端口。
      2. 检查Dubbo服务的配置,特别是dubbo:protocol:host,确保它指向的是服务器的正确外部IP地址,而不是内部IP地址。如果您想让服务暴露给其他网络,应使用服务器的公网IP地址,否则可以使用0.0.0.0表示接受所有网络连接。

      修改后的配置示例:

      dubbo:
        protocol:
          name: dubbo
          port: 20880
          host: 0.0.0.0 # 使用0.0.0.0可以让服务监听所有可用的网络接口
        registry:
          address: nacos://11.8848
        metadata-report:
          address: nacos://11:8848
      
      1. 如果您希望将服务仅限制在特定的网络接口,替换0.0.0.0为您服务器的实际IP地址。

      2. 如果您使用的是云环境,确认防火墙规则允许20880端口的出站流量。

      3. 关于nohup命令的执行,您可以尝试这样操作:

      nohup java -jar niuyin-service-member.jar > /home/niuyin/log-member.log 2>&1 &
      

      这里,我们把输出重定向到了一个名为log-member.log的日志文件中,同时把错误信息也一起追加到这个日志文件里。最后的&符号使进程在后台运行。

      如果问题依然存在,请提供更多信息,例如Nacos的配置、服务器的网络拓扑等,以便我能更准确地定位问题。

      展开全部

      评论 编辑记录
    • Kwan的解忧杂货铺 Java领域优质创作者 2024-04-21 18:20
      关注

      晚上好🌙🌙🌙
      本答案参考ChatGPT-3.5

      问题描述:

      在使用springcloud+nacos+dubbo2.7.8的组合进行服务器部署时,发现dubbo部署到服务器后默认注册到nacos的地址为服务器内网,之后在配置类中指定了注册IP后使用nohup启动服务出现错误。

      原因分析:

      错误日志提示无法指定被请求的地址。主要原因是在nohup启动服务时使用的是服务器内网地址,而不是通过配置类指定的地址。

      解决方案:

      • 在pom.xml文件中引入dubbo-spring-boot-starter依赖,可以通过该依赖实现dubbo与springboot的整合,不需要手动设置注册中心。
      • 在dubbo的配置文件中将注册中心设置为nacos,同时指定注册地址为显式IP,如下:

      dubbo: registry: address: nacos://ip:8848 # nacos注册中心地址 username: ${nacos.username:} # 安全认证参数 password: ${nacos.password:} # 安全认证参数 check: false # 关闭注册和订阅中心的检测

      provider: timeout: 3000 # 设置超时时间 retries: -1 # 设置重试次数,-1代表无限重试

      consumer: timeout: 3000 # 设置超时时间 retries: -1 # 设置重试次数,-1代表无限重试

      • 在nohup启动服务时使用以下命令:

      nohup java -jar niuyin-service-member.jar --spring.profiles.active=prod > /home/niuyin/log-member 2>&1 &

      其中--spring.profiles.active=prod表示设置启用的profile,可以在application.yml中设置不同的环境配置。

      • 在application.yml文件中加入如下配置:

      dubbo: protocols: dubbo: name: dubbo port: 20880 host: ip # 显式指定注册的IP registry: address: nacos://ip:8848 # nacos注册中心地址 scan: base-packages: com.xxx.xxx # dubbo扫描路径。多个用,隔开

      • 如果还有问题可以考虑检查防火墙、端口等设置是否正确,并运行以下命令查看服务是否已经正确启动:

      ps -ef | grep niuyin-service-member.jar

      参考资料: https://www.cnblogs.com/DclLife/p/15261119.html https://blog.csdn.net/weixin_43262485/article/details/108079946

      展开全部

      评论
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    MySQL日志——redolog
    HTML入门篇---02列表、表格、表单标签
    华为数通方向HCIP-DataCom H12-831题库(单选题:101-120)
    王者荣耀太空人名字怎么弄 王者荣耀太空人名字设置方法
    web 网页开发学习 之 vsc 的快捷方式便捷使用
    C++入门之引用与内联函数
    拖死项目的不是团队,可能是失败的管理
    大一学生WEB前端静态网页——唯品会1页 包含hover效果
    开源交流丨一站式大数据平台运维管家ChengYing安装原理剖析
    产品经理基础--01认识产品经理
  • 原文地址:https://ask.csdn.net/questions/8092391