中间件安装方法、装置、计算机设备及存储介质与流程

文档序号:15998527发布日期:2018-11-20 19:09阅读:249来源:国知局

本发明涉及计算机技术领域,尤其涉及一种中间件安装方法、装置、计算机设备及存储介质。



背景技术:

当企业新增服务器时,一般需要在服务器上安装一些中间件,以使服务器可以运行应用程序,以发挥服务器的功能。目前服务器上的中间件安装很多都依赖手工参与,如运维人员在每个新增服务器上一个一个的安装对应的中间件。虽然有些企业已经做到安装中间件软件的功能,但是都是只停留在对中间件软件的简单安装,存在很多局限性,如有些步骤需要人工干预、如无法做到中间件的定制化配置和安装等。



技术实现要素:

本发明实施例提供一种中间件安装方法、装置、计算机设备及存储介质,可以达到中间件的定制化配置和安装。

第一方面,本发明实施例提供了一种中间件安装方法,该方法包括:

获取需安装中间件的服务器的相关信息。其中,所述服务器的相关信息包括所述服务器所处的环境信息、所述服务器的配置信息、所述服务器的IP地址;

根据所述配置信息中的操作系统信息,从预存的中间件相关信息中确定与所述操作系统信息匹配的第一类中间件;

根据所述服务器所处的环境信息,从所述第一类中间件中确定一个与所述服务器所处环境信息匹配的目标中间件以进行推荐;

判断用户是否接受推荐的所述目标中间件;

若用户接受推荐的所述目标中间件,设置所述目标中间件在所述服务器上用于提供服务的端口号;

若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中。

第二方面,本发明实施例提供了一种中间件安装装置,该装置包括用于执行上述第一方面所述的中间件安装方法对应的单元。

第三方面,本发明实施例提供了一种计算机设备,所述计算机设备包括存储器,以及与所述存储器相连的处理器;

所述存储器用于存储计算机程序,所述处理器用于运行所述存储器中存储的计算机程序,以执行上述第一方面所述的中间件安装方法。

第四方面,本发明实施例提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,实现上述第一方面所述的中间件安装方法。

本发明实施例通过获取需安装中间件的服务器的相关信息,从预存的中间件相关信息中确定与服务器相关信息匹配的目标中间件,若用户接受所述目标中间件,将所述目标中间件安装到所述服务器中。该实施例可以简化安装流程,达到中间件的定制化配置和安装。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一个应用场景示意图;

图2是本发明实施例提供的一种中间件安装方法的流程示意图;

图3是本发明实施例提供的中间件安装配置界面的示意图;

图4是本发明实施例提供的一种中间件安装方法的一子流程示意图;

图5是本发明实施例提供的中间件安装进度的示意图;

图6是本发明实施例提供的一种中间件安装方法的另一子流程示意图;

图7是本发明实施例提供的一种中间件安装装置的示意性框图;

图8是本发明实施例提供的安装单元的示意性框图;

图9是本发明实施例提供的添加单元的示意性框图;

图10是本发明实施例提供的一种计算机设备的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明实施例中提到的中间件(middleware)是基础软件的一大类,属于可复用软件的范畴,处于操作系统软件与用户的应用软件的中间。该中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。

图1是本发明实施例提供的一个应用场景示意图。在图1所示的应用场景中,分别包括中间件自动化安装平台(对应有web端)和服务器。其中,服务器的操作系统可以是liunx操作系统,也可以是OS操作系统,还可以是widows操作系统。在中间件自动化安装平台中,会根据企业的需求,添加不同中间件的相关信息,将不同中间件的相关信息作为预存的中间件相关信息。其中,不同中间件包括不同款不同版本的中间件。可理解为有多款不同中间件,每款中间件中可能会存在多个不同的版本。在中间件自动化安装平台中添加了中间件的相关信息后,再添加需安装中间件的服务器的相关信息,其中,服务器的相关信息包括服务器所处的环境信息、服务器的配置信息、服务器的IP地址等信息。在其他实施例中,若需安装中间件的服务器的相关信息已经存在,则直接获取该服务器的相关信息。根据服务器所处的环境信息和服务器的配置信息,从预存的中间件相关信息中确定一个匹配的目标中间件以进行推荐。判断用户是否接受推荐的目标中间件,若用户不接受推荐的目标中间件,接收用户选择的中间件,将用户所选择的中间件作为目标中间件。设置目标中间件在服务器上用于提供服务的端口号。最后若接收到安装指令,根据服务器的IP地址和设置的端口号,将目标中间件一键安装到服务器中。在一键安装的过程中,若出现安装异常等,会将报错信息反馈给用户,同时还会向用户展示安装的进度,以方便用户了解安装的进程。该方案根据服务器的相关信息从预存的中间件相关信息中确定一个匹配的目标中间件,并将该目标中间件一键安装到服务器中,简化了安装流程,同时根据服务器的相关信息来匹配中间件的安装版本,可以达到中间件的定制化配置和安装。

以下本发明提供的方法实施例运行于中间件自动化安装平台中。

图2是本发明实施例提供的一种中间件安装方法的流程示意图。该方法包括以下步骤S201-S207。

S201,获取需安装中间件的服务器的相关信息。其中,服务器的相关信息包括服务器所处的环境信息、服务器的配置信息、服务器的IP地址。

