Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1315423
  • 博文数量: 554
  • 博客积分: 10425
  • 博客等级: 上将
  • 技术积分: 7555
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-09 09:49
文章分类

全部博文(554)

文章存档

2012年(1)

2011年(1)

2009年(8)

2008年(544)

分类:

2008-04-09 18:58:02


何时使用区域
第16 章• Solaris Zones 介绍201
区域如何工作
可以将一个非全局区域想象为一个盒子。一个或多个应用程序可在这个盒子中运行,而不
与系统的其余部分交互。Solaris 区域使用灵活、软件自定义的边界将各软件应用程序或服
务分隔开来。然后,便可分别管理在Solaris 操作系统的同一实例中运行的应用程序。因
此,为了符合配置要求,不同版本的同一应用程序可以在不同区域中运行。
每个需要网络连接的区域都有一个或多个专用IP 地址。指定给某区域的进程可以处理、监
视指定给同一区域的其他进程,并可直接与这些进程进行通信。进程不能对指定给系统中
其他区域的进程执行这些功能,也不能对未指定给区域的进程执行这些功能。指定给不同
区域的进程只能通过网络API 进行通信。
每个Solaris 系统都包含一个全局区域。全局区域具有双重功能。全局区域既是系统的缺省
区域,也是用于在整个系统中实施管理控制的区域。如果全局管理员未创建任何非全局区
域(简称为区域),则所有进程都在全局区域中运行。
只能从全局区域配置、安装、管理或卸载非全局区域。只有全局区域才可从系统硬件进行
引导。只能在全局区域中进行系统基础结构(如物理设备)的管理、路由或动态重新配置
(dynamic reconfiguration, DR)。全局区域中运行的具有适当权限的进程可以访问与其他区域
关联的对象。
全局区域中的非特权进程可以执行非全局区域中不允许特权进程执行的操作。例如,全局
区域中的用户可以查看有关系统中每个进程的信息。如果此功能会使站点出现问题,则可
以限制对全局区域进行访问。
系统会为包括全局区域在内的每个区域指定一个区域名称。全局区域始终命名为global。
每个区域还具有唯一的数字标识符,这是引导区域时由系统指定的。全局区域始终映射到
ID 0。区域名称和数字ID 在第211 页中的“使用zonecfg 命令”中介绍。
每个区域还具有节点名称,此名称完全独立于区域名称。节点名称由区域管理员指定。有
关更多信息,请参见第295 页中的“非全局区域节点名称”。
每个区域都有自己的根目录路径,该路径与全局区域根目录相对。有关更多信息,请参见
第211 页中的“使用zonecfg 命令”。
非全局区域的调度类设置为系统的调度类。
您还可以使用动态资源池功能为区域设置调度类。如果区域与pool.scheduler 属性设置为
有效调度类的池关联,则缺省情况下区域中运行的进程会在此调度类中运行。有关如何将
区域与资源池关联,请参见第225 页中的“如何配置区域”中的步骤6。有关为资源池指定
调度类的信息,请参见第136 页中的“资源池介绍”和第161 页中的“如何将池与调度类
关联”。
您可以使用priocntl(1) 手册页中所述的priocntl,在不更改缺省调度类和不重新引导的情
况下将运行的进程移动到其他调度类。
区域功能总结
下表概述了全局区域和非全局区域的特征。
区域如何工作
202 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
区域类型特征
全局 由系统指定ID 0
 提供正在系统上运行的可引导的Solaris 内核的单个实例
 包含Solaris 系统软件包的完整安装
 可以包含其他软件包或未通过软件包安装的其他软件、目录、文件以
及其他数据
 提供一个完整一致的产品数据库,该数据库包含安装在全局区域中的
所有软件组件的有关信息
 仅存放特定于全局区域的配置信息,如全局区域主机名和文件系统表
 是识别所有设备和所有文件系统的唯一区域
 是识别非全局区域存在和配置的唯一区域
 是可以从中配置、安装、管理或卸载非全局区域的唯一区域
非全局 引导区域时由系统指定区域ID
 共享从全局区域引导的Solaris 内核下的操作
 包含完整Solaris 操作系统软件包中已安装的一部分
 包含从全局区域共享的Solaris 软件包
 可以包含未从全局区域共享的其他已安装的软件包
 可以包含在非全局区域上创建的,未通过软件包安装或者未从全局区
域共享的其他软件、目录、文件以及其他数据
 具有一个完整一致的产品数据库,该数据库包含安装在非全局区域中
