免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2807 | 回复: 6
打印 上一主题 下一主题

Solaris Zones 介绍(二) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-31 16:42 |只看该作者 |倒序浏览
资源类型属性
有些资源类型的属性也要进行配置。以下属性与所示的资源类型关联。
Fs                          dir、special、raw、type、options
以下示例的几行代码指定全局区域中的 /dev/dsk/c0t0d0s2 将作为要配
置的区域中的 /mnt 进行挂载。raw 属性指定一个在尝试挂载文件系统
之前运行 fsck 命令的可选设备。所使用的文件系统类型为 UFS。添加
了选项 nodevices 和 logging。
zonecfg:my-zone>        add fs

zonecfg:my-zone:fs>set dir=/mnt

zonecfg:my-zone:fs>set special=/dev/dsk/c0t0d0s2

zonecfg:my-zone:fs>set raw=/dev/rdsk/c0t0d0s2

zonecfg:my-zone:fs>set type=ufs

zonecfg:my-zone:fs>add options [nodevices,logging]

zonecfg:my-zone:fs>end

另请注意,有关专用于特定文件系统的挂载选项的信息可以在 1M
手册页部分中找到。这些手册页的名称格式为 mount_filesystem。

Dataset       name
以下示例的几行代码指定 dataset sales 在非全局区域中可见并进行挂
载,并且不再在全局区域中可见。

zonecfg:my-zone>add dataset

zonecfg:my-zone>set name=tank/sales

zonecfg:my-zone>end

inherit-pkg-dir    dir

以下示例的几行代码指定 /opt/sfw 从全局区域中进行回送挂载。

zonecfg:my-zone>add inherit-pkg-dir

zonecfg:my-zone:inherit-pkg-dir>set dir=/opt/sfw

zonecfg:my-zone:inherit-pkg-dir>end

net        address、physical

在以下示例中,将 IP 地址 192.168.0.1 添加到区域。hme0 卡用于物理
接口。

zonecfg:my-zone>add net

zonecfg:my-zone:net>set physical=hme0

zonecfg:my-zone:net>set address=192.168.0.1

zonecfg:my-zone:net>end
                                         
注 – 要确定所使用的物理接口,请在系统上键入 ifconfig -a。每一个
输出行(回送驱动程序行除外)都以系统上安装的卡的名称开头。说
明中包含 LOOPBACK 的行不适用于卡。

Device                 match
在以下示例中,/dev/pts 设备包括在区域中。
zonecfg:my-zone>add device

zonecfg:my-zone:device>set match=/dev/pts*

zonecfg:my-zone:device>end

rctl                     name、value
有两种区域范围的资源控制:zone.cpu-shares 和
zone.max-lwps。
zone.cpu-shares 资源控制对区域的公平共享调度程序 (fair share
scheduler, FSS) CPU 份额数设置限制。CPU 份额首先分配给区域,然后
在区域内的项目之间进一步分配,如 project.cpu-shares 项中所述。
zone.max-lwps 资源控制通过防止某个区域中的过多 LWP 影响其他区
域,来增强资源的隔离。可以使用 project.max-lwps 项在区域内的各
个项目之间进一步分配区域的所有 LWP。
请注意,区域中的区域范围资源控制项与 project 数据库中的资源控
制项使用不同的方式进行配置。在区域配置中,rctl 资源类型由三个
名称/值对组成。名称分别为 priv、limit 和 action。每个名称都有一
个简单值。
zonecfg:my-zone>add rctl

zonecfg:my-zone:rctl>set name=zone.cpu-shares

zonecfg:my-zone:rctl>add value (priv=privileged,limit=10,action=none)

zonecfg:my-zone:rctl>end

zonecfg:my-zone>add rctl

zonecfg:my-zone:rctl>set name=zone.max-lwps

zonecfg:my-zone:rctl>add value (priv=privileged,limit=100,action=deny)

zonecfg:my-zone:rctl>end

attr        name、type、value

在以下示例中,添加了有关区域的注释。

zonecfg:my-zone>add attr

zonecfg:my-zone:attr>set name=comment

zonecfg:my-zone:attr>set type=string

zonecfg:my-zone:attr>set value="Production zone"

zonecfg:my-zone:attr>end
可以使用 export 子命令在标准输出中列显区域配置。通过可以在命令文件中使用的格式保存配置。