其中,服务器所处的环境信息包括网络环境、应用环境、应用场景。其中,应用环境包括测试环境、开发环境、生产环境(对接外部系统)以及测试环境、开发环境、生产环境所对应的服务器所在集群信息等。网络环境包括网络架构、请求的情况、并发量等。应用场景包括https加密传输、代理转发等,根据不同服务器实现功能的不同而不同。服务器的配置信息包括服务器的操作系统以及操作系统的版本等。其中,操作系统包括widows操作系统、liunx操作系统、OS操作系统等。

具体地,获取需安装中间件的服务器的相关信息,即步骤S201包括:判断是否已存在需安装中间件的服务器;若存在需安装中间件的服务器,获取所述服务器的相关信息;若不存在需安装中间件的服务器,添加服务器的相关信息。可根据服务器的IP地址来确定是否已存在所述服务器。如在输入框中输入服务器的IP地址,若检测到输入完毕(如输入的光标不在该输入框或者输入的总字符数达到IP地址所对应的字符数),根据服务器的IP地址来确定是否已存在所述服务器。其中,需安装中间件的服务器可以是一个,也可以是多个,那么对应的,获取一个或者多个服务器的相关信息。可以理解为,在一个或者多个不同的服务器上同时安装该中间件。即批量安装中间件到服务器上,如此,不必一个一个的安装中间件到每个需要安装中间件的服务器上,大大节省了时间、人力成本以及对应的工作量,提高了安装中间件的效率。

S202,根据服务器配置信息中的操作系统信息,从预存的中间件相关信息中确定与操作系统信息匹配的第一类中间件。

其中,中间件的相关信息包括中间件安装软件、与中间件安装软件匹配的应用环境、应用场景、操作系统等信息。其中,中间件安装软件包括中间件安装包、配置文件、中间件监控包等。其中,中间件监控包用于监控该中间件,如监控该中间件的运行状态,比如检测中间件是否可用,请求下载该中间件的量是否异常增大,或被黑客恶意攻击导致中间件异常等;配置文件中包括该中间件对应的版本、环境资源、调优后的参数配置等。其中,环境资源指的是在安装对应中间件之前,需要操作系统具备的一些环境资源,比如需要操作系统具备的一些函数库等,该环境资源可以让该中间件安装后可以在操作系统上正常运行。比如nginx中间件所对应的环境资源,包括GCC(GNU Compiler Collection)编译器、C++、pcre库、zlib库、OpenSSL库等。

具体地,根据服务器配置信息中的操作系统信息,从预存的中间件相关信息中确定与操作系统信息匹配的第一类中间件,即步骤S202,包括:根据服务器配置信息中的操作系统信息,判断获取的一个或多个服务器的操作系统是否为同一操作系统;若不为同一操作系统,删除不相同的操作系统所对应的服务器,以使剩余的服务器具有同一操作系统;若为同一个操作系统,则从预存的中间件相关信息中选择与操作系统匹配的第一类中间件。可以理解为,若需安装中间件的服务器只有一个,则直接从预存的中间件相关信息中选择并安装与服务器操作系统匹配的中间件,若需安装中间件对应的服务器有多个,那么多个服务器的操作系统需要相同,才可以批量安装同一款中间件。

S203,根据服务器所处的环境信息,从第一类中间件中确定一个与服务器所处环境信息匹配的目标中间件以进行推荐。

目标中间件是既与服务器的操作系统信息匹配,同时又与服务器所处环境信息匹配的中间件。

具体地,步骤S203,包括:根据服务器所处的环境信息,从第一类中间件中查找出与服务器所处环境信息匹配的中间件;判断与服务器所处环境信息匹配的中间件是否有多个;若有多个,按照预设规则从多个中选择一个中间件,作为与服务器所处环境信息匹配的目标中间件以进行推荐;若有一个中间件,将该一个中间件作为与服务器所处环境信息匹配的目标中间件以进行推荐。其中,若与服务器所处环境信息匹配的中间件有多个,可以理解为,与服务器所处环境信息匹配的中间件有多个不同的版本,该多个不同的版本都与服务器所处环境信息匹配。其中,按照预设规则从多个中间件中选择一个中间件,包括:按照版本最高的原则从多个中间件中选择一个中间件;或者按照安装率最高的原则从多个中间件中选择一个中间件;或者按照随机原则从多个中间件中随机选择一个中间件;或者按照版本、安装率结合的原则从个中间件中随机选择一个中间件;或者显示多个中间件,接收用户从多个中间件中选择的一个中间件;或者按照其他合适的原则从多个中间件中选择一个中间件。将所选择的中间件作为与服务器所处环境信息匹配的目标中间件。

S204,判断用户是否接受推荐的目标中间件。

在本实施例中,推荐的目标中间件显示在中间件自动化安装平台的web界面(如安装配置界面)中,具体地,如显示在安装配置界面中的中间件字段所对应的输入框或者选择框中。若检测到用户对所述输入框或者选择框中的数据进行编辑如进行删除,则确定用户不接受推荐的目标中间件;否则,确定用户接受推荐的目标中间件。其中,进行编辑可以理解为,对所述输入框或者选择框中的数据进行增加或者删除或修改,如若仅将光标放入所述输入框或者选择框中,而没有引起其他任何的操作,则视为没有进行编辑。

S205,若用户不接受推荐的目标中间件,接收用户选择的中间件,将用户选择的中间件作为目标中间件。

其中,接收用户选择的中间件,将用户选择的中间件作为目标中间件,包括:接收用户在中间件字段所对应的输入框中输入的中间件,将用户所输入的中间件作为目标中间件;或者在中间件字段所对应的选择框中显示与服务器相关信息匹配的中间件以供用户选择,接收用户在中间件字段所对应的选择框中选择的中间件,将用户所选择的中间件作为目标中间件。