的所有软件组件的有关信息,无论这些组件存在于非全局区域上还是
从全局区域中只读共享
 不识别其他任何区域的存在
 无法安装、管理或卸载其他区域,包括其本身
 仅具有特定于非全局区域的配置信息,例如非全局区域主机名和文件
系统表
如何管理非全局区域
全局管理员拥有超级用户权限或承担主管理员角色。当全局管理员登录到全局区域时,可
以将系统作为一个整体进行监视和控制。
区域管理员可以管理非全局区域。全局管理员为区域管理员指定区域管理配置文件。区域
管理员的权限仅限于某个非全局区域。
区域如何工作
第16 章• Solaris Zones 介绍203
如何创建非全局区域
全局管理员使用zonecfg 命令,通过为区域虚拟平台和应用程序环境指定各种参数来配置区
域。然后,全局管理员安装区域,使用区域管理命令zoneadm 将软件包中的软件安装到为区
域建立的文件系统分层结构。全局管理员可以使用zlogin 命令登录到已安装的区域。首次
登录时,会完成区域的内部配置。然后使用zoneadm 命令引导区域。
有关区域配置的信息,请参见第17 章。有关区域安装的信息,请参见第19 章。有关区域登
录的信息,请参见第21 章。
非全局区域状态模型
非全局区域可以处于以下六种状态之一:
已配置区域配置已完成并提交到稳定存储器。但是,那些必须在初始引导之
后指定的区域应用程序环境元素还不存在。
未完成在安装或卸载操作期间,zoneadm 将目标区域的状态设置为未完成。成
功完成操作之后,便将状态设置为正确的状态。
已安装已在系统上实例化区域配置。zoneadm 命令用于检验是否可以在指定的
Solaris 系统上成功使用配置。软件包安装在区域的根路径下。在此状态
下,区域没有关联的虚拟平台。
就绪已建立区域的虚拟平台。已由内核创建zsched 进程,已检测网络接
口,已挂载文件系统,并且已配置设备。系统会指定唯一的区域ID。
在此阶段,没有启动与区域关联的进程。
正在运行正在运行与区域应用程序环境关联的用户进程。创建了与应用程序环
境关联的第一个用户进程(init) 之后,区域便会立即进入正在运行状
态。
正在关闭和关闭这两种状态是停止区域时出现的过渡状态。但是,因某种原因无法关
闭的区域将会在这两种状态下停止。
第20 章和zoneadm(1M) 手册页介绍了如何使用zoneadm 命令在这些状态之间进行转换。
表16–1影响区域状态的命令
当前区域状态适用的命令
已配置zonecfg -z zonename verify
zonecfg -z zonename commit
zonecfg -z zonename delete
zoneadm -z zonename verify
zoneadm -z zonename install
区域如何工作
204 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
表16–1 影响区域状态的命令(续)
当前区域状态适用的命令
未完成zoneadm -z zonename uninstall
已安装zoneadm -z zonename ready(可选)
zoneadm -z zonename boot
zoneadm -z zonename uninstall 从系统中卸载指定区域的配置。
zonecfg -z zonename 可用于添加或删除fs、dataset、net、device、
rctl 或attr 属性。无法更改zonepath 和inherit-pkg-dir 资源。
就绪zoneadm -z zonename boot
zoneadm halt 和系统重新引导使区域从就绪状态返回到已安装状态。
zonecfg -z zonename 可用于添加或删除fs、dataset、net、device、
rctl 或attr 属性。无法更改zonepath 和inherit-pkg-dir 资源。
正在运行zlogin options zonename
zoneadm -z zonename reboot
zoneadm -z zonename halt 使就绪区域返回到已安装状态。
zoneadm halt 和系统重新引导使区域从正在运行状态返回到已安装状
态。
zonecfg -z zonename 可用于添加或删除fs、dataset、net、device、
rctl 或attr 属性。无法更改zonepath 和inherit-pkg-dir 资源。
注– 通过zonecfg 更改的参数不会影响正在运行的区域。必须重新引导区域才能使更改生
效。
非全局区域特征
区域提供的隔离几乎可细化到您所需的任何程度。区域不需要专用的CPU、物理设备或部
分物理内存。可以在单个域或系统中运行的多个区域之间复用这些资源,也可借助操作系
统中可用的资源管理功能为每个区域分别分配这些资源。
每个区域都可提供一组自定义的服务。要执行基本进程隔离,一个进程只能看到同一区域
中的各个进程,或向这些进程发送信号。通过为每个区域至少提供一个逻辑网络接口,可
在不同区域间实现基本通信。在某个区域中运行的应用程序看不到其他区域的网络流量。
即使各个软件包的流使用同一物理接口,也会维护这种隔离。
每个区域都在文件系统分层结构中拥有一个位置。因为每个区域都只限于文件系统分层结
构中的一个子树,所以在某一特定区域中运行的工作负荷不能访问在其他区域中运行的另
一个工作负荷的盘上数据。
区域如何工作
第16 章• Solaris Zones 介绍205
命名服务使用的文件驻留在区域本身的根文件系统视图中。因此,不同区域的命名服务之
间相互分离并可单独配置。
将资源管理功能用于非全局区域
如果您使用资源管理功能,则应当使此功能可以完全控制区域范围。通过指定上述控制范
围,可以创建更完整的虚拟机模型,可对其中的名称空间访问、安全隔离和资源使用情况
进行完全控制。
对于将各种资源管理功能用于区域的任何特殊要求,将在本手册中介绍这些功能的各章节
中介绍。
非全局区域提供的功能
非全局区域提供以下功能:
安全一旦将进程放入全局区域之外的区域,此进程或其后续子进程便不能更改区
域。
可以在区域中运行网络服务。通过在区域中运行网络服务,可限制出现安全违
规时可能引起的损坏。如果入侵者成功利用了区域中运行的软件中的安全缺
陷,则此入侵者只能在此区域中执行一部分可能的操作。区域中可用的权限是
整个系统中可用权限的一部分。
隔离使用区域,可以在同一计算机上部署多个应用程序,即使这些应用程序运行在
不同的信任域中,需要独占访问全局资源或者全局配置出现问题也是如此。例
如,使用与每个区域关联的特定IP 地址或通配符地址,可以将同一系统的不同
区域中运行的多个应用程序绑定到同一网络端口。应用程序还无法监视或拦截
其他应用程序的网络流量、文件系统数据或进程活动。
虚拟化区域提供了一个虚拟环境,此环境可以在应用程序中隐藏详细信息(例如物理
设备、系统的主IP 地址以及主机名)。可以在不同的物理计算机上维护同一应
用程序环境。通过虚拟环境,可以单独管理每个区域。区域管理员在非全局区
域中执行的操作不会影响系统的其余部分。
粒度区域提供的隔离几乎可细化到任何程度。有关更多信息,请参见第205 页中的
“非全局区域特征”。
环境区域不更改应用程序的执行环境,但为实现安全和隔离目标而必须更改的情况
除外。区域不显示应用程序必须连接的新API 或ABI。相反,区域提供具有某些
限制的标准Solaris 接口和应用程序环境。这些限制主要影响尝试执行特权操作
的应用程序。
无论是否配置其他区域,全局区域中的应用程序始终会运行而无需修改。
非全局区域提供的功能
206 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
在系统上设置区域(任务图)
下表简要介绍了首次在系统上设置区域所涉及的任务。
任务说明参考
标识您要在区域中运行的应用程
序。
查看正在系统上运行的应用程序

 确定对您的业务目标至关重