Tecla 命令行编辑库
配置中提供了 Tecla 命令行编辑库,可与 zonecfg 命令一起使用。此库为命令行历史记录和编辑支持提供了一种机制。
Tecla 命令行编辑库在以下手册页中进行介绍:
■        enhance(1)
■        libtecla(3LIB)
■        ef_expand_file(3TECLA)
■        gl_get_line(3TECLA)
■        gl_io_mode(3TECLA)
■        pca_lookup_file(3TECLA)
■        tecla(5)

如何配置zone
要执行此过程,您必须是全局区域中的全局管理员。

成为超级用户或承担主管理员角色。
有关如何创建该角色并将其指定给用户,请参见《System Administration Guide: Basic
Administration》中的“Using the Solaris Management Tools With RBAC (Task Map)”。

用所选的区域名称来设置区域配置。
此示例过程中使用名称 my-zone。
global#        zonecfg -z my-zone
如果是第一次配置该区域,则可以看到以下系统消息:

my-zone: No such zone configured

Use ’create’ to begin configuring a new zone.

创建新的区域配置。
此过程使用 Sun 的缺省设置。
zonecfg:my-zone>        create
设置区域路径,在此过程中为 /export/home/my-zone。
zonecfg:my-zone>        set zonepath=/export/home/my-zone
对于该发行版,不要为 ZFS 设置 zonepath。

设置自动引导值。
如果设置为 true,则在引导全局区域时将自动引导该区域。请注意,要自动引导区域,必
须同时启用区域服务 svc:/system/zones:default。缺省值为 false。
zonecfg:my-zone>        set autoboot=true

如果在系统上启用资源池,则将该池与区域进行关联。
此示例使用名为 pool_default 的缺省池。
zonecfg:my-zone>        set pool=pool_default
因为资源池允许进行一次可选的调度类分配,所以可以使用池功能来设置一个缺省的调度
程序,而不是非全局区域的系统缺省值。
添加文件系统。
zonecfg:my-zone>        add fs

a.        设置文件系统的挂载点,在此过程中为 /usr/local。
zonecfg:my-zone:fs>set dir=/usr/local

b.        指定在区域中配置 /usr/local 之后,才能挂载全局区域中的 /opt/local。
zonecfg:my-zone:fs>set special=/opt/local
在非全局区域中,/usr/local 文件系统是可读写的。

c.        指定文件系统类型,在此过程中为 lofs。
zonecfg:my-zone:fs>set type=lofs
此类型指明了内核与文件系统的交互方式。

d.        结束文件系统指定。
zonecfg:my-zone:fs>end
可多次执行此步骤来添加多个文件系统。

在存储池 tank中添加一个名为 sales 的 ZFS 数据集。
zonecfg:my-zone>        add dataset

a.        指定指向 ZFS数据集 sales 的路径。
zonecfg:my-zone>        set name=tank/sales
b.        结束 dataset 指定。
zonecfg:my-zone>        end
(仅用于稀疏根区域)添加一个从全局区域回送挂载的共享文件系统。
zonecfg:my-zone>        add inherit-pkg-dir

a.        指定在正在配置的区域中以只读模式挂载全局区域中的 /opt/sfw。
zonecfg:my-zone:inherit-pkg-dir>set dir=/opt/sfw


注 – 将更新区域的打包数据库,以反映软件包。使用 zoneadm 安装区域之后,便不能修
改或删除这些资源。

b.        结束 inherit-pkg-dir 指定。
zonecfg:my-zone:inherit-pkg-dir>end
可多次执行此步骤来添加多个共享文件系统。


注 – 如果要创建一个完全根区域,并且已经使用 inherit-pkg-dir添加了缺省的共享文件系
统资源,则必须使用 zonecfg 删除以下缺省的 inherit-pkg-dir 资源,才能安装区域:
■        zonecfg:my-zone> remove inherit-pkg-dir dir=/lib
■        zonecfg:my-zone> remove inherit-pkg-dir dir=/platform
■        zonecfg:my-zone> remove inherit-pkg-dir dir=/sbin
■        zonecfg:my-zone> remove inherit-pkg-dir dir=/usr

添加网络虚拟接口。
zonecfg:my-zone>        add net