S206,设置目标中间件在服务器上用于提供服务的端口号。

若用户接受推荐的目标中间件,或者用户不接受推荐的目标中间件,接收用户选择的目标中间件后,设置目标中间件在服务器上用于提供服务的端口号。端口号指的是TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。一台拥有IP地址的终端可以提供许多网络服务,比如Web服务、FTP服务、SMTP服务等。这些服务可以通过1个IP地址来实现,而IP地址与网络服务的关系是一对多的关系,因此实际上是通过“IP地址+端口号”来区分不同的服务的。

若需安装目标中间件的服务器有多个,所述设置所述目标中间件在所述服务器上用于提供服务的端口号,即步骤S206,包括:判断是否接收到使用不同端口号的标识;若接收到使用不同端口号的标识,调用设置多个端口号的接口;通过所述接口,分别设置多个服务器上用于提供服务的端口号;若未接收到使用不同端口号的标识,设置多个服务器用于提供服务的端口号为同一端口号。如在中间件自动化安装平台的web界面(如安装配置界面)上显示“使用不同端口号”的相关按钮,若检测到用户点击了该按钮,确定接收到使用不同端口号的标识,则调用设置多个端口号的接口,该接口可以通过多个输入框来表示,多个输入框中输入的数据与多个服务器一一对应。通过该接口分别设置该目标中间件在多个服务器上用户提供服务的端口号。一般情况下,默认使用同一端口号,可以理解为,安装同样目标中间件的服务器很大可能是位于同一集群中,在同一集群中的服务器,该目标中间件用于提供服务器的端口号一般使用相同的端口号。

S207,若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中。

如在界面中显示“一键安装”、“安装”等相关按钮,若检测到用户点击了“一键安装”、“安装”等相关按钮,则接收到安装指令。若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中。该实施例根据服务器的相关信息选择与服务器匹配的中间件,实现了中间件的定制化配置和安装。

在一实施例中,若需安装目标中间件的服务器有多个,每个服务器中对应有多个不同的账户,不同的账户对应不同的权限。如账户administrator、user1、user2等分别对应不同的权限。那么,在接收到安装指令之前,所述方法还包括:设置所述服务器需安装所述目标中间件的账户。所述若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中,包括:若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中的所述账户下。

具体地,设置所述服务器需安装所述目标中间件的账户,包括:判断是否接收到使用不同账户的标识;若接收到使用不同账户的标识,调用设置不同账户的接口;通过所述接口,分别设置多个服务器所对应的需安装所述目标中间件的账户;若未接收到使用不同账户的标识,设置多个服务器所对应的需安装所述目标中间件的账户为同一账户或者使用默认的账户。如在中间件自动化安装平台的web界面(如安装配置界面)上显示“使用不同账户”的相关按钮,若检测到用户点击了该按钮,确定接收到使用不同账户的标识,则调用设置不同账户的接口,该接口可以通过多个输入框来表示,多个输入框中输入的数据与多个服务器一一对应。通过该接口分别设置多个服务器所对应的需安装所述目标中间件的账户。多数情况下,使用默认的账户,如默认的账户是administrator。需要注意的是,该实施例中提到的账户可以包括账户名和密码,以表示通过该账户名和密码进入服务器中,以将目标中间件安装在该账户下。有些情况下,没有设置密码,那么认为密码为空。

图3是本发明实施例提供的中间件安装配置界面的示意图。在该安装配置界面上,有对应的服务器的IP地址字段、推荐的中间件字段、端口号字段、以及“一键安装”按钮等信息。在服务器的IP地址字段对应的文本框中显示有两个IP地址信息,10.20.123.98、10.20.123.99。在推荐的中间件字段对应的下拉框中有一个推荐的目标中间件:nginx-1.12.1。其中,nginx为目标中间件名称,1.12.1为目标中间件对应的版本。在服务器的IP地址字段对应的文本框中、推荐的中间件字段对应的下拉框中,都对应有“x”号。点击该“x”号,可以将对应的项删除,如将nginx-1.12.1目标中间件删除。将nginx-1.12.1目标中间件删除,意味着用户不接受推荐的目标中间件。将nginx-1.12.1目标中间件删除后,可以点击下拉框选择对应的中间件,将选择的中间件作为目标中间件。在端口号字段对应的文本框中,可以输入端口号,如端口号6633。在端口号的下方,有一个单选按钮,该单选按钮指示:使用不同端口号。若检测到点击该“使用不同端口号”的单选按钮,那么接收到使用不同端口号的标识。设置完成后,点击“一键安装”按钮,将会在两个IP地址信息对应的服务器上一键安装中间件字段对应的目标中间件,且设置服务器提供服务的端口号为6633。需要说明的是,图3仅仅是示例。需要注意的是,图3中的显示的所有信息都会保存到配置文件中。

在其他实施例中,图3中还可以加入服务器的主机名称信息,以方便记忆;还可以加入服务器的其他相关信息,如服务器所处的环境信息、服务器的配置信息等,以方便用户了解服务器的相关信息,以进一步确认需安装目标中间件的服务器。在其他实施例中,还可以加入中间件管理员、中间件联系人等信息。该中间件管理员可以理解为该目标中间件的所有人,即创建人;中间件联系人可以理解为有权对该目标中间件进行操作的工作人员,中间件联系人可以多个。在其他实施例中,还可以加入服务器所对应需安装目标中间件的账户信息,以根据该账户信息将目标中间件安装到服务器中的该账户下。

在一实施例中,如图4所示,将目标中间件安装到服务器中,包括以下步骤S401-S404。