要的应用程序。
 评估正在运行的应用程序对
系统的要求。
如有必要,请参阅您的业务目标
和系统文档。
确定要配置的区域数。评估:
 您要在区域中运行的应用程
序的性能要求
 建议每个区域安装100MB
可用磁盘空间的可用性
(可选)如果您还要在系统上使
用资源管理功能,请使此功能可
以完全控制区域范围
请参见第220 页中的“评估当前
的系统设置”和第1 章。
执行预配置任务。确定区域名称和区域路径,获取
IP 地址,并确定每个区域所需的
文件系统和设备。
(可选)要为非全局区域设置一
个不同于系统缺省设置的缺省调
度类,您可以将此区域与指定了
缺省调度程序的池关联。通过
pool.scheduler 属性在池级别设
置调度类。
有关区域名称和路径、IP 地址、
文件系统以及设备的信息,请参
见第17 章和第220 页中的“评
估当前的系统设置”。
有关资源池关联的信息,请参见
第202 页中的“区域如何工作”
和第225 页中的“如何配置区域
”。
开发配置。配置非全局区域。请参见第225 页中的“配置、检
验并提交区域”和zonecfg(1M)
手册页。
以全局管理员身份检验和安装已
配置的区域。
必须在登录之前检验和安装区
域。
请参见第19 章和第20 章。
以全局管理员身份登录到非全局
区域。
进行登录以执行区域的初始内部
配置,其中包括指定区域超级用
户口令。
请参见第21 章和第22 章。
以全局管理员身份引导非全局区
域。
引导区域以将区域置于正在运行
状态。
请参见第19 章和第20 章。
在系统上设置区域(任务图)
第16 章• Solaris Zones 介绍207
任务说明参考
为生产使用准备新区域。创建用户帐户,添加其他软件,
并自定义区域配置。
请参阅用于设置新安装的计算机
的文档。本指南中包含了适用于
区域环境的特殊注意事项。
在系统上设置区域(任务图)
208 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
非全局区域配置(概述)
本章介绍非全局区域配置。
本章包含以下主题:
 第209 页中的“本章中Solaris 10 6/06 的新增功能”
 第209 页中的“预安装配置过程”
 第210 页中的“区域组件”
 第211 页中的“使用zonecfg 命令”
 第211 页中的“zonecfg 模式”
 第213 页中的“区域配置数据”
 第218 页中的“Tecla 命令行编辑库”
了解区域配置之后,请转至第18 章以配置要在系统上安装的非全局区域。
本章中Solaris 10 6/06 的新增功能
已添加了对非全局区域中Zettabyte 文件系统(Zettabyte File System, ZFS) 的支持。有关更多信
息,请参见第215 页中的“资源类型属性”。
有关Solaris 10 新增功能的完整列表以及Solaris 发行版的描述,请参见《Solaris 10 What’s
New》。
预安装配置过程
在系统上安装和使用非全局区域之前,必须配置此区域。
zonecfg 命令用于创建配置,并确定指定的资源和属性是否在虚拟系统上有效。zonecfg 对
给定配置执行的检查将检验以下内容:
 确保已指定区域路径
 确保已为每个资源指定所有必需的属性
17 第1 7 章
209
有关zonecfg 命令的更多信息,请参见zonecfg(1M) 手册页。
区域组件
本节介绍可以配置的区域资源和属性。
区域名称和路径
必须为区域选择名称和路径。
区域接口
每个需要网络连接的区域都必须具有一个或多个专用IP 地址。这些地址与逻辑网络接口关
联。引导区域时,将在其中自动检测并放置通过zonecfg 命令配置的区域接口。
可以从全局区域中使用ifconfig 命令来在运行的区域中添加或删除逻辑接口。有关更多信
息,请参见第301 页中的“网络接口”。
在区域中挂载的文件系统
通常,在区域中挂载的文件系统包括:
 初始化虚拟平台时挂载的文件系统集合
 在应用程序环境本身中挂载的文件系统集合
例如,这可以包括以下文件系统:
 在区域的/etc/vfstab 文件中指定的文件系统
 AutoFS 挂载和AutoFS 触发的挂载
 区域管理员明确执行的挂载
将对在应用程序环境中执行的挂载设定特定限制。这些限制可防止区域管理员拒绝为系统
的其余部分提供服务,或者对其他区域产生不良影响。
在区域中挂载特定的文件系统时存在安全限制。其他文件系统在区域中挂载时会显示出特
殊行为。有关更多信息,请参见第295 页中的“文件系统和非全局区域”。
区域中的已配置设备
zonecfg 命令使用与规则匹配的系统来指定应在特定区域中出现的设备。与其中一个规则匹
配的设备包括在区域的/dev 文件系统中。有关更多信息,请参见第225 页中的“如何配置
区域”。
区域组件
210 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
区域范围的资源控制
全局管理员可以为区域设置区域范围的特权资源控制。区域范围的资源控制可限制区域内
所有进程实体总的资源使用情况,而不考虑项目。这些限制在zonecfg 配置中指定。有关更
多信息,请参见第225 页中的“如何配置区域”。
包含区域注释
您可以使用attr 资源类型为区域添加注释。有关更多信息,请参见第225 页中的“如何配
置区域”。
使用zonecfg 命令
zonecfg(1M) 手册页中所述的zonecfg 命令用于配置区域。zonecfg 命令可以在交互模式、
命令行模式或命令文件模式下使用。可以使用此命令执行以下操作:
 创建或删除(销毁)区域配置
 将资源添加到特定配置
 为添加到配置的资源设置属性
 从特定配置中删除资源
 查询或检验配置
 提交到配置
 恢复到先前配置
 从zonecfg 会话中退出
zonecfg 提示符的格式如下:
zonecfg:zonename>
当您配置特定的资源类型(例如文件系统)时,此资源类型也包含在提示符中:
zonecfg:zonename:fs>
有关更多信息,包括显示如何使用本章中所述的各种zonecfg 组件的过程,请参见
第18 章。
zonecfg 模式
范围的概念用于用户界面。范围可以为全局或资源特定。缺省范围为全局。
在全局范围中,add 子命令和select 子命令用于选择特定的资源。然后范围更改为此资源
类型。
 对于add 子命令,end 或cancel 子命令用于完成资源指定。
 

以上文章转自于 : http://developers.sun.com.cn/
 
阅读(559) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~