查看源代码 erl_boot_server (kernel v10.2)

用于其他 Erlang 机器的引导服务器。

此服务器用于帮助从另一台机器获取所有 Erlang 代码的无盘 Erlang 节点。

如果 Erlang 运行时系统使用命令行标志 -loader inet 启动,则此服务器用于获取所有代码,包括启动脚本。使用命令行标志 -hosts Host 指定的所有主机都必须运行此服务器的一个实例。

此服务器可以使用 Kernel 配置参数 start_boot_server 启动。

erl_boot_server 可以读取常规文件和存档文件。请参阅 ERTS 中的 codeerl_prim_loader

警告

对从存档文件加载代码的支持是实验性的。它在准备就绪之前发布,以获得早期的反馈。文件格式、语义、接口等可能会在未来的版本中更改。

另请参阅

erts:init, erts:erl_prim_loader

摘要

函数

Slave 节点添加到允许的从属主机列表。

从允许的从属主机列表中删除 Slave 节点。

启动引导服务器。Slaves 是允许使用此服务器作为引导服务器的主机的 IP 地址列表。

启动引导服务器并链接到调用者。如果在监督树中包含此服务器,则使用此函数来启动服务器。

返回当前允许的从属主机列表。

函数

-spec add_slave(Slave) -> ok | {error, Reason}
                   when
                       Slave :: Host,
                       Host :: inet:ip_address() | inet:hostname(),
                       Reason :: {badarg, Slave}.

Slave 节点添加到允许的从属主机列表。

-spec delete_slave(Slave) -> ok | {error, Reason}
                      when
                          Slave :: Host,
                          Host :: inet:ip_address() | inet:hostname(),
                          Reason :: {badarg, Slave}.

从允许的从属主机列表中删除 Slave 节点。

-spec start(Slaves) -> {ok, Pid} | {error, Reason}
               when
                   Slaves :: [Host],
                   Host :: inet:ip_address() | inet:hostname(),
                   Pid :: pid(),
                   Reason :: {badarg, Slaves}.

启动引导服务器。Slaves 是允许使用此服务器作为引导服务器的主机的 IP 地址列表。

-spec start_link(Slaves) -> {ok, Pid} | {error, Reason}
                    when
                        Slaves :: [Host],
                        Host :: inet:ip_address() | inet:hostname(),
                        Pid :: pid(),
                        Reason :: {badarg, Slaves}.

启动引导服务器并链接到调用者。如果在监督树中包含此服务器,则使用此函数来启动服务器。

-spec which_slaves() -> Slaves
                      when
                          Slaves :: [Slave],
                          Slave :: {Netmask :: inet:ip_address(), Address :: inet:ip_address()}.

返回当前允许的从属主机列表。