S401,初始化目标中间件的安装环境,对目标中间件的安装环境进行参数校验。

其中,初始化目标中间件的安装环境包括初始化服务器的账户名和密码、初始化安装目标中间件的环境资源、初始化配置文件中的配置项等。其中,初始化服务器的账户名和密码,可以理解为,在一个服务器上可能涉及有多个账户,而对应的目标中间件的安装和使用是其中某个账户的特定权限。具体的,初始化服务器的账户名和密码,包括:获取预先配置的账户名和密码;在服务器中查找该预先配置的账户名和密码;若查找到该预设配置的账户名和密码,根据该账户名和密码进入服务器中。多数情况下,使用默认的账户名和密码,如默认账户名为administrator、密码为123等。预先配置的账户名和密码,可以是在中间件自动化安装平台的web界面(如安装配置界面)上预先设置的多个不同的账户名和密码,也可以是使用默认的账户名和密码。初始化配置文件中对应的环境资源,可以理解为,安装每一个软件之前,需要操作系统具备一定的功能和环境,如目标中间件运行所需要的库函数等。初始化安装目标中间件的环境资源,包括:获取初始化环境资源所需要使用的命令,如若为liunx系统,则所需要使用的命令是liunx命令;根据所需要使用的命令,将预先设置的环境资源安装到服务器中,如包括环境资源所涉及的系统文件库、系统包等。如安装过程中,需要使用一些系统的命令,比如hostname、ping等命令,所以需要在安装之前把相关的系统命令初始化好以及准备号安装该软件需要用到的系统库和lib文件。初始化配置文件中的配置项即为按照配置文件中的配置项进行初始化。

对目标中间件的安装环境进行参数校验包括检测端口号是否存在冲突如端口号是否被占用、检测系统版本是否符合要求、为所述目标中间件的安装分配系统资源等。其中,检测系统版本是否符合要求,可以理解为有些目标中间件的版本对服务器的操作系统是有要求的,有些软件的版本基于更高的操作系统版本,如redhat7和centos7等。为所述目标中间件的安装分配系统资源,可以理解为,对于任何目标中间件的安装都需要占用相关的服务器的系统资源,比如CPU,内存,IO等,如占用多少内存、使用CPU核数的多少等。对于每一个目标中间件,有启动目标中间件的最低资源分配数据和最佳资源分配数据,若服务器剩余的资源不足以启动该目标中间件,那就不应该允许该目标中间件在服务器安装。具体的,为所述目标中间件的安装分配系统资源,包括:获取目标中间件预设的最低资源分配数据和最佳资源分配数据;判断服务器剩余的资源数据是否大于最低资源分配数据;若不大于最低资源分配数据,则发出提示,以表示服务器资源不足,意味着为目标中间件的安装分配系统资源不成功;若大于最低资源分配数据,判断是否大于最佳资源分配数据;若大于最佳资源分配数据,则为目标中间件分配最佳资源分配数据中对应的资源;若不大于最佳资源分配数据,则为目标中间件分配最低资源分配数据中对应的资源。需要指出的是,以上提及的初始化目标中间件的安装环境以及对目标中间件的安装环境进行参数校验中涉及的内容只是列举,在其他的实施例中,还可能会涉及其他的内容。同时需要注意的是,以上提及的初始化目标中间件的安装环境以及对目标中间件的安装环境进行参数校验中涉及的内容并不限定具体的执行顺序。具体地执行顺序可按照实际需求来决定。

S402,若初始化目标中间件的安装环境成功,且通过对目标中间件安装环境的参数检验,上传目标中间件安装软件至服务器中。

S403,在服务器中安装目标中间件安装软件中的目标中间件安装包。具体地,解析目标中间件安装包,生成目标中间件安装包脚本;执行所述目标中间件安装包脚本。

S404,将安装信息同步至目标中间件对应的配置文件中。

其中,安装信息包括安装完成时间、服务器的相关信息、目标中间件、设置的目标中间件用于提供服务的端口号、所述版本对应的目标中间件所占用的服务器资源等。在其他实施例中,安装信息还包括设置的账号、中间件管理员、中间件联系人等信息。需要注意的是,这里提到的配置文件包括服务器中的配置文件(将目标中间件安装软件上传到服务器中,因为目标中间件安装软件中包括有配置文件,因此服务器中涉及有配置文件),同时包括中间件自动化安装平台中安装信息表中包括的配置文件。在安装完成时,该安装信息表中包括的配置文件的内容与服务器中的配置文件的内容一致。

以上步骤S401-S404为在服务器上安装目标中间件的过程。如此,自动安装中间件,简化了中间件安装的流程。

在安装目标中间件的过程中,会展示安装的进度,以方便用户了解安装的进程。如图5所示,为目标中间件安装进度的示意图。其中,包括四个步骤:记录信息、初始化、上传目标中间件安装软件、安装目标中间件(执行脚本)、同步配置文件,其中,记录信息指的是记录安装配置界面中设置的信息,初始化、上传目标中间件安装软件、安装目标中间件(执行脚本)、同步配置文件这四个步骤对应步骤S401-S404。在记录信息后面显示:执行完毕;在初始化后面显示:执行中;在上传目标中间件安装软件、安装目标中间件(执行脚本)、同步配置文件后面显示:等待执行。需要指出的是,该安装进度只是为示例。在其他实施例中,在“执行中”,也可以包括步骤执行的进度,如执行50%等数据;也可以根据实际执行情况显示具体执行的内容,如在“执行中”,可以替换成“检测端口是否冲突”等数据。在其他实施例中,在该界面上也可以只显示具体正在执行中的步骤,其他的步骤都不显示。

