在远程位置处控制节点的自动部署的制作方法
未命名
07-27
阅读:64
评论:0

1.本公开一般涉及可在计算环境中使用的控制节点。更具体地,但不作为限制,本公开涉及在远程位置处控制节点的自动部署。
背景技术:
2.诸如云计算环境和计算集群之类的分布式计算环境最近越来越受欢迎。这些计算环境可以包括用于执行各种计算任务的大量节点(例如,物理机或虚拟机)。考虑到一些分布式计算环境的复杂性,已经开发了帮助更有效地管理它们的自动化框架。这些自动化框架可以帮助自动化分布式计算环境的各个方面的部署、配置和管理。
3.一个流行的自动化框架是的ansible。ansible是可以帮助部署应用、更新工作站和服务器、云供应、配置管理以及针对系统管理员的许多其他功能的软件工具。在ansible,存在两类计算机:控制节点和受管节点(managed node)。控制节点通常运行ansible并管理受管节点。受管节点可以是由控制节点管理的任何计算设备。控制节点可以将称为“模块”的小软件程序发送到可以运行模块的受管节点。当被执行时,模块可以配置受管节点以符合目标状态。一旦它们完成执行,就可以从受管节点中移除模块。以这种方式,模块可以在它们执行并且然后被移除的持续时间内临时存储在受管节点上。
4.在ansible中,模块提供了完成期望的自动化任务的手段,但是使用模块的方式由“脚本簿(playbook)”管理。脚本簿是以人类可读语言草拟的配置文件,其提供了用于将受管节点转换为目标状态所需做出的指令。脚本簿通常以yaml非标记语言(yaml)格式编写,尽管其他格式也是可能的。
附图说明
5.图1是根据本公开的一些方面的用于将控制节点自动部署到远程位置的系统的示例的框图。
6.图2是根据本公开的一些方面的用于将控制节点自动部署到远程位置的系统的示例的框图,其中各个项目存储在除用户设备之外的源位置处。
7.图3是根据本公开的一些方面的控制节点被部署在虚拟机或容器内的远程位置处的系统的示例的框图。
8.图4是根据本公开的一些方面的其中控制节点经由用户设备与受管节点通信的系统的示例的框图。
9.图5是根据本公开的一些方面的其中控制节点部署在多个远程位置处的系统的示例的框图。
10.图6是根据本公开的一些方面的用于将控制节点自动部署到远程位置的计算设备的示例的框图。
11.图7是根据本公开的一些方面的用于将控制节点自动部署到远程位置的处理的示例的流程图。
12.图8是根据本公开的一些方面的与远程位置处的控制节点相对应的计算设备的示例的框图。
13.图9是根据本公开的一些方面的用于将控制节点自动部署到远程位置的处理的另一示例的流程图。
具体实施方式
14.一些自动化框架(例如,ansible)涉及控制节点和一个或多个受管节点。控制节点可以是被配置为管理受管节点的任何物理机或虚拟机。受管节点可以是由控制节点管理的任何物理机或虚拟机。在一些情况下,控制节点可以通过配置受管节点使得它们符合目标状态来管理受管节点。该配置处理可以涉及控制节点向受管节点发送命令或模块,以用于在受管节点上安装操作系统、应用和其他软件并配置其设置。
15.通常,系统管理员使用他们自己的计算机作为控制节点。为此,系统管理员在他们的计算机上手动下载并安装控制节点软件(例如,ansible),提供用于配置控制节点软件本身的配置文件,提供由控制节点在连接到受管节点时使用的连接信息,以及提供由控制节点在管理受管节点时使用的配置脚本(例如,playbook)。系统管理员还可能需要提供其他数据来实现控制节点。该手动处理可能是耗时且乏味的。并且一旦部署了控制节点,它就在系统管理员自己的计算机上执行,消耗该计算机的资源(例如,cpu、ram、存储器和网络资源)。这可能阻止该计算机用于其他处理,或者可能负面地影响在计算机上执行的其他处理。如果系统管理员决定替换使用不同的计算机作为控制节点,则系统管理员可能需要再次手动执行全部这些操作。
16.本公开的一些示例可以通过在由用户(诸如系统管理员)选择的远程位置处自动部署控制节点来克服上述问题中的一个或多个。例如,用户可以具有用户设备,诸如膝上型计算机、台式计算机或平板电脑。用户设备可以包括控制节点部署模块(cndm)。用户可以向cndm输入远程位置,其中远程位置可以是与用户设备分离的任何位置。远程位置的一个示例可以是与用户设备分离的分布式计算环境。基于该输入,cndm然后可以使控制节点软件被下载并安装在远程位置。cndm还可以向远程位置提供由控制节点在连接到一个或多个受管节点时使用的连接信息、用于配置控制节点的配置文件、以及由控制节点在管理受管节点时使用的配置脚本。远程位置可以使用控制节点软件来部署具有根据配置文件配置的设置的控制节点的实例。一旦部署在远程位置处,控制节点然后就可以使用连接信息连接到受管节点,并且执行配置脚本以管理受管节点的一个或多个方面。以这种方式,可以使用cndm在远程位置处快速且容易地部署控制节点。
17.在一些示例中,远程位置处的控制节点可以基于其对一个或者多个受管节点的管理来生成日志数据。例如,当控制节点执行配置脚本以配置受管节点时,控制节点可以记录发生的一个或多个事件。控制节点可以(例如,实时地)将日志数据发送回用户设备,使得用户可以容易地监视控制节点的管理活动。通过将日志数据发送回用户设备,用户仍然可以监视控制节点的管理活动,即使它们已经被卸载到远程位置。
18.在一些示例中,用户可以决定将控制节点从第一远程位置移动到第二远程位置。为此,用户可以使用cndm。例如,用户可以输入要执行控制节点的第二远程位置。基于该输入,cndm可以将控制节点软件、连接信息、配置文件和配置脚本发送到第二远程位置,并在
第二远程位置处发起控制节点的新实例的部署。一旦控制节点部署在第二远程位置处,cndm就可以向第一远程位置发送命令,以使得第一远程位置关闭控制节点的当前运行实例并移除与其相关联的任何文件。移除所述文件可以节省在第一远程位置处的存储器和存储空间。通过等到在第二远程位置处部署控制节点之后再在第一远程位置处关闭控制节点,可避免执行间隙。这可以允许以相对连续的方式管理受管节点。
19.在一些示例中,cndm可以基于在第一远程位置处的一个或多个事件将控制节点从第一远程位置自动移动到第二远程位置。例如,cndm可以接收第一远程位置的存储器、处理能力或其他计算资源低的指示。响应于接收到该指示,cndm可以发起控制节点从第一远程位置到第二远程位置的转移。这可以帮助释放在第一远程位置处的计算资源以用于其他任务。可以以上面描述的方式实现转移。
20.在一些示例中,用户设备可以用作控制节点和受管节点之间的媒介(例如,而不是用作控制节点更直接地管理受管节点)。例如,控制节点可以基于配置脚本将控制数据发送到用户设备。用户设备可以接收控制数据并将其转发到受管节点。因为在该布置中控制节点不需要连接到受管节点,所以连接信息可以不被发送到远程位置。这可以提高系统的安全性,因为敏感信息(诸如用于与受管节点进行认证的认证数据)可以被维护在用户设备上,而不是被发送到远程位置并存储在远程位置处。
21.给出这些说明性示例是为了向读者介绍这里讨论的一般主题,而不旨在限制所公开的概念的范围。以下部分参考附图描述了各种附加特征和示例,其中相似的附图标记指示相似的元件,但是与说明性示例类似,不应用于限制本公开。
22.图1是根据本公开的一些方面的用于在远程位置处自动部署控制节点的系统100的示例的框图。系统100包括用户设备102,诸如膝上型计算机、台式计算机或平板电脑。用户设备102可以由用户122(诸如系统管理员)操作,以在远程位置114处自动部署控制节点。
23.更具体地,用户设备102可以包括被配置为辅助在远程位置114处自动部署控制节点118的控制节点部署模块(cndm)104。cndm 104可以从用户122接收指示要部署控制节点118的远程位置114的输入124。例如,用户输入可以指定远程位置114的名称或互联网协议(ip)地址。远程位置114可以是或包括与用户设备102分离的任何计算设备。在一些示例中,远程位置114可以对应于分布式计算环境,诸如云计算环境。基于接收到输入124,cndm 104可以发起用于在远程位置114处自动部署控制节点118的部署处理。
24.在一些示例中,部署处理可以涉及cndm 104经由一个或多个网络116(诸如局域网或互联网)将控制节点软件106发送到远程位置114。控制节点软件106是用于控制节点118的底层软件。在一些示例中,控制节点软件106是可执行以在计算环境中部署控制节点118的实例的二进制文件。在其他示例中,控制节点软件106是源代码,其可以被编译成二进制文件并被执行以在计算环境中部署控制节点118的实例。该编译可以发生在用户设备102上或在远程位置114处。无论哪种方式,控制节点软件106都可以定义用于控制节点118的程序逻辑。将控制节点软件106发送到远程位置114可以允许远程位置114部署控制节点118的实例。
25.在一些示例中,部署处理还可以涉及cndm 104经由一个或多个网络116将配置文件112发送到远程位置114。配置文件112可以包括用于控制节点118的设置。设置的示例可以包括用于环境变量的值。将配置文件112发送到远程位置114可以允许远程位置114根据
配置文件112中的设置来配置控制节点118。该配置可以在任何合适的时间发生,诸如在控制节点118启动之前、在其启动处理期间或在其启动处理之后。
26.在一些示例中,部署处理还可以涉及cndm 104经由一个或多个网络116将配置脚本108发送到远程位置114。配置脚本108的示例可以包括ansible脚本簿。配置脚本108可以包括用于配置一个或多个受管节点120a-n的指令。指令可以以人类可读格式(诸如yaml或json格式)编写,并且可以由控制节点118解译。将配置脚本108发送到远程位置114可以允许控制节点118以期望的方式配置受管节点120a-n。
27.在一些示例中,部署处理还可以涉及cndm 104经由一个或多个网络116将连接信息110发送到远程位置114。连接信息110可以包括用于建立与受管节点120a-n的网络连接的任何合适的信息。连接信息110的示例可以包括每个受管节点的标识符(例如,名称或ip地址)和每个受管节点的认证数据。将连接信息110发送到远程位置114可以允许控制节点118建立到受管节点120a-n的网络连接,使得控制节点118可以与受管节点120a-n通信。
28.一旦cndm 104已经将上述项目中的一些或全部发送到远程位置114,cndm 104就可以将一个或多个命令发送到远程位置114,以使远程位置114部署控制节点118的实例。可以使用控制节点软件106来部署实例,并使用配置文件112来配置实例。一旦部署,控制节点118就可以使用连接信息110建立到受管节点120a-n的网络连接(例如,经由一个或多个网络116)。受管节点120a-n可以是也包括控制节点118的分布式计算环境的一部分,或者受管节点120a-n可以是不包括控制节点118的分布式计算环境的一部分。
29.在建立到受管节点120a-n的网络连接之后,控制节点118可以执行配置脚本108以配置受管节点120a-n。这可以涉及控制节点118向受管节点120a-n发送控制数据128(例如,控制命令或控制模块)。控制数据128可以被配置为调整受管节点120a-n的配置以实现由配置脚本108定义的目标状态。
30.在一些示例中,受管节点120a-n可以是可由一个或多个用户用于执行计算任务的分布式计算环境的一部分。例如,远程位置114可以是多个用户可能已经向其支付订阅的云计算环境。在该示例中,受管节点120a-n可以向用户提供云资源。也就是说,受管节点120a-n可以按需向用户提供其计算资源,以允许用户在云计算环境中执行一个或多个计算任务。在一些这样的示例中,控制节点118可以专用于管理受管节点120a-n,并且因此控制节点118的计算资源可以不是用户可用的资源池的一部分。
31.在一些示例中,控制节点308可以生成日志数据126。日志数据126可以指示与控制节点308的管理有关的事件。例如,日志数据126可以指示由配置脚本108定义的一些或全部配置处理对于给定的受管节点成功或失败。作为另一示例,日志数据126可以指示在受管节点120a-n上发生的一个或多个事件。然后,控制节点308可以将日志数据126发送到用户设备102。这可以允许用户122保持关于管理活动的更新。
32.尽管图1示出了一定数量和布置的部件,但这旨在是说明性的而非限制性的。其它示例可以包括更多的组件、更少的组件、不同的组件或图1中所示的组件的不同布置。例如,在另一示例中,用户设备102、控制节点118、受管节点120a-n或这些的任何组合可以是相同分布式计算环境的一部分。
33.图2中示出了替代系统配置的一个示例。如所示出的,一个或多个项目(例如,控制节点软件106、配置脚本108、连接信息110和配置文件112)可以存储在与用户设备102不同
的一个或多个位置处,在本文中称为源位置202。源位置202的示例可以包括网站、存储库、服务器、数据库或这些的任何组合。在一些这样的示例中,用户设备102可命令远程位置114从源位置202下载那些项目中的一些或全部。结果,用户设备102可以能够排除那些项目中的一些或全部,并且可以不将那些项目发送到远程位置114。这可以帮助节省用户设备102的存储器、带宽和处理能力。
34.图3示出了根据本公开的一些方面的控制节点118被部署在虚拟机(vm)或容器302内的远程位置114处的示例的框图。虚拟机和容器是软件可以在其中执行的不同类型的相对隔离的虚拟环境。vm和容器二者都可以从映像文件部署,并且可以包括它们自己的隔离操作系统、库和运行时环境。在一些示例中,cndm 104可以与远程位置交互以提供vm或容器302,并且随后在其中部署控制节点118。可替代地,控制节点软件106可以存储在映像文件中,当在远程位置114上运行时,该映像文件自动地将控制节点118部署在虚拟机或容器302内。在一些这样的示例中,将控制节点软件106发送到远程位置114可以涉及将包含控制节点软件106的映像文件发送到远程位置114。
35.图4示出了根据本公开的一些方面的其中控制节点118经由用户设备102与受管节点120a-n通信的系统的示例的框图。在该示例中,用户设备102可以用作控制节点118和受管节点120a-n之间的媒介。控制节点118可以将控制数据128发送到用户设备102,用户设备102可以将控制数据128转发到受管节点120a-n。控制数据128可以由控制节点118基于配置文件112生成。在该示例中,控制节点118可以排除连接信息110,并且可以不与受管节点120a-n建立网络连接。相反,用户设备102可以使用连接信息110来建立与受管节点120a-n的网络连接,以用于向其转发控制数据128。例如,如果连接信息110包括诸如认证数据的敏感信息,则这可以提高系统的安全性,因为敏感信息被维护在用户设备102上而不是被发送到远程位置114。
36.图5示出了根据本公开的一些方面的其中控制节点118a-b部署在多个远程位置114、504处的系统的示例的框图。在该示例中,用户122可以提供指示控制节点118将被部署到的新的远程位置504的用户输入508。基于用户输入508,cndm 104可以执行上面描述的关于新的远程位置504部署处理,以在新的远程位置504处自动部署控制节点118b的新实例。例如,cndm 104可以将控制节点软件106、配置脚本108、连接信息110和配置文件112发送到新的远程位置504。cndm 104然后可以将一个或多个命令发送到新的远程位置504,以使新的远程位置504部署控制节点118b的另一个实例。
37.在一些示例中,在两个远程位置114、504处运行的控制节点118a-b可以彼此并行地实现配置脚本108的各方面。例如,控制节点118a可以相对于受管节点120a中的一个执行配置脚本108,并且控制节点118b可以相对于受管节点120b中的另一个执行配置脚本108。作为另一示例,控制节点118a可以相对于受管节点120a执行配置脚本108的第一部分,并且控制节点118b可以相对于相同的受管节点120a执行配置脚本108的第二部分。这些概念可以进一步扩展以应用于在任何数量的远程位置处的任何数量的控制节点。使用多个控制节点118a-b来并行执行这样的管理操作可以加快执行管理操作的速度并减少每个单独的控制节点上的负载。
38.在一些示例中,用户设备102可以基于它们与受管节点120a-n的地理接近度来选择远程位置114和新的远程位置504。例如,远程位置114和新的远程位置504可以比其他候
选远程位置在地理上更靠近受管节点120a-n。作为结果,用户设备102可以选择远程位置114和新的远程位置504来部署控制节点118a-b。这可以减少时延。附加地或备选地,用户设备102可以基于控制节点118a-b与受管节点120a-n之间的地理接近度来确定控制节点118a-b如何管理受管节点120a-n。例如,用户设备102可以基于控制节点118a与受管节点120a之间的地理距离小于控制节点118b与受管节点120a之间的另一地理距离来配置控制节点118a以管理受管节点120a。作为另一示例,用户设备102可以基于控制节点118b与受管节点120b之间的地理距离小于控制节点118a与受管节点120b之间的另一地理距离来配置控制节点118b以管理受管节点120b。通过选择最接近的控制节点118来管理特定的受管节点,可以进一步减少时延。
39.在一些示例中,在另一控制节点118b部署在新的远程位置504处之后,可以关闭在远程位置114处运行的控制节点118a。例如,cndm 104可以接收在新位置处的控制节点118b的部署处理完成的指示。响应于接收到该指示,cndm 104可以向远程位置114发送命令以关闭控制节点118a并移除任何相关文件(例如,控制节点软件106、配置脚本108、连接信息110和配置文件112)。以这种方式,控制节点118可以以防止管理间隙的方式从远程位置114迁移到新的远程位置504,使得存在对受管节点120a-b的基本上连续的管理。
40.在一些示例中,控制节点118b可以响应于在远程位置114处发生的一个或多个事件310而自动部署到新的远程位置504。这样的事件310的示例可以包括远程位置114消耗超过阈值量的处理能力、电力、存储器、存储空间、网络带宽或这些的任何组合。例如,用户设备102可以(例如,周期性地)接收关于远程位置114的一个或多个度量,诸如在远程位置114处的可用存储器、cpu、存储和网络带宽的量。如果度量中的一个或多个超过预定阈值水平,则cndm 104可以在一个或多个其他远程位置(诸如新的远程位置504)处自动部署控制节点118a的一个或多个其他实例。然后,多个实例可以并行操作,例如以减轻控制节点118a上的负载。作为另一示例,如果度量中的一个或多个超过预定义阈值水平,则cndm 104可以将控制节点118a从远程位置114自动迁移到新的远程位置504,其可以具有更大的计算能力并且因此可以更能够处理负载。将控制节点从远程位置114迁移到新的远程位置504可以释放远程位置114以执行其他任务,或者可以提高在远程位置114处执行现有任务的速度。
41.图6示出了根据本公开的一些方面的用于将控制节点118自动部署到远程位置114的计算设备600的示例的框图。计算设备600的示例可以包括膝上型计算机、台式计算机、可穿戴设备或平板电脑。在一些示例中,计算设备600可以对应于图1的用户设备102。
42.计算设备600包括与存储器设备604通信地耦合的处理器602。处理器602可以包括一个处理设备或多个处理设备。处理器602的示例包括现场可编程门阵列(fpga)、专用集成电路(asic)、微处理器等。处理器602可以执行存储在存储器设备604中的指令606以执行操作。指令606可以包括由编译器或解译器从以任何合适的计算机编程语言(诸如c、c++、c#等)编写的代码生成的处理器特定指令。在一些示例中,指令606可以包括上述控制节点部署模块104。
43.存储器设备604可以包括一个存储器设备或多个存储器设备。存储器设备604可以是非易失性的,并且可以包括在断电时保留存储的信息的任何类型的存储器设备。存储器设备604的示例包括电可擦除和可编程只读存储器(eeprom)、闪存或任何其他类型的非易失性存储器。存储器设备中的至少一些可以包括计算机可读介质,处理器602可以从该计算
机可读介质读取指令606。计算机可读介质可以包括能够向处理器602提供计算机可读指令或其他程序代码的电子、光学、磁性或其他存储设备。计算机可读介质的示例包括(一个或多个)磁盘、(一个或多个)存储器芯片、rom、随机存取存储器(ram)、asic、配置的处理器、光学存储装置或计算机处理器可以从其读取指令606的任何其他介质。
44.在一些示例中,处理器602可以执行指令606以执行上述操作中的一些或全部。例如,处理器602可以接收指示要部署控制节点118的远程位置114的输入124。基于接收到输入,处理器602可以在远程位置114处自动设置控制节点118。为此,处理器602可以与远程位置114交互以在远程位置114处部署控制节点118的实例。处理器602还可以向远程位置114提供配置脚本108以供实例在配置一个或者多个受管节点120a-n时使用。处理器602还可以向远程位置114提供连接信息110,以供实例在建立到一个或者多个受管节点120a-n的网络连接(例如,经由一个或者多个网络116的连接)时使用。一旦建立了网络连接,处理器602就可以发起配置处理,其中控制节点118建立到一个或多个受管节点120a-n的网络连接,并且然后根据配置脚本108配置一个或多个受管节点120a-n。
45.在一些示例中,处理器602可以实现图7中所示的操作。其他示例可以包括比图7中所示的更多的步骤、更少的步骤、不同的步骤或不同的步骤组合。下面参考上面关于图6讨论的组件来讨论图7的步骤。
46.在框702中,处理器602接收指示要部署控制节点118的远程位置114的输入124(例如,来自用户)。输入124可以经由用户输入组件(诸如键盘、鼠标或触摸屏)来接收。输入124可以包括例如远程位置114的名称或ip地址。
47.在一些示例中,输入124可以指示一组远程位置,其中该组远程位置可以包括远程位置114以及其他远程位置。例如,可以存在多组远程位置。组中的远程位置可以具有共同的(相似或相同的)属性。例如,组中的所有远程位置可以具有类似的速度、类型、服务提供商或地理位置。每个组可以具有名称或其他标识符。输入124可以指定要从中选择远程位置114的目标组。基于接收到输入124,处理器602然后可以从目标组中选择远程位置114。处理器602可以随机地或基于预定义的选择标准从目标组中选择远程位置114。在一些示例中,预定义的选择标准可以被配置为在选择处理中使某些远程位置优先于其他远程位置。可以基于任何数量的因素和因素的组合来确定用于远程位置的优先级,诸如远程位置的可用性、速度、地理位置、计算资源或容量。预定义的选择标准还可以考虑附加考虑或其他考虑。
48.在框704中,处理器602在远程位置114处自动设置控制节点118。这可以涉及执行子操作706-710。
49.在框706中,处理器602与远程位置114交互以在远程位置114处部署控制节点118的实例。例如,处理器602可以经由一个或多个网络116将控制节点软件发送到远程位置114。然后,处理器602可以向远程位置114发送一个或多个命令,以使远程位置114执行控制节点软件。
50.在框708中,处理器602向远程位置114提供配置脚本108以供实例在配置一个或多个受管节点120a-n时使用。例如,处理器602可以经由一个或多个网络116将配置脚本108发送到远程位置114。
51.在框710中,处理器602向远程位置114提供连接信息110,以供实例在建立到一个或多个受管节点120a-n的网络连接(例如,经由一个或多个网络116的连接)时使用。例如,
处理器602可以经由一个或多个网络116将连接信息110发送到远程位置114。
52.在框712中,处理器602发起配置处理,在所述配置处理中,控制节点118建立到一个或多个受管节点120a-n的网络连接,并且随后根据配置脚本108配置一个或多个受管节点120a-n。例如,处理器602可以将一个或多个命令发送到控制节点118,以使控制节点118建立网络连接并执行配置脚本108中指定的操作。
53.图8示出了根据本公开的一些方面的与控制节点118相对应的计算设备800的示例的框图。计算设备800包括与存储器设备804通信地耦合的处理器802。处理器802可以包括一个处理设备或多个处理设备。处理器802的示例包括现场可编程门阵列(fpga)、专用集成电路(asic)、微处理器等。处理器802可以执行存储在存储器设备804中的指令806以执行操作。指令806可以包括由编译器或解译器从以任何合适的计算机编程语言(诸如c、c++、c#等)编写的代码生成的处理器特定指令。
54.存储器设备804可以包括一个存储器设备或多个存储器设备。存储器设备804可以是非易失性的,并且可以包括在断电时保留存储的信息的任何类型的存储器设备。存储器设备804的示例包括电可擦除和可编程只读存储器(eeprom)、闪存或任何其他类型的非易失性存储器。存储器设备中的至少一些可以包括计算机可读介质,处理器802可以从该计算机可读介质读取指令806。计算机可读介质可以包括能够向处理器802提供计算机可读指令或其他程序代码的电子、光学、磁性或其他存储设备。计算机可读介质的示例包括(一个或多个)磁盘、(一个或多个)存储器芯片、rom、随机存取存储器(ram)、asic、配置的处理器、光学存储装置或计算机处理器可以从其读取指令806的任何其他介质。
55.在一些示例中,处理器802可以执行指令806以执行上述操作中的一些或全部。例如,处理器802从计算设备812(诸如图1的用户设备102)接收命令810。处理器802可以经由一个或多个网络116接收命令810。命令810可以用于在计算环境808中部署控制节点118。在一些示例中,计算环境808可以是包括多个节点的分布式计算环境,其中一个节点可以是计算设备800。
56.基于接收到命令810,处理器802可以在计算环境808中部署控制节点118的实例。例如,处理器802可以为虚拟机或容器提供在其中运行的控制节点118的实例。处理器802还可以(例如,从计算设备812)接收配置脚本108和连接信息110。然后,处理器802可以基于连接信息110在控制节点118与一个或多个受管节点120a-n之间建立网络连接。在建立网络连接之后,处理器802可以发起配置处理,在所述配置处理中,控制节点118根据配置脚本108配置一个或多个受管节点120a-n。尽管受管节点120a-n在图8中被示出为与计算环境808分离,但是应当理解,在其他示例中,受管节点120a-n可以是计算环境808的一部分。
57.在一些示例中,处理器802可以实现图9中所示的操作。其他示例可以包括比图9中所示的更多的步骤、更少的步骤、不同的步骤或不同的步骤组合。下面参考上面关于图8讨论的组件来讨论图9的步骤。
58.在框902中,处理器802从计算设备812接收命令810以在计算环境808中部署控制节点118。处理器802可以是计算设备800的一部分,其可以被认为是相对于计算设备812的远程位置。在一些示例中,计算环境808可以是包括多个节点的分布式计算环境,多个节点中的其中一个节点可以是计算设备800。
59.在框904中,处理器802在计算环境808中部署控制节点118的实例。例如,处理器
802可以为虚拟机或容器提供在其中运行的控制节点118的实例。
60.在框906中,处理器802(例如,从计算设备812)接收配置脚本108。处理器802可以经由一个或多个网络116接收配置脚本108。配置脚本108可以包括一个配置脚本108或多个配置脚本。配置脚本108指定要由控制节点118执行以配置至少一个受管节点的至少一个方面的操作。
61.在框908中,处理器802(例如,从计算设备812)接收连接信息110。处理器802可以经由一个或多个网络116接收连接信息110。连接信息110是可用于与一个或多个受管节点120a-n建立网络连接的信息。
62.在框910中,处理器802基于连接信息110在控制节点118与一个或多个受管节点120a-n之间建立网络连接。例如,连接信息110可以包括ip地址和认证数据(例如,用户名和密码)集。处理器802可以使用ip地址和认证数据集来经由一个或多个网络116与每个受管节点120a-n建立网络连接。
63.在框912中,处理器802可以发起配置处理,其中控制节点118根据配置脚本108配置一个或多个受管节点120a-n。例如,处理器802可以执行在配置脚本108中定义的操作,以配置一个或多个受管节点120a-n的一个或多个方面。处理器802可以顺序地或并行地执行操作。可以被配置的受管节点120a-n的一些方面包括例如它们的操作系统、应用软件、库、运行时环境变量、网络配置或这些的任何组合。
64.在一些方面,根据以下示例中的一个或多个,可以在计算环境中的远程位置处自动部署控制节点。如下所用,对一系列实施例的任何引用应理解为分离地引用那些示例中的每一个(例如,“示例1-4”应理解为“示例1、2、3或4”)。
65.示例#1:一种包括程序代码的非暂时性计算机可读介质,所述程序代码可由处理器执行以使所述处理器:接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息以供所述实例在建立到所述一个或多个受管节点的网络连接时使用;以及发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。
66.示例#2:示例#1的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器通过以下方式在所述远程位置处自动设置所述控制节点的程序代码:向所述远程位置提供配置文件以用于在所述远程位置处配置所述控制节点的所述实例,所述配置文件不同于所述配置脚本且专门用于配置所述控制节点。
67.示例#3:示例#1-2中任一项的非暂时性计算机可读介质,其中,连接信息包括在一个或多个受管节点中的每个受管节点的相应标识符。
68.示例#4:如示例#1-3中任一项所述的非暂时性计算机可读介质,其中,所述连接信息包括供所述控制节点的所述实例在与所述一个或多个受管节点的认证处理中使用的认证数据,所述一个或多个受管节点要求认证处理在允许所述控制节点配置所述一个或多个受管节点之前被完成。
69.示例#5:如示例#1-4中任一项所述的非暂时性计算机可读介质,进一步包括可由
所述处理器执行以使所述处理器通过以下方式与所述远程位置交互以在所述远程位置处部署所述控制节点的所述实例的程序代码:与所述远程位置交互以在所述远程位置处供应虚拟机或容器;向远程位置提供用于控制节点的二进制文件;以及与所述远程位置交互以使所述二进制文件在所述虚拟机或所述容器内执行,使得所述控制节点的所述实例被部署在所述虚拟机或所述容器内。
70.示例#6:如示例#1-5中任一项所述的非暂时性计算机可读介质,其中,所述控制节点被包括在与所述一个或多个受管节点相同的计算环境中。
71.示例#7:如示例#1-6中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:在发起所述配置处理之后,从所述控制节点的所述实例接收日志数据,所述日志数据描述由所述控制节点记录的与所述配置处理相关的事件。
72.示例#8:如示例#1-7中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:确定所述控制节点将被移动到新的远程位置;以及基于确定所述控制节点将被移动到所述新的远程位置:通过以下方式在所述新的远程位置处生成所述控制节点的另一实例:与所述新的远程位置交互以在所述新的远程位置处部署所述控制节点的新实例;将所述配置脚本提供给所述新的远程位置以供所述新实例使用;以及将所述连接信息提供给所述新的远程位置以供所述新实例使用;以及与所述远程位置交互以关闭所述控制节点的实例。
73.示例#9:如示例#1-8中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器基于所述远程位置的特性或所述远程位置中的事件来确定所述控制节点将被移动到新的远程位置的程序代码。
74.示例#10:如示例#1-9中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:确定所述控制节点的至少两个实例将部署在至少两个远程位置;基于确定所述控制节点的所述至少两个实例将被部署在所述至少两个远程位置中:将所述控制节点的所述实例自动部署在所述远程位置处,所述实例是所述控制节点的第一实例,并且所述远程位置是所述至少两个远程位置中的第一远程位置;以及在所述至少两个远程位置中的第二远程位置处自动部署所述控制节点的第二实例;以及与所述至少两个远程位置交互,以使所述至少两个实例彼此并行地执行所述配置处理的方面。
75.示例#11:示例#10的非暂时性计算机可读介质,其中所述第一远程位置比所述第二远程位置在地理上更靠近所述一个或多个受管节点中的第一受管节点,并且其中所述第二远程位置比所述第一远程位置在地理上更靠近所述一个或多个受管节点中的第二受管节点,所述第一远程位置和所述第二远程位置是基于它们与所述第一受管节点和所述第二受管节点的相应地理接近度来选择的。在第一远程位置处的第一实例被配置为管理第一受管节点,并且第二远程位置处的第二实例被配置为管理第二受管节点。
76.示例#12:根据实例#1-11中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器进行以下操作的程序代码:基于所述配置脚本从所述控制节点接收控制数据;以及将所述控制数据发送到所述一个或多个受管节点,使得所述处理器充当所述控制节点与所述一个或多个受管节点之间的媒介。
77.示例#13:根据示例#1至12中任一项所述的非暂时性计算机可读介质,其中,所述输入指示一组远程位置,并且非暂时性计算机可读介质还包括可由所述处理器执行以使所述处理器根据预定义的选择标准从所述一组远程位置中选择所述远程位置的程序代码。
78.示例#14:一种方法,包括:由处理器接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,由所述处理器通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息以供所述实例在建立到所述一个或多个受管节点的网络连接时使用;以及由所述处理器发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。
79.示例#15:根据实例#14所述的方法,进一步包括通过以下方式在所述远程位置处自动设置所述控制节点:向所述远程位置提供配置文件,用于在所述远程位置处配置所述控制节点的所述实例,所述配置文件不同于所述配置脚本且专门用于配置所述控制节点。
80.示例#16:如示例#14-15中任一项所述的方法,进一步包括:确定所述控制节点将被移动到新的远程位置;以及基于确定所述控制节点将被移动到所述新的远程位置:通过以下方式在所述新的远程位置处生成所述控制节点的另一实例:与所述新的远程位置交互以在所述新的远程位置处部署所述控制节点的新实例;将所述配置脚本提供给所述新的远程位置以供所述新实例使用;以及将所述连接信息提供给所述新的远程位置以供所述新实例使用;以及与所述远程位置交互以关闭所述控制节点的实例。
81.示例#17:如示例#14-16中任一项所述的方法,进一步包括:确定所述控制节点的至少两个实例将被部署在至少两个远程位置中;基于确定所述控制节点的所述至少两个实例将部署在所述至少两个远程位置中:在所述远程位置处自动部署所述控制节点的所述实例,所述实例是所述控制节点的第一实例,并且所述远程位置是所述至少两个远程位置中的第一远程位置;以及在所述至少两个远程位置中的第二远程位置处自动部署所述控制节点的第二实例;以及与所述至少两个远程位置交互,以使所述至少两个实例彼此并行地执行所述配置处理的方面。
82.示例#18:如示例#14-17中任一项所述的方法,进一步包括:基于所述配置脚本从所述控制节点接收控制数据;以及将所述控制数据发送到所述一个或多个受管节点,使得所述处理器充当所述控制节点与所述一个或多个受管节点之间的媒介。
83.示例#19:如示例#14-18中任一项所述的方法,进一步包括:在发起所述配置处理之后,从所述控制节点的所述实例接收日志数据,所述日志数据描述由所述控制节点关于所述配置处理记录的事件。
84.示例#20:一种系统,包括:处理器;以及存储器,所述存储器包括指令,所述指令可由所述处理器执行以使所述处理器:接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息以供所述实例在建立到所述一个或多个受管节点的网络连接时使用;以及发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点的所述网络连接,并且随后根据所
述配置脚本来配置所述一个或多个受管节点。
85.示例#21:一种包括程序代码的非暂时性计算机可读介质,所述程序代码可由处理器执行以使所述处理器:从计算设备接收在计算环境中部署控制节点的命令;基于接收到所述命令,在所述计算环境中部署所述控制节点的实例;从所述计算设备接收配置脚本;从所述计算设备接收连接信息;基于所述连接信息在所述控制节点与一个或者多个受管节点之间建立网络连接;以及在建立所述网络连接之后,发起配置处理,在所述配置处理中,所述控制节点根据所述配置脚本来配置所述一个或多个受管节点。
86.示例#22:根据实例#21所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器在发起所述配置处理之前进行以下操作的程序代码:从所述计算装置接收配置文件,所述配置文件不同于所述配置脚本并且专门用于配置所述控制节点;以及基于所述配置脚本配置所述控制节点的所述实例。
87.示例#23:示例#21-22中任一项的非暂时性计算机可读介质,其中,连接信息包括一个或多个受管节点中的每个受管节点的相应标识符。
88.示例#24:如示例#21-23中任一项所述的非暂时性计算机可读介质,其中,所述连接信息包括供所述控制节点的所述实例在与所述一个或多个受管节点的认证处理中使用的认证数据,所述一个或多个受管节点要求所述认证处理在允许所述控制节点配置所述一个或多个受管节点之前被完成。
89.示例#25:根据示例#21-24中任一项所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器响应于接收到所述命令而执行以下操作的程序代码:在所述计算环境中提供虚拟机或容器;从所述计算设备接收用于所述控制节点的二进制文件;以及在所述虚拟机或所述容器内执行所述二进制文件,使得所述控制节点的所述实例被部署在所述计算环境中的所述虚拟机或所述容器内。
90.示例#26:如示例#21-25中任一项所述的非暂时性计算机可读介质,其中,所述控制节点是所述一个或多个受管节点中的受管节点的一部分。
91.示例#27:如示例#21-26中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:在所述配置处理期间生成日志数据,所述日志数据描述由所述控制节点关于所述配置处理记录的事件;以及将所述日志数据发送到所述计算设备。
92.示例#28:如示例#21-27中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:接收关闭所述控制节点的所述实例的其他命令;以及响应于接收到所述其他命令,关闭所述控制节点的所述实例。
93.示例#29:如示例#21-28中任一项所述的非暂时性计算机可读介质,进一步包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:基于所述配置脚本将控制数据发送到所述计算设备,所述计算设备被配置成将所述控制数据中继到所述一个或多个受管节点,使得所述计算设备用作所述控制节点与所述一个或多个受管节点之间的媒介。
94.示例#30:一种方法,包括:由处理器从计算设备接收在计算环境中部署控制节点的命令;基于接收到所述命令,由所述处理器在所述计算环境中部署所述控制节点的实例;由所述处理器从所述计算设备接收配置脚本;由所述处理器从所述计算装置接收连接信息;由所述处理器基于所述连接信息在所述控制节点与一个或者多个受管节点之间建立网
络连接;以及在建立所述网络连接之后,由所述处理器发起配置处理,在所述配置处理中所述控制节点根据所述配置脚本来配置所述一个或多个受管节点。
95.示例#31:根据实例#30所述的方法,进一步包括在发起所述配置处理之前:从所述计算装置接收配置文件,所述配置文件不同于所述配置脚本并且专门用于配置所述控制节点;以及基于所述配置脚本配置所述控制节点的所述实例。
96.示例#32:如示例#30-31中任一项所述的方法,其中,所述连接信息包括所述一个或多个受管节点中的每个受管节点的相应标识符。
97.示例#33:如示例#30-32中任一项所述的方法,其中,所述连接信息包括供所述控制节点的所述实例在与所述一个或多个受管节点的认证处理中使用的认证数据,所述一个或多个受管节点要求所述认证处理在允许所述控制节点配置所述一个或多个受管节点之前被完成。
98.示例#34:如示例#30-33中任一项所述的方法,进一步包括:响应于接收到所述命令:在所述计算环境中供应虚拟机或容器;从所述计算设备接收用于所述控制节点的二进制文件;以及在所述虚拟机或所述容器内执行所述二进制文件,使得所述控制节点的所述实例被部署在所述计算环境中的所述虚拟机或所述容器内。
99.示例#35:如示例#30-34中任一项所述的方法,其中,所述控制节点是所述一个或多个受管节点中的受管节点的一部分。
100.示例#36:如示例#30-35中任一项所述的方法,进一步包括:在所述配置处理期间生成日志数据,所述日志数据描述由所述控制节点关于所述配置处理记录的事件;以及将所述日志数据发送到所述计算设备。
101.示例#37:如示例#30-36中任一项所述的方法,进一步包括:接收关闭所述控制节点的所述实例的其他命令;以及响应于接收到所述其他命令,关闭所述控制节点的所述实例。
102.示例#38:如示例#30-37中任一项所述的方法,进一步包括:基于所述配置脚本将控制数据发送到所述计算设备,所述计算设备被配置成将所述控制数据中继到所述一个或多个受管节点,使得所述计算设备充当所述控制节点与所述一个或多个受管节点之间的媒介。
103.示例#39:一种系统,包括:处理器;以及存储器,所述存储器包括指令,所述指令可由所述处理器执行以使所述处理器:从计算设备接收在计算环境中部署控制节点的命令;基于接收到所述命令,在所述计算环境中部署所述控制节点的实例;从所述计算设备接收配置脚本;从所述计算设备接收连接信息;基于所述连接信息在所述控制节点与一个或者多个受管节点之间建立网络连接;以及在建立所述网络连接之后,发起配置处理,在所述配置处理中,所述控制节点根据所述配置脚本来配置所述一个或多个受管节点。
104.示例#40:一种系统,包括:用于接收指示要部署控制节点的远程位置的输入的装置;用于基于接收到所述输入,通过以下方式在所述远程位置处自动设置所述控制节点的装置:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息以供所述实例在建立到所述一个或多个受管节点的网络连接时使用;以及用于发起配置处理的部件,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点
的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。
105.某些示例(包括所示示例)的前述描述仅出于说明和描述的目的而呈现,并不旨在穷举或将本公开限制于所公开的精确形式。在不脱离本公开的范围的情况下,其许多修改、改编和使用对于本领域技术人员而言将是显而易见的。例如,本文描述的任何示例可以与任何其他示例组合以产生进一步的示例。
技术特征:
1.一种包括程序代码的非暂时性计算机可读介质,所述程序代码可由处理器执行以使所述处理器:接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息,以供所述实例在建立到所述一个或者多个受管节点的网络连接时使用;以及发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。2.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器通过以下方式在所述远程位置处自动设置所述控制节点的程序代码:向所述远程位置提供配置文件,用于在所述远程位置处配置所述控制节点的所述实例,所述配置文件不同于所述配置脚本并且专门用于配置所述控制节点。3.根据权利要求1所述的非暂时性计算机可读介质,其中,所述连接信息包括在所述一个或多个受管节点中的每个受管节点的相应标识符。4.根据权利要求3所述的非暂时性计算机可读介质,其中,所述连接信息包括供所述控制节点的所述实例在与所述一个或多个受管节点的认证处理中使用的认证数据,所述一个或多个受管节点要求所述认证处理在允许所述控制节点配置所述一个或多个受管节点之前被完成。5.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器通过以下方式与所述远程位置交互以在所述远程位置处部署所述控制节点的所述实例的程序代码:与所述远程位置交互以在所述远程位置处供应虚拟机或容器;向远程位置提供用于控制节点的二进制文件;以及与所述远程位置交互以使所述二进制文件在所述虚拟机或所述容器内执行,使得所述控制节点的所述实例被部署在所述虚拟机或所述容器内。6.根据权利要求1所述的非暂时性计算机可读介质,其中,所述控制节点被包括在与所述一个或多个受管节点相同的计算环境中。7.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:在发起所述配置处理之后,从所述控制节点的所述实例接收日志数据,所述日志数据描述由所述控制节点记录的与所述配置处理相关的事件。8.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:确定所述控制节点将被移动到新的远程位置;以及基于确定所述控制节点将被移动到所述新的远程位置:通过以下方式在所述新的远程位置处生成所述控制节点的另一实例:与所述新的远程位置交互以在所述新的远程位置处部署所述控制节点的新实例;
将所述配置脚本提供给所述新的远程位置以供所述新实例使用;以及将所述连接信息提供给所述新的远程位置以供所述新实例使用;以及与所述远程位置交互以关闭所述控制节点的所述实例。9.根据权利要求8所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器基于所述远程位置的特性或所述远程位置中的事件来确定所述控制节点将被移动到所述新的远程位置的程序代码。10.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:确定所述控制节点的至少两个实例将被部署在至少两个远程位置中;基于确定所述控制节点的所述至少两个实例将被部署在所述至少两个远程位置中:在所述远程位置处自动部署所述控制节点的所述实例,所述实例是所述控制节点的第一实例,并且所述远程位置是所述至少两个远程位置中的第一远程位置;以及在所述至少两个远程位置中的第二远程位置处自动部署所述控制节点的第二实例;以及与所述至少两个远程位置交互,以使所述至少两个实例彼此并行地执行所述配置处理的方面。11.根据权利要求10所述的非暂时性计算机可读介质,其中所述第一远程位置比所述第二远程位置在地理上更靠近所述一个或多个受管节点中的第一受管节点,并且其中所述第二远程位置比所述第一远程位置在地理上更靠近所述一个或多个受管节点中的第二受管节点,所述第一远程位置和所述第二远程位置是基于它们与所述第一受管节点和所述第二受管节点的相应地理接近度来选择的,在第一远程位置处的第一实例被配置为管理第一受管节点,并且第二远程位置处的第二实例被配置为管理第二受管节点。12.根据权利要求1所述的非暂时性计算机可读介质,还包括可由所述处理器执行以使所述处理器执行以下操作的程序代码:基于所述配置脚本从所述控制节点接收控制数据;以及将所述控制数据发送到所述一个或多个受管节点,使得所述处理器用作所述控制节点与所述一个或多个受管节点之间的媒介。13.根据权利要求1所述的非暂时性计算机可读介质,其中,所述输入指示一组远程位置,并且所述非暂时性计算机可读介质还包括可由所述处理器执行以使所述处理器根据预定义的选择标准从所述一组远程位置中选择所述远程位置的程序代码。14.一种方法,包括:由处理器接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,由所述处理器通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息,以供所述实例在建立到所述一个或者多个受管节点的网络连接时使用;以及由所述处理器发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多
个受管节点的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。15.根据权利要求14所述的方法,还包括通过以下方式在所述远程位置处自动设置所述控制节点:向所述远程位置提供配置文件,用于在所述远程位置处配置所述控制节点的所述实例,所述配置文件不同于所述配置脚本并且专门用于配置所述控制节点。16.根据权利要求14所述的方法,还包括:确定所述控制节点将被移动到新的远程位置;以及基于确定所述控制节点将被移动到所述新的远程位置:通过以下方式在所述新的远程位置处生成所述控制节点的另一实例:与所述新的远程位置交互以在所述新的远程位置处部署所述控制节点的新实例;将所述配置脚本提供给所述新的远程位置以供所述新实例使用;以及将所述连接信息提供给所述新的远程位置以供所述新实例使用;以及与所述远程位置交互以关闭所述控制节点的所述实例。17.根据权利要求14所述的方法,还包括:确定所述控制节点的至少两个实例将被部署在至少两个远程位置中;基于确定所述控制节点的所述至少两个实例将部署在所述至少两个远程位置中:在所述远程位置处自动部署所述控制节点的所述实例,所述实例是所述控制节点的第一实例,并且所述远程位置是所述至少两个远程位置中的第一远程位置;以及在所述至少两个远程位置中的第二远程位置处自动部署所述控制节点的第二实例;以及与所述至少两个远程位置交互,以使所述至少两个实例彼此并行地执行所述配置处理的方面。18.根据权利要求14所述的方法,还包括:基于所述配置脚本从所述控制节点接收控制数据;以及将所述控制数据发送到所述一个或多个受管节点,使得所述处理器用作所述控制节点与所述一个或多个受管节点之间的媒介。19.根据权利要求14所述的方法,还包括:在发起所述配置处理之后,从所述控制节点的所述实例接收日志数据,所述日志数据描述由所述控制节点记录的与所述配置处理相关的事件。20.一种系统,包括:处理器;以及存储器,所述存储器包括指令,所述指令可由所述处理器执行以使所述处理器:接收指示要部署控制节点的远程位置的输入;基于接收到所述输入,通过以下方式在所述远程位置处自动设置所述控制节点:与所述远程位置交互以在所述远程位置处部署所述控制节点的实例;向所述远程位置提供配置脚本以供所述实例在配置一个或多个受管节点时使用;以及向所述远程位置提供连接信息,以供所述实例在建立到所述一个或者多个受管节点的网络连接时使用;以及
发起配置处理,在所述配置处理中,所述控制节点建立到所述一个或多个受管节点的所述网络连接,并且随后根据所述配置脚本来配置所述一个或多个受管节点。
技术总结
根据本文描述的一些示例,可以在远程位置处自动部署控制节点。在一个示例中,系统可以通过执行各种操作在远程位置处自动设置控制节点。操作可以包括与远程位置交互以在远程位置处部署控制节点的实例。操作可以包括向远程位置提供配置脚本以供实例在配置一个或多个受管节点时使用。操作可以包括向远程位置提供连接信息,以供实例在建立到一个或多个受管节点的网络连接时使用。然后,系统可以发起配置处理,其中控制节点建立到一个或多个受管节点的网络连接,随后根据配置脚本配置一个或多个受管节点。受管节点。受管节点。
技术研发人员:A.布雷格曼 S.马塔
受保护的技术使用者:红帽公司
技术研发日:2022.03.17
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/