| 发表人 |
内容 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 08:47:51
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
Solaris 区域和容器的相关问题
原文地址: http://www.opensolaris.org/os/community/zones/faq/
这篇文章被编辑了 5 次. 最近一次更新是在 27/11/2007 00:11:26
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 08:58:16
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
什么是区域?
答: 一个区域是一个虚拟操作系统抽象,它提供了一个应用程序运行的受保护环境。应用程序彼此受到保护,提供软件错误隔离。这使管理多个应用程序和它们的环境变得容易,他们统一存在一个操作系统实例中,一般作为一个实体来管理。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 09:02:40
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
什么是容器?
答:一个使用操作系统资源管理功能的区域就叫做容器。多数人不加区分地使用这两个单词"区域"和"容器"。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 09:46:29
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
有几种类型的区域可用?
答: 有下列类型的非全局区域可用:
● 本地区域:
默认的非全局区域是一个本地区域。它和Solaris 10操作系统或者其后续版本具有同样的特性,运行在全局域中。如果你使用Solaris信任扩展配置了你的系统,没一个非全局域和一个安全级别或者标记关联。从Solaris 10 11/06版本开始可以配置标记区域,更多信息参看 Solaris信任扩展的安装和配置。
● 标记区域(Branded Zones):
在一个非全局区域运行一个不同的操作环境也是可能的。标记区域(BrandZ) 框架扩展了Solaris区域的基础,包括印记的生成或者说运行时行为集合。"Brand"能够涉及广泛的操作环境。当前有两种印记区域:
○ lx 标记区域在SX DE 和 Solaris 10 8/07 发行版中引入,为你的程序在x86和X64机器上运行程序提供了一个Linux环境。更多信息, 访问开源Solaris社区: BrandZ和Solaris 10系统管理员指南的容器和资源管理中的标记区域。
○ solaris8印记区域能够让你迁移Solaris 8系统到一个正在运行Solaris 10 8/07操作系统或者S10后续版本主机的Solaris 8容器中。 solaris8区域是一个环境用来运行SPARC机器上的Solaris 8应用程序。这个区域在 2007年10月22日发布的Solaris8迁移助手中引入。更多信息参看系统管理员向导: Solaris 8 Branded Zones in the Solaris 8 Migration Assistant 1.0 Collection. 下载90天的评估版, 请到下载中心.
这篇文章被编辑了 2 次. 最近一次更新是在 04/12/2007 20:45:27
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 10:54:59
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
什么是全局区域?稀疏根区域?完全根区域?本地区域?
答: 在一个系统安装Solaris10之后,但是在你生成其它任何区域之前,所有的进程都运行在“全局区域“中。 在你创建一个区域后,它拥有的进程被关联到这个区域上而不是其它的区域。任何“非全局区域中“进程生成的进程也关联在这个“非全局区域“中。
任何域只要不是全局域就称为“非全局区域”。一些人也把“非全局区域“简单地称为“域“。也有人称为“本地域”,但是这个不是很明确。
默认的域文件系统模型是"稀疏根" 。这个模型注重效率以牺牲一些配置的灵活性为代价。稀疏根区域通过共享一些目录来优化物理内存和磁盘空间的使用,例如/etc 和 /var。全局根区域增加了配置的灵活性但是赠加了资源的使用。它们不使用 /usr、/lib和其它的共享目录。
这篇文章被编辑了 2 次. 最近一次更新是在 25/11/2007 11:06:18
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 11:11:43
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我怎样获得区域者容器?
答: 基于OpenSolaris代码基础的操作系统可以选择包含域的支持。Sun提供的Solaris 10和Solaris Express包含了完整的区域支持。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 11:18:00
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
使用域需要什么样的硬件?
答: 域和资源管理都是OpenSolaris软件的功能,还有其它扩展,Solaris和其它基于OpenSolaris的操作系统。因为是软件功能,它不依赖于任何特殊的平台。任何运行OpenSolaris或者它的发行版之一的硬件,例如Solaris10就具有这些功能。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 11:58:04
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我的软件能运行在一个区域或者容器中吗?
答: 大部分Solaris软件可以不经修改地运行在域中、不需要重新编译。非特权软件 (不需要以root或者特殊的特权运行的程序)一般可以不经修改地运行在域中一旦他们被安装成功。安装软件必须假定它没有往共享只读的文件系统有写操作,例如/usr。这个问题可以避开通过添加一个可写的文件系统到域中(例如在/usr/local)或者使用一个完全根区域。
然而,一些少数的程序需要非默认的特权去运行 - 在域中这个特权一般不可用,例如设置系统时钟。对于这种情况,"可配置的特权"功能已经被加入了。这个功能允许全局域管理员-在一个系统上管理域的人-去分派附加的非默认特权到一个域中。域的管理员可以允许不同的用户去使用这些非默认的特权。
一个应用程序需要的特权,如果不能添加到域中,那么在域中正常运行可能需要做些修改。
这有一些指导原则:
● 一个应用程序存取网络和文件,不执行其它的I/O操作,能够正确地运行。
● 应用程序需要直接存取某一设备,例如磁盘分区,一般能正常工作,如果正确地进行了域配置。 然而,这些情形可能增加安全风险。
● 应用程序需要直接存取如下的设备,必须修改才能正确工作:
○ /dev/kmem
○ 一个网络设备
1. 从OpenSolaris build 37 和 Solaris 10 8/07开始,一个域可以配置成一个"独占IP"的域,这个域独占分配给它的IP。在这样的域中的应用程序能够和域可用的NIC(s)直接通讯。
2. 运行在共享IP域里的应用程序需要替换为使用这些IP服务中的一个。
更多信息参看白皮书"Bringing Your Application Into the Zone".注意,这个白皮书发行后,区域使用的特权、IP类型等其它内容已经发生了改变。最新消息也可以参看管理员指南。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 12:02:20
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我如何检验我的程序能否在容器中使用?
参看文档 Qualification Best Practices for Application Support in Non-Global Zones。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 12:16:18
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
那些程序被鉴定可以运行在区域或者容器中?
答: 通过ISV来评估一个应用程序运行在容器中的可支持能力。一些软件供应商仅仅把区域作为Solaris的另一个功能集合,没有觉得需要特别确保他们的软件能在域中使用。有些已经明确保证他们的软件可以使用区域。已经报告的官方支持的应用程序包含在下表中。更多信息请看 "Application-specific Information"
● BEA WebLogic Server 8.1 SP4
● Veritas Storage Foundation 4.1 - for Solaris 10, requires the newest versions of patches 119255, 118344, and 118844 for x86/x64, or the SPARC equivalents of those patches
● Oracle's pricing policy regarding containers
● Veritas NetBackup 5.0 (MP4) and 5.1 (MP2)
● Sun N1 Grid Engine 6 (Update 4)
● CA Ingres
● IBM DB2 8.2
● IBM Websphere
● Oracle TimesTen
● Oracle Ebusiness Suite 11
● SAP R/3
● Veritas VCS - see " Implementing Solaris™ Zones with Veritas™ Cluster Server by Symantec"
这篇文章被编辑了 3 次. 最近一次更新是在 25/11/2007 12:18:52
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 12:49:51
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
一个区域有多“大”?
答: 如果使用默认的配置参数,一个区域大约需要85MB的磁盘空间,当全局区域安装了"所有"Solaris元簇(metacluster)软件包。全局区域安装的附加软件包在非全局区域中需要额外的空间。SVM软件分区可以用来划分磁盘片和强行限制每个区域的磁盘空间。当执行容量规划的时候,每个区域建议附加额外的40MB内存容量。应用程序不会使用任何“额外的”内存,因为他们在域中运行。
一个使用“完全根模型”的区域将会占用和初始Solaris 10安装一样多的磁盘空间,大多数情况下这将多于500MB。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:10:30
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
一个Solaris下可以使用多少个容器?
答: 虽然理论上的限制是8000,但是实际的限制依赖于:
● 应用程序使用的硬件资源的数量和系统中实际可用的资源数量。这包括CPU的数量和处理能力,内存大小,网卡数量(NICs),主机总线适配器数量(HBAs)等等。
● 实际使用的区域数量. 例如,你能创建100个区域, 每个准备用来提供一个web服务,但是这个月你仅仅启动你需要的10个. 没启动的区域仅仅占用磁盘空间,不会使用CPU、内存、I/O等资源。
考虑这些例子工作情况:
● 40个区域, 每一个运行5个Apache web服务的副本, 在一个E250上, 使用两个300MHz CPUs, 512MB 内存, 和3个硬盘驱动器总共40GB. 所有区域都运行,一个到每个区域的多个同时的HTTP请求的负载。这些区域的开销非常小可以忽略不计 (<5%)。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:12:32
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我可以每个区域使用不同的Solaris版本吗?
答: 不行. 所有这些区域使用一个基础内核。内核的版本决定了域中每个容器的版本。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:15:21
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
什么类型的配置更改需要非全局域重启?
答:
● 添加设备到非全局域中.
● 绑定域到一个池.
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:17:50
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
什么样的重新配置需要一个完全的系统重启?
答:我们不是很清楚.
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:26:25
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
容器(container)可以集群吗?
答: 可以,但是不能没有附加的群集管理软件。 在写这个的时候,Sun正在开发扩展她的Sun Cluster软件, 因此Resource Groups可以放置在非全局域中。<Veritas/Symantec>也宣布在Veritas Cluster产品里支持区域。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:27:56
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我可以在容器之间使用SysV共享内存吗?
答: 不行. 这会侵犯一些安全原则.
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 13:35:34
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
一个区域能包括多个区域吗(容器模型继承)?
答: 不行, 模型是严格的两层: 一个全局区域和多个非全局区域. 只有全局区域可以生成非全局区域,每一个非全局区域必须包含在全局区域中。
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 14:30:54
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
我能自动化输入系统信息的过程自动化吗,例如sysidcfg?
A: 是的,一个域安装之后, 在第一次启动域之前拷贝 sysidcfg(4) 文件到域的 /etc/sysidcfg。此外, 执行命令:
touch .NFS4inst_state.domain
这篇文章被编辑了 1 次. 最近一次更新是在 25/11/2007 14:31:36
|
Solaris Java虚拟主机 MySQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/11/2007 16:27:21
|
solaris
骑士
![[Avatar]](/images/avatar/6ea9ab1baa0efb9e19094440c317e21b.jpg)
注册时间: 14/11/2007 09:28:21
文章: 149
离线
|
一些区域可以使用不同的时区吗?
答: 可以. 每一个非全局区域有它自己的/etc/default/init拷贝, 你可以修改以"TZ="开始的行. 时区的可辨认的名字在/usr/share/lib/zoneinfo文件中. 例如, 美国的东方标准时间在/usr/share/lib/zoneinfo/US/Eastern文件中定义. 去设置一个非全局区域的时区到这个时区上, /etc/default/init 文件中的行看起来像这样:
TZ=US/Eastern
|
Solaris Java虚拟主机 MySQL |
|
|
 |
|
|