在安装目标中间件的过程中,还会捕获异常。当安装的过程中出现任何异常,都会进行提示,以提高用户的体验。

在目标中间件安装完成后,在中间件自动化安装平台上的安装信息表中会保存安装信息。可在中间件自动化安装平台上查询到安装的目标中间件以及相关的安装信息。如查询得到的安装信息如表1所示。在表1中,有目标中间件、服务器信息、服务器IP、端口号、安装状态、集群/配置等数据项。如第一行信息分别包括:nginx-1.12.1,服务器所处环境信息,10.20.123.98,6633、修改,安装成功,集群信息、配置文件。其中,在表1中有下划线的文字部分,表示点击之后可以查看相关信息或者对相关信息进行编辑。如,点击“服务器所处环境信息”可以查看服务器所处环境信息,点击“修改”可以修改端口号信息,点击“集群信息”可以查看服务器所属集群,点击“配置文件”可以查看该目标中间件所对应的配置文件以及修改所对应的配置文件中的信息,在配置文件中可以查看到所述版本对应的目标中间件所占用的服务器资源等。在本实施例中,查询得到的信息还包括安装时间等信息,在表1中没有显示。在其他实施例中,安装信息还可以包括其他的内容,如中间件管理员、中间件联系人等。

表1查询得到的安装信息

在其他实施例中,在步骤S202之前,所述方法还包括:添加中间件的相关信息。如图6所示,添加中间件的相关信息,包括:以下步骤S601-S605。

S601,在同一操作系统下且在中间件对应的环境资源下,在不同参数配置、不同应用环境下对不同版本的中间件进行压力测试,其中,不同参数配置对应不同应用场景。

S602,根据不同参数配置、不同应用环境、不同版本的中间件所对应的压力测试结果和服务器的需求信息,选择压力测试结果较优/最优的中间件,以及根据服务器的需求信息对所述中间件对应的参数进行调整,以得到调优后的参数配置,其中,服务器的需求信息包括服务器所处的环境信息,即应用环境、应用场景、网络环境。可以理解地,根据中间件对应的不同参数配置、不同应用环境下的压力测试结果,选择最适合服务器所处环境信息的参数搭配,以得到调优后的参数配置和对应的中间件,将该调优后的参数配置和对应的中间件保存。最适合服务器所处环境信息、该调优后的参数配置和对应的中间件可能有一个,也可能有多个。压力测试结果较优可以理解为,压力测试结果从高到低取排名靠前的预设个数所对应的压力测试结果,作为较优的压力测试结果。若压力测试结果只有一个,选取该压力测试结果作为较为的压力测试结果。较优的压力测试结果所对应的中间件稳定、性能适佳。其中,压力测试结果包括:在同一并发量下,不同版本的中间件对应的转发能力、消耗的服务器资源等。对于参数的调整,如对于nginx中间件,当应用场景涉及到https加密传输时,需要将nginx中间件参数中的SSL模块打开;应用场景是将nginx作为静态,且涉及大量文件的上传下载时,将nginx中间件参数的文件压缩功能打开;若应用场景涉及到代理转发,那么将nginx中间件参数的代理转发功能打开等。若服务器的应用场景包括https加密传输,代理转发等,那么将该nginx中间件中的SSL模块参数、代理转发参数打开。根据在环境资源下,在不同参数配置以及不同应用场景下对该中间件进行压力测试,再根据压力测试结果和服务器的需求信息,调整参数,以得到调优后的参数配置,使得该中间件满足企业的需求,达到了中间件的定制化配置以及中间件的性能最优化配置。

S603,将调优后的参数配置写入到所述中间件对应版本所对应的配置文件中。

S604,将配置文件、对应版本的中间件安装包、中间件监控包保存为对应中间件安装软件。

S605,将对应所述中间件安装软件,与中间件安装软件匹配的应用环境、应用场景、操作系统等信息保存至中间件的相关信息中以完成在所述操作系统下所述中间件的相关信息的添加和保存。

执行上述步骤S601-S605,以完成在多个操作系统下所对应的不同中间件的相关信息的添加和保存,将保存后的中间件的相关信息作为预存的中间件的相关信息。

可以理解为,在中间件自动化安装平台中保存的中间件相关信息是经过压力测试后,筛选的适合企业需求的中间件相关信息。该中间件相关信息达到了中间件的定制化配置和中间件的性能最优化配置。再根据达到定制化配置和性能最优化配置的中间件中选择出符合当前服务器相关信息的中间件进行安装,达到了中间件的定制化安装。

在后续开发的过程中,若涉及有新的中间件或者新的中间件版本,则将该新的中间件或者新的中间件版本保存至中间件自动化安装平台中的中间件相关信息中,以供后续的安装使用。

图7是本发明实施例提供的一种中间件安装装置的示意性框图。该装置应用于中间件自动化安装平台中。如图7所示,该装置70包括获取单元701、系统匹配单元702、环境匹配单元703、判断单元704、接收单元705、端口设置单元706、安装单元707。

获取单元701,用于获取需安装中间件的服务器的相关信息。其中服务器的相关信息包括服务器所处的环境信息、服务器的配置信息、服务器的IP地址。