a.        设置网络接口的 IP 地址,在此过程中为 192.168.0.1。
zonecfg:my-zone:net>        set address=192.168.0.1

b.        设置网络接口的物理设备类型,在此过程中为 hme 设备。
zonecfg:my-zone:net>set physical=hme0

c.        结束指定。
zonecfg:my-zone:net>end
可多次执行此步骤来添加多个网络接口。
添加设备。
zonecfg:my-zone>        add device

a.        设置设备匹配,在此过程中为 /dev/sound/*。
zonecfg:my-zone:device>        set match=/dev/sound/*

b.        结束设备指定。
zonecfg:my-zone:device>        end
可多次执行此步骤来添加多个设备。

添加区域范围的资源控制。
zonecfg:my-zone>        add rctl

a.        设置资源控制的名称,在此过程中为 zone.cpu-shares。
zonecfg:my-zone:rctl>set name=zone.cpu-shares

b.        添加权限值、共享限制、以及达到阈值时要采取的操作。
zonecfg:my-zone:rctl>add value (priv=privileged,limit=20,action=none)

c.        结束 rctl 指定。
zonecfg:my-zone:rctl>end
可多次执行此步骤来添加多个资源控制。

使用 attr 资源类型来添加注释。
zonecfg:my-zone>add attr

a.        将名称设置为 comment。
zonecfg:my-zone:attr>set name=comment

b.        将类型设置为 string。
zonecfg:my-zone:attr>set type=string

c.        将值设置为说明区域的注释。
zonecfg:my-zone:attr>set value="This is my work zone."

d.        结束 attr 资源类型指定。
zonecfg:my-zone:attr>end

检验区域的配置。
zonecfg:my-zone>        verify
提交区域的配置。
zonecfg:my-zone>        commit

退出 zonecfg 命令。
zonecfg:my-zone>        exit
请注意,即使您没有在提示符下明确键入 commit,也会在键入 exit 或出现 EOF 时自动执行
commit。

在命令行中使用多个子命令

提示 – zonecfg 命令还支持通过同一个 shell 调用多条子命令,这些子命令放在引号中并用分
号进行分隔。

global#        zonecfg -z my-zone "create ; set zonepath=/export/home/my-zone"

论坛徽章:
2
双鱼座
日期:2014-02-23 12:10:03操作系统版块每日发帖之星
日期:2015-12-17 06:20:00
2 [报告]
发表于 2007-08-31 17:43 |只看该作者
学习中

论坛徽章:
0
3 [报告]
发表于 2007-08-31 17:54 |只看该作者
原帖由 东方蜘蛛 于 2007-8-31 17:43 发表
学习中


谢谢,蜘蛛兄的捧场.最近一直在翻译这个东东.前2天电脑坏了,一直用其他人的.今天终于用上自己的了.虽然是,老机器拼装的,但是,性能还不错,就是有些慢.呵呵.

论坛徽章:
2
双鱼座
日期:2014-02-23 12:10:03操作系统版块每日发帖之星
日期:2015-12-17 06:20:00
4 [报告]
发表于 2007-08-31 18:00 |只看该作者
原帖由 风之幻想 于 2007-8-31 17:54 发表


谢谢,蜘蛛兄的捧场.最近一直在翻译这个东东.前2天电脑坏了,一直用其他人的.今天终于用上自己的了.虽然是,老机器拼装的,但是,性能还不错,就是有些慢.呵呵.


合力那边有没有消息给你那?打算过去了?:wink:

论坛徽章:
0
5 [报告]
发表于 2007-08-31 18:02 |只看该作者
原帖由 东方蜘蛛 于 2007-8-31 18:00 发表


合力那边有没有消息给你那?打算过去了?:wink:


没有.我只想在宁夏这里做个兼职.全职的就不考虑了.快冬天了,主要是我妈身体不好.不想走太远.

论坛徽章:
0
6 [报告]
发表于 2008-04-03 14:23 |只看该作者

回复 #5 风之幻想 的帖子

风之幻想这么牛的人物,只是在宁夏混阿? 真是有些埋没人才阿? 到大城市来一展身手吧

论坛徽章:
0
7 [报告]
发表于 2008-08-31 16:01 |只看该作者
宁夏一样需要人才啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP