有关集群作业管理系统的安全问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高可用性(HA)
计算机系统的可用性(availability)是通过系统的可靠性(reliability)和可维护性(maintainability)来度量的。工程上通常用平均无故障时间(MTTF)来度量系统的可靠性,用平均维修时间(MTTR)来度量系统的可维护性。于是可用性被定义为:MTTF/(MTTF+MTTR)*100%
业界根据可用性把计算机系统分为如下几类:
为了实现集群系统的高可用性,提高系统的高可性,需要在集群中建立冗余机制。
负载均衡服务器的高可用性
为了屏蔽负载均衡服务器的失效,需要建立一个备份机。主服务器和备份机上都运行High Availability监控程序,通过传送诸如“I am alive”这样的信息来监控对方的运行状况。当备份机不能在一定的时间内收到这样的信息时,它就接管主服务器的服务IP并继续提供服务;当备份管理器又从主管理器收到“I am alive”这样的信息是,它就释放服务IP地址,这样的主管理器就开始再次进行集群管理的工作了。为在住服务器失效的情况下系统能正常工作,我们在主、备份机之间实现负载集群系统配置信息的同步与备份,保持二者系统的基本一致。
HA的容错备援运作过程
自动侦测(Auto-Detect)阶段:由主机上的软件通过冗余侦测线,经由复杂的监听程序。逻辑判断,来相互侦测对方运行的情况,所检查的项目有:
主机硬件(CPU和周边)
主机网络
主机操作系统
数据库引擎及其它应用程序
主机与磁盘阵列连线
为确保侦测的正确性,而防止错误的判断,可设定安全侦测时间,包括侦测时间间隔,侦测次数以调整安全系数,并且由主机的冗余通信连线,将所汇集的讯息记录下来,以供维护参考。
自动切换(Auto-Switch)阶段:某一主机如果确认对方故障,则正常主机除继续进行原来的任务,还将依据各种容错备援模式接管预先设定的备援作业程序,并进行后续的程序及服务。
自动恢复(Auto-Recovery)阶段:在正常主机代替故障主机工作后,故障主机可离线进行修复工作。在故障主机修复后,透过冗余通讯线与原正常主机连线,自动切换回修复完成的主机上。整个回复过程完成由EDI-HA自动完成,亦可依据预先配置,选择回复动作为半自动或不回复。
HA三种工作方式
(1)、主从方式(非对称方式)
工作原理:主机工作,备机处于监控准备状况;当主机宕机时,备机接管主机的一切工作,待主机恢复正常后,按使用者的设定以自动或手动方式将服务切换到主机上运行,数据的一致性通过共享存储系统解决。
(2)、双机双工方式(互备互援)
工作原理:两台主机同时运行各自的服务工作且相互监测情况,当任一台主机宕机时,另一台主机立即接管它的一切工作,保证工作实时,应用服务系统的关键数据存放在共享存
储系统中。
(3)、集群工作方式(多服务器互备方式)
工作原理:多台主机一起工作,各自运行一个或几个服务,各为服务定义一个或多个备用主机,当某个主机故障时,运行在其上的服务就可以被其它主机接管。
PBS系统在日常操作中的一些安全保证
在批作业系统里有三个需要注意的安全问题:
内部安全:
这些守护进程是否可信任?
认证:
我们怎样才能知道客户端是谁。
授权:
是否客户端拥有发出这些请求的权利。
●内部安全
我们必须确保PBS 的各个守护进程本身,不让它们有作为对系统攻击的目标的机会。我们主要是确保各个守护进程的需要的各个文件以及它们的运行环境。
任何PBS 使用的文件,尤其是那些特定的配置文件和其他需要运行的程序需要确保安全。这些文件必须是由root 所有,并且在通常情况下除了root ,对其他的用户必须写保护。当安装PBS 的各个目录时,make进程将会运行一个程序去设置正确的文件的所有关系和访问限制。并且可以在任何时候,运行make生成的chk-tree 部分重新检查这些设置。Chk-tree 在configure 时制定的bindir目录下。各个守护进程会在启动的时候检查大多数的最关键的文件和目录。
破坏系统环境是另一种方式的攻击。为了防止这种方式的攻击,各个守护进程会在启动的时候重新设置自己的环境。这些环境是由PBS_ENVRION 的文件提供,这个文件是configure 时选项--set-environ 所指定的,默认值是{PBS_HOME}/PBS_environment。如果这个文件本来不存在,安装程序会创建这个文件。安装程序安装后,该文件包含一个最基本的路径,如果root 的环境的变量中含有下面的变量,文件中也会含有这些变量。这些变量是:TZ,LANG ,LC_ALL ,LC_COLLATE,LC_CTYPE ,LC_MONETARY,LC_NUNERIC和LC_TIME 。这个文件也可以根据你的要求进行修改和增加一些变量。请特别注意PATH变量必须包含进去。这个PAT H 变量将会被传送给批作业。为了确保安全性,必须将PAT H 严格限制在已知的安全目录下。千万不能包含‘. ’在PAT H 中。另外一个可能很危险的变量是IFS ,这个变量不应该被设置。
PBS_ENVIRON 文件的语法是
Variable_name=value 或者variable_name
在后面这种情况下,这个变量的值在它被重置前会从各个守护进程自己的环境变量中获得。
●主机认证
PBS 使用组合信息去认证一个主机。如果一个请求是从客户端的特权端口(socket 被绑定到数字低于1024的端口上,这些端口只有root 有权绑定),PBS (可能正确也可能错误)相信这个IP 层的信息,通过IP 层的信息确认主机。如果这个客户端请求来自一个非特权端口,这个请求中的信任状中必须包含了主机的名字,并且这个主机的名字必须匹配IP 层的信息。
●主机授权