具体地,获取单元701,包括:存在判断单元、服务器获取单元、服务器添加单元。其中,存在判断单元,用于判断是否已存在需安装中间件的服务器,如在输入框中输入服务器的IP地址,若检测到输入完毕(如输入的光标不在该输入框或者输入的总字符数达到IP地址所对应的字符数),根据服务器的IP地址来确定是否已存在所述服务器。服务器获取单元,用于若存在需安装中间件的服务器,获取所述服务器的相关信息。服务器添加单元,用于若不存在需安装中间件的服务器,添加服务器的相关信息。其中,需安装中间件的服务器可以是一个,也可以是多个,那么对应的,获取一个或者多个服务器的相关信息。

系统匹配单元702,用于根据服务器配置信息中的操作系统信息,从预存的中间件相关信息中确定与操作系统信息匹配的第一类中间件。

具体地,系统匹配单元702,包括:操作系统判断单元、删除单元、系统选择匹配单元。其中,操作系统判断单元,用于根据服务器配置信息中的操作系统信息,判断获取的一个或多个服务器的操作系统是否为同一操作系统。删除单元,用于若获取的一个或多个服务器的操作系统不为同一操作系统,删除不相同的操作系统所对应的服务器,以使剩余的服务器具有同一操作系统。系统选择匹配单元,用于若一个或多个服务器的操作系统为同一个操作系统,则从预存的中间件相关信息中选择与操作系统匹配的第一类中间件。

环境匹配单元703,用于根据服务器所处的环境信息,从第一类中间件中确定一个与服务器所处环境信息匹配的目标中间件以进行推荐。

具体地,环境匹配单元703,包括:匹配查找单元、匹配判断单元、环境选择匹配单元。其中,匹配查找单元,用于根据服务器所处的环境信息,从第一类中间件中查找出与服务器所处环境信息匹配的中间件。匹配判断单元,用于判断与服务器所处环境信息匹配的中间件是否有多个。环境选择匹配单元,用于若与服务器所处环境信息匹配的中间件有多个,按照预设规则从多个中选择一个中间件,作为与服务器所处环境信息匹配的目标中间件以进行推荐。环境选择匹配单元,还用于若与服务器所处环境信息匹配的中间件有一个,将该一个中间件作为与服务器所处环境信息匹配的目标中间件以进行推荐。

判断单元704,用于判断用户是否接受推荐的目标中间件。

接收单元705,用于若用户不接受推荐的目标中间件,接收用户选择的中间件,将用户选择的中间件作为目标中间件。

端口设置单元706,用于若用户接受推荐的目标中间件,或者用户不接受推荐的目标中间件,接收用户选择的目标中间件后,设置目标中间件在服务器上用于提供服务的端口号。

具体地,若需安装目标中间件的服务器有多个,端口设置单元706,包括:端口标识判断单元、端口接口调用单元、端口号设置单元。其中,端口标识判断单元,用于判断是否接收到使用不同端口号的标识。端口接口调用单元,用于若接收到使用不同端口号的标识,调用设置多个端口号的接口。端口号设置单元,用于通过所述接口,分别设置多个服务器上用于提供服务的端口号;以及用于若未接收到使用不同端口号的标识,设置多个服务器用于提供服务的端口号为同一端口号。

安装单元707,用于若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中。

在一实施例中,若需安装目标中间件的服务器有多个,每个服务器中对应有多个不同的账户,不同的账户对应不同的权限。如账户administrator、user1、user2等分别对应不同的权限。那么,所述中间件安装装置还包括:账户设置单元,该账户设置单元,用于设置所述服务器需安装所述目标中间件的账户。安装单元,还用于若接收到安装指令,根据设置的端口号和服务器的IP地址,将目标中间件安装到服务器中的所述账户下。

具体地,所述账户设置单元,包括:账户标识判断单元、账户接口调用单元、安装账户设置单元。其中,账户标识判断单元,用于判断是否接收到使用不同账户的标识。账户接口调用单元,用于若接收到使用不同账户的标识,调用设置不同账户的接口。安装账户设置单元,用于通过所述接口,分别设置多个服务器所对应的需安装所述目标中间件的账户;以及若未接收到使用不同账户的标识,设置多个服务器所对应的需安装所述目标中间件的账户为同一账户或者使用默认的账户。

在一实施例中,如图8所示,安装单元707,包括:初始化单元801、上传单元802、中间件安装单元803、同步单元804。

初始化单元801,用于初始化目标中间件的安装环境、对目标中间件的安装环境进行参数校验。初始化单元801,包括:账户初始化单元,用于初始化服务器的账户名和密码;环境资源初始化单元,用于初始化安装目标中间件的环境资源;配置项初始化单元,用于初始化配置文件中的配置项;端口号检测单元,用于检测端口号是否存在冲突如端口号是否被占用;系统版本检测单元,用于检测系统版本是否符合要求;资源分配单元,用于为所述目标中间件的安装分配系统资源等。

其中,账户初始化单元,包括:账户获取单元、账户查找单元、账户进入单元。其中,账户获取单元,用于获取预先配置的账户名和密码。账户查找单元,用于在服务器中查找该预先配置的账户名和密码。账户进入单元,用于若查找到该预设配置的账户名和密码,根据该账户名和密码进入服务器中。

环境资源初始化单元,包括:命令获取单元、环境资源安装单元。其中,命令获取单元,用于获取初始化环境资源所需要使用的命令,如若为liunx系统,则所需要使用的命令是liunx命令。环境资源安装单元,用于根据所需要使用的命令,将预先设置的环境资源安装到服务器中,如包括所涉及的系统文件库、系统包等。

