gpt4 book ai didi

linux - 使用 rc.local 启动网络依赖服务

转载 作者:太空宇宙 更新时间:2023-11-04 10:35:39 24 4
gpt4 key购买 nike

使用/etc/rc.local 来初始化依赖于网络的服务是否安全?

我正在使用它来启动一项服务,该服务在启动过程中向网络发出一些请求。偶尔会发生服务启动失败的情况(并非总是如此)。

这是我遇到的错误:

2016-06-07T12:01:48.724+0000 W NETWORK [ReplicationExecutor] getaddrinfo("my_machine_local_dns") 失败:名称或服务未知

当它失败时,如果我尝试在机器启动完成后手动初始化服务,没有错误。

我正在考虑任何比赛条件。示例:失败是因为服务在网络加载完成之前启动或类似原因。

我在 aws vpc 中使用 centos,相关服务在 docker 容器中运行。

最佳答案

您的服务在启动时失败,因为您的实例位于私有(private)子网中。私有(private)子网中的实例在完全创建之前没有互联网连接。一旦在私有(private)子网中完全创建了实例,他们就开始与 NAT 实例对话,然后获得互联网连接。这就是为什么在启动时运行它会失败的原因。

Is it safe to use /etc/rc.local to initialize services that depend on the network?

/usr/local/确实是正确的地方,而/opt 确实是为第三方应用程序准备的; “/opt 保留用于安装附加应用程序软件包。”根据最佳实践。

关于linux - 使用 rc.local 启动网络依赖服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37704929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com