一种用于OracleRealApplicationCluster数据库集群的自动部署方法

文档序号:10654219阅读:740来源:国知局
一种用于Oracle Real Application Cluster数据库集群的自动部署方法
【专利摘要】本发明涉及运维自动化领域,公开了一种用于Oracle Real Application Cluster数据库集群的自动部署方法,将配置文件导入配置读取模块,通过配置读取模块的信息读取进入到任务执行模块,任务执行模块包括本地执行模块、远程执行模块和后台执行模块,本地执行模块、远程执行模块和后台执行模块相互配合进行。本发明的创造性在于跳出了Oracle公司官方给出的安装文档所规定的步骤,告别了手工一步步的繁琐又容易出错的操作,通过程序封装,将RAC集群的安装便捷化、自动化、规范化,在极大地降低安装过程耗时的同时,也避免了普通技术人员安装过程中频繁出错的问题。
【专利说明】
_种用于Orac I e Rea I App I i cat i on GI uster数据库集群的自动部署方法
技术领域
[0001 ]本发明涉及运维自动化领域,尤其涉及了一种用于Oracle Real Applicat1nCluster数据库集群的自动部署方法。【背景技术】
[0002]Python语言是一种面向对象、解释型计算机程序设计语言,如今,它被越来越多地应用在IT运维自动化领域。Python在系统管理上的优势在于强大的开发能力和完整的工具链,Python已成为运维人员手中的利器。
【发明内容】