资源分配单元,包括:分配数据获取单元、资源判断单元、提示单元、最佳资源分配单元、最低资源分配单元。其中,分配数据获取单元,用于获取目标中间件预设的最低资源分配数据和最佳资源分配数据。资源判断单元,用于判断服务器剩余的资源数据是否大于最低资源分配数据。提示单元,用于若服务器剩余的资源数据不大于最低资源分配数据,则发出提示,以表示服务器资源不足。资源判断单元,还用于若服务器剩余的资源数据大于最低资源分配数据,判断服务器剩余的资源数据是否大于最佳资源分配数据。最佳资源分配单元,用于服务器剩余的资源数据大于最佳资源分配数据,则为目标中间件分配最佳资源分配数据中对应的资源。最低资源分配单元,用于若服务器剩余的资源数据大于最低资源分配数据,且不大于最佳资源分配数据,则为目标中间件分配最低资源分配数据中对应的资源。

上传单元802,用于若初始化目标中间件的安装环境成功,且通过对目标中间件安装环境的参数检验,上传目标中间件安装软件至服务器中。

中间件安装单元803,用于在服务器中安装目标中间件安装软件中的目标中间件安装包。具体地,解析所述目标中间件安装包,生成目标中间件安装包脚本;执行所述目标中间件安装包脚本。

同步单元804,用于将安装信息同步至所述目标中间件对应的配置文件中。

在其他实施例中,中间件安装装置还包括添加单元。该添加单元,用于添加中间件的相关信息。

具体地,如图9所示,添加单元90,包括:压力测试单元901、版本参数调优单元902、配置写入单元903、中间件保存单元904、信息保存单元905。

压力测试单元901,用于在同一操作系统下且在中间件对应的环境资源下,在不同参数配置、不同应用环境下对不同版本的中间件进行压力测试,其中,不同参数配置对应不同应用场景。

版本参数调优单元902,用于根据不同参数配置、不同应用环境、不同版本的中间件所对应的压力测试结果和服务器的需求信息,选择压力测试结果较优/最优的中间件,以及根据服务器的需求信息对所述中间件对应的参数进行调整,以得到调优后的参数配置,其中,服务器的需求信息包括服务器所处的环境信息,即应用环境、应用场景、网络环境。

配置写入单元903,用于将调优后的参数配置写入到所述中间件对应版本所对应的配置文件中。

中间件保存单元904,用于将配置文件、对应版本的中间件安装包、中间件监控包保存为对应中间件安装软件。

信息保存单元905,用于将对应所述中间件安装软件,与中间件安装软件匹配的应用环境、应用场景、操作系统等信息保存至中间件的相关信息中以完成在所述操作系统下所述中间件的相关信息的添加和保存。

通过以上压力测试单元901、版本参数调优单元902、配置写入单元903、中间件保存单元904、信息保存单元905,可完成在多个操作系统下,不同中间件的相关信息的添加和保存。

上述装置实施例的实现过程和达到的有益效果可参看对应的方法实施例对应的描述。

上述装置可以实现为一种计算机程序的形式,计算机程序可以在如图10所示的计算机设备上运行。

图10为本发明实施例提供的一种计算机设备的示意性框图。该设备100包括通过系统总线101连接的处理器102、存储器和网络接口103,其中,存储器可以包括非易失性存储介质104和内存储器105。

该非易失性存储介质104可存储操作系统1041和计算机程序1042。该计算机程序1042被执行时,可使得处理器102执行中间件安装方法。该处理器102用于提供计算和控制能力,支撑整个设备100的运行。该内存储器105为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器102执行时,可使得处理器102执行中间件安装方法。该网络接口103用于进行网络通信,如接收消息等。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的设备100的限定,具体的设备100可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

其中,所述处理器102用于运行存储在存储器中的计算机程序,以实现如下步骤:

获取需安装中间件的服务器的相关信息,其中,所述服务器的相关信息包括所述服务器所处的环境信息、所述服务器的配置信息、所述服务器的IP地址;根据所述配置信息中的操作系统信息,从预存的中间件相关信息中确定与所述操作系统信息匹配的第一类中间件;根据所述服务器所处的环境信息,从所述第一类中间件中确定一个与所述服务器所处环境信息匹配的目标中间件以进行推荐;判断用户是否接受推荐的所述目标中间件;若用户接受推荐的所述目标中间件,设置所述目标中间件在所述服务器上用于提供服务的端口号;若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中。

在一实施例中,所述处理器102在执行所述将所述目标中间件安装到所述服务器中时,具体执行:

初始化所述目标中间件的安装环境,以及对所述目标中间件的安装环境进行参数校验;若初始化所述目标中间件的安装环境成功,且通过对所述目标中间件安装环境的参数检验,上传目标中间件安装软件至服务器中;在服务器中安装所述目标中间件安装软件中的目标中间件安装包;将安装信息同步至所述目标中间件对应的配置文件中。

在一实施例中,所述初始化所述目标中间件的安装环境包括初始化安装目标中间件的环境资源,所述处理器102在执行所述初始化安装目标中间件的环境资源时,具体执行:

获取初始化环境资源所需要使用的命令;根据所需要使用的命令,将预先设置的环境资源安装到服务器中。

在一实施例中,在所述上传目标中间件安装软件至服务器中之前,所述处理器102还具体执行:

获取所述目标中间件预设的最低资源分配数据和最佳资源分配数据;若所述服务器剩余的资源数据不大于最低资源分配数据,则进行提示,以表示所述服务器资源不足;若所述服务器剩余的资源数据大于最低资源分配数据,且大于最佳资源分配数据,则为所述目标中间件分配最佳资源分配数据中对应的资源;若所述服务器剩余的资源数据大于最低资源分配数据且不大于最佳资源分配数据,则为所述目标中间件分配最低资源分配数据中对应的资源。

