作者: FOXL 理由:51CTO论坛整理
阅读提醒:已往,UNIX 操纵系统包括一组办事:这些办事是与任何交互式用户登录都不关联的软件法式,用于侦听和呼应央求以执行特定的任务(如传送电子邮件、呼应 ftp 央求,或答理执行远程呼吁)。
已往,UNIX 操纵系统包括一组办事:这些办事是与任何交互式用户登录都不关联的软件法式,用于侦听和呼应央求以执行特定的任务(如传送电子邮件、呼应 ftp 央求,或答理执行远程呼吁)。这些传统办事常日是一些单独的运用法式,它们作为单个进程执行,在系统指导时启动,并在系统启动和运转时承袭执行,可措置回收到的任何央求。
如今,管理员必需管理一系列办事,这些办事的作用已经高出了此原始模子的作用领域。Sun 推出了 Service Management Facility(SMF,办事管理对象),以简化这些系统办事的管理。SMF 是 Solaris 操纵系统的一项新功能,为每个 Solaris 系统上的办事和办事管理创设支持的、一致的模子。它是 Solaris 10 中料到性自我修复妙技的核心局部,为软件和硬件阻碍以及管理错误供应自动恢复功能。
在本指南中,我们将先容 SMF 的功能及优势,指出 Solaris 中明显更新的局部,并分析');怎样运用 SMF 完成典范的管理任务。可以在 Sun 的 BigAdmin Web 站点上找到 SMF 及料到性自我修复功能的细致指南。
功能
Service Management Facility 已经改进了 Solaris 管理模子的几个方面。一些最明显的更新网罗:
◆ 办事由可以中断搜检(运用新的 svcs(1) 呼吁)和管理(运用 svcadm(1M) 和 svccfg(1M))的一级对象吐露表示。
◆ 无论掉败的办事是由管理员错误、软件错误招致,照旧受无法改正的硬件错误的影响,这些办事都将按摄影关性次第自动重新启动。
◆ 可以获取有关配置错误或举动极端的办事的细致信息,网罗对办事未运转的缘故起因的分析');(运用 "svcs -x"),以及每个办事单独的耐久性日志文件。
◆ 指导进程中呈现的成果角力计较轻易调试,因为在启动阻碍期间可以节制指导细致水平,记载办事启音讯态,以及供应更巩固的节制台访问。
◆ 自动拍摄办事配置快照,从而更轻易备份、恢复和撤除对办事所做的变动。
◆ 可以运用受支持的对象 (svcadm(1M)) 启用和禁用办事,从而答理变动不受进级和修补法式的影响而生计原样。
◆ 管理员可以更轻易地将任务平安地委派给非超等用户,这些任务网罗配置、启动、中断或重新启动办事(如 smf_security(5) 手册页中所述)。
◆ 凭据办事的相关性并行启动办事,可以更快地指导年夜型系统。
虽然中断了上述变动,但最洪水平地生计了与现有管理民俗的兼容性。比方,年夜年夜都站点当地的 "rc" 剧本和 ISV 供应的 "rc" 剧本仍将无效。
明显的变动
SMF 供应的年夜年夜都新功能都在“后台”事变,或颠末议定新呼吁中断访问;但某些变动仍会很快表示出来。以下表示了其中的一些变动。
在早期版本的 Solaris 中,年夜量输入将在指导期间打印到系统节制台。虽然这些静态对所爆发的景遇中断了角力计较深切的阐述,但在某些方面并不特别很是无效。年夜都办事年夜概会打印静态,标明它们已联机,而很多其他办事则不打印静态。某些阻碍体式格局也年夜概会打印一些静态(如 "WARNING:Timed out waiting for NIS to come up"),这些静态并不克不及匡助诊断根蒂根底成果。错误静态有工夫接打印到节制台,但不会在任何日志中表示。
目前,指导进程中表示的静态精简了很多。以下是在 SMF 下指导时角力计较争论机所表示内容的示例:
SunOS Release 5.10 Version Generic 64-bit
Copyright 1983-2004 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
Hostname: demobox
NIS domain name is testlab.example.com
checking ufs filesystems
demobox console login:
虽然打印的静态变少了,但 SMF 使得指导进程越发明白。每个办事在 /var/svc/log 目录(关于在单个用户的严重事宜之前启动的办事,则为 /etc/svc/volatile 目录)中都有一个日志文件,指理由事启动的工夫和方法、能否成功启动,以及在初始化期间年夜概打印的扫数静态。如果在指导期间爆发垂危成果,则您可以在维护体式格局下登录到节制台,并可运用 svcs(1) 呼吁匡助诊断此成果。即使成果招致指导挂起(如上面提到的 NIS 阻碍)时也是如此。最后,新的 "-m" 指导选项(请拜见 kernel(1M))答理您将指导进程配置得更加细致,可以在每个办事启动时打印一条庞大静态。
您年夜概还会注重到,中缀进程后进程会“回绝中缀”。比方:
# ps -fp `pgrep -d, sendmail`
UID PID PPID C STIME TTY TIME CMD
root 330 1 0 14:21:05 ? 0:00 /usr/lib/sendmail -bd -q15m
smmsp 331 1 0 14:21:05 ? 0:00 /usr/lib/sendmail -Ac -q15m
# pkill -9 sendmail
# ps -fp `pgrep -d, sendmail`
UID PID PPID C STIME TTY TIME CMD
root 530 1 0 14:51:02 ? 0:00 /usr/lib/sendmail -bd -q15m
smmsp 531 1 0 14:51:02 ? 0:00 /usr/lib/sendmail -Ac -q15m
初看起来,虽然运用了 kill -9,却彷佛没有爆发任何景遇。但是请注重,PID 是差异的,而且进程的启动工夫已经变动;理想上,旧的 sendmail 进程的确已经中缀。
颠末议定 SMF,Solaris 内核可以思考办事、此办事的进程和其他办事(担任重新启动此办事)之间的关连。此重新启动关连与 Sun 的新妙技慎辘集成,用于在 Solaris 上中断阻碍管理,从而答理 SMF 重新启动法式体会办事进程掉败的缘故起因是管理员错误、相关办事缺点、软件错误照旧根蒂根底的硬件阻碍。只需在任何办事缺点之后捕捉到此信息,SMF 就会照顾响应的重新启动法式,该法式将确定是颠末议定将此办事置于维护体式格局来禁用办事(因为它看起来存在成果),照旧自动重新启动该办事。缺省的 SMF 重新启动法式 svc.startd 担任启动和重新启动 Solaris 系统上的年夜年夜都办事。在以上示例中,svc.startd 注重到 sendmail 已中缀,针对此景遇记载了一条静态,并自动重新启动 sendmail。
如果您要中断某个办事但不重新启动其进程,请运用 svcadm(1M) 呼吁(请拜见以下“常规任务”局部)。此外请注重,并非扫数的系统办事都已转为运用 SMF;属于这些传统办事的任何进程在中缀后都不会重新启动。
最后您年夜概会注重到,与从前的 Solaris 刊行版比拟,/etc/init.d 和 /etc/rc◆.d 目录以及 /etc/inittab 文件中的内容目前要少得多。SMF 管理的办事不再运用 rc 剧本或 inittab 条目中断启动和封锁,是以与这些办事对应的剧本已被删除。在未来的 Solaris 刊行版中,SMF 将管理更多的办事,而且这些目录中的内容将会越来越少。用于管理 ISV 供应或当地开辟的办事的 rc 剧本和 inittab 条目将陆续在指导时运转。与推出 SMF 之前的景遇不同,这些办事年夜概不会在指导进程中的同临时辰运转,但必定不会在指导进程之前运转,是以其非认识探问依托的任何办事仍将可用。
办事称呼
Solaris 运用称为 FMRI(Fault Managed Resource Identifier,阻碍管理资本标识符)的 URI 字符串来标识为其供应了初级阻碍和资本管理功能的系统对象。SMF 所管理的办事被分派了前缀为方案称呼 "svc" 的 FMRI 字符串,如以下的 Solaris 办事 syslogd(1M) 示例所示:
◆ svc://localhost/system/system-log:default
◆ svc:/system/system-log:default
◆ system/system-log:default
请注重,SMF 所运用的这些办事 FMRI 有以下三种吐露表示门径:第一种是包括位置途径(如 "localhost")的绝对途径;第二种是相关于当地角力计较争论机的途径;第三种仅仅是省略了字符串前缀的办事标识符。本文档此外局部所先容的 SMF 管理员对象常日运用第三种体式格局来描绘办事(因为假定这些办事作用于当地办事)。可在多种资本上或跨角力计较争论机操纵的其他管理对象年夜概运用其他体式格局来描绘办事。今后 Solaris 刊行版中的 SMF 对象只能管理应田主机上的办事。
因为 FMRI 字符串特别很是长,是以 SMF 对象答理运用缩写体式格局的 FMRI。缩写必需具有唯一性,必需与办事称呼的末结局部相婚配(但 ":default" 可以省略),而且必需以 "/" 收尾。是以上述 FMRI 可以运用以下缩写:
◆ system-log:default
◆ system-log
运用这些缩写时应特别很是谨慎,因为年夜概会在包括沟通子串的某一点添加新办事(如 "svc:/mysite/system-log:default")。如果运用非唯一的缩写,SMF 对象将打印申饬静态。
Solaris 系统办事的 FMRI 包括日常功能种别,如“运用法式”、“严重事宜”、“收集”、“平台”和“系统”,以及与办事的捍卫进程或旧的 rc 剧本称呼类似的描绘性称呼。svcs(1) 呼吁将列出角力计较争论机上可用的扫数举止办事:
% svcs
STATE STIME FMRI
...
online 11:19:35 svc:/network/nfs/status:default
offline 18:20:30 svc:/application/print/rfc1179:default
maintenance 18:20:26 svc:/network/ntp:default
因为办事目前是一级对象,是以 SMF 以致可以颠末议定运用 svcs(1) 呼吁的 "-a" 选项供应有关未启用的办事的信息。
版权声明:
原创作品,答理转载,转载时请务必以超链接体式格局标明文章 原始理由 、作者信息和本声明。不然将追查功令责任。