[0003]本发明实际需要解决的技术问题是:针对目前Oracle RAC集群安装费时费力的现状,提供一种用于Oracle Real Applicat1n Cluster集群的自动部署方法,为系统管理人员(System administrator)和数据库管理员(Database administrator)提供便利。本发明的创造性在于跳出了 Oracle公司官方给出的安装文档所规定的步骤,告别了手工一步步的繁琐又容易出错的操作,通过程序封装,将RAC集群的安装便捷化、自动化、规范化,在极大地降低安装过程耗时的同时,也避免了普通技术人员安装过程中频繁出错的问题。
[0004]为了解决上述技术问题,本发明通过下述技术方案得以解决:
[0005]—种用于Oracle Real Applicat1n Cluster数据库集群的自动部署方法,将配置文件导入配置读取模块,通过配置读取模块的信息读取进入到任务执行模块,任务执行模块包括本地执行模块、远程执行模块和后台执行模块,本地执行模块、远程执行模块和后台执行模块相互配合进行,包括以下步骤:
[0006](1)检查用户配置和用于安装RAC的主机是否启动,对仲裁盘进行格式化;
[0007](2)通过python调用configParser module直接读取配置文件,自动完成将集群的公共IP、私有IP、虚拟IP、SCAN IP配置到所有本地解析文件中;[〇〇〇8](3)通过python调用zip module自动解压Oracle介质;[〇〇〇9](4)通过python调用pexpect自动配置节点间Oracle用户的等效性,包括生成ssh公钥和密钥,将每个节点的公钥填写至所有节点的authorized keys文件中,并且设置文件属性;[0〇1〇](5)读取配置文件中需要实现的配置信息,自动完成Grid Infrastructure软件的安装;[〇〇11 ](6)通过python的paramiko模块,自动远程登录到目标主机进行orainstRoot ? sh脚本的运行;[〇〇12](7)通过python的paramiko模块,自动远程登录到目标主机进行CRS配置脚本$GRID_H0ME/r〇〇t.sh的运行,然后运行cfgtoolllogs,进行CRS资源的配置工作,包括监听资源的启动与注册工作;
[0013](8)读取配置文件中需要实现的配置信息,自动完成Oracle RDBMS软件的安装;[〇〇14](9)通过python的paramiko模块,自动远程登录到目标主机进行$0RACLE_H0ME/root, sh脚本的运行,完成安装。[〇〇15]本发明由于采用了以上技术方案,具有显著的技术效果:通过跳出Oracle公司官方给出的安装文档所规定的步骤,告别了手工一步步的繁琐又容易出错的操作,通过程序封装,将RAC集群的安装便捷化、自动化、规范化,在极大地降低安装过程耗时的同时,也避免了普通技术人员安装过程中频繁出错的问题。【附图说明】
[0016]图1是本发明一种用于Oracle Real Applicat1n Cluster数据库集群的自动部署方法流程示意图。【具体实施方式】[〇〇17]下面结合附图与实施例对本发明作进一步详细描述。
[0018]实施例1
[0019]如图1所示,一种用于Oracle Real Applicat1n Cluster数据库集群的自动部署方法,将配置文件导入配置读取模块,通过配置读取模块的信息读取进入到任务执行模块, 任务执行模块包括本地执行模块、远程执行模块和后台执行模块,本地执行模块、远程执行模块和后台执行模块相互配合进行,包括以下步骤:
[0020](1)检查用户配置和用于安装RAC的主机是否启动,对仲裁盘进行格式化;[0〇21](2)通过python调用configParser module直接读取配置文件,自动完成将集群的公共IP、私有IP、虚拟IP、SCAN IP配置到所有本地解析文件中,相比传统步骤中,技术人员通常需要手工一行一行添加,非常枯燥且繁琐,通过自动化完成配置,省时省力而且不易出错,节省半个小时以上的时间;
[0022](3)通过python调用zip module自动解压Oracle介质,省去人工逐个解压的繁琐性;[0〇23](4)通过python调用pexpect自动配置节点间Oracle用户的等效性,包括生成ssh公钥和密钥,将每个节点的公钥填写至所有节点的authorized keys文件中,并且设置文件属性,传统方式中,Oracle官方文档要求技术人员手动配置节点间oracle用户的等效性,, 并且这一系列文件要设置特殊的文件属性,操作异常复杂,调用pexpect自动完成以上操作,无需任何人工干预,直接节省一个小时以上的时间;[0〇24](5)读取配置文件中需要实现的配置信息,自动完成Grid Infrastructure软件的安装,传统方式中,Oracle官方文档要求技术人员使用Xwindow以图形界面方式调用其安装工具runlnstaller,而开启图形界面对环境要求较高,因为图形界面传输的端口通常都被防火墙过滤,而且客户端还要安装XManager这样的商业付费工具,并在shell中设置 DISPLAY环境变量,开启图形界面后,需要一步步填写安装所需信息进行安装,本发明提出的方案是实现了安装的静默化,无需调用图形界面工具,直接读取配置文件中实现配置的信息,自动化完成Grid Infrastructure软件的安装,直接节省3个小时以上的时间;
[0025](6)通过python的paramiko模块,自动远程登录到目标主机进行orainstRoot.sh脚本的运行,传统方式中,Oracle官方文档要求技术人员逐个节点运行orainstRoot.sh脚本,技术人员要逐个登录到目标主机运行该脚本,本发明提出的方案是通过python的 paramiko模块,自动远程登录到目标主机进行脚本运行;[0〇26](7)通过python的paramiko模块,自动远程登录到目标主机进行CRS配置脚本$GRID_HOME/r〇〇t.sh的运行,然后运行cfgtoolllogs,进行CRS资源的配置工作,包括监听资源的启动与注册工作;[〇〇27](8)读取配置文件中需要实现的配置信息,自动完成Oracle RDBMS软件的安装;
[0028](9)通过python的paramiko模块,自动远程登录到目标主机进行$0RACLE_H0ME/root, sh脚本的运行,完成安装。[〇〇29]本发明通过跳出Oracle公司官方给出的安装文档所规定的步骤,告别了手工一步步的繁琐又容易出错的操作,通过程序封装,将RAC集群的安装便捷化、自动化、规范化,在极大地降低安装过程耗时的同时,也避免了普通技术人员安装过程中频繁出错的问题。 [〇〇3〇]总之,以上仅为本发明的较佳实施例,凡依本发明申请专利范围所作的均等变化与修饰,皆应属本发明专利的涵盖范围。
【主权项】
1 ?一种用于Oracle Real Applicat1n Cluster数据库集群的自动部署方法,将配置 文件导入配置读取模块,通过配置读取模块的信息读取进入到任务执行模块,任务执行模 块包括本地执行模块、远程执行模块和后台执行模块,本地执行模块、远程执行模块和后台 执行模块相互配合进行,其特征在于,包括以下步骤:(1)检查用户配置和用于安装RAC的主机是否启动,对仲裁盘进行格式化;(2)通过python调用conf igParser module直接读取配置文件,自动完成将集群的公共 IP、私有IP、虚拟IP、SCAN IP配置到所有主机配置文件中;(3)通过python调用zip module自动解压Oracle介质;(4)通过python调用pexpect自动配置节点间Oracle用户的等效性,包括生成ssh公钥 和密钥,将每个节点的公钥填写至所有节点的authorized keys文件中,并且设置文件属 性;(5)读取配置文件中需要实现的配置信息,自动完成Grid Infrastructure软件的安 装;(6)通过python的paramiko模块,自动远程登录到目标主机进行orainstRoot ? sh脚本 的运行;(7)通过python的paramiko模块,自动远程登录到目标主机进行CRS配置脚 HOME/root.sh的运行,然后运行cfgtoolllogs,进行CRS资源的配置工作,包括监听资源的 启动与注册工作;(8)读取配置文件中需要实现的配置信息,自动完成Oracle RDBMS软件的安装;(9)通过python的paramiko模块,自动远程登录到目标主机进行$0RACLE_H0ME/ root, sh脚本的运行,完成安装。
【文档编号】G06F9/445GK106020857SQ201610209828
【公开日】2016年10月12日
【申请日】2016年4月6日
【发明人】郭旭瑞
【申请人】杭州沃趣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1