在一实施例中,若需安装目标中间件的服务器有多个,所述处理器102在执行所述设置所述目标中间件在所述服务器上用于提供服务的端口号时,具体执行:

判断是否接收到使用不同端口号的标识;若接收到使用不同端口号的标识,调用设置多个端口号的接口;通过所述接口,分别设置多个服务器上用于提供服务的端口号;若未接收到使用不同端口号的标识,设置多个服务器用于提供服务的端口号为同一端口号。

在一实施例中,若需安装中间件的服务器有多个,所述处理器102在执行所述根据所述配置信息中的操作系统信息,从预存的中间件相关信息中确定与所述操作系统信息匹配的第一类中间件时,具体执行:

根据所述配置信息中的操作系统信息,判断获取的多个服务器的操作系统是否为同一个操作系统;若不为同一个操作系统,删除不相同的操作系统所对应的服务器,以使剩余的服务器具有相同的操作系统;若为同一个操作系统,则从预存的中间件相关信息中选择与操作系统匹配的第一类中间件。

在一实施例中,所述处理器102在执行所述获取需安装中间件的服务器的相关信息时,具体执行:

判断是否已存在需安装中间件的服务器;若存在需安装中间件的服务器,获取所述服务器的相关信息;若不存在需安装中间件的服务器,添加服务器的相关信息。

在一实施例中,所述处理器102在执行所述在接收到安装指令之前,还具体执行:设置所述服务器需安装所述目标中间件的账户;所述处理器102在执行所述若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中时,具体执行:若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中的所述账户下。

应当理解,在本发明实施例中,所称处理器102可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

在本发明的另一实施例中提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时实现以下步骤:

获取需安装中间件的服务器的相关信息,其中,所述服务器的相关信息包括所述服务器所处的环境信息、所述服务器的配置信息、所述服务器的IP地址;根据所述配置信息中的操作系统信息,从预存的中间件相关信息中确定与所述操作系统信息匹配的第一类中间件;根据所述服务器所处的环境信息,从第一类中间件中确定一个与所述服务器所处环境信息匹配的目标中间件以进行推荐;判断用户是否接受推荐的所述目标中间件;若用户接受推荐的所述目标中间件,设置所述目标中间件在所述服务器上用于提供服务的端口号;若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中。

在一实施例中,所述处理器在执行所述将所述目标中间件安装到所述服务器中时,具体实现:

初始化所述目标中间件的安装环境,以及对所述目标中间件的安装环境进行参数校验;若初始化所述目标中间件的安装环境成功,且通过对所述目标中间件安装环境的参数检验,上传目标中间件安装软件至服务器中;在服务器中安装所述目标中间件安装软件中的目标中间件安装包;将安装信息同步至所述目标中间件对应的配置文件中。

在一实施例中,所述初始化所述目标中间件的安装环境包括初始化安装所述目标中间件的环境资源,所述处理器在执行所述初始化安装所述目标中间件的环境资源时,具体实现:

获取初始化环境资源所需要使用的命令;根据所需要使用的命令,将预先设置的环境资源安装到服务器中。

在一实施例中,在所述所述上传目标中间件安装软件至服务器中之前,所述处理器还具体实现:

获取所述目标中间件预设的最低资源分配数据和最佳资源分配数据;若所述服务器剩余的资源数据不大于最低资源分配数据,则进行提示,以表示所述服务器资源不足;若所述服务器剩余的资源数据大于最低资源分配数据,且大于最佳资源分配数据,则为所述目标中间件分配最佳资源分配数据中对应的资源;若所述服务器剩余的资源数据大于最低资源分配数据且不大于最佳资源分配数据,则为所述目标中间件分配最低资源分配数据中对应的资源。

在一实施例中,若需安装目标中间件的服务器有多个,所述处理器在执行所述设置所述目标中间件在所述服务器上用于提供服务的端口号时,具体实现:

判断是否接收到使用不同端口号的标识;若接收到使用不同端口号的标识,调用设置多个端口号的接口;通过所述接口,分别设置多个服务器上用于提供服务的端口号;若未接收到使用不同端口号的标识,设置多个服务器用于提供服务的端口号为同一端口号。

在一实施例中,若需安装中间件的服务器有多个,所述处理器在执行所述根据所述配置信息中的操作系统信息,从预存的中间件相关信息中确定与所述操作系统信息匹配的第一类中间件时,具体实现:

根据所述配置信息中的操作系统信息,判断获取的多个服务器的操作系统是否为同一个操作系统;若不为同一个操作系统,删除不相同的操作系统所对应的服务器,以使剩余的服务器具有相同的操作系统;若为同一个操作系统,则从预存的中间件相关信息中选择与操作系统匹配的第一类中间件。

在一实施例中,所述处理器在执行所述获取需安装中间件的服务器的相关信息时,具体实现:

判断是否已存在需安装中间件的服务器;若存在需安装中间件的服务器,获取所述服务器的相关信息;若不存在需安装中间件的服务器,添加服务器的相关信息。

在一实施例中,所述处理器在执行所述在接收到安装指令之前,还具体实现:设置所述服务器需安装所述目标中间件的账户;所述处理器在执行所述若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中时,具体实现:若接收到安装指令,根据设置的端口号和所述服务器的IP地址,将所述目标中间件安装到所述服务器中的所述账户下。

所述存储介质可以是计算机可读存储介质。所述存储介质可以是前述任一实施例所述的终端的内部存储单元,例如终端的硬盘或内存。所述存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡等。进一步地,所述存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置、设备和单元、存储介质的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1